PulseAudio: configurando um coletor padrão para entradas de coletor criadas

1

Pelo que posso dizer, cada vez que o youtube carrega um novo vídeo, ele altera o índice da entrada do coletor que ele usa ou cria uma nova entrada de coletor para usar nesse novo vídeo e recolhe o antigo. O coletor padrão que desejo usar é o coletor 3, mas ele sempre usa o coletor 2, apesar do coletor padrão estar definido como 3 (há um asterisco ao lado do coletor 3 em "coletores de lista do pacmd"). Eu sempre tenho que chamar "pacmd move-sink-input [index] 3" cada vez que eu carrego um novo vídeo. Vocês conhecem uma maneira de fazer com que o coletor padrão use o coletor 3 sempre? Obrigado!

    
por user301723 09.07.2014 / 02:42

3 respostas

1

:) 1º, votos altos Questão relacionada deve indicar a solução:

Como alterar o pulseaudio sink com "pacmd set-default-sink" durante a reprodução?

  • Talvez seja necessário desativar a restauração do dispositivo de destino de stream editando a linha correspondente em /etc/pulse/default.pa to:

    load-module module-stream-restore restore_device=false
    
  • Em seguida, tente:

    sudo apt-get install libasound2:i386 libasound2-plugins:i386
    

    Referência: Fóruns do ArchLinux: o Flash ignora o pulseaudio

por user.dz 09.07.2014 / 05:07
0

Eu decidi apenas tirar o caminho hacky. Eu criei um script bash:

Arquivo: move-sink-input

#!/bin/bash
index='pacmd list-sink-inputs | grep index: | grep -v "index: 0"'
index=${index:11}
if [ $index ]; then
    pacmd move-sink-input $index 3
fi

Depois criei outro script bash:

Arquivo: move-sink-input-loop

#!/bin/bash
while true; do
    move-sink-input
    sleep 1
done

Então eu começo com "move-sink-input-loop > / dev / null & amp;"

tl; dr: Eu escrevi um script que movia a entrada mais recente a cada segundo.

A razão pela qual eu precisei de um segundo script para o loop é que, de alguma forma, o resultado de "pacmd list-sink-inputs" permanece o mesmo em uma instância em execução de um script, fazendo o loop em outro script para iniciar script inicial parecia realmente atualizar os dados.

    
por user301723 10.07.2014 / 05:36
0

Se você usa o KDE, acho que encontrei a solução.

No script start-pulseaudio-x11 que é usado para iniciar automaticamente o pulso, há esta cláusula:

if [ x"$KDE_FULL_SESSION" = x"true" ]; then
    /usr/bin/pactl load-module module-device-manager "do_routing=1" > /dev/null
fi

Meu palpite é que ele dá ao KDE uma maneira de controlar os coletores e faz o pulseaudio ignorar o coletor padrão que você configurou com o pacmd ... Bem, não há uma ferramenta do KDE que controle os coletores de qualquer maneira, é melhor remover esta cláusula completamente - e então a configuração do coletor padrão funciona, para mim.

    
por igogo 21.01.2017 / 20:29