alsamixer

按F6选择你的声卡,选定你的声卡后,在下方有一排可选的值,按方向键→找到Auto-mute mode值,把这个值设置设置为设为Disabled注意:如果Auto-mute mode的值已经是Disable状态,下方这个步骤可以省略。

PS:此动态图采自deepin官方论坛的pony_sunset坛友。 把这Auto-mute mode值设置设置为设为Disabled之后,按下ESC按键,输入下方的代码保存后退出。

sudo alsactl store

接下来重启电脑后,耳机音响应该都可以正常出声音了。

注意:如果Auto-mute mode的值已经是Disable状态,上方这个步骤可以省略。

但是这样操作,虽然线缆输出和模拟耳机都可以正常出声音了,但是选择模拟耳机输出的时候,如果音响不关的话,耳机会和喇叭同时出声,下方是解决方案: 终端输入:

sudo gedit /usr/share/pulseaudio/alsa-mixer/paths/analog-output-headphones.conf

在这个文件找到下方的这个值:

[Element Front]
switch = mute
volume = zero

把这个值改成:

[Element Front]
switch = off
volume = off

修改完毕,重启电脑选择耳机输出的时候,即使外置喇叭功放电源开启着,也只有耳机可以出声了。

改好之后需要值得注意的是,改了之后不能去打开alsamixer,不然的话上方更改的数值会自动还原,需要重新更改一次。如果发现设置无效,就再次返回第二步的步骤。 额外说一下,我去查了 switch = mute volume = zero 这两个语句末尾的值,它分别是mute(哑的; 无声的; 沉默的; 不出声的)、zero(零)。 我个人猜测这个值在Auto-mute mode为Enabled的情况下起作用。如果为Disabled的时候它失效。 相反,如果把Auto-mute mode改为Disabled的时候mute、和zero不起作用,要用off让它起作用。 这个方法是本人自己摸索出来的,网上找了很多教程,都没找到相关的。后来还是自己找到办法了。