2014 年购买的 Dell XPS 13 耳机插孔无法使用

2014 年购买的 Dell XPS 13 耳机插孔无法使用

类似地耳机插孔不工作?,我有一台戴尔 XPS 13,自从我升级到 Ubuntu 16.04 后,我的耳机插孔就不再工作了,而内置扬声器工作正常。当我插入耳机时,我没有看到任何窗口像以前一样询问我它是麦克风还是耳机。

我尝试了所提及的链接上的每一个解决方案,但都不起作用(即使重启或 sudo alsa force-reload 后也是如此): - 修改 /usr/share/pulseaudio/alsa-mixer/paths/ 中的 analog-output-headphones.conf - 修改 /etc/modprobe.d/alsa-base.conf

我尝试将 Linux 内核更新到 4.6,但是效果不佳。

看来我不是唯一遇到这个问题的人,因为我在提到的链接的评论中看到了这一点 +15.04 Dell XPS 13 中耳机无法使用

答案1

首先我重新安装了所有东西按照 Ubuntu 声音故障排除步骤 1 顺利完成:https://help.ubuntu.com/community/SoundTroubleshootingProcedure并运行:

sudo apt-get update;sudo apt-get dist-upgrade; sudo apt-get install pavucontrol linux-sound-base alsa-base alsa-utils lightdm ubuntu-desktop  linux-image-`uname -r` libasound2; sudo apt-get -y --reinstall install linux-sound-base alsa-base alsa-utils lightdm ubuntu-desktop  linux-image-`uname -r` libasound2; killall pulseaudio; rm -r ~/.pulse*; ubuntu-support-status; sudo usermod -aG `cat /etc/group | grep -e '^pulse:' -e '^audio:' -e '^pulse-access:' -e '^pulse-rt:' -e '^video:' | awk -F: '{print $1}' | tr '\n' ',' | sed 's:,$::g'` `whoami`

然后我设法打开耳机的音量解决方案来自15.04 Dell XPS 13 中耳机无法使用回答:

每次启动后,也许每次挂起后,我都必须打开终端并运行 alsamixer,这是一个用于调整音量的 CLI 应用程序。使用箭头键选择“耳机”列。按“M”取消静音(如果底部显示“M”)。按向上箭头将耳机列的音量调到最大。然后使用箭头键移动到“扬声器”列。除非您希望声音从扬声器和耳机插孔中发出,否则您可能希望将其调到最小。

[更新]我发现了一个命令行,只要我插入耳机就可以执行它。

amixer -c 1 set Headphone on;amixer -c 1 set Headphone 100%

为了达到这个目的,我必须

找到正确的卡来使用:

amixer controls

使用第一张卡并查看该卡上有哪些控件可用

amixer -c 1

打开它

amixer -c 1 set Headphone on

设定音量

amixer -c 1 set Headphone 100%

答案2

我去了脉冲音频音量控制、输入设备,取消静音内置麦克风和耳机又能正常工作了。

2016 年 XPS 13 Ubuntu 18.04

答案3

在我的 Dell XPS 15 上尝试了各种不同的解决方案后,耳机仍然无法被检测到,只能使用模拟内置扬声器(之前也无法工作)。

然后我尝试了amixer来自@Jeremy 的回答,但什么也没发生,在我根据 Launchpad 的用户建议执行以下操作之后:

rm -r ~/.config/pulse/
pulseaudio -k && sudo alsa force-reload
sudo reboot

在执行命令时以及笔记本电脑重启时,我始终将耳机连接到插孔。

重启后耳机可以播放声音,尽管它们仍未列在输出设备中,只列出了内置模拟扬声器,但声音实际上是通过耳机发出的。从那时起,我就再也没有拔掉耳机,也没有重启过系统。

功劳归于用户卡米洛·普列托这个 Launchpad 错误评论

答案4

我的稍新的 XPS 13 (9370) 也遇到了这个问题,不过对我来说,这个问题与笔记本电脑扬声器和耳机输出之间的切换有关。出于某种原因,当插孔连接时,耳机的放大器并不总是打开。为了解决这个问题,我必须强制启用放大器。

为了弄清楚该怎么做,我比较了cat /proc/asound/card0/codec#0工作时和非工作时的输出,并注意到立体声放大器输出/外部右声道输出部分的 HP 输出存在差异:

Node 0x21 [Pin Complex] wcaps 0x40058d: Stereo Amp-Out
 Control: name="Headphone Playback Switch", index=0, device=0
   ControlAmp: chs=3, dir=Out, idx=0, ofs=0
 Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
 Amp-Out vals:  [0x00 0x00]
 Pincap 0x0001001c: OUT HP EAPD Detect
 EAPD 0x2: EAPD
 Pin Default 0x04211020: [Jack] HP Out at Ext Right
   Conn = 1/8, Color = Black
   DefAssociation = 0x2, Sequence = 0x0
 Pin-ctls: 0xc0: OUT HP

最后一个值 Pin-ctls 在耳机插孔工作时为 0xc0,在耳机插孔不工作时为 0x00。因此,当输出不工作时,我会翻转该位:

sudo hda-verb /dev/snd/hwC0D0 0x21 SET_PIN_WIDGET_CONTROL 0xc0

根据具体的声卡,这些值可能会有所不同,但此方法可能对其他人有用。

相关内容