Проверьте качество видеоисточников в сервисе Retroview от Flussonic
Зрители жалуются на рассыпающиеся картинки, рассинхронизацию звука и ошибки при просмотре записей? Не спешите ругаться на плохое оборудование. Возможно, проблема кроется в качестве входящих потоков.
Треть источников, которая приходит на сервера наших клиентов, имеет проблемы, которые заметны глазу зрителей. Обнаружить и исправить их возможно с помощью мониторинга входящих потоков.
Мониторинг доступен в сервисе Retroview. В этой статье мы подробно разберем, как «читать» отчет по мониторингу и использовать его для исправления ошибок.
Как включить мониторинг входящих потоков
Чтобы начать пользоваться мониторингом, вам необходимо разрешить доступ к сбору статистики. После этого перейдите в раздел Input Monitoring, чтобы увидеть дашборд с ошибками входящих потоков.
На дашборде представлены ключевые показатели:
- Качество текущих источников: сколько источников офлайн или с критическими ошибками.
- Общий входящий битрейт: суммарная пропускная способность ваших потоков.
- Каналы с наибольшим числом проблем: выделены 20 наиболее проблемных каналов.
- Детализация по каналам: ошибки транспортных потоков и проблемы при записи DVR.
Давайте рассмотрим теперь подробнее каждый из этих графиков.
Оценка состояния потоков
Чтобы увидеть полную картину, выберите временной промежуток. Мы рекомендуем смотреть на 2-3 последних дня: за это время вы наверняка поймаете регулярно повторяющиеся ошибки.
Первое, что вы увидите на дашборде — общий входящий битрейт и количество «плохих» источников. По ним легко понять критичность проблем.
Если вы видите, что часть каналов офлайн или несколько источников обозначены как bad, значит, прямо сейчас зрители не могут посмотреть эти каналы или видят их с критическими помехами.
Ниже отражены подробности по каждому каналу, начиная с самого проблемного. Идеальное состояние каналов — однотонный зеленый. Цветом обозначено количество ошибок в секунду. Если часть линии полностью отсутствует, значит, в это время канал не работал.
На скрине ниже мы видим огромное количество ошибок на всех каналах. Это потоки с камер видеонаблюдения одного из наших клиентов — и такая картина, к сожалению, не редкость.
Анализ конкретного канала
Выберите проблемный канал и перейдите в Stream Details, чтобы увидеть полную статистику по типам и частоте ошибок, а также их локализацию.
Stream input error details
Что показывает: транспортные ошибки — проблемы с сетью или с источником стрима.
Как устранить:
- Проверьте, не перегружен ли сервер, который принимает и отдаёт потоки. Если один сервер работает на вход и выход и отдает множество потоков, могут появиться сетевые ошибки.
- Обратитесь к провайдеру и покажите ему возникающие ошибки. Если проблема на его стороне, он сможет ее устранить.
- Обратитесь к поставщику контента и покажите ему отчет. Возможно, проблема в источнике.
Вам не нужно понимать, в чем именно проблема. Главное — показать отчет тем, кто несет ответственность за создание или доставку контента.
О чем говорят разные типы ошибок:
Если анализатор вид ошибку в конкретном PID, это указано в скобках рядом с названием ошибки.
- lost_packets – Потерянные пакеты входного потока за период.
- broken_payload – Поврежденные payload-данные входного потока за период.
- dropped_frames – Пропущенные кадры входного потока за период.
- ts_stuck_restarts – Количество переподключений для устранения проблемы
ts_stuck
(может возникать в RTSP). - desync – Потери синхронизации MPEG-TS во входном потоке за период.
- ts_pat – Отсутствие PAT (Program Association Table) во входном потоке за период.
- ts_service_lost – Потери сервиса в транспортном потоке (TS) за период.
- src_404 – Ошибки 404 (Not Found) входного потока за период.
- src_403 – Ошибки 403 (Forbidden) входного потока за период.
- src_500 – Ошибки 500 (Internal Server Error) входного потока за период.
- crashed – Аварийные завершения работы входного потока за период
- dropped_packets – Количество пакетов, отброшенных по различным причинам.
- no_signal – Кадры, пропущенные из-за отсутствия сигнала за период.
- duplicate – Данные кадра дублируются из предыдущего кадра (из-за медленной работы источника).
- ts_duplicate – Временная метка кадра совпадает с предыдущим кадром.
- cpu_stall – Кадр пропущен из-за чрезмерной загрузки CPU.
- adaptation_broken – Пакеты с adaptation field, превышающим размер пакета.
- ts_scrambled – Количество зашифрованных (scrambled) TS-пакетов.
- ts_pmt – Количество случаев, когда PMT не был получен в течение 0,5 секунд.
- ts_cc – Количество MPEG-TS пакетов с нарушенной последовательностью continuity counter.
- ts_tei – Количество MPEG-TS пакетов с установленным Transport Error Indicator.
- ts_psi_checksum – Количество PSI-таблиц с некорректной контрольной суммой.
- broken_pes_count – Количество PES-пакетов, начинающихся не с startcode.
- discarded_buffer_count – Количество случаев отбрасывания слишком большого ES-буфера без формирования кадра.
- ts_crashed – Необработанные ошибки в процессе декодирования MPEG-TS.
- too_large_dts_jump – Слишком большой скачок PTS, потребовавший сброса буфера и перезапуска парсинга.
- errors_pid_lost – Количество потерь PID в MPEG-TS потоке.
- rtp_pt_reject – Количество RTP-пакетов, отброшенных из-за неверного payload type.
- discarded_not_allowed_nal_count – Количество NAL-юнитов с недопустимым типом в non-interleaved режиме.
Stream input bitrate
Что показывает: входящий битрейт потока и его стабильность. Скачки битрейта будут сигнализировать о проблемах со входящими потоками.
Stream input warning details
Ошибки, которые Flussonic исправил или попытался исправить.
ts_stuck
— переподключения для устранения проблем с транспортным потоком.sr_ts_stuck
— повторяющиеся временные метки RTP в пакетах RTCP SR.sender_clock_deviation
— отклонение часов отправителя от серверного времени.ts_goes_backwards
— обратные скачки временных меток.ts_jump_forward
— скачки временных меток вперёд.no_marker_mode_flag
— декодер работает без marker mode.fu_pattern_is_broken_count
— проблемы с фрагментацией.fu_has_both_start_end_bits_count
— FU-заголовок содержит одновременно стартовый и конечный бит.fu_end_then_middle_workaround_count
— использовал обходные решения для упорядочивания FU-пакетов.dts_stuck
— идентичные DTS-метки в последовательных кадрах.dts_goes_backwards
— обратный ход DTS-меток.dts_jump_forward
— скачок DTS-меток вперёд.
DVR recoding issues
Эти показатели помогают выявить проблемы с записью.
Ключевые показатели:
- Fast: сегменты записаны за время быстрее 50% их длительности.
- Slow: записаны медленнее половины, но быстрее 90% длительности.
- Delayed: записаны медленнее чем за 90%, указывает на задержки DVR.
- Failed: сегменты не записаны из-за ошибок.
- Skipped: сегменты пропущены из-за медленной реакции хранилища.
Используйте Retroview и сэкономьте время и силы на решение проблем
Благодаря мониторингу наши клиенты устраняют 99% ошибок в видеопотоках в течение нескольких дней. Используйте мониторинг, чтобы гарантировать уровень сервиса своим клиентам и сэкономить время и деньги на решение регулярных инцидентов.