停止debian音频输出从自动更改为从S / PDIF到HDMI

问题描述 投票:0回答:1

我正在使用Debian10。我的显示器的声音质量很差。我将声音输出分配给S / PDIF,并通过Bechmark DAC1和JBL监听器获得出色的声音。工作了多年。突然,我的声音默认设置不断切换到HDMI。起初,声音只有在使用新的Firefox Web浏览器时才发生变化,但之后一直都在发生。每天必须使用pavucontrol 100次以使声音输出分配给S / PDIF变得非常烦人。

debian alsa pulseaudio hdmi
1个回答
0
投票

Firefox和Chrome使用Pulse Audio自动将输出重定向到HDMI。由于Pulse Audio在首次执行时会为每个应用程序保存声音设置,因此问题变得越来越严重。当您不播放声音时,您将不知道网络浏览器何时将输出切换为HDMI,但是新设置将被记录为您要运行的下一个应用程序所需的输出。在应用程序运行时切换输出后,Pulse Audio倾向于保留录制的HDMI设置,这将导致下次您运行该应用程序时,输出再次切换到HDMI。常见的网络浏览器会非常频繁地将输出切换到HDMI-当您打开新标签页,点击播放电影等时。

解决方案是删除脉冲音频。

$ sudo apt-get purge *pulse*
$ sudo apt-get autoremove
$ reboot

确保您查看由apt-get purge *pulse*生成的列表,以确保仅删除与Pulse Audio相关的软件包。

现在您必须使用$ alsamixer之类的ALSA实用程序来选择音频输出,而$ amixer set PCM db...(可以分配给音量键)则需要调节音量,因为$ pavucontrol$ pacmd将不再存在。

我已经对该程序进行了两次测试:安装通用脉冲音频程序包,重新出现问题,并使用apt-get purge *pulse*消除问题。我发现这很有趣,这可以解决问题,因为libpulse0(Pulse Audio基础软件包)仍保留在我的系统上(可能是我安装的另一个软件包的依赖项)。

我还存在通过重新启动将声音输出默认设置为S / PDIF而不是HDMI的问题。我通过使用以下命令创建〜/ .asoundrc来解决此问题:

pcm.!default {
  type plug;
  slave { pcm "sysdefault:CARD=PCH" }
}

如果我将从站直接设置为hw:0,1(我的S / PDIF输出),那么我会松开音量控制。我不明白我的回答,我只知道它有效。作为旁注;在反复寻找解决方案的几个月中,我发现了openbox(一种速度更快的系统,具有出色的键盘声明),但是我错过了XFCE屏幕放大功能。

© www.soinside.com 2019 - 2024. All rights reserved.