Прямая трансляция DVB на Android без кодирования
Я использую mumudvb/dvblast или dvbviewer (все для отправки видео DVB-T через IP) для прямой трансляции телеканалов через мою локальную сеть.
VLC может воспроизводить RTP или UDP или HTTP, и все в порядке.
Видеокодек: h264
Аудиокодек: AAC
Я использую vlc для сохранения каждые 10 секунд живого контента, поступающего из потоковой передачи mumudvb/dvbviewer/dvblast (в виде фрагментированных файлов TS), и создания индекса HLS и m3u8 для устройств Apple и Android. без какого-либо транскодирования. И все в порядке, и оба устройства могут играть отлично.
Я имею в виду, что клиенты (Android TV Box) поддерживают все инкапсуляции и видео и аудио кодек этого контента.
Но когда я играю вывод dvb в ip как прямую трансляцию прямо на устройство Android через rtsp, udp или rtp (multicast или unicast), возникает много проблем.
"видео без аудио, аудио без видео, отсутствие, задержка, много ошибок от медиаплеера или видеовиде, приложение не отвечает, не может воспроизвести это видео и..." каждый раз.
Я попытался транскодировать в реальном времени на низкую скорость передачи данных с использованием vlc или ffmpeg, и проблема решена, и я могу отправлять и воспроизводить через rtsp, rtp, udp или http.
но вопросы таковы:
1. Если мое устройство может воспроизводить сохраненный файл TS по протоколу http (HLS или прогрессивно), почему бы не воспроизвести прямые трансляции с тем же кодеком и контентом?
2. Могу ли я кодировать все каналы (14 видеоканалов) в многоадресном режиме и из mumudvb/dvblast вообще без высокой загрузки ЦП?
3. Существует ли простой и стабильный способ отправки DVB-каналов на Android напрямую, без перекодирования, проксирования или... (предпочтительнее использовать udp и multicast)? просто нужен дешевый способ.
1 ответ
Поскольку (часть) программное обеспечение, которое демультиплексирует сетевой поток, не обязательно обрабатывает тот же формат, что и (часть) программное обеспечение, которое работает с файлами.
Это не тот вопрос, на который вы можете ответить, не зная, сколько стоит "высоко". Во всех случаях, если вы транскодируете, это потребует ресурсов ЦП и (надеюсь) аппаратных ресурсов графического процессора / видео, которые вы не тратите при потоковой передаче неизмененного контента.
Взгляните на Kodi (на Android) и http://tvheadend.org/ В зависимости от вашего оборудования, оно может дать вам немедленное решение, если оно работает.
Иначе, если у вас есть ~100$, вы можете купить сетевое потоковое устройство DVB-T2, которое поставляется с собственным программным стеком Android (и, как таковое, просто работает). Я не уверен, что stackru - это подходящее место для рекламы, и ваш вопрос на самом деле не связан с темой этого сайта.