取消静音和最大化音量的命令?
我需要从命令行静音/取消静音。 我发现我能做到:
amixer sset Master mute amixer sset Master unmute
问题是取消静音的命令不起作用(如本错误报告中所述: https : //bugs.launchpad.net/ubuntu/+source/alsa-utils/+bug/878986 )
我的问题是:是否有其他方法可以获得相同的结果,amixer不工作?
此外,如果我手动将音量设置为最小,然后调用
amixer sset Master 100%
即使stdout告诉:音量增加但不会切换到最大值
Simple mixer control 'Master',0 Capabilities: pvolume pswitch pswitch-joined penum Playback channels: Front Left - Front Right Limits: Playback 0 - 31 Mono: Front Left: Playback 31 [100%] [0.00dB] [on] Front Right: Playback 31 [100%] [0.00dB] [on]
任何人都可以帮我吗?
在终端中尝试以下命令
amixer -c 0 set Master playback 0% mute amixer -c 0 set Master playback 100% unmute
这应该确保所有输出都得到控制。 对于您的发布命令,音量不是100%的原因可能是混音器不会同时释放所有输出,例如耳机或任何其他声音输出。
更好的是这个,取消静音所有音频设备。 并将音量设为70%
for x in `amixer controls | grep layback` ; do amixer cset "${x}" on ; done for x in `amixer controls | grep layback` ; do amixer cset "${x}" 70% ; done
在上面的例子中,HDMI和光学不是没有变化的。
获取所有声音源,获取其名称,使用amixer形成命令行并执行它
amixer scontrols | grep -oE "'.*'" | awk -F\' \ '{print "amixer -c 0 set \""$2"\" unmute 100"}' | sh
取消静音所有音频设备并将其音量设置为最大值。
有一个伟大的,迈克
Mark Rooney的解决方案对我不起作用,但我能够通过明确取消所有通道的静音来解决这个问题。
#!/bin/bash for i in Master Headphone PCM Front Surround Center LFE Side; do amixer -c 0 set "$i" playback unmute done &>/dev/null
我得到了频道名称,但运行alsamixer
。
好的,首先你需要知道你的不同卡号
alsamixer
从F6中选择卡片并记下具有Master选项的卡片编号
如果您使用耳机,那么我们更换主机和耳机
amixer -c 1 set Master toggle && amixer -c 1 set Headphone toggle
其中-c指定卡号,在此命令中为1。
您使用的命令对我来说也不起作用,但请尝试这些。 他们为我工作。
amixer set Master 0 amixer set Master 100
Mark Rooney接受的答案对我没有帮助,因为该命令给了我一个错误(我的声卡有1号):
amixer: Mixer attach hw:1 error: Invalid argument
所以我试过了
amixer set Master 100 unmute
它适用于当前选定的声卡。 您也可以使用它来静音
amixer set Master 0 mute