Detectando áudio sendo reproduzido em um script bash

2

Existe uma maneira de detectar se algum som está tocando (usando um script bash)?

(Eu estou no Ubuntu 11.10 usando pulseaudio.)

Eu pretendo usá-lo em um indicador para me lembrar visualmente que o som está tocando enquanto o mudo está ligado.

    
por dgo.a 24.02.2012 / 02:57

1 resposta

2

Usando o pulso de áudio : você pode experimentar pactl list para ver o que o áudio de pulso está fazendo com o hardware de som. Estou deixando as especificidades de retirar o status para você. Por exemplo: este comando listaria os estados Sink e Source .

pactl list | grep State

Usando procfs para o ALSA (: estas entradas do proc podem desaparecer no futuro ): Este fragmento é executado através dos dispositivos de reprodução pcm na hierarquia do ALSA.

if grep -q RUNNING /proc/asound/card*/*p/*/status 2>&1; then
   echo "Playing"
else
   echo "Idle"
fi
    
por 24.02.2012 / 08:21