Linux 音频空闲时出现杂音的三个解决方案

问题描述

当电脑音频空闲几秒钟后开始出现杂音,播放音频或者打开音频设置面板时杂音消失。而在windows系统下没有这种情况。除了扬声器出现杂音以外,部分主板还会出现类似电感啸叫的声音

原因

Linux系统下会启用声卡控制芯片的省电模式,当无音频信号输出时进入省电模式,使音响的音频信号输入接地悬空,受到开关电源等干扰而出现杂音。至于有些主板为什么会出现啸叫声,还没有找到相关资料

解决方案

方案一:在硬件上解决

音响出现杂音的原因是接地悬空和在此基础上的信号干扰,只要解决了接地悬空和信号干扰就能解决问题。这种方法还能解决电脑关机之后音响出现杂音的情况。所以你可以:

1、手动为音频信号输入端子接地。这要求你需要做这方面的研究,随意接线可能会导致功放烧坏和安全问题。

2、为音频输入搭建一个抗干扰的环境。这非常困难,因为你很难想象干扰来自哪里。

3、购买并更换一个已经解决了因为信号接地悬空和干扰而出现杂音的质量更好的音响。这需要你精心挑选音响并且有足够的财力

方案二:关闭音频芯片省电模式

需要关闭音频芯片的省电模式,需要在终端中执行

sudo echo 0 > /sys/module/snd_hda_intel/parameters/power_save

如果你使用的是usb声卡,上述路径中的snd_hda_intel需要改为snd_usb_audio

你还可以通过cat /proc/asound/modules来查看更多信息

此时你的音响就没有杂音了。否则的话这个方案失败了。

这个命令每次重启都会失效,我们需要其他配置来使他永久生效。

如果你不使用vim,可以使用其他编辑器做出相同的操作。

# 使用vim创建文件
sudo vim /etc/modprobe.d/audio_disable_powersave.conf
# 按a建进入编辑模式,输入以下内容
options snd_hda_intel power_save=0
# 按Esc键返回到vim的命令模式
# 输出:x回车 即可保存修改
# 此时重启系统配置生效

方案三:关闭音频空闲挂起功能

方案二不能解决我的主板啸叫问题,但是方案三可以。如果你使用的音频服务器是PulseAudio,那么你可以通过以下操作来关闭音频空闲挂起功能

# vim 打开PulseAudio配置脚本文件
sudo vim /etc/pulse/default.pa

# 输入/suspend-on回车搜索跳转下面这行命令
load-module module-suspend-on-idle
# 把他注释掉(也就是在行首加#号,变成#load-module module-suspend-on-idle)

# 具体操作:
# 1、按下Shift+i在行首插入内容
# 2、输入#符号
# 3、按Esc键返回到vim的命令模式
# 4、输入:x回车 即可保存修改

# 此时重启系统配置生效

  • 11
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值