Câu trả lời:
Giả sử bạn đang sử dụng trình điều khiển ALSA, hãy chạy:
amixer set Master mute
amixer set Master unmute
Hoặc, bạn chỉ có thể sử dụng:
amixer set Master toggle
bật tắt tiếng và tắt tiếng.
sudo amixer
và tìm dòng trong đầu ra khớp vớiSimple mixer control 'Speaker',0
Điều này làm việc cho tôi khi những người khác không:
amixer -q -D pulse sset Master toggle
Đây là từ liên kết trong nutty về bình luận của natty đến câu trả lời đầu tiên:
Đại từ của tôi là He / Ngài
-D pulse
tùy chọn là cần thiết khi Alsa được sử dụng với PulseAudio (và kể từ khi câu hỏi được gắn thẻ PulseAudio, điều này sẽ là câu trả lời được chấp nhận). Để biết thêm chi tiết về giải pháp này, hãy xem tại đây và tại đây trên Askubfox.
amixer -q -D pulse sset Master mute
và amixer -q -D pulse sset Master unmute
. Hoạt động tuyệt vời trên Ubuntu 16.04
Trong thiết lập của tôi đôi khi amixer unmute fail vì một số lý do. Vì vậy, tôi đang sử dụng pactl trong các tập lệnh của mình:
Để tắt tiếng:
pactl set-sink-mute 0 1
và bật tiếng:
pactl set-sink-mute 0 0
Đã thử nghiệm trên Ubuntu 12.10.
Trên thiết bị đầu cuối gõ này để tắt tiếng
amixer set Master mute
thể loại
amixer set Master unmute
Đã thử nghiệm trên Ubuntu 10.10 của tôi.
PS: +1 cho câu hỏi thú vị.
Nếu bạn đang sử dụng alsa
theo câu trả lời goric.
PulseAudio tốt hơn, nhưng không đơn giản: pactl set-sink-mute 0 1
Thực hiện công việc cho thiết bị đầu tiên, nhưng không phải nếu bạn đang sử dụng tai nghe của một đầu ra chìm khác.
Cách tốt hơn là kiểm tra pactl info
và Default Sink
sử dụng.
DEFAULT_SINK=$(pactl info | grep "Default Sink" | cut -d " " -f3)
Sau đó để tắt tiếng:
pactl set-sink-mute "$DEFAULT_SINK" "1"
Hoặc bật tiếng:
pactl set-sink-mute "$DEFAULT_SINK" "0"
Tôi đã viết một kịch bản để quản lý pulseaudio trong ghi chú của tôi. Nếu bạn muốn sử dụng, hãy lưu nó dưới dạng volume
, cung cấp quyền thực thi chmod +x volume
và thêm nó vào đường dẫn của bạn ln -sv $PWD/volume /usr/local/bin/
. Đây là kịch bản của tôi:
#!/bin/bash
# script name: volume
# Author: glaudistong at gmail.com
# depends on: yad, coreutils, pulseaudio
ps -ef | grep "yad" | grep -E "Volume [^+\-]" | tr -s " " | cut -d " " -f2 | xargs -i kill "{}" 2>/dev/null
DEFAULT_SINK=$(pactl info | grep "Default Sink" | cut -d " " -f3)
DEFAULT_SOURCE=$(pactl info | grep "Default Source" | cut -d " " -f3)
case "$1" in
init)
{
ps -fe | grep yad | grep -q volume ||
{
yad --notification --command "volume up" --text "+ Volume +" --image ~/Pictures/volume-up-dark.png &
yad --notification --command "volume down" --text "- Volume -" --image ~/Pictures/volume-down-dark.png &
}
};;
up)
{
pactl set-sink-volume "$DEFAULT_SINK" +5%
P=$(pactl list | grep -E "Name: $DEFAULT_SINK$|Volume" | grep "Name:" -A1 | tail -1 | cut -d% -f1 | cut -d/ -f2 | tr -d " ")
iconl="$(echo -ne "\U1F50A")"
iconr="$(echo -ne "\U1F56A")"
timeout .6 yad --progress --percentage "$P" --timeout 1 --no-buttons --undecorated --text="$iconl Volume $P% $iconr" --no-focus --center --skip-taskbar --on-top &
};;
down)
{
pactl set-sink-volume "$DEFAULT_SINK" -5%
P=$(pactl list | grep -E "Name: $DEFAULT_SINK$|Volume" | grep "Name:" -A1 | tail -1 | cut -d% -f1 | cut -d/ -f2 | tr -d " ")
iconl="$(echo -ne "\U1F509")"
iconr="$(echo -ne "\U1F569")"
timeout .6 yad --progress --percentage "$P" --timeout 1 --no-buttons --undecorated --text="$iconl Volume $P% $iconr" --no-focus --center --skip-taskbar --on-top &
};;
mute)
{
ismute=$(pactl list | grep -E "Name: $DEFAULT_SINK$|Mute" | grep "Name:" -A1 | tail -1 |cut -d: -f2| tr -d " ")
if [ "$ismute" == no ]; then
s=1
P=0
icon="$(echo -ne "\U1F507")"
else
P=$(pactl list | grep -E "Name: $DEFAULT_SINK$|Volume" | grep "Name:" -A1 | tail -1 | cut -d% -f1 | cut -d/ -f2 | tr -d " ")
icon="🔊"
s=0
fi
pactl set-sink-mute "$DEFAULT_SINK" "$s"
echo $s > /sys/devices/platform/thinkpad_acpi/leds/platform::mute/brightness
timeout .6 yad --progress --percentage "$P" --timeout 1 --no-buttons --undecorated --text="$icon Volume $P%" --no-focus --center --skip-taskbar --on-top &
};;
mic-up)
{
pactl set-source-volume "$DEFAULT_SOURCE" +5%
P=$(pactl list | grep -E "Name: $DEFAULT_SOURCE$|Volume" | grep "Name:" -A1 | tail -1 | cut -d% -f1 | cut -d/ -f2 | tr -d " ")
icon="$(echo -en "\U1F3A4")"
timeout .6 yad --progress --percentage "$P" --timeout 1 --no-buttons --undecorated --text="$icon Volume Mic $P%" --no-focus --center --skip-taskbar --on-top &
};;
mic-down)
{
pactl set-source-volume "$DEFAULT_SOURCE" -5%
icon="$(echo -en "\U1F3A4")"
P=$(pactl list | grep -E "Name: $DEFAULT_SOURCE$|Volume" | grep "Name:" -A1 | tail -1 | cut -d% -f1 | cut -d/ -f2 | tr -d " ")
timeout .6 yad --progress --percentage "$P" --timeout 1 --no-buttons --undecorated --text="$icon Volume Mic $P%" --no-focus --center --skip-taskbar --on-top &
};;
mic-mute)
{
ismute=$(pactl list | grep -E "Name: $DEFAULT_SOURCE$|Mute" | grep "Name:" -A1 | tail -1 |cut -d: -f2| tr -d " ")
if [ "$ismute" == no ]; then
s=1
P=0
icon="$(echo -en "\U1F507\U1F3A4")"
else
P=$(pactl list | grep -E "Name: $DEFAULT_SOURCE$|Volume" | grep "Name:" -A1 | tail -1 | cut -d% -f1 | cut -d/ -f2 | tr -d " ")
s=0
icon="$(echo -en "\U1F3A4")"
fi
pactl set-source-mute "$DEFAULT_SOURCE" "$s"
echo $s > /sys/devices/platform/thinkpad_acpi/leds/platform::micmute/brightness
timeout .6 yad --progress --percentage "$P" --timeout 1 --no-buttons --undecorated --text="$icon Volume Mic $P%" --no-focus --center --skip-taskbar --on-top &
};;
*)
echo invalid option;;
esac;