Roteamento de áudio com cabos de áudio virtuais

2

Estou executando um conjunto de programas em que preciso encadear o áudio.

O programa 1 gera o áudio que precisa ser roteado silenciosamente no programa 2, e o programa 2 cria uma nova fonte de áudio que precisa ser roteada silenciosamente no programa 3. Finalmente, o programa 3 cria o áudio que deve ser enviado aos alto-falantes.

Alguém pode me ajudar a descobrir qual é a melhor maneira de conseguir isso? Eu consegui rotear o áudio silenciosamente do programa 1 para o programa 2 usando o "sudo modprobe snd-aloop", que me fornece um dispositivo de loopback.

Mas agora estou preso em como silenciosamente direcionar esse áudio para o programa 3. Ah, e isso não pode ser alcançado por canos.

    
por Projectile Fish 06.07.2017 / 13:26

1 resposta

3

Pulseaudio ou ALSA puro? Pulseaudio é mais fácil: criar uma pia fictícia

pacmd load-module module-null-sink sink_name=tmpsink

e deixe o programa 1 sair para ele. O programa 2 lê a partir da fonte tmpsink.monitor . E assim por diante. Tudo isso pode ser roteirizado. pacmd help mostra mais comandos que podem ser úteis, por ex. list-sink-inputs , list-source-outputs ou move-sink-input e move-sink-output se você não puder especificar fontes e coletores para os programas na linha de comando.

Fazer isso na ALSA é provavelmente ... divertido. Antes de tentar fazer isso na ALSA, eu tentava fazer isso usando o Jack.

    
por 06.07.2017 / 14:53