Rol*_*Xor 17 sound pulseaudio pipewire
我想让我的系统自动输出到所有可用的声音设备(最好使用 Pulseaudio 音量控制中的接收器)。单独使用 Pulseaudio 时这是可能的。
用 Pipewire 可以吗?如果是,您将如何实现这一目标?
是否可以将其设置为自动可用?
Rol*_*Xor 17
在报告错误并得到对我的问题的答复后,我终于找到了答案。解决方案非常简单:
跑步:
pactl load-module module-combine-sink
Run Code Online (Sandbox Code Playgroud)
您可以使用 PipeWire 获得相同的功能。
如果我正确理解这些说明,您可以通过复制并添加以下内容来使其永久/usr/share/pipewire/pipewire-pulse.conf化~/.config/pipewire/pipewire-pulse.conf:
context.exec = [
{ path = "pactl" args = "load-module module-combine-sink" }
]
Run Code Online (Sandbox Code Playgroud)
然后保存文件。或者,您可以将第一个命令添加到启动应用程序中。
根据man pipewire.conf(以及一些推断),您可以使用插入文件达到相同的效果,因此这应该是 IMO 的首选方法。
这些目录适用/etc/pipewire/pipewire-pulse.conf.d/于全局和$XDG_CONFIG_HOME/pipewire/pipewire-pulse.conf.d/用户(~/.config/pipewire/pipewire-pulse.conf.d/如果$XDG_CONFIG_HOME未设置,则默认为)。
所以只需创建这个文件(mkdir -p如果目录不存在):
$XDG_CONFIG_HOME/pipewire/pipewire.conf.d/add-combined-sink.conf
context.exec = [
{ path = "pactl" args = "load-module module-combine-sink" }
]
Run Code Online (Sandbox Code Playgroud)
请注意,在我的测试中,如果我将插入文件放入 中/etc/pipewire/pipewire-pulse.conf.d/,组合输出会发生一些奇怪的情况(音调变得更高并引入常规的口吃)。
如果我必须猜测,这可能与模块的加载顺序有关:很可能有一种方法可以修复它,但我没有费心去调查。不过,把它放进去$XDG_CONFIG_HOME/pipewire/pipewire-pulse.conf.d/效果很好,所以这就是我所做的。