use*_*844 5 sound speakers pulseaudio alsa
我有一台带有两个扬声器的笔记本电脑:其中一个扬声器损坏并播放令人不快的失真声音。
如何永久停用它或使用平衡控制它?
我认为终端命令是首选。
另外,我使用 Gnome 的基本声音设置和 PulseAudio Manager。后者用于最大化音量,因为前者不允许我超过 150%。但当我使用 PulseAudio Manager 时,它会自动将扬声器重新平衡到 50%/50%。因此,任何解决方案都必须足够持久,以便 PulseAudio Manager 无法改变平衡。
谢谢。
我不知道有什么方法可以用 ALSA 或 PulseAudio 锁定控件,但是这个小技巧应该可行:
stdbuf -oL alsactl monitor | \
while read; do
amixer -D pulse sset Master 0,-
done
Run Code Online (Sandbox Code Playgroud)
它使用alsactl monitor(您可以自己运行此命令并更改音量以查看其作用)监视音量变化,并且每次进行更改时,它都会将左声道的音量重置为 0。
您可能需要更改:
pulse如果您使用不同的音频设备,则可以更改为其他内容。
0,-如果-,0您想将右声道保持静音。
Master例如Speaker,0,如果您希望辅助控制(例如耳机)正常工作。
您可以通过以下方式使脚本在启动时运行:
~/.bin/alsa-fix,chmod +x ~/.bin/alsa-fix,以及~/.bin/alsa-fix &到~/.profile.该脚本实际上不应该使用 CPU 或 RAM,但如果您想让它更加高效,您可以dash通过将该行添加#!/bin/dash到文件顶部来运行它。
GUI界面中有一个声音的左右平衡控制。您的问题似乎表明您更喜欢终端命令,因此如果是这种情况,我无法帮助您。但是,如果您只是决定将其中一个扬声器静音,您应该能够在声音设置中进行配置。只需单击屏幕顶部的扬声器图标一次,然后单击声音设置。