Отсутствие вещания в OTT-сервисе. Как определить, в чем проблема
Рассказываем на практическом примере, как ОТТ-сервису справиться с проблемами вещания.
Вещание сервиса в нашем примере организовано достаточно стандартно: контент забирается у нескольких провайдеров, транскодируется и нарезается в HLS, после чего отправляется в несколько региональных CDN-ов, а дальше — клиентам.
И эти клиенты то и дело обрывают линию тех.поддержки оператора с жалобами на отсутствие любимой программы. Чтобы выяснить, в чем проблема, мы решили проанализировать поток. Для этого необходима система мониторинга: она анализирует вещаемые потоки и отправляет статистику серверу для дальнейшей обработки. (В данном случае мы использовали Elecard Boro.)
Устанавливаем анализаторы в трех точках:
- на вход транскодера, чтобы проверять приходящий поток от контент-провайдера;
- на выход транскодера-пакетайзера для проверки его работы;
- на выход регионального CDN, чтобы проверить систему раздачи контента.
Мониторинг входных потоков помог определить промежутки времени, когда поток шел со значительными ошибками. Мы сопоставили данные за идентичные промежутки времени с входа и выхода транскодера и обнаружили, что транскодер, заметив СС ошибки, вставляет «матрас» — переключается в режим вещания статичной заставки.
Однако, были интервалы, когда входной поток был чистым, но транскодеры продолжали вещать заставку. Транскодер при восстановлении входного потока не всегда выходил из режима заставки и его необходимо было перезапускать вручную.
В итоге, оператору было необходимо заменить зависающие транскодеры и обратиться к поставщику контента, чтобы решить проблемы со входными потоками. Чтобы точно определить причину низкого качества входного потока, необходимо анализировать поток уже на стороне контент-провайдера.