Wie können Sie über die Befehlszeile stumm schalten?

84

Wie können Sie das Soundsystem über die Befehlszeile stumm schalten?

myusuf3
quelle

Antworten:

71

Wenn Sie den ALSA-Treiber verwenden, führen Sie Folgendes aus:

amixer set Master mute   
amixer set Master unmute

Oder Sie können einfach verwenden:

amixer set Master toggle

Stummschaltung ein- und ausschalten.

goric
quelle
6
Für mich / mein System (präzise) geht dies nur in eine Richtung: aus / stumm. Weder umschalten noch die Stummschaltung aufheben, um die Musik wieder einzuschalten. Irgendwelche Ideen, warum?
Nussig über natty
1
Diese Lösung ist für reines Alsa. Verwenden Sie für Alsa mit pulseaudio den Befehl aus Tims Antwort . Oder berühren Sie den Befehl nicht und konfigurieren Sie Alsa stattdessen wie in dieser Antwort . Ansonsten @nutty wegen Nattys Problem, die Stummschaltung nicht aufheben zu können.
Tanius
auf Ubuntu Server 14.04 war "Master" nicht als einfaches Steuerelement verfügbar. Ich habe "Speaker" an seiner Stelle verwendet. Ich fand die Ersetzung, indem sudo amixerich die Zeile in der Ausgabe lief und fand, die übereinstimmteSimple mixer control 'Speaker',0
brycemcd
48

Das hat bei mir funktioniert, als andere es nicht taten:

amixer -q -D pulse sset Master toggle

Dies ist von dem verrückten Link über Nattys Kommentar zur ersten Antwort:

Meine Pronomen sind Er / Ihn

Tim
quelle
1
Ich habe auch gerade nachgesehen, es funktioniert auch am 14.04.
Tim
1
tat es :) - kubuntu hier (Ubuntu 14.04.2 LTS). Vielen Dank.
Hakre
1
Diese -D pulseOption wird benötigt, wenn Alsa mit pulseaudio verwendet wird (und da die Frage mit pulseaudio markiert ist, sollte dies die akzeptierte Antwort sein). Weitere Details zu dieser Lösung finden Sie hier und hier auf askubuntu.
Tanius
Hinweis: Die von @goric akzeptierte Antwort funktioniert nicht, wenn Kopfhörer oder Ohrhörer angeschlossen sind. Verwenden Sie diese Option.
UniversallyUniqueID
Oder, weniger mehrdeutig als "umschalten", können Sie amixer -q -D pulse sset Master muteund verwenden amixer -q -D pulse sset Master unmute. Funktioniert hervorragend auf Ubuntu 16.04
CPBL
23

In meinem Setup schlägt manchmal die Stummschaltung von Amixer aus irgendeinem Grund fehl. Deshalb benutze ich in meinen Skripten pactl :

stumm schalten:

pactl set-sink-mute 0 1

und die Stummschaltung aufheben:

pactl set-sink-mute 0 0

Getestet unter Ubuntu 12.10.

Niko Riitala
quelle
Funktioniert immer noch in Ubuntu 15.10.
Tanius
Dies ist wahrscheinlich der richtige Weg, um die Operation auf modernen Ubuntu-Versionen durchzuführen. Funktioniert am 16.04 (Amixer nicht).
Marcus
16

Geben Sie dies auf dem Terminal ein, um die Stummschaltung zu aktivieren

amixer set Master mute

Art

amixer set Master unmute

Getestet auf meinem Ubuntu 10.10.

PS: +1 für interessante Frage.

theTuxRacer
quelle
1

Wenn Sie alsafolgen goric Antwort verwenden.

PulseAudio ist besser, aber nicht so einfach: pactl set-sink-mute 0 1Machen Sie die Arbeit für das erste Gerät, aber nicht, wenn Sie Kopfhörer eines anderen Senkenausgangs verwenden.

Der bessere Weg ist, sich bei zu erkundigen pactl infound das Default Sinkzu benutzen.

DEFAULT_SINK=$(pactl info | grep "Default Sink" | cut -d " " -f3)

Dann zum Stummschalten:

pactl set-sink-mute "$DEFAULT_SINK" "1"

Oder die Stummschaltung aufheben:

pactl set-sink-mute "$DEFAULT_SINK" "0"

Ich habe in meiner Notiz ein Skript geschrieben, um pulseaudio zu verwalten. Wenn Sie es verwenden möchten, speichern Sie es unter volume, geben Sie Ausführungsberechtigungen an chmod +x volumeund fügen Sie es Ihrem Pfad hinzu ln -sv $PWD/volume /usr/local/bin/. Hier mein Drehbuch:

#!/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;
Tonne
quelle