当我打开会话时,我的笔记本电脑扬声器开始发出呜呜声。当我使用访客用户会话时,不会发生这种情况。
当 CPU 活动(例如移动鼠标、启动程序等)时,噪音就会停止,尤其是在使用完整的 CPU 内核时 ( cat /dev/zero > /dev/null
)。
过去只有当我插入外部声卡时噪音才会很大,但现在只要我的会话打开,即使我正在使用另一个会话,噪音也会发生。奇怪的是,当我不使用桌面,但仅通过 tty 登录时,噪音要弱得多。 - 编辑,显然它发生在两种情况下(仍然仅在我登录时发生):
- 声卡已插入并正在使用。
- Firefox 正在运行(噪音较弱,并非一直存在,重新启动 Firefox 几次后较少出现)。
我想确定是什么软件使我的笔记本电脑在空闲时产生这种噪音,然后将其停止或删除。
我的笔记本电脑是 Acer Swift (NC-SF314-51-74FW)。
$ uname -mr
4.15.0-23-generic x86_64
$ lsb_release -cds
Ubuntu 18.04 LTS
bionic
$ yes | alsa-info | grep -o 'http.*'
http://www.alsa-project.org/db/?f=fc032e6cb8cdc2317ea76f852c1e2a954c7dd315
$ ls /etc/rc5.d/S* | pastebin # services
https://pastebin.com/CCT5Ju6U
$ dpkg -l | pastebin
https://pastebin.com/ZsDm5w7e
答案1
fuser
这似乎是使用或lsof
确定哪些进程正在使用声卡来找出正在使用声卡的方式。搜索我发现这个 SU Q&A 标题为:如何找出 Linux 中哪些程序正在使用声音?。
那里的答案之一的示例:
拉索夫$ lsof /dev/snd/*
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
pulseaudi 1142 burhan mem CHR 116,3 7885 /dev/snd/pcmC0D0p
pulseaudi 1142 burhan 21u CHR 116,5 0t0 7887 /dev/snd/controlC0
pulseaudi 1142 burhan 28u CHR 116,5 0t0 7887 /dev/snd/controlC0
pulseaudi 1142 burhan 36r CHR 116,33 0t0 6351 /dev/snd/timer
pulseaudi 1142 burhan 37u CHR 116,3 0t0 7885 /dev/snd/pcmC0D0p
定影器
$ fuser -v /dev/snd/*
USER PID ACCESS COMMAND
/dev/snd/controlC0: burhan 1142 F.... pulseaudio
/dev/snd/pcmC0D0p: burhan 1142 F...m pulseaudio
/dev/snd/timer: burhan 1142 f.... pulseaudio
如果您发现遇到脉冲音频,您可以pavucontrol
通过该 GUI 进一步调试/跟踪它。请参阅我的其他答案之一,该答案在 UL 问答中显示了此 GUI,标题为:不知何故设法将 mplayer 静音,但不知道如何恢复声音。
答案2
除了如何检查 ALSA/Pulseaudio 客户端的其他答案之外:
我怀疑原因不是特定的客户端,而是声音编解码器中各种放大器的错误设置(包括环回)。要调试这些,最好的方法是使用amixer -c 42 contents
(哪里42
是你的卡的编号),然后看看全部看看是否有任何可疑的东西。
一旦您知道哪些音量设置可用,您还可以用于alsamixer
实时更改(不要忘记向左/向右滚动)。还要注意静音或不静音的内容。