おやすみなさい!
私と私の友達がSkypeを介して一致するようにストリーミング設定を作成しようとしていますが、オーディオ部分でブロックされています。 2つの質問があります。
- マイクは左チャンネルでのみ送信されます。私のマイクが両方のオーディオチャンネルに送信できるようにしたいです。そのために文書によると(https://gitlab.freedesktop.org/pipewire/pipewire/-/wikis/Virtual-Devices
mono-sink
)マイクに電話する場所を作成し、それを私のfriend sink
ブログ投稿()に送信する必要があります。https://blogshit.baka.fi/2021/07/pipewire-microphone/)はこのユースケースを扱っているようですが、media-session.dファイルはありません。 - 一部のアプリやその他のようなオーディオソースに入力し、マイクの
friend sink
ほかにその中に含まれているものも聞きたいです(ただ、ワンタイムテストでマイクを聞くこともあります)。
どうやってこれを達成できますか?ドキュメントに特定の名前があるように見える設定ファイルの名前を指定する方法を教えてください。私のアプリケーションにオーディオを入力するには?私自身のために別のシンクが必要ですか?パイプラインワイヤのデバイス名を見つけるには?
これが私のpactl info
結果です
shaddox@pop-os:/usr/share/pipewire$ pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 35
Server Protocol Version: 35
Is Local: yes
Client Index: 660
Tile Size: 65472
User Name: shaddox
Host Name: pop-os
Server Name: PulseAudio (on PipeWire 0.3.79)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.usb-Grace_Design_SDAC-00.iec958-stereo
Default Source: alsa_input.usb-Yamaha_Corporation_Steinberg_UR22mkII-00.analog-stereo
Cookie: 3fff:d574
役に立つなら、ここに私のarecord -l
結果があります。
shaddox@pop-os:/usr/share/pipewire$ arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC887-VD Analog [ALC887-VD Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 2: ALC887-VD Alt Analog [ALC887-VD Alt Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 3: Webcam [C922 Pro Stream Webcam], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 4: UR22mkII [Steinberg UR22mkII], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
これは私のaplay -l
結果です。
shaddox@pop-os:/usr/share/pipewire$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC887-VD Analog [ALC887-VD Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 1: ALC887-VD Digital [ALC887-VD Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SDAC [SDAC], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 2: NVidia [HDA NVidia], device 3: HDMI 0 [22M35]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: NVidia [HDA NVidia], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: NVidia [HDA NVidia], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 2: NVidia [HDA NVidia], device 9: HDMI 3 [HDMI 3]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 4: UR22mkII [Steinberg UR22mkII], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
私はギターの録音とマイシングにのみSteinberg UR22mkIIを使用し、聞く場所はSDACです。
答え1
もちろん、自分で質問をしたら、何を探すべきかを知ることになります。まず、運用のために2つの仮想デバイスを作成する必要があります。ファイル名はです~/.config/pipewire/pipewire.conf.d/10-coupled-skype-stream.conf
。どうやってこの結論を下しましたか?真実の源はそこにある/usr/share/pipewire
!さて、ファイルの内容を見てください。
context.modules = [
{ name = libpipewire-module-loopback
args = {
node.description = "Steinberg Front Left"
capture.props = {
node.name = "capture.mono-micorphone"
audio.position = [ FL ]
target.object = "alsa_input.usb-Yamaha_Corporation_Steinberg_UR22mkII-00.analog-stereo"
stream.dont-remix = true
node.passive = true
}
playback.props = {
media.class = "Audio/Source"
node.name = "mono-microphone"
audio.position = [ MONO ]
}
}
}
{ name = libpipewire-module-loopback
args = {
audio.position = [ FL FR ]
capture.props = {
media.class = Audio/Sink
node.name = skype_sink
node.description = "Virtual Skype sink"
}
}
}
]
という簡単なプログラムの助けを借りてデバイス名を見つけましたSimple Wireplumber GUI
。最初のペアが行うことは、ソースの左側のチャンネルから新しい仮想シングルチャンネルまでテザーを作成することです。
設定ファイルの2番目の部分は、sink
誰もが聞きたいオーディオコンテンツをダンプする場所であるaというエントリを作成します。
qpwgraph
今、またはというソフトウェアを使用して、Helvum
誰もが聞きたいことをリスナーにバインドします。左チャンネルは左チャンネルに移動し、右チャンネルは右チャンネルに移動します。 MONOソースの場合は、2つのチャンネルに入ります。
テストするのに十分に聞いた後、上記の手順でループバックテザーを見つけて切り取ります。
これが他の人に役立つことを願っています。