LINUX.ORG.RU

Прием MPEG-TS через мультикаст


0

0
Есть два источника потока MPEG-TS - http и udp multicast. Если тупо записать полученное по http в файл, то он нормально проигрывается плеером. Если содержимое каждого udp записать по очереди в файл, то плеер воспроизводит мешанину из нормально видео и артефактов.

С содержимым udp пакета нужно еще что-то делать перед записью в файл? Я смотрел содержимое файлов - в обоих случаях там последовательность правильный TS-пакетов.

★★★★★
а UDP-пакеты случаем не перемешались между собой? посмотри в wireshark чем отличается данные в HTTP и в UDP
BreadFan ★★
()
Ответ на: комментарий от BreadFan
В http и udp идет не совсем синхронно, поэтому попасть в тот момент, когда будут одни и те же пакеты идти наверное невозможно.
init ★★★★★
() автор топика
Ответ на: комментарий от anonymous
udp рассылаются правильно (тот же vlc нормально их обрабатывает). Принимается тоже вроде нормально (python/twisted), заголовки каждого пакета выводит правильно.
init ★★★★★
() автор топика
Ответ на: комментарий от init
может просто некоторые пакеты теряются? или не успевают обработатся. upd ведь не гарантирует что все прилетят. А когда смотришь через vlc то глазом это просто не заметно из-за большого числа пакетов. Больше даже не знаю чем помочь.
anonymous
()
Ответ на: комментарий от anonymous
посмотреть netstat -s на предмет отброшенных UDP пакетов увеличить размер буфера приема на сетевом интерфейсе
anonymous
()
Все, как всегда какая-нибудь мелочь мешала. Я прочитал в спецификациях про длину пакета 8192 и соответственно считал udp такого размера. А они на самом деле были 16356 :) Всем спасибо, все заработало.
init ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.