
我正在嘗試在 Linux 終端機上使用 amixer 命令靜音和取消靜音。
用於靜音的命令:
amixer sset 'Master' mute
和
amixer set Master mute
兩者都工作...
但是當我嘗試取消靜音時:
amixer sset 'Master' unmute
和
amixer set Master unmute
它不起作用,音量仍然靜音。
兩個取消靜音程式碼行都嘗試在終端機中傳回以下輸出:
簡單混音器控制 'Master',0 功能: pvolume pvolume-joined pswitch pswitch-joined 播放通道:單聲道 限制:播放 0 - 87 單聲道:播放 87 [100%] [0.00dB] [on]
如何使 amixer 能夠取消靜音以及為什麼它無法關閉? amixer 是 Linux 作業系統* 中控制音量的更好命令嗎?如果不是,什麼工具比 amixer 更好?
*注意:一般是 Linux 作業系統,因為它應該適用於所有 Linux 發行版,並且出現靜音/取消靜音聲音的不相容性和程式碼變更的可能性較小。
答案1
由此郵政阿維達斯寫道:
由於某種原因,靜音工作正常,但取消靜音或切換則無效。經過進一步調查,我注意到透過將主通道靜音,「PCM」和「Master Mono」通道也會被靜音。取消 Master 靜音不會取消這兩個頻道的靜音。
這對我在 ubuntu 14.04 (qtile WM) 上取消靜音有用:
pactl set-sink-mute 0 0
靜音:
pactl set-sink-mute 0 1
更新:
關於這個問題有很多報導錯誤#1026331和錯誤#878986 在啟動板中,如果您靜音/切換主控:
amixer set Master mute
其他聲道(在我的例子中是耳機和揚聲器)也會靜音。但如果你取消靜音/切換 Master :
amixer set Master unmute
其他聲道將保持靜音,但如果您嘗試取消耳機和揚聲器通道靜音,聲音將會回來
amixer set Master unmute
amixer set Headphone unmute
amixer set Speaker unmute
答案2
xdotool有時會很麻煩,幸運的是PulseAudio現在提供了音量調節和靜音的命令。
嘗試這個指令:pactl set-sink-mute 0 toggle
切換靜音。
來源:https://wiki.archlinux.org/index.php/PulseAudio#Keyboard_volume_control
答案3
所有上述現有答案都使用pactl
或xdotool
,這是一個amixer
具體答案:
這適用於靜音和取消靜音:
amixer -D pulse set Master toggle
它指定脈衝音訊以確保取消靜音、取消所有靜音。
- 它可以從 13.04 運行到 17.10,一直到目前的 Ubuntu 和 Debian
- 原答案裡有
1+
,但原因不明,“如果沒有參數,效果會更好1+
” - 有些人聲稱甚至
amixer set Master toggle
有效,並且我已經確認它適用於我的 Debian 10。
答案4
amixer -D pulse set Master 1+ toggle