Ubuntu 16.04 上的 ALSA 和 Realtek ALC3246

Ubuntu 16.04 上的 ALSA 和 Realtek ALC3246

我的新 Ubuntu 笔记本电脑(Dell XPS 13)上的声音不再起作用。我在这台机器上双启动 Windows 和 Linux,在这两种操作系统下我都遇到了完全没有声音的问题。Windows 的解决方案是 BIOS 设置(将“Fastboot”设置为“Thorough”);虽然我知道这与音频无关,但这是一个已知问题。

在 Ubuntu 上,没有声音的情况有点随机。起初,在 BIOS 设置中将“Fastboot”更改为“Auto”似乎有效,但从睡眠状态恢复后,声音又消失了。此外,恢复后会立即弹出一个对话框,询问我刚刚插入了什么设备(耳机等),而我实际上并没有插入任何东西。这个帖子描述了类似的问题,并建议重新启动是解决问题的唯一方法。将声源改回扬声器并增加音量alsamixer没有效果。

此外,昨天声音正常工作时,系统音量控制对音量没有影响。

我在 Ubuntu 下找不到有关此声卡(Realtek ALC3246)的任何具体信息。

我的系统配置(使用 ALSA 信息脚本)在这里:

http://www.alsa-project.org/db/?f=a480ccb1bd0b063871459b408e18be241cabfd9f

更新:

我尝试按照说明强制使用 I2S 声音这里。没有变化,但是我目前仍在运行修改后的内核。

然后,我发现了以下内容致命错误dmesg

[   10.980953] snd_hda_intel 0000:00:1f.3: azx_get_response timeout, switching to single_cmd mode: last cmd=0x208f8100

根据链接,错误与编解码器探测有关,可能的解决方案是强制探测特定编解码器。以下组合强制探测编解码器插槽 0:

options snd-hda-intel probe_mask=0x101

这似乎已经解决了扬声器发出的声音问题,至少目前如此,而且在睡眠周期后修复仍然有效。此外,音量控制又可以正常工作了,这是我没有立即注意到的另一个症状(因为声音最多是断断续续的),但肯定是一个问题。

答案1

错误消息

[   10.980953] snd_hda_intel 0000:00:1f.3: azx_get_response timeout, switching to single_cmd mode: last cmd=0x208f8100

被描述这里与编解码器探测问题有关。添加以下行

options snd-hda-intel probe_mask=0x101

/etc/modprobe.d/alsa-base.conf,强制探测编解码器插槽 0,而不管硬件报告的内容,似乎已经解决了扬声器和耳机的所有问题,并且它可以在睡眠周期中存活下来。

相关内容