Come si disattiva l'audio dalla riga di comando?


Risposte:


71

Supponendo che tu stia utilizzando il driver ALSA, esegui:

amixer set Master mute   
amixer set Master unmute

Oppure puoi semplicemente usare:

amixer set Master toggle

per attivare e disattivare l'audio.


6
per me / il mio sistema (preciso), questo va solo in un modo: off / mute. Non attivare o disattivare l'audio per ripristinare la musica. Qualche idea sul perché??
nocciola circa natty


1
Questa soluzione è per Alsa pura. Per Alsa con pulseaudio, usa il comando dalla risposta di Tim . Oppure non toccare il comando e invece configurare Alsa come in questa risposta . Altrimenti, @nutty sul problema di Natty di non essere in grado di riattivare i risultati.
tanius,

su Ubuntu Server 14.04 "Master" non era disponibile come semplice controllo. Ho usato "Speaker" al suo posto. Ho trovato la sostituzione eseguendo sudo amixere trovando la linea nell'output che corrispondevaSimple mixer control 'Speaker',0
brycemcd

48

Questo ha funzionato per me quando gli altri no:

amixer -q -D pulse sset Master toggle

Questo è dal link in nutty sul commento di Natty alla prima risposta:

I miei pronomi sono Lui / Lui


1
Ho anche appena controllato, funziona anche il 14.04.
Tim,

1
fatto :) - Kubuntu qui (Ubuntu 14.04.2 LTS). grazie.
Hacre,

1
Questa -D pulseopzione è necessaria quando Alsa viene utilizzato con pulseaudio (e poiché la domanda è contrassegnata con pulseaudio, questa dovrebbe essere la risposta accettata). Per maggiori dettagli su questa soluzione, vedere qui e qui su askubuntu.
tanius,

Nota: la risposta accettata da @goric non funziona quando si collegano cuffie o auricolari, utilizzare questa.
UniversallyUniqueID,

Oppure, meno ambiguo di "toggle", puoi usare amixer -q -D pulse sset Master mutee amixer -q -D pulse sset Master unmute. Funziona alla grande su Ubuntu 16.04
CPBL il

23

Nella mia configurazione a volte il silenziamento dell'amixer fallisce per qualche motivo. Pertanto sto usando pactl nei miei script:

disattivare l'audio:

pactl set-sink-mute 0 1

e riattiva l'audio:

pactl set-sink-mute 0 0

Testato su Ubuntu 12.10.


Funziona ancora in Ubuntu 15.10.
tanius,

Probabilmente, questo è il modo corretto di eseguire l'operazione sulle moderne versioni di Ubuntu. Funziona su 16.04 (amixer no).
Marcus

16

Sul terminale digitare questo per silenziare

amixer set Master mute

genere

amixer set Master unmute

Testato su Ubuntu 10.10.

PS: +1 per una domanda interessante.


1

Se stai usando alsasegui la risposta gorica.

PulseAudio è migliore, ma non così semplice: pactl set-sink-mute 0 1fai il lavoro per il primo dispositivo, ma non se stai utilizzando le cuffie di un'altra uscita del lavandino.

Il modo migliore è verificare pactl infoe ottenere l' Default Sinkuso.

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

Quindi per disattivare l'audio:

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

O riattiva l'audio:

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

Ho scritto una sceneggiatura per gestire pulseaudio nella mia nota. Se si desidera utilizzare, salvarlo come volume, fornire autorizzazioni di esecuzione chmod +x volumee aggiungerlo al proprio percorso ln -sv $PWD/volume /usr/local/bin/. Ecco la mia sceneggiatura:

#!/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;
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.