我刚刚在联想 Yoga 910 上安装了 Ubuntu 16.10,发现通过耳机收听时音频会不时出现噼啪声。它主要发生在左声道,似乎与较低频率有关,如果我使用均衡器将所有低于 1kHz 的滑块调到最低,噼啪声就会消失。它似乎是确定性的,在特定位置的特定录音中持续发生。
它似乎与 pulseaudio 无关,因为我尝试禁用它,但噼啪声仍然存在。我也尝试使用 4.10 主线内核。
snd-hda-intel
我已经尝试了中的以下选项的所有排列/etc/modprobe.d/alsa-base.conf
:model=auto
、,以及power_save=0
的power_save_controller=N
所有可能值position_fix
。
我也尝试过禁用自动静音功能,alsamixer
但没有帮助。
我发现这个最近的 ALSA错误报告这看起来可能是我遇到的问题。我想在这里问一下,看看是否有人知道我可以尝试其他什么方法来解决这个问题。
答案1
Robert Joynt 在评论对此alsa-driver 错误报告。以下是说明书的副本:
如果没有安装,请安装 alsa-tools:
sudo apt install alsa-tools
创建并保存脚本
/usr/local/bin
:#!/bin/bash hda-verb /dev/snd/hwC0D0 0x20 SET_COEF_INDEX 0x67 hda-verb /dev/snd/hwC0D0 0x20 SET_PROC_COEF 0x3000
在终端以 root 身份运行脚本以立即解决问题。
要在启动时运行脚本,请使用 cron 和 @reboot 命令:
sudo crontab -e
然后在 crontab 中添加行:
@reboot [full path to script]
要在从暂停状态恢复时运行脚本,请将脚本复制到
/lib/systemd/system-sleep
有关此修复的更多技术细节,请参阅 https://bugzilla.kernel.org/show_bug.cgi?id=195457
答案2
我在使用 Ubuntu 20.04.1 的 HP Pavilion 15-cw1905nz 电脑时仍然存在此问题,并且有迹象表明这不是 Ubuntu 特有的错误。
robertjjoynt 的修复对我有用,但只有在我将声卡从 hwC0D0 更改为 hwC1D0 后才有效。所以我的脚本如下:
#!/bin/bash
hda-verb /dev/snd/hwC1D0 0x20 SET_COEF_INDEX 0x67
hda-verb /dev/snd/hwC1D0 0x20 SET_PROC_COEF 0x3000
您可能需要对其进行一些调整:如果上述脚本不起作用,请尝试用其他设备(在 /dev/snd/ 中列出)替换“hwC1D0”,直到它起作用为止。
如果还是不行,那么也许你需要改变的特定系数不一样。Frédéric Pierret 在 bugzilla 上的回答详细说明这一切是如何运作的。我永远感谢他和罗伯特。
答案3
TL;DR:插件
答案4
仅发布一个对我有用的解决方案。
这就像将您的用户添加到脉冲访问一样简单:
sudo adduser [你的用户] pulse-access
希望它有效!
顺便说一句,别忘了玩得开心!
PS- 这只是一种解决方法,因为如果你进入声音设置并触摸网络浏览器流媒体的音量设置,它就会失败。就我而言,这对我来说是一个解决方案,因为我不习惯深入那里...:D...我只是一个音乐消费者...;P