Ubuntu Studio 24.04(默认PipeWire,无Studio Controls)下如何创建多命名的PulseAudio与Jackd桥接?
Ubuntu Studio 24.04(默认PipeWire,无Studio Controls)下如何创建多命名的PulseAudio与Jackd桥接?
嗨,我完全懂你现在的烦恼——原来靠Studio Controls轻松搞多个自定义名字的Pulse-Jack桥接的路子走不通了,换成PipeWire之后确实得换个玩法。不过别慌,用PipeWire自带的配置工具就能搞定,而且能精准控制每个桥接的名字,步骤其实挺清晰的:
第一步:确认必备组件已安装
Ubuntu Studio 24.04默认应该已经带了所有需要的PipeWire组件,但保险起见可以检查一下:
dpkg -l | grep pipewire
如果看到pipewire-jack和pipewire-pulse不在列表里,就用下面的命令安装:
sudo apt install pipewire-jack pipewire-pulse
第二步:创建自定义桥接配置文件
PipeWire通过用户目录下的配置片段来管理自定义设备,我们先创建配置目录(如果不存在的话):
mkdir -p ~/.config/pipewire/pipewire.conf.d/
创建PulseAudio→Jack输出桥接(自定义名字)
每个桥接对应一个独立的.conf文件,这样方便管理和修改。比如我们要创建一个叫「Pulse-to-Jack-Music」的输出桥:
- 新建配置文件:
nano ~/.config/pipewire/pipewire.conf.d/50-pulse-jack-music.conf
- 粘贴以下内容,注意修改
node.description为你想要的显示名称:
context.objects = [ { factory = adapter args = { factory.name = support.null-audio-sink node.name = "pulse_jack_music_sink" # 内部标识,唯一就行 node.description = "Pulse-to-Jack-Music" # 你要的自定义显示名 media.class = "Audio/Sink" # 这是输出设备(Pulse→Jack) audio.position = [ FL FR ] # 声道配置,立体声就用FL FR target.object = "jack-node" # 指定连接到Jack } } ]
- 按
Ctrl+O保存,Ctrl+X退出编辑器。
再创建第二个自定义桥接(比如语音专用)
重复上面的步骤,比如创建「Pulse-to-Jack-Voice」:
nano ~/.config/pipewire/pipewire.conf.d/50-pulse-jack-voice.conf
内容只需要修改内部标识和显示名:
context.objects = [ { factory = adapter args = { factory.name = support.null-audio-sink node.name = "pulse_jack_voice_sink" node.description = "Pulse-to-Jack-Voice" media.class = "Audio/Sink" audio.position = [ FL FR ] target.object = "jack-node" } } ]
(可选)创建Jack→PulseAudio输入桥接
如果需要把Jack的音频输出到PulseAudio,比如录制Jack的声音到Pulse应用,就创建输入桥:
nano ~/.config/pipewire/pipewire.conf.d/50-jack-to-pulse-mic.conf
内容如下,注意media.class改成Audio/Source,factory.name换成support.null-audio-source:
context.objects = [ { factory = adapter args = { factory.name = support.null-audio-source node.name = "jack_to_pulse_mic_source" node.description = "Jack-to-Pulse-Mic" media.class = "Audio/Source" audio.position = [ FL FR ] target.object = "jack-node" } } ]
第三步:重启PipeWire让配置生效
所有桥接配置好之后,重启PipeWire服务加载新配置:
systemctl --user restart pipewire pipewire-pulse
验证桥接是否生效
- 打开Jack Control(qjackctl)启动Jack服务器,在「Graph」里就能看到你自定义名字的桥接端口;
- 打开PulseAudio音量控制(pavucontrol),在「播放」或「录制」标签页里,就能选择你创建的自定义桥接设备了。
小提示
- 如果要删除某个桥接,直接删掉对应的
.conf文件,再重启PipeWire就行; - 确保Jack服务器在PipeWire重启前已经启动,这样桥接能自动和Jack建立连接;
- 声道配置可以根据需求改,比如单声道就写
[ MONO ],5.1声道就写[ FL FR FC LFE BL BR ]。
备注:内容来源于stack exchange,提问作者mark_orion




