libpipewire-module-combine-stream 在 23.10 中不再按预期工作

libpipewire-module-combine-stream 在 23.10 中不再按预期工作

我昨天从 23.04 升级到了 Ubuntu 23.10。我在 ~/.config/pipewire/pipewire.conf.d/combined21.conf 下设置了一个自定义 wireplumber 配置,用于创建组合接收器。基本上,我想使用两个声卡创建一个 2.1 系统。我的配置文件如下。在 23.04 中,这运行完美,但升级后,从任何应用程序(系统设置除外)播放音频时,LFE 不再发出声音。我可以打开声音设置并使用“测试”,LFE 将从那里发出声音。但其他应用程序不会向 LFE 通道发送任何信号。发生了什么变化?我如何跟进这些事情,这样我就不必一直问了?

context.modules = [
{   name = libpipewire-module-combine-stream
    args = {
        combine.mode = sink
        node.name = "combine_source_2_1"
        node.description = "My 2.1 Combine"
        combine.latency-compensate = false
        combine.props = {
            audio.position = [ FL FR LFE ]
        }
        stream.props = {
                stream.dont-remix = false
        }
        stream.rules = [
            {   matches = [
                    {   media.class = "Audio/Sink"
                        node.name = "alsa_output.pci-0000_04_00.6.HiFi__hw_Generic_1__sink"
                    } ]
                actions = { create-stream = {
                        audio.position = [ FL FR ]
                        combine.audio.position = [ FL FR ]
                } } }
            {   matches = [
                    {   media.class = "Audio/Sink"
                        node.name = "alsa_output.usb-0d8c_USB_Sound_Device-00.analog-stereo"
                    } ]
                actions = { create-stream = {
                        audio.position = [ FR ]
                        combine.audio.position = [ LFE ]
                } } }
        ]
    }
}
]

答案1

嗯,我不确定到底是什么原因造成的。但我在 ~/.config/wireplumber/50-alsa-config.lua 下有一个文件,我添加它只是为了设置,["session.suspend-timeout-seconds"] = 0这样我就不会听到爆音了。我删除了它,因为在 23.10 中,/etc/wireplumber 下存在具有完全相同设置的文件,并且具有该设置。重新启动 pipewire 没有任何作用,但系统重新启动却起了作用。我的本地用户 alsa-config 和 etc 中的内容没有区别,但无论如何。

相关内容