Atualmente, estou transmitindo para um dispositivo de áudio Chromecast usando o stream2chromecast em um mini PC lubuntu 16.04. O problema que estou tendo é que eu não posso preservar a fidelidade de áudio durante a transmissão de streaming através de um media player audacioso. O que eu ouço está longe do que está sendo reproduzido, e não consegui descobrir o porquê. Abaixo está a configuração do ALSA que estou usando para transmitir para o dispositivo chromecast.
pcm.!default { type plug slave.pcm writeFile } pcm.writeFile { type file slave.pcm "hw:0,0" format "wav" file "| ffmpeg -f wav -i pipe: -af aresample=resampler=soxr -acodec pcm_s24le -hide_banner -f wav pipe: | stream2chromecast.py -" }
O som que estou experimentando é como algo sufocado. Midrange é fraco, os vocais soam um tanto irreais, como se o sinal não estivesse cheio.
Eu também tentei transmitir um único arquivo usando a ferramenta sozinha, ou seja, sem envolver alsa ou uma placa de som, e tocou com diferentes tamanhos de buffer (1024, 8192, 16384 e 262144) e não melhorou. Houve apenas uma melhora sutil com o tamanho do buffer 262144.
Algumas reflexões sobre o porquê ...
O remetente está enviando os dados de áudio muito rápido que a rede está "sobrecarregada" e não consegue acompanhar a transferência de dados confiável, portanto, alguns pacotes são descartados. No entanto, o ffmpeg ajuda a manter uma taxa de bits constante e uma taxa de dados de 576kB ou 768kB (32 bits) não deve ser um problema para minha taxa de transferência de 10 / 100Mbps. Além disso, tanto o dispositivo chromecast quanto meu laptop estão conectados e não no Wi-Fi.
Quaisquer entradas ou ajuda especializada sobre como resolver este problema serão muito apreciadas. Obrigado antecipadamente!
Observação: o stream2chromecast foi modificado para funcionar com stdin, já que atualmente não é compatível com ele.
Tags chromecast streaming linux audio