LINUX.ORG.RU
решено ФорумAdmin

ffmpeg+видеостриминг, проблема непонятного характера


0

1

Господа, подскажите в чем может быть проблема.

Дано:

1. IPTV от провайдера - вещает по udp с 10.10.1.100

2. Стоит сервачек на бубунте, вещает по udp(предположительно) с 10.10.1.50

3. Есть IPTV-приставка и несколько компутеров.

С 10.10.1.100 нормально транслируются каналы и без проблем просматриваются что на компьютере(vlc), что на приставке

На 10.10.1.50 запускаю трансляцию видео с помощью ffmpeg следующей командой:

ffmpeg -i 049.mpg -re -vcodec copy -acodec copy -y -f mpegts udp://239.192.220:1234

И получаю выхлоп:

ffmpeg version 0.8.4-4:0.8.4-0ubuntu0.12.04.1, Copyright (c) 2000-2012 the Libav developers
  built on Nov  6 2012 16:50:25 with gcc 4.6.3
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
[mpeg @ 0x8f9aa80] max_analyze_duration reached
Input #0, mpeg, from '049.mpg':
  Duration: 00:10:32.24, start: 0.391733, bitrate: 6306 kb/s
    Stream #0.0[0x1e0]: Video: mpeg2video (Main), yuv420p, 720x576 [PAR 64:45 DAR 16:9], 6000 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc
    Stream #0.1[0x1c0]: Audio: mp2, 48000 Hz, stereo, s16, 224 kb/s
[mpegts @ 0x8f9cec0] muxrate VBR, pcr every 2 pkts, sdt every 200, pat/pmt every 40 pkts
Output #0, mpegts, to 'udp://239.192.220:1234':
  Metadata:
    encoder         : Lavf53.21.0
    Stream #0.0: Video: mpeg2video, yuv420p, 720x576 [PAR 64:45 DAR 16:9], q=2-31, 6000 kb/s, 90k tbn, 25 tbc
    Stream #0.1: Audio: mp2, 48000 Hz, stereo, 224 kb/s
Stream mapping:
  Stream #0.0 -> #0.0
  Stream #0.1 -> #0.1
Press ctrl-c to stop encoding
^Cframe=   66 fps= 26 q=-1.0 Lsize=    2139kB time=2.38 bitrate=7375.7kbits/s    
video:1906kB audio:65kB global headers:0kB muxing overhead 8.532203%

При этом, через VLC на компьютерах все прекрасно показывается, на приставке ничего не показывается.

Вырубаю вещание, на приставке запускаю 'tcpdump dst port 1234', запускаю работающий канал и получаю выхлоп:

04:55:56.211575 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.215519 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.219502 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.223426 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.226129 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.229464 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.234000 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.235719 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.237229 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.241310 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.242578 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.245167 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.247007 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.247115 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316
04:55:56.250868 IP 10.10.1.100.56701 > 239.192.0.214.1234: UDP, length 1316

531 packets captured
531 packets received by filter
0 packets dropped by kernel

Потом запускаю вещание и так же проверяю собственный канал:

04:52:22.944176 IP 10.10.1.50.46174 > 239.192.0.220.1234: UDP, length 1472
04:52:22.944328 IP 10.10.1.50.46174 > 239.192.0.220.1234: UDP, length 1472
04:52:22.944545 IP 10.10.1.50.46174 > 239.192.0.220.1234: UDP, length 1472
04:52:22.944667 IP 10.10.1.50.46174 > 239.192.0.220.1234: UDP, length 1472
04:52:22.944791 IP 10.10.1.50.46174 > 239.192.0.220.1234: UDP, length 1472
04:52:22.944914 IP 10.10.1.50.46174 > 239.192.0.220.1234: UDP, length 1472
04:52:22.945175 IP 10.10.1.50.46174 > 239.192.0.220.1234: UDP, length 1472
04:52:22.945330 IP 10.10.1.50.46174 > 239.192.0.220.1234: UDP, length 1472

1735 packets captured
1760 packets received by filter
25 packets dropped by kernel

Пакеты на приставку приходят.

При чем, если одновременно смотреть вещание на компьютере(свой канал) и через приставку(другой канал), то tcpdump запущенный на приставке показывает что пакеты идут как по 239.192.0.220 так и по 239.192.0.214

Как правильно организовать стример, чтобы небыло такого безобразия?

З.ы. что пробовал:

играться с параметром ?ttl=n при запуске ffmpeg. Не помогает, но при значениях 0 или 1 не получается просмотр на компьютере, на приставке как небыло видео так и нет.

★★★★★

ffmpeg -i 049.mpg -re -vcodec copy -acodec copy -y -f mpegts udp://239.192.220:1234

//239.192.220:

Опечатка при наборе сообщения, или так в параметрах и было?
И что за приставка?

NightSpamer ()
Последнее исправление: NightSpamer (всего исправлений: 1)
Ответ на: комментарий от NightSpamer

Вот это да, прямо по этому адресу и вещал. И что самое удивительное все как описал - так и работало, на компе фурычит, на приставке нет.

Исправил на нормальный адрес - 239.192.0.220, ничего не изменилось.

Приставка MAG-250

Siado ★★★★★ ()
Ответ на: комментарий от NightSpamer

Генерит-то как надо, но жрет ресурсов как не в себя и падает.

Siado ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.