我想知道是否有办法消除耳机高音量下的音频失真。当我同时启动 Linux 和 Windows 时,我通常会启动到 Windows,然后再启动回 Linux 以解决我的问题,并且不会在耳机上出现任何更高级别的失真。
现在我只有一台装有 Linux 的机器,每当我插入耳机时,似乎都无法阻止声音在更高级别上失真,因为我弄乱了 alsa 混音器 pcm 音量,更改了 alsamixer 中的耳机音量,并且还尝试过不同的耳机。
即使我通过调整耳机、主控或PCM音量来停止失真,即使我将耳机调到最大,声音也往往会有些微弱。我还想知道是否需要等待固件/内核更新,因为我使用的是相对较新的硬件,带有 Realtek ALC 295 声卡,或者只是更换该卡,即使我不确定是否应该如果有更简单的方法来解决问题,请执行此操作。
谢谢!
答案1
打开所有硬件混音器就可以了。
编辑:实际上,在Arch中使用ladpsa放大器和压缩器之后,实际上只是找到了另一个稍微有点hacky的解决方案来解决这个问题。类似的东西可能也适用于其他发行版。
- 安装ladspa插件:
pacman -S ladspa-插件
创建一个.asoundrc主文件夹中的文件:
将此代码粘贴到.asoundrc文件:
PCM.脉冲{
类型脉冲
}
ctl.pulse {
type pulse
}
pcm.default pcm.pulse
ctl.default ctl.pulse
- 将这些命令粘贴到 /etc/pulse/default.pa 中:
加载模块 module-ladspa-sink sink_name=ladspa_output.fastLookaheadLimiter label=fastLookaheadLimiter 插件=fast_lookahead_limiter_1913 control=20,0,0.3 加载模块 module-ladspa-sink sink_name=ladspa_output.dysoncompress 标签=dysonCompress 插件=dyson_compress_1403 master=ladspa_output.fastLookaheadLimiter control=0,0.5,0.5,0.99 设置默认接收器 ladspa_output.dysonCompress
消除脉冲音频 alsa因为它与ladpsa-插件
重启!
调低音量
编辑2:只是添加了一些稍微调整的内容默认.pa设置有助于消除失真频率。它并不完美,但在我的硬件上运行得相当好:
加载模块 module-ladspa-sink sink_name=ladspa_output.fastLookaheadLimiter label=fastLookaheadLimiter 插件=fast_lookahead_limiter_1913 control=5,0,0.8 加载模块 module-ladspa-sink sink_name=ladspa_output.dysoncompress label=dysonCompress 插件=dyson_compress_1403 master=ladspa_output.fastLookaheadLimitercontrol =-14,1,0.5,0.99 设置默认接收器 ladspa_output.dysonCompress