В настоящее время я транслирую на аудиоустройство Chromecast с помощью stream2chromecast на lubuntu 16.04 mini pc. Проблема в том, что я не могу сохранить качество звука при потоковой передаче выходных данных через смелый медиаплеер. То, что я слышу, далеко от того, что воспроизводится, и я не смог понять, почему. Ниже приведена конфигурация ALSA, которую я использую для потоковой передачи на устройство 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 -"

}

Звук, который я испытываю, похож на звук удушья. Средние частоты слабые, вокал звучит несколько нереально, как будто сигнал не полный.

Я также попытался выполнить потоковую передачу одного файла, используя только один инструмент, т. Е. Без использования alsa или звуковой карты, и играл с разными размерами буфера (1024, 8192, 16384 и 262144), но это не улучшилось. Было только небольшое улучшение с размером буфера 262144.

Несколько мыслей о том, почему ..

Сторона отправителя отправляет аудиоданные слишком быстро, так что сеть «перегружена» и не может поспевать за надежной передачей данных, поэтому некоторые пакеты отбрасываются. Тем не менее, ffmpeg помогает поддерживать постоянный битрейт, и скорость передачи данных 576 КБ или 768 КБ (32 бита) не должна быть проблемой для моей пропускной способности 10/100 Мбит / с. Кроме того, и устройство Chromecast, и мой ноутбук подключены к сети, а не по Wi-Fi.

Будем весьма благодарны за любые вклады или помощь специалиста по решению этой проблемы. Заранее спасибо!

Примечание: stream2chromecast был изменен для работы с stdin, так как в настоящее время он не поддерживает его.

0