我如何覆盖 PulseAudio 耳机设备优先级?

我如何覆盖 PulseAudio 耳机设备优先级?

我有多个 USB 声卡,它们都用于特定应用程序。以前 pulseaudio 会随机选择其中一个作为默认设备,但我设法使用 udev 规则,其中 ENV{PULSE_PROFILE_SET} 指向

[General]
priority = 1

降低所有这些的优先级,并将主板声卡保留为默认设置。

但是,最近我添加了一个 USB 耳机(我已在特定应用程序中将其指定为默认耳机),但我仍然希望主板音频成为所有其他应用程序的默认音频。不幸的是,似乎有什么东西以 99 的优先级覆盖了我的设备特定优先级(通用耳机配置?):

$ pactl list sinks | egrep  'Name|priority'
    Name: alsa_output.usb-Logitech_Logitech_G430_Gaming_Headset-00.analog-stereo
        analog-output-headphones: Headphones (priority: 9900)
    Name: alsa_output.pci-0000_0e_00.3.analog-stereo
        analog-output-lineout: Line Out (priority: 9000, available)
        analog-output-headphones: Headphones (priority: 9900, not available)

我只是想禁用自动切换,但有时我会暂时将外部扬声器插入主板耳机插孔,但我仍然希望它能够自动切换到该插孔并转回。

我用来识别设备的 udev 规则是

ATTRS{idProduct}=="0x0a4d", ATTRS{idVendor}=="0x046d", ENV{PULSE_PROFILE_SET}="pulseaudio-gaming-headset.conf"

其中提及的文件包含如上所示的优先级调整。

系统在启动后和使用主板耳机插孔后都会默认切换为耳机。我想停止这种情况。

如果有一个 GUI 可以在用户配置文件中硬性设置特定设备优先级,那就太好了。假设不存在,我该如何解决这个问题?

注意:Ubuntu 20.04

相关内容