Способ скрытой маркировки потока данных цифрового телевизионного сигнала
METHOD FOR HIDDEN MARKING OF DIGITAL TELEVISION SIGNAL DATA STREAM

Способ скрытой маркировки потока данных цифрового телевизионного сигнала
Область техники, к которой относится изобретение Предполагаемое изобретение относится к цифровому телевидению и, в частности, к способам скрытой маркировки потока данных цифрового телевизионного сигнала (встраиванию цифровых "водяных знаков" (ЦВЗ)), передаваемого по цифровым сетям передачи данных.
Уровень техники
Для обеспечения защиты от изменений, искажений или подделки телевизионных (ТВ) программ, передаваемых в цифровом виде через цифровые сети передачи данных, иногда используют скрытую маркировку потока данных цифрового ТВ сигнала. Маркировка осуществляется путем создания и встраивания в поток данных в цифровом виде последовательности или группы бит (ЦВЗ), расположение и параметры которых в потоке данных фиксируются и затем передаются в приемник ТВ сигнала. При необходимости определения подлинности и целостности ТВ программы в приемнике находят ЦВЗ в составе ТВ сигнала и сравнивают параметры найденного ЦВЗ с известными параметрами, в случае совпадения параметров ТВ программа считается подлинной, иначе выявляют ее незаконное изменение, с дальнейшим возможным принятием контрмер.
Характерные термины, используемы в области цифрового ТВ, приведены в ГОСТ Р 54995-2012 и в ГОСТ Р 52210-2004.
Известен способ встраивания "водяных знаков" в передачу видеосигналов в системе передачи видеоданных (патент РФ №2298295, приоритет от 28.06.2001 г. ), содержащий этапы, на которых
принимают передачу видеосигналов или сигналов изображений без "водяных знаков", имеющую некоторое количество кадров изображений, при этом каждый кадр изображения включает в себя некоторое количество битовых плоскостей, причем этот способ характеризуется этапами, на которых:
разделяют, по меньшей мере, одну битовую плоскость из каждого, по меньшей мере, двух кадров изображений (кадров) на первую и вторую части;
комбинируют вторую часть битовой плоскости первого кадра с первой частью битовой плоскости второго кадра для обеспечения битовой плоскости с "водяными знаками" так, чтобы бит "водяного знака" был применен к передаче сигналов изображений. Способ может также предусматривать этап комбинирования. Включает в себя комбинирование, по меньшей мере, одной битовой плоскости, из частей каждого из двух кадров изображений между последовательными кадрами изображений.
На этапе комбинирования может также предусматриваться организация кадров таким образом, что они включают в себя одну и ту же битовую плоскость с "водяными знаками".
При этом этап комбинирования, по меньшей мере, одной битовой плоскости может повторяться на всем протяжении передачи видеосигналов.
После встраивания ЦВЗ, согласно способу, видеосигнал передается в приемник ТВ сигнала.
Для детектирования подделки цифрового изображения с "водяными знаками"
принимают изображение со встроенными цифровым способом "водяными знаками", имеющее некоторое количество кадров изображений, при этом каждый кадр изображения включает в себя некоторое количество битовых плоскостей, по меньшей мере, одна из которых имеет "водяные знаки", причем этот способ характеризуется этапами, на которых:
извлекают упомянутую битовую плоскость с "водяными знаками" из, по меньшей мере, двух кадров изображений;
сравнивают упомянутую, по меньшей мере, одну битовую плоскость с "водяными знаками" между каждым из упомянутых, по меньшей мере, двух кадров изображений для детектирования какой-либо подделки "водяного знака".
Однако, известный способ имеет ряд недостатков.
Так, на этапе создания ЦВЗ необходимо осуществлять преобразование, по крайней мере, в двух кадрах изображения, в которых изменяются битовые плоскости, причем специальные меры для снижения последующей визуальной заметности не предпринимаются, что может в измененном видеосигнале привести к визуальному выявлению наличия ЦВЗ.
Помимо этого, известный способ имеет следующие недостатки:
кадры изображения для вставки "водяного знака" должны практически полностью совпадать, с точки зрения визуального просмотра, чтобы можно было менять битовые плоскости из одного кадра в другой;
битовые последовательности, при замене одна на другую, и предлагаемые для этого накладываемые маски должны быть близки или идентичны по содержанию переносимого битового потока, чтобы не вызвать резкой деградации полученного изображения с "водяным знаком";
битовые последовательности или плоскости для взаимной замены должны быть заранее подготовлены, или вычислены, т.к. произвольная замена в режиме on-line не предусматривается;
дальнейшая обработка сигнала, для передачи исходного сигнала с внедренными "водяными знаками" может не обеспечивать целостность "водяных знаков", т.к. дальнейшая обработка - цифровое кодирование (сжатие) предусматривает избавление от избыточности несжатого сигнала, поэтому перемешанные части изображения, младшие значащие разряды таких кадров могут быть отброшены или трансформированы.
Известен способ создания ЦВЗ в закодированных видеокадрах (заявка США на изобретение №20120076206, приоритет от 04.08.2011 г.), причем способ включает
получение в электронном виде цифрового потока битов, включающего множество закодированных видеокадров, причем каждый видеокадр разделен на множество макроблоков;
определение зависимостей макроблока на основе информации о прогнозе в полученном цифровом потоке;
определение набора макроблоков, имеющих минимальное количество зависимостей от других макроблоков; и
встраивание ЦВЗ во множестве макроблоков, выбранных из набора макроблоков, имеющих минимальное количество зависимостей от других макроблоков.
В способе также предусмотрено, что
определение набора макроблоков, имеющих минимальное количество зависимостей, включает выбор макроблоков, от которых не зависят никакие другие макроблоки,
перед определением зависимостей макроблоков осуществляется энтропийное декодирование цифрового потока,
встраивание ЦВЗ включает корректировку значений прогноза выбранного множества макроблоков в соответствии с определенным ЦВЗ,
осуществляется сборка выходного цифрового потока, включающего, макроблоки с ЦВЗ,
осуществляется энтропийное кодирование собранного выходного цифрового потока.
Известный способ ориентирован на видеопотоки, совместимые со стандартом Н.264.
Одновременно описан способ обнаружения цифрового видеопотока с ЦВЗ, предусматривающий определение метрик ЦВЗ в наборе макроблоков, от которых зависят минимальное количество других макро-блоков и сравнение определенных метрик водяного знака с эталонным набором метрик ЦВЗ.
Однако, известный способ имеет ряд недостатков, среди которых можно отметить сложную процедуру поиска зависимостей макроблоков в псевдокадрах, а также необходимость энтропийного кодирования собранного выходного цифрового потока.
Известен также способ встраивания ЦВЗ в цифровой видеосигнал (заявка США на изобретение №20170251283, приоритет от 25.02.2016 г.), причем способ включает
получение видеопотока;
определение пространственно отличающегося участка кадра в полученном видеопотоке, который будет изменен, причем пространственно отличающийся участок кадра закодирован отдельно от любого другого участка в кадре;
извлечение сегмента пространственно отличающегося участка кадра, который будет изменен;
изменение извлеченного сегмента пространственно отличающегося участка;
кодирование извлеченного сегмента пространственно отличающегося участка в единственный сегмент пространственно отличающегося участка;
сопоставление заголовка сетевого уровня абстракции с закодированным единственным сегментом пространственно отличающегося участка;
вставка закодированного единственного сегмента пространственно отличающегося участка и его связанного заголовка сетевого уровня абстракции в полученный видеопоток после пространственно отличающегося участка кадра, который был изменен.
В способе также предусмотрено, что сопоставление заголовка сетевого уровня абстракции (NAL, network adapted level) с закодированным единственным сегментом пространственно отличающегося участка включает
установку значения поля firstmbinslice в заголовке слайса в единственном сегменте пространственно отличающегося участка, причем поле first_mb_in_slice является адресом макроблока извлеченного сегмента пространственно отличающегося участка, при этом установка значения поля first_mb_in_slice в заголовке слайса выполняется путем изменения значения поля first_mb_in_slice и
встраивание закодированного единственного сегмента пространственно отличающегося участка, включающего измененное поле first_mb_in_slice в заголовке сетевого уровня абстракции.
Кроме того, в способе предусмотрено, что
декодирование извлеченного пространственно отличающегося участка кадра осуществляется до выполнения этапа извлечения сегмента пространственно отличающегося участка от определенного пространственно отличающегося участка кадра, при этом используется опорный I-псевдокадр, содержащий максимум информации из данной группы кадров,
кодирование извлеченного сегмента пространственно отличающегося участка в единственный сегмент пространственно отличающегося участка может выполняться с помощью режима прогноза дискретно-косинусных коэффициентов DC, с помощью режима I_PCM и включать изменение, по крайней мере, одного пикселя в одном из Y, U или V цвето-разностных или яркостных характеристик пикселей, составляющих матрицу изображения.
При реализации способа возможно, что
кодирование извлеченного сегмента пространственно отличающегося участка в единственный сегмент пространственно отличающегося участка также включает кодирование сегмента пространственно отличающегося участка кадра в единственный сегмент пространственно отличающегося участка для слияния ссылки на то же самое эталонное изображение, как указано определенным пространственно отличающимся участком кадра, который будет изменен.
изменение извлеченного сегмента пространственно отличающегося участка включает изменение, по крайней мере, одного значения из извлеченного сегмента: остаточные значения; режимы прогноза или векторы движения.
изменение извлеченного сегмента пространственно отличающегося участка кадра включает встраивание ЦВЗ в извлеченный сегмент пространственно отличающегося участка кадра.
Известный способ ориентирован на видеопотоки, совместимые со стандартами Н.264 и Н. 265.
Известный способ принят за прототип для предлагаемого технического решения.
Помимо этого, известный способ имеет ряд недостатков.
В известном способе происходит процесс частичной декомпрессии ТВ сигнала до уровня энтропийного кодирования, модификации отдельных макроблоков, последующей вторичной компрессии исходного сжатого (компрессированного) цифрового потока данных.
Это усложняет процесс внедрения ЦВЗ.
При этом, поскольку ЦВЗ в обоих случаях накладывается на исходное ТВ изображение, происходит последующая корректировка исходной скорости транспортного потока, скорость потока с внедренными ЦВЗ при этом увеличивается. Это явление легко определяется штатным контрольно-проверочным оборудованием и сразу обращает на себя внимание. При этом, при увеличении скорости исходного сигнала, расширяется также полоса, транслируемого по различным средствам связи, частотного диапазона модернизированного ТВ сигнала. Это снижает скрытность ЦВЗ.
Кроме того, как правило двойное перекодирование исходного сжатого цифрового мультиплексированного ТВ сигнала вещательного качества, который предназначен для сетей распространения, отличается от ТВ сигнала, используемого в процессе производства ТВ- контента, тем, что не обладает лишней избыточностью для всякого рода преобразований, может привести к некоторой деградации транслируемого ТВ сигнала. Для некоторых производителей ТВ контента такая деградация не является существенной, для других, которые борются за качество вещания в форматах высокого, либо сверхвысокого качества изображения, деградация, внесенная при внедрении ЦВЗ описанными способами, будет неприемлемой.
Это также снижает скрытность ЦВЗ.
Раскрытие изобретения
Техническим результатом является:
1) улучшение целостности передаваемого контента,
2) повышение скрытности ЦВЗ,
3) упрощение процесса вставки ЦВЗ.
Для этого предлагается способ скрытой маркировки потока данных цифрового телевизионного сигнала, заключающийся в том, что
формируют совокупность макроблоков для замены;
записывают сформированные для замены макроблоки в память;
принимают транспортный поток данных цифрового вещательного телевидения;
записывают часть транспортного потока в память;
находят в записанной части транспортного потока пакетированный элементарный поток (ПЭП);
проводят обработку ПЭП, выполняя следующие действия
(А) выполняют поиск заголовка ПЭП;
определяют начало ПЭП;
определяют по данным структуры уровня сетевой абстракции наличие в составе ПЭП В-псевдокадров;
если не найдено ни одного В-псевдокадра, то переходят к этапу А;
(В) декодируют очередной В-псевдокадр на слайсы;
определяют пригодность очередного слайса для обработки, выполняя следующие действия:
декодируют слайсы на макроблоки;
определяют для очередного макроблока выполнение условий:
макроблок не является опорным для других макроблоков в других слайсах и/или кадрах;
макроблок не содержит векторов движения;
если условия выполнены, то помечают найденный макроблок;
если очередной В-псевдокадр последний из найденных, то переходят к этапу А;
если не найдено ни одного пригодного макроблока, то переходят к этапу В;
записывают слайс, содержащий найденный макроблок, в память;
выбирают из заранее сформированных макроблоков подходящий макроблок для замены найденного макроблока;
записывают в памяти подходящий макроблок вместо найденного макроблока;
восстанавливают исходный В-псевдокадр, содержащий замененный макроблок;
вычисляют контрольную сумму измененного В-псевдокадра;
вставляют контрольную сумму в транспортный поток на более высокий уровень, чем тот, где заменялся макроблок;
вставляют измененный В-псевдокадр в ПЭП;
вставляют ПЭП из памяти в записанную часть транспортного потока;
передают часть транспортного потока из памяти по назначению, в сети распространения ТВ сигналов. Предлагаемый способ позволяет внедрять ЦВЗ как в отдельные части транспортного потока, так и в транспортный поток в целом.
Важной особенностью предлагаемого способа обработки ТВ сигнала является то, что введенные ЦВЗ не выявляются штатными средствами контроля, что исключает возможность их обнаружения, изменения, или удаления. Кроме того, при передаче ТВ сигналов по различным средам распространения ТВ контента, при различных методах обработки ТВ сигнала, такие ЦВЗ не подвергаются деградации, либо исчезновению, в результате ошибок при передаче, или переформатирования ТВ контента. Такая особенность позволяют выявлять целенаправленное (несанкционированное) изменение ТВ контента при несанкционированном исчезновении, изменении, деградации таких меток.
Средой распространения ТВ сигналов являются распределительные сети телевизионного вещания, кабельные сети операторов цифрового ТВ, IP TV, спутниковые сети операторов цифрового ТВ. Во всех случаях сигнал должен сохраняться в цифровом виде, независимо от среды распространения, тогда ЦВЗ будет сохраняться и выявляться с помощью специального программного обеспечения (ПО).
В системах распространения требуется точная синхронизация процессов и устройств. Это накладывает существенные ограничения на время, требующееся для обработки цифровых потоков при их трансляции (не более 100 мс), а превышение этого времени делает обработку неприемлемой с точки зрения дальнейшего распространения ТВ сигнала. ЦВЗ в предложенном методе обработки ТВ сигнала вводится в сжатый цифровой ТВ сигнал, хотя все производители оборудования существующими методами кодирования (сжатия) достигают такой степени сжатия и сокращения избыточности полезной нагрузки (видео, аудио и данных), что внесение избыточности в сжатый сигнал не представляется возможным. Произвольное изменение сжатого ТВ контента приводит к заметной деградации изображения или звука.
При внедрении ЦВЗ в служебные таблицы, такие метки не приведут к явной деградации. Однако, будут доступны для легкого их обнаружения, изменения, а при изменениях (переформатировании) потоков могут быть искажены, либо уничтожены. Поэтому, наиболее труднодоступным местом для внедрения ЦВЗ, а также для их обнаружения и изменения, являются алгоритмы сжатия (кодирования) полезной нагрузки - изображения, звука, данных, непосредственно формирующих видимую и слышимую зрителем часть ТВ сигнала. Но, при этом любая несанкционированная либо неквалифицированная вставка может привести к видимой (слышимой), заметной для определения, деградации исходного сигнала.
Перед применением способа целесообразно сформировать в составе приемника цифрового ТВ средство обработки совокупности макроблоков для замены. При этом в памяти приемника формируются отдельные области - буферы 1, 2, 3. Поскольку размеры заменяемых макроблоков могут быть разными - от 4×4 пикселя (элемента изображения) до 32×32 пикселя, то заранее формируются макроблоки всех возможных размеров, после чего все сформированные макроблоки записывают в буфер 1 в память. Такие макроблоки представляют из себя такую же видеопоследовательность, как и основной видеопоток, сжатый по тем же алгоритмам кодирования (цифрового сжатия), с такой же иерархической структурой и синтаксисом, который формирует и основной транспортный поток.
Для подготовки и записи ЦВ3-макроблоков, заменяющих исходные макроблоки в двоичной видеопоследовательности, можно использовать различные варианты. Как один из возможных вариантов, берется видеопоследовательность, или несжатый видеофайл динамический либо статический, подходящего содержания для целей выполнения вставки ЦВЗ. Затем, с помощью свободно распространяемого ПО (в нашем случае может использоваться программа FFMPEG) видеопоследовательность сжимается с использованием упомянутого способа цифрового кодирования по стандарту Н. 264 \ AVC. Кодирование производится таким образом, что видеопоследовательность разделяется на макроблоки различных размеров. Размеры макроблоков варьируются от 4×4 до 32×32 пикселя. Далее, сжатая видеопоследовательность передается с помощью специального ПО (СПО) на устройство обработки и записывается в буфер 1.
В отличие от известных способов, в предложенном способе внедрение ЦВЗ в цифровой сжатый мультиплексированный поток выполняется без процедуры частичной декомпрессии и последующей повторной компрессии исходного сигнала. Таким образом, поиск соответствующих областей макроблоков (слайсов) для замены и фрагментов слайсов для внедрения ЦВЗ, в соответствующих В-псевдокад-рах, ведется только по заголовкам соответствующего синтаксиса ПЭП и NAL-структур, которые закодированы с помощью экспоненциальных кодов Голомба.
Пример таких заголовков и поиска по ним приводится в соответствующих стандартах и рекомендациях к ним (например, Recommendation ITU-T Н.264 (02/2014), раздел 7.3.3 "Slice header syntax", информация по адресу https://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-H.264-201402-S!!PDF-E&type=items)
Указанный выше параметр из заголовка слайса является одним из последних, который закодирован без применения алгоритмов сжатия энтропийного кодирования, либо САВАС. Аббревиатура раскрывается (см. раздел 7.2 Рекомендаций). Далее, после описанного дескриптора, синтаксис предполагает кодирование по алгоритмам САВАС.
В предложенном способе такие алгоритмы энтропийного декодирования и последующего кодирования (декомпрессии и вторичной компрессии) не используются. Это является также отличительной особенностью предложенного способа обработки области сжатого ТВ видеоизображения. Замена слайса и вставка на его место другой группы макроблоков, выполняется посредством прямого доступа, без операций декомпрессии и повторной компрессии, за счет того, что найдены параметры в заголовках слайсов, закодированных с помощью экспоненциальных кодов Голомба и позволяющие находить области изображения с информацией, на которую не опираются другие псевдокадры из данной группы кадров и которые не имеют векторов движения.
Далее, после указанного заголовка Slice_qp_delta, все остальные параметры для декодирования ТВ изображения, закодированы с помощью алгоритмов САВАС (энтропийного кодирования, см. раздел 7.3.4):
Аббревиатуры также раскрываются (см. раздел 7.2.
Этот уровень декодирования САВАС (декомпрессии) для вставки ЦВЗ в ТВ сигнал в предложенном способе, не используется.
После подготовки макроблоков для замены выполняется сам способ.
Для этого сначала записывают часть транспортного потока в память (буфер 3). Объем необходимой памяти рассчитывают, исходя из длительности операций по внедрению ЦВЗ.
Можно отметить, что поиск В-псевдокадров связан с тем, что псевдокадр этого типа не является опорным и не содержит векторов движения, соответственно, внедрение ЦВЗ в такой псевдокадр в минимальной степени или вообще никак не способно повлиять на визуальную заметность изображения при его модификации.
Затем записывают слайс, содержащий найденный макроблок, в буфер 2 и, исходя из размеров найденного макроблока, выбирают в буфере 1 из заранее сформированных макроблоков подходящий макроблок для замены найденного макроблока. Поскольку макроблоки всех возможных размеров уже заранее подобраны, операция выбора занимает минимальное время.
После этого записывают в буфер 2 подходящий макроблок из буфера 1 вместо найденного макроблока и восстанавливают исходный В-псевдокадр, содержащий замененный макроблок.
Все размеры буферов выбираются, исходя из времени обработки транспортного потока, параметрами интерфейсов обмена между буферами и количеством информации, которую надо передавать.
Для измененного В-псевдокадра и всей видеопоследовательности вместе, вычисляют контрольную сумму заранее заданным методом, вставляют контрольную сумму в транспортный поток на более высокий уровень, чем тот, где заменялся макроблок, вставляют измененный В-псевдокадр в ПЭП, вставляют ПЭП в буфере 3 в транспортный поток и передают часть транспортного потока из буфера 3 по назначению.
Вставка контрольной суммы в транспортный поток осуществляется в такое место потока, где наличие нескольких байт информации будет вполне незаметно. Например, контрольная сумма может быть записана в служебные таблицы на уровень транспортного потока MPEG-2 TS. Либо, контрольная сумма может маскироваться под видеопоследовательность в различных местах транспортного потока.
Описанным образом может быть помечен последовательно весть транспортный поток.
Сама контрольная сумма, место ее записи, ЦВЗ и место его расположения запоминаются и затем могут быть переданы доверенным образом в место приема цифрового ТВ сигнала.
В результате, улучшается контроль целостности передаваемого контента путем внедрения ЦВЗ и формирования и скрытной передачи контрольной суммы, поскольку контрольная сумма охватывает весь транспортный пакет в транспортном потоке, и любое несанкционированное изменение контента приводит к разрушению контрольной суммы. Причем контрольная сумма вычисляется по разным участкам видеопоследовательности и транспортного потока, которые невозможно заранее предсказать. А изменение контрольной суммы на каком-либо участке транспортного потока (битовой двоичной видеопоследовательности) показывает место несанкционированного изменения передаваемого сигнала (нарушения целостности).
Кроме того, повышается скрытность маркировки и ЦВЗ, поскольку ЦВЗ не выявляется визуально и не определяется штатным контрольно-проверочным оборудованием;
Повышается также надежность ЦВЗ за счет невозможности их удаления, поскольку простое вмешательство в сжатый поток, с целью подменить или уничтожить ЦВЗ, ведет либо к заметной деградации изображения, либо к нарушению контрольной суммы и нарушению целостности.
При этом также возникает возможность сохранения ЦВЗ в других транспортных потоках, поскольку ЦВЗ внедряется непосредственно в матрицу изображения, соответственно, если формат сжатия не меняется, то ЦВЗ сохраняется, и его наличие может быть проконтролировано.
При необходимости осуществить проверку на целостность цифрового ТВ сигнала, содержащего внедренные ЦВЗ в соответствии с предложенным способом, сначала получают в месте приема доверенным образом контрольную сумму, место ее записи, ЦВЗ и место его расположения для конкретного цифрового ТВ сигнала.
Затем принимают транспортный поток данных цифрового вещательного телевидения с помощью средства обработки, записывают часть транспортного потока в память (буфер 3), находят в записанной части транспортного потока пакетированный элементарный поток (ПЭП).
После этого проводят обработку ПЭП в средстве обработки, выполняя следующие действия:
записывают транспортный поток в память;
выделяют контрольные суммы на известных местах в транспортном потоке;
вычисляют контрольные суммы в принятом транспортном потоке и сверяют с контрольными суммами, которые были сформированы при первоначальной обработке ТВ сигнала;
при несовпадении контрольных сумм делается предварительный вывод о нарушении целостности исходной видеопоследовательности;
в местах нарушения контрольных сумм, на этих участках транспортного потока выполняется поиск и анализ наличия ЦВЗ;
определяют начало ПЭП;
определяют по данным NAL структуры наличие в составе ПЭП В-псевдокадров;
декодируют очередной В-псевдокадр на слайсы;
декодируют слайсы на макроблоки;
находят соответствующий и известный макроблок - ЦВЗ;
проверяют его наличие и целостность;
если ЦВЗ присутствует и не изменен, то отправляют транспортный поток из памяти по назначению (для случая однократной маркировки).
В случае, если маркировка проводилась для всего потока, то выполняется дальнейший анализ транспортного потока. При небольшом количестве нарушенных ЦВЗ, до 5% от общего числа, что допускается при передаче сигнала по сетям распространения, делается вывод о целостности исходного сигнала.
Иначе, если количество нарушенных ЦВЗ больше, а также контрольные суммы по этому участку видеопоследовательности не совпадают с исходными, делается вывод о несанкционированном вмешательстве в исходный контент.
Время обработки транспортного потока для поиска и идентификации контрольных сумм и наличия ЦВЗ занимает столько же, сколько и его начальная обработка.
В результате, если будет установлено, что ЦВЗ отсутствует или изменен, а также если не совпадает контрольная сумма, то можно сделать вывод, что контролируемый цифровой ТВ сигнал был изменен, и далее принять соответствующие административные или организационные меры.
Осуществление изобретения
Рассмотрим пример реализации предложенного способа для цифрового ТВ сигнала, сформированный по стандартам сжатия MPEG-4 part 10, Н. 264 \ AVC.
Для реализации предложенного способа сначала необходимо сформировать средство обработки транспортного потока.
Средство обработки можно выполнить в виде программно-аппаратного комплекса на основе компьютера с установленным на нем СПО.
В качестве компьютера, например, можно использовать настольный персональный компьютер с процессором Intel (R) Core (ТМ) i7 4770 с тактовой частотой 3,4 ГГц, оперативной памятью объемом 16 Гб, жестким диском объемом 2 Тб, работающим под управлением операционной системы MS Windows 8.1 и подключенный к локальной цифровой сети или сети Интернет. Можно также использовать специально разработанные технические средства, которые имеют другие технические характеристики, достаточные для выполнения перечисленных преобразований ТВ сигнала за время, которое необходимо выдержать, чтобы преобразованный сигнал мог дальше распространятся с точки зрения соответствия внутренней и внешней синхронизации передаваемых ТВ сигналов.
СПО, установленное на компьютере, должно обеспечивать выполнение всех функций и возможностей средства обработки:
поиска данных в битовых последовательностях
выполнения преобразований;
выбора контрольных сумм из транспортных пакетов
подготовки макроблоков для замены;
записи в память заранее подготовленного макроблоков (буфер 1);
записи в память данных (буфер 2)
записи в память (буфер 3).
Сформировать СПО может специалист в области программирования (программист) на основе описанных в способе функций.
Кроме того, необходимо сформировать совокупность макроблоков для замены. Целесообразно сформировать заранее макроблоки всех допустимых размеров (от 4×4 до 32×32 пикселей). После сформирования совокупности макроблоков, каждый макроблок помечается и записывается в память (буфер 1).
После этого можно непосредственно выполнить предложенный способ.
Для этого принимают транспортный поток данных цифрового вещательного ТВ с помощью средства обработки.
Например, можно использовать транспортный поток российского федерального оператора цифрового ТВ. Скорость общего транспортного потока составляет 33 Мбит/с. Из общего транспортного потока с помощью средств обработки выделяется один транспортный поток, принадлежащий одному ТВ канала (один видео идентификатор - PID). Выполняется, таким образом, демультиплексирование транспортного потока. Этот процесс выполняется для всех десяти ТВ каналов, входящих в один мультиплеке.
Транспортный поток одного ТВ канала, также, в свою очередь преобразуется. Из него выделяется видеопоток, или видеопоследовательность. Скорость каждого такого потока составляет в среднем 2,5 Мбит/с. Данные видеопотоки очищаются от служебных таблиц, данных, звука. Все перечисленные данные, как и видео, нумеруются в первоначальном потоке соответствующими PID. Это необходимая информация, структура и синтаксис транспортного потока, требуемая для его восстановления, должна запоминаться.
Затем, как было описано ранее, выполняется сам способ.
Следует отметить, что стандарты описывают общие методы и алгоритмы процесса цифрового сжатия, а сами производители выбирают технические характеристики для параметров таких алгоритмов, соответственно, видеопоследовательность на выходе кодирующего оборудования для одного и того же исходного несжатого ТВ сигнала у каждого производителя может быть разной. Это необходимо учитывать для разработки СПО, необходимого для реализации способа.
Записывают общий транспортный поток в устройстве обработки в память (буфер 3). Время хранения общего транспортного потока зависит, как было упомянуто выше от условий распространения ТВ сигналов в эксплуатации.
В соответствии со стандартом цифрового сжатия Н. 264YAVC структура транспортного потока включает в себя пакетизированные элементарные потоки, которые содержат в себе данные, связанные с ТВ изображением. Поэтому, далее транспортный поток разделяют и находят структуры, связанные с элементарным пакетизированным потоком (PES). Величина PES может быть до 65 Кбайт. Под такой объем выбирается размер буфера 2.
Затем находят структуры, описывающие уровень сетевой абстракции - NAL. Эти структуры позволяют найти в выделенном элементарном потоке группы кадров видеоизображения. Для разных видов кодирующего оборудования такие структуры будут отличаться друг от друга.
Находят структуры, описывающие группы кадров (GOP), которые также могут отличаться в различных кодерах цифрового сжатия. Зависят такие структуры, в основном, от динамичности, продолжительности, количестве передаваемой информации, относящейся к перемене сцен. Для предложенного способа желательно искать такие сцены, где передается минимально возможные динамические сюжеты.
Далее находят структуры, описывающие В-псевдокадры. Такие В-псевдокадры могут иметь, как вектора движения от перемещения сюжета, так и информацию о цвете, на которую ссылаются другие кадры из GOP-структуры.
Затем находят структуры, описывающие макроблоки, не несущие вектора движения и те, на которые не ссылаются другие псевдокадры.
Найденные макроблоки помечают, как пригодные для замены на ЦВЗ и записывают их в буфер 2.
После этого заменяют макроблоки другими, заранее подготовленными из буфера 1.
После замены рассчитывают контрольную сумму битовой последовательности с внедренными ЦВЗ и помещаем контрольную сумму в транспортный уровень потока в место, где она явно незаметна.
Затем восстанавливают транспортный поток и отправляют по назначению, в приемную сторону. В место приема также отправляют доверенным образом контрольную сумму, место ее записи, ЦВЗ и место его расположения для конкретного цифрового ТВ сигнала.
При необходимости, проводят проверку на приемной стороне наличие, целостность контрольных сумм, наличие и целостность ЦВЗ в макроблоках.
Если будет установлено, что ЦВЗ отсутствует или изменен, а также если не совпадает контрольная сумма, то можно сделать вывод, что контролируемый цифровой ТВ сигнал был изменен, соответственно, правообладатели контента могут, основываясь на объективном инструментальном контроле, в соответствии с предложенном способом, принять соответствующие административные или организационные меры, защищающие их авторские права.
Таким образом, предложенный способ позволяет создать незаметный проверочный механизм для контроля целостности контента.
Необходимо отметить, что возможны и другие варианты реализации предложенного способа, отличающиеся от описанного выше и зависящие от личных предпочтений при программировании отдельных действий и функций.