Субтитры и телетекст¶
Вещательный сигнал везёт текст в двух видах: европейский телетекст (субтитры на странице, обычно 888) и американские кэпшны CEA-608/708 внутри видеопотока. Головной станции важны два разных вопроса про них: доживают ли они до выхода и нужна ли из них отдельная дорожка.
Оба режима живут на вкладке Обработка карточки стрима.
Транзит — умолчание¶
По умолчанию станция ничего с текстом не делает: телетекстовый PID и кэпшны внутри видео уезжают на выход такими, как пришли. В форме это подписано так:
- Телетекст — Транзитом внутри MPEG-TS (без субтитровой дорожки);
- Кэпшны, режим выдачи — Внутри видео (passthrough).
Для доставки в сеть это правильное поведение: приёмник и телевизор декодируют текст сами, а любое вмешательство было бы лишней тратой и лишним риском. Транзит переживает и ремукс, и перекладывание в другой транспорт.
Когда нужно извлечение¶
Извлечение нужно тогда, когда за станцией стоит не приёмник, а плеер: ни один OTT-плеер не декодирует телетекст. Если со станции уходит OTT-копия, субтитры до зрителя дойдут только текстовой дорожкой.
- Телетекст — Извлекать субтитровые страницы дорожками: каждая субтитровая страница становится дорожкой WebVTT. Внутри MPEG-TS телетекст при этом продолжает ехать: извлечение дорожку добавляет, а не отбирает.
- Кэпшны — три режима: Внутри видео (passthrough), Дорожкой вместо встроенных (extract) и И внутри видео, и дорожкой (both).
Многоязычие достаётся даром: вещатель часто кладёт по субтитровой странице на язык, и каждая становится отдельной дорожкой без второго входа и ручной работы.
Режим extract у кэпшнов вырезает их из MPEG-TS
В режиме Дорожкой вместо встроенных кэпшны вырезаются из видео на всех выдачах, включая MPEG-TS: пуши по UDP, RTP и SRT, TS-сегменты и отдача по HTTP. Текстовой дорожке внутри MPEG-TS ехать не в чем, поэтому потребитель транспортного потока останется без субтитров вообще. Если сигнал забирают по MPEG-TS — а на головной станции это обычный случай, — выбирайте both.
Извлечение телетекста стоит низкой задержки
Реплика субтитров известна только на своём закрытии: пока страница не сменилась, длительность строки не решена. Поэтому стрим с текстовой дорожкой отдаётся обычными сегментами, без частей LL-HLS. Для доставки в сеть это ничего не меняет, но кромку OTT-копии удлиняет на несколько секунд — ещё одна причина не включать извлечение там, где сигнал только проходит через станцию.
Что видно по стриму¶
Под переключателем панель перечисляет страницы телетекста, найденные в потоке. Про каждую известны две независимые вещи, и путать их нельзя:
- объявлена — вещатель заявил страницу в служебных таблицах, с языком и назначением;
- идёт — страница действительно пришла в потоке.
Отсюда состояния, которые вы увидите рядом со страницей: объявлена, но не приходила (вещатель молчит), идёт, но не объявлена (вещатель забыл обновить таблицы — такие страницы извлекаются наравне с объявленными), либо и то и другое сразу.
Язык показывается вместе с происхождением, потому что доверия к ним не поровну: объявлен в PMT — факт, унаследован от дорожки — разумная догадка по одноязычной дорожке.
Перечень заполняется по эфиру и осмыслен только на работающем стриме.
Архив¶
Кэпшны декодируются и пишутся в архив в любом режиме, поэтому режим выдачи можно поменять и позже — субтитры появятся и по уже записанному архиву. Извлечённые телетекстовые дорожки попадают в архив вместе с видео.
Что дальше¶
- OTT-копия — кому нужна текстовая дорожка.
- Выходной MPEG-TS — что уходит в транспортный поток.