Roteando áudio com cabos de áudio virtuais

Roteando áudio com cabos de áudio virtuais

Estou executando um conjunto de programas nos quais preciso encadear o áudio.

O programa 1 gera áudio que precisa ser roteado silenciosamente para o programa 2 e, em seguida, o programa 2 cria uma nova fonte de áudio que precisa ser roteado silenciosamente para o programa 3. Finalmente, o programa 3 cria áudio que deve ir para os alto-falantes.

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

Mas agora não consigo entender como rotear silenciosamente esse áudio para o programa 3. Ah, e isso não pode ser alcançado por tubos.

Responder1

Pulseaudio ou ALSA puro? Pulseaudio é mais fácil: crie um coletor fictício

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

e deixe o programa 1 gerar saída para ele. O programa 2 lê da tmpsink.monitorfonte. E assim por diante. Tudo isso pode ser programado. pacmd helpmostra mais comandos que podem ser úteis, por exemplo list-sink-inputs, list-source-outputs, ou move-sink-inpute move-sink-outputse você não puder especificar fontes e coletores para os programas na linha de comando.

Fazer isso no ALSA é provavelmente… divertido. Antes de tentar fazer isso no ALSA, tentaria fazer usando Jack.

informação relacionada