Como parar de tocar música quando remover fones de ouvido?

1

Estou solicitando que qualquer solução (algoritmo, instalação de programa ...) faça com que a música pare quando removemos fones de ouvido,

Obrigado!

    
por Nadir92 12.06.2014 / 11:42

2 respostas

2

Por padrão, o ubuntu 14.04 possui perfis diferentes para o fone de ouvido e o alto-falante. Apenas mude o alto-falante primeiro e depois insira seus fones de ouvido, ele ativará o perfil dos fones de ouvido e você poderá ouvir música; no momento em que você remover o fone de ouvido, ele retornará ao perfil do alto-falante que foi inicialmente desativado.

    
por pritamprasad 12.06.2014 / 11:58
0

Na verdade, ele tem um atraso de 1 segundo. Como não consegui encontrar nenhum evento do sistema que disparou com a remoção do plugue de fones de ouvido, usei um atraso de 1 segundo.

  1. Verifique se há ID de coletor e nomes de portas usando:

    pactl list sinks
    
  2. Em seguida, altere-os nesse script que monitora o estado da porta e, em seguida, envie o comando MPRIS pause:

    #!/bin/bash
    
    sink_id=1
    port_name_headset=analog-output-headphones
    port_name_speaker=analog-output-speaker
    
    
    while sleep 1 ;
    do
        cur_port='pactl list sinks | awk '/Active Port:/ { print  }' | awk NR==$(( $sink_id + 1 ))'
        echo -n -e "\n was $prev_port now $cur_port"
        if [[ "$prev_port" = "$port_name_headset" && "$cur_port" = "$port_name_speaker" ]]
        then
            echo "  << Pause >>"
            gdbus call --session \
                --dest org.mpris.MediaPlayer2.vlc.instance$(pgrep vlc) \
                --object-path /org/mpris/MediaPlayer2 \
                --method org.mpris.MediaPlayer2.Player.Pause
        fi
        prev_port=$cur_port
    done
    

Nota:

por user.dz 12.06.2014 / 17:05