Pergunta interessante, há muito tempo atrás eu estava pensando em gravação simples de áudio e vídeo digital, possível através de algum áudio e vídeo virtual drivers, mas nunca chegou lá.
Eu usei o seu arquivo de configuração e tive exatamente o mesmo problema que você descrito. (Eu removi drivers de compatibilidade OSS da ALSA para ter certeza, testei diferentes kernels - não parecem importar, e usaram o Debian Wheezy)
$ alsaplayer -d front audio.mp3
$ mplayer -vo null -ao alsa:device=front video.mp4
AO: [alsa] 44100Hz 2ch s16le (2 bytes per sample)
$ mplayer -ao alsa:device=front audio.mp3
AO: [alsa] 44100Hz 2ch s16le (2 bytes per sample)
todos os comandos acima são compatíveis com os alto-falantes
$ arecord -f cd -D loop | aplay -f cd -D front
Recording WAVE 'stdin' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
Playing WAVE 'stdin' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
agora gravando do loop e tocando para frente
$ alsaplayer audio.mp3
$ alsaplayer -d loop audio.mp3
$ mplayer -vo null video.mp4
$ mplayer -vo null -ao alsa:device=loop video.mp4
AO: [alsa] 48000Hz 2ch s16le (2 bytes per sample)
$ mplayer -ao alsa:device=loop audio.mp3
AO: [alsa] 48000Hz 2ch floatle (4 bytes per sample)
todo o envio de áudio para loop e reprodução para alto-falantes OK
$ mplayer audio.mp3
AO: [alsa] 48000Hz 2ch floatle (4 bytes per sample)
mas aqui o som está quebrado - muito distorcido !!! Apenas jogando no dispositivo padrão. Reprodução especificada via loop funcionou!
Depois de tentar várias mudanças eu testei essa modificação do asound.conf
pcm.!default {
type plug
slave.pcm "loopout"
}
Resolveu o problema! Quando o dispositivo padrão é loopout, funciona.
A tentativa de arecord -f cd -D loopin | aplay -f cd -D front
não teve nenhum
efeito. Não tenho certeza de como o loop funciona, mas isso foi capaz de capturar o áudio.
Ou um bug no ALSA? Você está usando o Debian? Isso funciona para você?
Notas para outras sugestões para resolver o problema:
Para descarregar o fluxo da rede: Eu suponho que se o aplicativo não quiser que você salvar dados, a transferência seria criptografada (https ???). Caso o jogador não não verificar o certificado do servidor como você captura os dados? Qual é o seu favorito quick & método fácil como se tornar homem no meio e capturar o fluxo?
Pulseaudio: Como faço para executá-lo no Debian Wheezy? O Wiki diz que simplesmente funciona. Isso não aconteceu.
/etc/init.d/pulseaudio start
[warn] PulseAudio configured for per-user sessions ... (warning).
Como resolvo o que está acontecendo? (Ferramentas, diag?)
Jack: Não encontrei instruções simples sobre como instalar o Jack. Parece bastante complexo. Assume o Pulseaudio em execução? A documentação é confusa. Você tem um link para um início rápido? (como instalar e testar para se certificar de que está funcionando?)
Você assume que a maioria dos aplicativos de áudio (como o Fios Voicemail Java Player) será capaz de tocar para o Pulseaudio ou Jack e não enviar áudio para a ALSA?