Ivan_83 Опубликовано 18 февраля, 2013 · Жалоба Кто как видит себе такую софтину для анализа мультикаст потока с mpeg-ts / rtp+mpeg-ts на ошибки последовательности? Пока вижу только как считать ошибки CC и TEI пакеты для mpeg-ts, ошибки последовательности для RTP, примерную скорость потока, время простоя (сколько времени нет потока). OS: FreeBSD/Linux. Те как ей управлять, как забирать результаты. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
maxlapshin Опубликовано 18 февраля, 2013 · Жалоба ещё не забудь такую вещь, как шифрованный поток. Если что-то случилось с дескремблингом, поток начинает литься шифрованный. Софтина должна аккумулировать данные за каждые последовательные 10 секунд или секунду или 5 секунд (не могу сказать как лучше), давать веб-морду мониторинга состояния потока и сбрасывать на диск в какой-нибудь rrd график количества проблем. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vitalyb Опубликовано 18 февраля, 2013 · Жалоба Еще полезно смотреть на PUS и на последовательность 0 0 1 в начале пейлоада на PES пидах. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
maxlapshin Опубликовано 18 февраля, 2013 · Жалоба PUS — это что? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
rdc Опубликовано 18 февраля, 2013 · Жалоба По-моему, вебморда тут излишняя, и противоречит unix-way. Лично я вижу эту софтину так: на входе - плейлист с перечнем каналов, который она время от времени перечитывает на выходе - что-то типа csv или по файлу на канал. Файл на входе должен быть отдельным от конфига, чтобы он мог генериться автоматически, не задевая конфиг. В конфиге, кроме всего прочего, задаются параметры порога мониторинга - например, такая-то величина ошибок или потерь является симптомом отказа. На выходе в явном виде, удобном для парсинга, выдаётся результат "жив/мёртв", который кушает мониторинг. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 18 февраля, 2013 · Жалоба По-моему, вебморда тут излишняя, и противоречит unix-way. А как же net-way? (всё таки утилита для мониторинга сети а не процессинга stdXXX потоков в системе) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
rdc Опубликовано 18 февраля, 2013 (изменено) · Жалоба Так можно додуматься до встроенной вебморды у traceroute :-) Изменено 18 февраля, 2013 пользователем rdc Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 19 февраля, 2013 · Жалоба Чем плохо? http://127.0.0.1:333/tools/traceroute?addr=8.8.8.8&proto=icmp захотел в консоле - дёрнул через fetch/wget и посмотрел результат - те локальное использование на хосте не особо страдает. А вот удалённо проще трейс сразу по хттп посмотреть в браузере, чем логинится туда сначала ссш/телнет. С другой стороны мультикаст совсем не тоже что и трейс. СС ошибки могут за 5 секунд не вылезти. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
agr Опубликовано 19 февраля, 2013 · Жалоба Можно еще последовательность мониторить по полю ID в заголовке IP. Вещательные системы его часто заполняют инкрементно для пакетов медиапотока. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 19 февраля, 2013 · Жалоба Можно. Линух с астрой ничего не увеличивает: 00:31:47.956728 IP (tos 0x0, ttl 32, id 0, offset 0, flags [DF], proto UDP (17), length 1344) 172.16.0.78.57160 > 239.0.5.3.1234: [udp sum ok] UDP, length 1316 00:31:47.962011 IP (tos 0x0, ttl 32, id 0, offset 0, flags [DF], proto UDP (17), length 1344) 172.16.0.78.57160 > 239.0.5.3.1234: [udp sum ok] UDP, length 1316 00:31:47.962270 IP (tos 0x0, ttl 32, id 0, offset 0, flags [DF], proto UDP (17), length 1344) 172.16.0.78.57160 > 239.0.5.3.1234: [udp sum ok] UDP, length 1316 00:31:47.967469 IP (tos 0x0, ttl 32, id 0, offset 0, flags [DF], proto UDP (17), length 1344) 172.16.0.78.57160 > 239.0.5.3.1234: [udp sum ok] UDP, length 1316 И всё равно потери будут видны по СС в мпеге и по SN в RTP, хотя с последним мне кое что ещё не ясно. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vitalyb Опубликовано 20 февраля, 2013 · Жалоба PUS — это что? прошу пардону, выпал из темы - PUS - это бит в MPEG заголовке - http://en.wikipedia.org/wiki/MPEG_transport_stream#Packet Payload Unit Start - значит что в PES начался поток, а начинается он с последовательности 0 0 1. Проблемы с раскодированием ловятся на раз. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 20 февраля, 2013 · Жалоба Часто бывает что оно не PES при выставленном PUS? PS: видел iptv2rtsp-proxy - можно помучить вопросами по мпегу гденить в IM? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 20 февраля, 2013 · Жалоба ещё не забудь такую вещь, как шифрованный поток. Если что-то случилось с дескремблингом, поток начинает литься шифрованный. Добавил, показывает шифрование в mpeg2-ts. Софтина должна аккумулировать данные за каждые последовательные 10 секунд или секунду или 5 секунд (не могу сказать как лучше) Зачем? У меня сейчас пакеты копятся в буфере сокета, пока их там не станет "достаточно", потом они быстренько в цикле читаются и инфа раскидывается/обновляется в PID-ах, оно же доступно через хттп в реальном времени. Это чтобы меньше "дёргаться" - экономить CPU. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
maxlapshin Опубликовано 20 февраля, 2013 · Жалоба примерно это же делает https://github.com/erlyvideo/udpts Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
oleg_1956 Опубликовано 21 февраля, 2013 · Жалоба Кто как видит себе такую софтину для анализа мультикаст потока с mpeg-ts / rtp+mpeg-ts на ошибки последовательности? А почему не реализовать полностью в соответствии с рекомендациями ETSI TR 101 290? Или это уже подразумевается? Те как ей управлять, как забирать результаты. У меня STB пишет в MIBS, а я потом через SNMP забираю Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vitalyb Опубликовано 21 февраля, 2013 · Жалоба Часто бывает что оно не PES при выставленном PUS? PS: видел iptv2rtsp-proxy - можно помучить вопросами по мпегу гденить в IM? На пидах с видео-аудио (где PES и должен быть) не наблюдал такого, может и бывает в особо редких и кривых случаях. На пидах с PSI, конечно, эту проверку нельзя делать - там другой формат. Это как с IP фрагментацией, PUS только означает, что там начало пакета. PS - напишу в лс Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 22 февраля, 2013 · Жалоба А почему не реализовать полностью в соответствии с рекомендациями ETSI TR 101 290? Спасибо за наводку. Все 5 частей, включая аналитические параметры? Кроме этого можно же ещё и отображать не ошибки, но полезную инфу - это тоже актуально. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 22 февраля, 2013 · Жалоба На пидах с видео-аудио (где PES и должен быть) не наблюдал такого, может и бывает в особо редких и кривых случаях. На пидах с PSI, конечно, эту проверку нельзя делать - там другой формат. TE = 0, PUS = 1, TP = 0, PID = 370, SC = 0, AFE = 1, CC = 3 mpeg2_pes_hdr - PSCP invalid = 11534848!!! mpeg2_pes_hdr - sid = 37 TE = 0, PUS = 1, TP = 0, PID = 371, SC = 0, AFE = 1, CC = 15 mpeg2_pes_hdr - VIDEO TE = 0, PUS = 1, TP = 0, PID = 0, SC = 0, AFE = 1, CC = 0 mpeg2_pes_hdr - PSCP invalid = 8388608!!! mpeg2_pes_hdr - sid = 13 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
oleg_1956 Опубликовано 22 февраля, 2013 · Жалоба Все 5 частей, включая аналитические параметры? Все три приоритета. Этого достаточно, чтобы оценить качество потока. Именно так и реализованы аппаратные тестеры IPTV (мои интересы именно в этой области). Если два анализатора, работающие в соответствии с рекомендациями ETSI TR 101 290, выдают отличающиеся цифры на одном и том же "битом" потоковом файле, то сразу возникает вопрос - кому верить? Отличия, обыкновенно, не принципиальные, но они есть и это, иногда, смущает... Кроме этого можно же ещё и отображать не ошибки, но полезную инфу - это тоже актуально. Я сотрудничаю с Elecard и пользуюсь их Elecard Stream Inspector. Очень много полезной информации. Слишком много. Они, как раз, результаты отработки сохраняют в csv. Вот фрагментик Time Level Event 16:13:22 Message TS sync. restore Offset = 0x00000000 16:13:23 First Priority PAT error. Repetition period of table > 500 ms (time diff = 532 ms) Offset = 0x000257C1 16:13:23 First Priority PMT error. Table with do not occure > 500 ms Pid = 4096 ( 0x1000 ) Offset = 0x00025913 16:13:23 Third Priority Unreferenced PID error. Not referred to by a PMT within 0,5 s%s Pid = 256 ( 0x100 ) Offset = 0x00025C64 16:13:23 Third Priority Unreferenced PID error. Not referred to by a PMT within 0,5 s%s Pid = 257 ( 0x101 ) Offset = 0x00026010 16:13:23 Third Priority EIT actual error. Repetition period of section with table_id = 0x4E < 25ms (time diff = 0 ms) Offset = 0x00035324 16:13:23 Third Priority SI repetition error. EIT_actual section 1 min. interval < 25 ms Offset = 0x00035324 16:13:23 Third Priority EIT actual error. Repetition period of section with table_id = 0x4E < 25ms (time diff = 6 ms) Offset = 0x00035904 16:13:23 Third Priority SI repetition error. EIT_actual section 0 min. interval < 25 ms Offset = 0x00035904 16:13:23 Third Priority EIT actual error. Repetition period of section with table_id = 0x4E < 25ms (time diff = 0 ms) Offset = 0x000359C0 16:13:23 Third Priority SI repetition error. EIT_actual section 1 min. interval < 25 ms Offset = 0x000359C0 16:13:23 Third Priority EIT actual error. Repetition period of section with table_id = 0x4E < 25ms (time diff = 13 ms) Offset = 0x000364C4 16:13:23 Third Priority SI repetition error. EIT_actual section 0 min. interval < 25 ms Offset = 0x000364C4 16:13:23 Third Priority EIT actual error. Repetition period of section with table_id = 0x4E < 25ms (time diff = 0 ms) Offset = 0x00036580 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
oleg_1956 Опубликовано 22 февраля, 2013 · Жалоба Это хороший лог, но без явного анализа событий и, желательно, оценки для потока (в процентах или баллах) работать с ним смогут только те, кто "в теме". А у меня несколько иная задача - дать возможность "человеку с улицы" оценить качество потоков из плейлиста и время их переключения со стороны абонента. А логи принести на приборе тому, кто в состоянии в них разобраться :)) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 22 февраля, 2013 · Жалоба Там (в доке) дальше и идут вычисления на базе эти параметров фишек типа: доступность сервиса, ошибки сервиса и чего то ещё, чтобы просто и понятно было обычным людям. А время переключения можно уменьшить радикально только если свалить с мультикаста на что то, что по запросу "вкл канал" вывалит сразу мегабайт(+-) кешированных данных. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vitalyb Опубликовано 22 февраля, 2013 · Жалоба На пидах с видео-аудио (где PES и должен быть) не наблюдал такого, может и бывает в особо редких и кривых случаях. На пидах с PSI, конечно, эту проверку нельзя делать - там другой формат. TE = 0, PUS = 1, TP = 0, PID = 370, SC = 0, AFE = 1, CC = 3 mpeg2_pes_hdr - PSCP invalid = 11534848!!! mpeg2_pes_hdr - sid = 37 TE = 0, PUS = 1, TP = 0, PID = 371, SC = 0, AFE = 1, CC = 15 mpeg2_pes_hdr - VIDEO TE = 0, PUS = 1, TP = 0, PID = 0, SC = 0, AFE = 1, CC = 0 mpeg2_pes_hdr - PSCP invalid = 8388608!!! mpeg2_pes_hdr - sid = 13 Поста не понял. Он не опревергает мною написанного. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Kompik Опубликовано 3 сентября, 2013 · Жалоба А есть что-то что можно пощупать? :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Ivan_83 Опубликовано 6 сентября, 2013 · Жалоба Всё скромно :) Stream hub: /http/ХХХ.ХХХ.ХХХ.ХХХ:7088 [status: 0, cpu: 0, sources: 1, clients: 0, refs: 0, no clients time: 718] Source: tcp-http http://ХХХ.ХХХ.ХХХ.ХХХ:7088/udp/239.0.0.116:4000 [iP: ХХХ.ХХХ.ХХХ.ХХХ:7088, index = 0] [status: 16, priority: 0, rate: 4047266, error rate: 11, pids: 5, no data recv time: 0] PID: 321 [Packets: 2673086, Size: 490761 kb, Scrambling: 0, CC errors: 59, TE count: 0] PID: 401 [Packets: 169797, Size: 31173 kb, Scrambling: 0, CC errors: 44, TE count: 0] PID: 0 [Packets: 9238, Size: 1696 kb, Scrambling: 0, CC errors: 24, TE count: 0] PID: 3301 [Packets: 3340, Size: 613 kb, Scrambling: 0, CC errors: 24, TE count: 0] PID: 17 [Packets: 550, Size: 100 kb, Scrambling: 0, CC errors: 17, TE count: 0] PIDs summary [Packets: 2856011, Size: 524345 kb, CC errors: 168, TE count: 0] Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Kompik Опубликовано 9 сентября, 2013 · Жалоба А что-то что можно запустить у себя и пощупать свои потоки? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...