คุณจะปิดระบบเสียงจากบรรทัดคำสั่งได้อย่างไร
คุณจะปิดระบบเสียงจากบรรทัดคำสั่งได้อย่างไร
คำตอบ:
สมมติว่าคุณใช้ไดรเวอร์ ALSA อยู่ให้เรียกใช้:
amixer set Master mute
amixer set Master unmute
หรือคุณสามารถใช้:
amixer set Master toggle
เพื่อสลับปิดและปิดเสียง
sudo amixer
และค้นหาบรรทัดในผลลัพธ์ที่ตรงกับSimple mixer control 'Speaker',0
สิ่งนี้ใช้ได้กับฉันเมื่อคนอื่นไม่:
amixer -q -D pulse sset Master toggle
นี่คือจากลิงค์สั้น ๆเกี่ยวกับความคิดเห็นของ nattyกับคำตอบแรก:
สรรพนามของฉันคือเขา / เขา
amixer -q -D pulse sset Master mute
amixer -q -D pulse sset Master unmute
ใช้งานได้ดีบน Ubuntu 16.04
ในการตั้งค่าของฉันบางครั้งการเปิดเสียงไม่สำเร็จไม่สำเร็จด้วยเหตุผลบางประการ ดังนั้นฉันใช้pactlในสคริปต์ของฉัน:
เพื่อปิดเสียง:
pactl set-sink-mute 0 1
และเปิดเสียง:
pactl set-sink-mute 0 0
ทดสอบกับ Ubuntu 12.10
บนเทอร์มินัลให้พิมพ์เพื่อปิดเสียง
amixer set Master mute
ชนิด
amixer set Master unmute
ทดสอบกับ Ubuntu 10.10 ของฉัน
PS: +1 สำหรับคำถามที่น่าสนใจ
หากคุณใช้alsa
คำตอบติดตามแบบโกธิค
PulseAudio นั้นดีกว่า แต่ไม่ง่ายนัก: pactl set-sink-mute 0 1
ทำงานให้กับอุปกรณ์เครื่องแรก แต่ไม่ใช่ถ้าคุณใช้หูฟังที่มีเอาต์พุตอื่น
วิธีที่ดีกว่าคือตรวจสอบpactl info
และDefault Sink
ใช้งาน
DEFAULT_SINK=$(pactl info | grep "Default Sink" | cut -d " " -f3)
จากนั้นปิดเสียง:
pactl set-sink-mute "$DEFAULT_SINK" "1"
หรือเปิดเสียง:
pactl set-sink-mute "$DEFAULT_SINK" "0"
ฉันเขียนสคริปต์เพื่อจัดการ pulseaudio ในบันทึกย่อของฉัน หากคุณต้องการที่จะใช้บันทึกเป็นvolume
ให้ผู้สิทธิ์และเพิ่มเข้าไปในเส้นทางของคุณchmod +x volume
ln -sv $PWD/volume /usr/local/bin/
ที่นี่สคริปต์ของฉัน:
#!/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;