为什么 unmute 不适用于 amixer 命令?

lcs*_*vcn 5 linux-terminal

我正在尝试在 Linux 终端上使用 amixer 命令静音和取消静音。

用于静音的命令:

 amixer sset 'Master' mute
Run Code Online (Sandbox Code Playgroud)

amixer set Master mute
Run Code Online (Sandbox Code Playgroud)

两者都工作...

但是当我尝试取消静音时:

amixer sset 'Master' unmute
Run Code Online (Sandbox Code Playgroud)

amixer set Master unmute
Run Code Online (Sandbox Code Playgroud)

它不起作用,音量仍然静音。

两个取消静音的代码行都尝试在终端中返回此输出:

简单的混音器控制 'Master',0 功能:pvolume pvolume-joined pswitch pswitch-joined 播放通道:单声道限制:播放 0 - 87 单声道:播放 87 [100%] [0.00dB] [开]

我怎样才能让 amixer 工作以取消静音以及为什么它不会关闭?在 Linux 操作系统 * 中控制音量的更好命令是 amixer 吗?如果不是什么工具比 amixer 更好?

*注意:一般来说 Linux 操作系统,因为它应该适用于所有 Linux 发行版,并且不兼容和代码变化的可能性较小以静音/取消静音。

Ahe*_*Eid 8

从这篇文章Arvydas 写道:

出于某种原因,静音工作正常,但取消静音或切换无效。经过进一步调查,我注意到通过静音主通道,“PCM”和“主单声道”通道也被静音。Unmuting Master 不会取消这两个通道的静音。

这对我在 ubuntu 14.04 (qtile WM) 上取消静音有用:

pactl set-sink-mute 0 0
Run Code Online (Sandbox Code Playgroud)

静音:

pactl set-sink-mute 0 1
Run Code Online (Sandbox Code Playgroud)

更新:

有很多关于这个问题的报告Bug #1026331Bug #878986 在 launchpad ,如果你静音/切换主:

amixer set Master mute
Run Code Online (Sandbox Code Playgroud)

其他通道(在我的情况下是耳机和扬声器)也会静音。但如果您取消静音/切换 Master :

amixer set Master unmute
Run Code Online (Sandbox Code Playgroud)

其他通道将保持静音,但如果您尝试取消静音耳机和扬声器通道声音会回来

amixer set Master unmute
amixer set Headphone unmute
amixer set Speaker unmute
Run Code Online (Sandbox Code Playgroud)