Использование меток SCTE-104/35 в системах цифровой вставки программ. Часть 1. Архитектура систем сетевого вещания
В последнее время все чаще в обиходе телевизионных специалистов звучит термин «метки SCTE». Но далеко не все полностью знакомы с тем, что это заметки, как они действуют и для чего применяются. Чтобы внести ясность, компания SkyLark Technology обратилась к известному в отрасли специалисту Александру Перегудову, который специально подготовил для журнала Mediavision статью на эту тему. Первая часть статьи публикуется ниже.
Архитектура систем сетевого вещания с цифровой вставкой программ
Принципиальные основы и технологические решения использования меток (сообщений) SCTE-104/35 разработаны американским Обществом инженеров кабельного телевидения – SCTE (Society of Cable Television Engineers). Изначальная цель использования меток SCTE-104/35 – управление цифровой вставкой программ – DPI (Digital Program Insertion) – в сетях ТВ-вещания, ретранслирующих сигнал от центральной станции через каналы цифрового вещания транспортных потоков MPEG-2 TS. Используется также термин «Цифровая вставка рекламы» (Digital Ad Insertion).
По мере развития технологий и расширения набора функций идеология меток SCTE постоянно совершенствуется и отражается в новых стандартах и рекомендациях. Эти документы находятся в свободном доступе на сайте www.scte.org. Общество SCTE не налагает каких-либо ограничений или финансовых обязательств на сети ТВ-вещания, намеревающиеся использовать данные методы управления цифровой вставкой рекламы.
Этот фактор играет немаловажную роль в постоянном развитии ТВ-технологий и появлении новых решений, аппаратуры и систем. Спецификации SCTE-104/35 позволяют управлять не только вставкой рекламы, но и иными процедурами модификации контента в распределенных ТВ-системах, включая баннерную и целевую рекламу. Технология SCTE-104/35 используется и в каналах распространения программ «видео по запросу» по протоколу HTTP, включая Adobe Dynamic Streaming (HDS), Apple Live Streaming (HLS), Microsoft Smooth Streaming (MSS), MPEG-DASH.
Линейное сетевое вещание
Модель линейного сетевого вещания основана на региональной ретрансляции программного сигнала, формируемого центральной станцией сети (рис. 1-1).
Программный сигнал центральной станции формируется в центре формирования программ (ЦФП). В англоязычной литературе используется термин Broadcast Operation Center (BOC).
Для передачи программного сигнала в систему компрессии обычно используется интерфейс HD/SD-SDI. Здесь сигналы видео и аудио подвергаются компрессии и мультиплексируются в транспортный поток MPEG-2 TS одной программы (Single Program Transport Stream – SPTS). SPTS, в свою очередь, могут мультиплексироваться в многопрограммный транспортный поток Multi Program Transport Stream (MPTS). Для многопрограммных систем компрессии с расширенными функциями используется термин Network Operation Center (NOC).
Потоки SPTS или MPTS по интерфейсам DVB или IP передаются в региональные центры ретрансляции программ (ЦРП), где они подвергаются модификации путем вставки регионального контента и далее ретранслируются на свою территорию вещания в форме модифицированных потоков SPTS или MPTS. На рис. 1-1 показан путь сообщений SCTE-104/35 от источника (ЦФП) до конечного адресата – связки сплайсер-сервер в составе ЦРП.
Слоты
Вставки регионального контента должны происходить в предназначенные для этого временные интервалы в расписании вещания центральной станции. В документах SCTE эти временные интервалы называются avails. При переводе на русский язык используются термины «коммерческий интервал времени», «региональное рекламное окно», «рекламный временной слот» и другие варианты. Далее в качестве аналога термина avail будет использоваться термин «слот».
На границах слота производится переключение, или сплайсинг (Splicing), между сигналами из основного канала (сигнал центральной станции) и из канала ввода (сигнал региональной станции). Точка переключения «центр/регион» называется входной точкой сплайсинга – Splice In Point, точка переключения «регион/центр» называется выходной точкой сплайсинга – Splice Out Point.
Функции сплайсера
Переключение сигналов в ЦРП производится сплайсером (Splicer). Спецификации DPI определяют бесшовный (seamless) – незаметный для зрителя по изображению и звуку – сплайсинг с точностью до кадра.
В системах DPI интервал времени вставки (брейк) обычно рассматривается как одно событие замещения фрагмента программы в сигнале центральной станции равным или близким по хронометражу рекламным блоком из сигнала региональной станции. В состав рекламного блока включены отдельные рекламные клипы.
Сплайсер принимает по основному каналу транспортный поток от центральной станции и по каналу ввода – транспортный поток от рекламного сервера. В момент времени входной точки сплайсер переключает канал ввода от рекламного сервера на выходной канал. В момент времени выходной точки сплайсинга происходит обратное переключение.
Функции рекламного сервера
Рекламный сервер в составе ЦРП отвечает за воспроизведение одного или нескольких файлов, составляющих региональный брейк. Вставка регионального брейка от канала ввода в основной канал происходит в рамках единой сессии, во время которой сплайсер и рекламный сервер синхронизируют свою работу через TCP/IP-соединение в локальной сети ЦРП. Спецификация SCTE 30 описывает стандартизированные протоколы взаимодействия сплайсера и рекламного сервера.
Условия бесшовного сплайсинга
Бесшовный сплайсинг с точностью до кадра между потоками MPEG-2 TS от центральной и региональной станций требует выполнения нескольких условий.
Во-первых, транспортный поток от центральной станции в точках сплайсинга при кодировании MPEG-2 должен начинаться с закрытой группы изображений GOP с I-кадром в начале группы и кадрами I- или P-типа в ее составе. При кодировании H.264/AVC или H.265/HEVC в точках сплайсинга закрытая группа должна начинаться с кадра типа IDR (Instantaneous Decoder Refresh) и заканчиваться кадрами I- или P- типа. Прием декодером кадра IDR означает, что декодирование после точки сплайсинга можно производить без использования предшествующих кадров. В случае кодирования с переменной скоростью (Variable Bit Rate – VBR) рекомендуется переход на кодирование с постоянной скоростью (Constant Bit Rate – CBR) в интервале слота. Условие обеспечивается кодером в составе системы компрессии в ответ на прием управляющего сообщения SCTE-104 от системы автоматизации.
Во-вторых, транспортный поток, воспроизводимый из файлов рекламным сервером, должен быть сформирован по тем же правилам в части формирования GOP-структуры. Параметры изображения и звука, скорость формируемого потока должны быть такими же, как у потока от центральной станции. Условие обеспечивается путем надлежащей компрессии файлов рекламного брейка.
В-третьих, сплайсер должен заблаговременно получить от системы автоматизации сообщение о точках сплайсинга, передать рекламному серверу команду на старт требуемого брейка, произвести сплайсинг во входной и выходной точках. Условие обеспечивается передачей управляющего сообщения SCTE-104/35 от системы автоматизации в адрес сплайсера.
И, в-четвертых, рекламный сервер должен начать воспроизведение файлов регионального брейка за определенное время до старта замещения, и закончить его после регионального брейка с таким условием, чтобы начальная и конечная точки брейка во время воспроизведения совпали с моментом переключения каналов в сплайсере.
Сообщения SCTE-104/35
Реализация DPI по спецификациям SCTE-104/35 основана на передаче сообщений cueing message о предстоящих слотах для вставки региональных брейков. Термин cueing message при переводе на русский язык равнозначно интерпретируется как «сообщение с меткой SCTE-104/35» или как «метка SCTE-104/35». Термин cueing message эволюционировал из предшествующих спецификаций управления аналоговой вставкой рекламы с использованием звуковых двухтональных посылок DTMF (Dual Tone Multi-Frequency signaling), называемых analog cue tone. Поэтому иногда вместо cueing message используется термин digital cue tone.
Сообщения SCTE-104/35 о предстоящем событии сплайсинга генерируются системой автоматизации, входящей в состав ЦФП. В составе сообщения, помимо прочих данных, передается время начала/окончания слота и идентификаторы слота, позволяющие ассоциировать каждый слот с требуемым региональным наполнением.
Далее эти сообщения отправляются в адрес кодера и мультиплексора в составе системы компрессии, а также в адрес сплайсера в составе ЦРП. Сплайсер ретранслирует содержание сообщения рекламному серверу, управляя его работой.
Необходимо отметить, что использование сообщений SCTE-104/35 не гарантирует бесшовного сплайсинга при всех возможных условиях, но обеспечивает кадровую точность сигнализации о планируемых событиях переключения источников сигнала в ЦРП.
Каналы передачи сообщений SCTE-104/35
Сообщение с данными сплайсинга передается по цепочке «система автоматизации – система компрессии – сплайсер», состоящей из двух сегментов.
Сегмент «система компрессии – сплайсер» использует канал передачи MPEG-2 TS. Здесь данные сплайсинга (Splice Information Table) передаются в сообщениях SCTE-35 в виде битовой последовательности Splice_info_section. Сообщения SCTE-35 формируются инжектором SCTE-35 как отдельный элементарный приватный PID-поток данных, который мультиплексируется в общий выходной поток SPTS вместе с PID-потоками видео/аудио с привязкой к единой временной шкале Presentation Time Stamps (PTS). Идентификатор PID-потока SCTE-35 объявляется в таблице Program Map Table (PMT) как неотъемлемая часть программы в составе однопрограммного (SPTS) или многопрограммного (MPTS) транспортного потока MPEG-2 TS. Для передачи сообщений SCTE-35 пропускная способность канала MPEG-2 TS должна иметь несколько кбит/с дополнительно к суммарной скорости потоков видео/аудио и других данных. Оборудование, которое изменяет состав программ или скорость составляющих ее элементарных потоков видео/аудио, не должно изменять привязку потока SCTE-35 к программе или нарушать его связь с метками времени PTS.
Сегмент «система автоматизации – система компрессии» может использовать каналы передачи двух видов. Первый вариант – канал с обратной связью через соединение TCP/IP, второй вариант – канал без обратной связи по интерфейсу SDI. В обоих вариантах данные Splice Information Table в этом сегменте форматируются в виде сообщений (запросов) SCTE-104. Правила приема-отправки сообщений SCTE-104, а также укладка данных в них нормируются документом SCTE 104 в виде прикладного программного интерфейса (API).
Оба типа сообщений используются для последовательной передачи данных сплайсинга от системы автоматизации до сплайсера, поэтому и используется термин «сообщения SCTE-104/35».
Канал передачи сообщений SCTE-104 с обратной связью
Двунаправленный канал связи между системой автоматизации и инжектором (рис. 1-2) дает возможность подтверждения инжектором и кодером приема и обработки сообщений SCTE-104, полученных от системы автоматизации.
В этом решении есть несомненные достоинства, но есть и проблемы реализации. Сообщения SCTE-104/35 содержат данные в бинарном представлении. Текстовые данные, подобные тегам XML, в сообщениях SCTE-104/35 не передаются. Такое ограничение существенно сокращает объем передаваемых данных и требования к полосе пропускания канала передачи. С другой стороны, бинарное представление данных в сообщениях SCTE-104 выдвигает особые требования к сети TCP/IP, связывающей системы автоматизации и компрессии. Это должна быть строго приватная сеть, в которой гарантированное время задержки передачи сообщений должно быть существенно меньше длительности ТВ-кадра. Для коммуникации рекомендуется использовать стандартный номер порта (сокета) – 5167.
В большинстве вариантов реализации такого канала ЦФП и система компрессии находятся на значительном удалении друг от друга и управляются различными операторами, что вносит технические трудности создания надежного TCP/IP-соединения между ними через сети VPN (Virtual Private Network – виртуальная частная сеть).
Канал передачи сообщений SCTE-104 без обратной связи
Однонаправленный интерфейс SDI является обязательным каналом связи между ЦФП и системой компрессии, и поэтому логично использовать его для передачи сообщений SCTE-104. Принято передавать сообщения SCTE-104 как дополнительные данные в интервале VANC (Vertical ANCillary) сигнала SDI согласно стандарту SMPTE 291M. Детали укладки (mapping) данных сообщения SCTE-104 в пакеты VANC регламентируются в SMPTE RP2010. Используются пакеты ANC типа 2, где идентификатором (ID) полезной нагрузки пакета является пара Data ID (DID) и Secondary Data ID (SDID). Значения DID=41h и SDID=07h для пакетов VANC указывают на передачу в этих пакетах сообщения SCTE-104.
Пакет VANC с данными сообщения SCTE-104, в принципе, может размещаться в любой строке, находящейся вне активной части кадра. Однако рекомендуется размещать данные VANC в потоке данных канала Y во второй строке после точки переключения (Switch point), определяемой в рекомендации SMPTE RP168. В большинстве случаев используется 12-я строка первого поля для всех стандартов разложения SD/HD-SDI.
На рис. 1-3 показан однонаправленный канал передачи данных SCTE-104 от системы автоматизации к инжектору и кодеру в составе системы компрессии через дополнительное устройство, называемое инсертером SCTE-104. В документе SCTE 104 для обозначения инсертера используется термин Proxy Device, в документе SMPTE RP2010 используется термин «инсертер».
Задача инсертера – инкапсуляция сообщения SCTE-104 в сигнал SDI. Инсертер управляется от системы автоматизации, имеет входы/выходы SDI, на вход подается сигнал программы вещания. В SCTE-104 определяется стандартный интерфейс API управления инсертером от системы автоматизации по сети TCP/IP в ЦФП.
Сформированные инсертером в составе сигнала SDI сообщения SCTE-104 передаются от системы автоматизации следующему внутрипотоковому устройству до конечного адресата – инжектора в составе системы компрессии. В этом режиме система автоматизации действует без сообщений обратной связи от системы компрессии, по принципу наилучшей возможной работы. Например, сообщения могут отправляться несколько раз, дублируя уведомление об одной и той же операции сплайсинга.
На стороне системы компрессии данные сплайсинга из сообщения SCTE-104 переносятся в сообщение SCTE-35 с помощью инжектора SCTE-35.
В такой схеме однонаправленный канал передачи SCTE-104/SDI действует между системой автоматизации и инжектором. В то же время, между системой автоматизации и инсертером организуется свое взаимодействие, которое также может быть двунаправленным при использовании соединения TCP/IP или RS-422, либо однонаправленным при управлении инсертером через контакты GPI. Предпочтительным является первый вариант, который реализуется достаточно просто, поскольку система автоматизации и инсертер находятся в составе одного ЦФП.
Отсутствие обратной связи между системой автоматизации и инжектором компенсируется относительной простотой построения тракта доставки сообщения SCTE-104 на основе стандартных аппаратных компонентов с интерфейсами SDI. Оборудование, не изменяющее содержания сигнала SDI (коммутаторы, распределители) практически всегда пропускает данные VANC. Устройства, изменяющие содержание сигнала SDI (задержка, микширование сигналов), должны корректно пропускать данные VANC с входа на выход. При корректном прохождении сигнала через тракты HD/SD-SDI метки SCTE-104 сохраняют привязку к тому кадру, в который они были первоначально вставлены.