如何删除 PulseAudio 中的 Nvidia HDMI 音频输出?

man*_*lan 28 sound pulseaudio hdmi

每次重新启动时,PulseAudio 都会将接收器(在我的情况下为“HDMI 音频输出”)设置为默认值。

因此,在每次重新启动时,我听不到任何声音,并且每次都需要将默认接收器重新配置为“模拟输出”。

如何删除/禁用特定接收器(例如 HDMI),或设置覆盖现有接收器的默认接收器?

小智 11

只需将声卡的配置文件设置为“关闭”,例如:

pactl set-card-profile alsa_card.usb-Generic_ThinkPad_Dock_USB_Audio-00 off
Run Code Online (Sandbox Code Playgroud)

pavucontrol 可以在其“配置”选项卡中很好地做到这一点:

在此处输入图片说明

另一种方法是完全禁用pulseaudio中的任何自动连接功能,但是我喜欢在我的蓝牙耳机的情况下使用此功能。使用上述解决方案,您可以细粒度地禁用声卡。


小智 9

在 18.10 我能够修复它

文件/etc/modprobe.d/blacklist.conf
添加

blacklist snd_hda_codec_hdmi
Run Code Online (Sandbox Code Playgroud)


Tak*_*kat 7

1. 删除用户设置

之前编辑的另一种方法default.pa将重命名隐藏的目录~/.pulseaudio喜欢的东西~/.pulseaudio.000在你的/ home目录。这是您的用户定义设置的存储位置。如果删除或重命名,它将立即从/etc/pulse/default.pa设置重新创建。

2. 编辑默认值

只有当这对您的系统没有影响时,udev 才可能将 HDMI 接口加载为默认接收器。那么一种方法可以是HagenaarsDotNu已经提到的编辑 default.pa 的方法。注意备份当前的default.pa。寻找这一节,它是不言自明的(请注意 hal-detect 在 Ubuntu > 10.04 中不起作用)。

### Load audio drivers statically (it's probably better to not load
### these drivers manually, but instead use module-hal-detect --
### see below -- for doing this automatically)
#load-module module-alsa-sink
#load-module module-alsa-source device=hw:1,0
#load-module module-oss device="/dev/dsp" sink_name=output source_name=input
#load-module module-oss-mmap device="/dev/dsp" sink_name=output source_name=input
#load-module module-null-sink
#load-module module-pipe-sink
#
### Automatically load driver modules depending on the hardware available
.ifexists module-udev-detect.so
load-module module-udev-detect
.else
### Alternatively use the static hardware detection module (for systems that
### lack udev support)
load-module module-detect
.endif
Run Code Online (Sandbox Code Playgroud)

3. 优雅之道

让音频工作的另一种更优雅的方法是从paprefs启用“同步输出”,如下所示:

纸条

这将启用内部音频和 HDMI 接口上的音频输出。将此虚拟输出设备设为您的默认设备,您将拥有所有选择。