Як ви відключите звук з командного рядка?


Відповіді:


71

Припустимо, що ви використовуєте драйвер ALSA, запустіть:

amixer set Master mute   
amixer set Master unmute

Або ви можете просто використовувати:

amixer set Master toggle

увімкнення та вимкнення звуку.


6
для мене / моєї системи (точно), це йде лише в один бік: вимкнено / відключити звук. Ні перемикання, ні вимкнення звуку не повертають музику. Будь-які ідеї, чому ??
горіх про натти


1
Це рішення для чистої Alsa. Для Ельзи з pulseaudio використовуйте команду з відповіді Тіма . Або не торкайтесь команди та замість цього налаштуйте Alsa, як у цій відповіді . Інакше, @nutty про проблему natty у тому, що вона не може ігнорувати результати.
таній

на Ubuntu Server 14.04 "Master" не був доступний як просте управління. Я використав "Speaker" на його місці. Я знайшов заміну, запустивши sudo amixerі знайшов рядок у висновку, який відповідавSimple mixer control 'Speaker',0
brycemcd

48

Це працювало для мене, коли інші не:

amixer -q -D pulse sset Master toggle

Це за посиланням у горішці про коментар natty до першої відповіді:

Мої займенники - Він / Він


1
Я теж щойно перевірив, він працює і 14.04.
Тім

1
зробив це :) - kubuntu тут (Ubuntu 14.04.2 LTS). Дякую.
хакре

1
Цей -D pulseваріант необхідний, коли Alsa використовується з pulseaudio (а оскільки питання позначено тегом pulseaudio, це має бути прийнятою відповіддю). Більш детально про це рішення дивіться тут і тут на askubuntu.
таній

Примітка: прийнята відповідь від @goric не працює, коли підключені навушники або навушники, використовуйте це.
UniversallyUniqueID

Або, менш неоднозначно, ніж "тумблер", ви можете використовувати amixer -q -D pulse sset Master muteі amixer -q -D pulse sset Master unmute. Чудово працює на Ubuntu 16.04
CPBL

23

У моїй установці іноді вимкнення amixer чомусь виходить з ладу. Тому я використовую Pactl у своїх сценаріях:

вимкнути звук:

pactl set-sink-mute 0 1

і ввімкнути звук:

pactl set-sink-mute 0 0

Тестовано на Ubuntu 12.10.


Досі працює в Ubuntu 15.10.
таній

Очевидно, це правильний спосіб виконання операції в сучасних версіях Ubuntu. Працює 16.04 (amixer ні).
Маркус

16

На терміналі введіть цю кнопку для відключення звуку

amixer set Master mute

тип

amixer set Master unmute

Тестовано на моєму Ubuntu 10.10.

PS: +1 за цікаве запитання.


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;
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.