Configurando um sistema para executar o PulseAudio automaticamente em cima do JACK

1

Isso é essencialmente o mesmo que a pergunta Ask Ubuntu Como usar JACK e Pulseaudio / ALSA ao mesmo tempo no mesmo dispositivo de áudio? .

No entanto, as respostas a essa pergunta são todas incompletas em pelo menos um aspecto importante. Eles não especificam como configurar as coisas para que o Pulseaudio seja executado no topo do Jackd na inicialização. Eles também parecem assumir que o QjackCtl (uma GUI) é usado para a configuração do JACK. Isso não é atraente.

Recentemente, consegui reconfigurar o PulseAudio para que ele fosse executado no JACK. Isso foi muito simples. Segui as instruções no este tutorial do Fedora .

Acabei de editar o arquivo /etc/pulse/default.pa para adicionar as seguintes linhas após a linha #load-module module-pipe-sink :

load-module module-jack-sink
load-module module-jack-source

Então eu matei PA, como recomendado pelo tutorial do Fedora. PA, em seguida, começou de novo, mas desta vez no topo do JACK.

No entanto, quando reiniciei recentemente, nem o JACK nem o PA começaram.

Então, eu gostaria de uma solução mais completa que funcione na reinicialização. Eu também quero uma solução que é baseada exclusivamente na modificação de arquivos de configuração, não usando uma GUI. Uma explicação de como e por que os trabalhos de configuração propostos também seriam muito apreciados.

Estou usando o Debian Jessie (8.3). No entanto, gostaria que as respostas se aplicassem o mais amplamente possível, para máxima utilidade. Abordagens limpas que não usam a abordagem do tutorial do Fedora também são boas, é claro.

Também é importante notar que o projeto JACKD em si tem recomendações de configuração, em Executando o PulseAudio no topo do JACK e Como usar o PulseAudio e o JACK? . Mas não tenho certeza do que está me dizendo para fazer.

    
por Faheem Mitha 12.03.2016 / 00:55

1 resposta

0

Como você está executando o JACK e o Pulseaudio a partir do boot, tente atrasar o comando JACK por alguns segundos para que o Pulseaudio e outros elementos de som estejam funcionando primeiro

Se disponível, usar o pacote jack2-dbus em vez de jackd ou jack2 seria a solução mais simples. O D-Bus controla o compartilhamento de hardware de áudio entre o JACK e o Pulseaudio. se módulo Pulseaudio module-jackdbus-detect está ativo em /etc/pulse/default.pa O JACK criará automaticamente o coletor Pulseaudio e a fonte quando iniciado.

Se você não pode usar o D-Bus por algum motivo comente esta seção em /etc/pulse/default.pa com um '#' no início de cada linha

### Automatically load driver modules depending on the hardware available
.ifexists module-udev-detect.so
load-module module-udev-detect
.else
### Use the static hardware detection module (for systems that lack udev support)
load-module module-detect
.endif

isso desativará o Pulseaudio de reivindicar o uso de qualquer dispositivo de hardware de áudio que possa ser necessário para o JACK iniciar corretamente. Então você pode iniciar o JACK com um script bash, incluindo comandos para carregar o coletor e fonte Pulseaudio:

#!/bin/bash
<jack start command>
wait 2
pactl load-module module-jack-sink
pactl load-module module-jack-source
    
por 13.05.2017 / 02:10