ГОСТ Р 54998-2012
Группа Э30
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
ЦИФРОВАЯ СИСТЕМА ТЕЛЕВИДЕНИЯ ВЫСОКОЙ ЧЕТКОСТИ. КОДИРОВАНИЕ ЦИФРОВЫХ ТЕЛЕВИЗИОННЫХ СИГНАЛОВ ДЛЯ СЖАТИЯ ЦИФРОВОГО ПОТОКА
Digital high-definition television. Coding of digital television signals for compressing of digitaI transport stream
ОКС 33.170
Дата введения 2013-04-01
Предисловие
Цели и принципы стандартизации в Российской Федерации установлены Федеральным законом от 27 декабря 2002 г. N 184-ФЗ "О техническом регулировании", а правила применения национальных стандартов Российской Федерации - ГОСТ Р 1.0-2004* "Стандартизация в Российской Федерации. Основные положения"
________________
* На территории Российской Федерации документ не действует. Действует ГОСТ Р 1.0-2012. - .
Сведения о стандарте
1 РАЗРАБОТАН Федеральным государственным унитарным предприятием "Научно-исследовательский институт телевидения" (ФГУП "НИИТ")
2 ВНЕСЕН Федеральным агентством по техническому регулированию и метрологии
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 19 сентября 2012 г. N 362-ст
4 Настоящий стандарт разработан с учетом основных нормативных положений стандартов Международной организации по стандартизации и Рекомендаций Международного союза электросвязи (МСЭ-Р): ИСО/МЭК 13818-1/МСЭ-Т Н.222.0*, ИСО/МЭК 13818-2/МСЭ-Т Н.262, ИСО/МЭК 14496-2, ИСО/МЭК 14496-10/МСЭ-Т Н.264, МСЭ-Р ВТ.709-5, МСЭ-Р ВТ.1120-7, Общества инженеров кино и телевидения: SMPTE 274М, SMPTE 295М, SMPTE 421М, а также Европейского координационного комитета по связи: ETSI ЕН 300468
________________
* Доступ к международным и зарубежным документам, упомянутым в тексте, можно получить, обратившись в Службу поддержки пользователей. - .
5 ВВЕДЕН ВПЕРВЫЕ
Информация об изменениях к настоящему стандарту публикуется в ежегодно издаваемом информационном указателе "Национальные стандарты", а текст изменений и поправок - в ежемесячно издаваемом информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ежемесячно издаваемом информационном указателе "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет
Введение
Настоящий стандарт устанавливает общие правила объединения одного или более элементарных потоков видеоданных, звука и дополнительных данных в единый цифровой поток телевидения высокой четкости, предназначенный для архивирования или передачи.
В настоящем стандарте учтены основные нормативные положения международных стандартов и документов [1]-[15], а также национальных стандартов Российской Федерации по цифровому телевидению высокой четкости.
1 Область применения
Настоящий стандарт распространяется на системы цифрового телевидения высокой четкости и определяет:
- основные особенности структуры пакетированного элементарного потока в цифровых системах телевидения высокой четкости;
- синтаксис цифрового транспортного потока;
- методы измерения параметров цифрового транспортного потока;
- общие требования к средствам измерения параметров цифрового транспортного потока.
Настоящий стандарт охватывает семейство различных методов сжатия, совместимых по структуре транспортного потока и получивших наиболее широкое распространение.
Примечание - Настоящий стандарт не рассматривает элементы цифрового программного потока ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 [1].
2 Нормативные ссылки
В настоящем стандарте использованы нормативные ссылки на следующие стандарты:
ГОСТ Р 52210-2004 Телевидение вещательное цифровое. Термины и определения
ГОСТ Р 52592-2006 Тракт передачи сигналов цифрового вещательного телевидения. Звенья тракта и измерительные сигналы. Общие требования
ГОСТ Р 53527-2009 Телевидение вещательное цифровое. Требования к реализации системы ограничения доступа DVB SIMULCRYPT на головных станциях. Основные параметры. Технические требования
ГОСТ Р 53528-2009 Телевидение вещательное цифровое. Требования к реализации протокола высокоскоростной передачи информации DSM-CC. Основные параметры
ГОСТ Р 53531-2009 Телевидение вещательное цифровое. Требования к защите информации от несанкционированного доступа в сетях кабельного и наземного телевизионного вещания. Основные параметры. Технические требования
ГОСТ Р 53533-2009 Цифровое телевидение высокой четкости. Основные параметры цифровых систем телевидения высокой четкости. Общие требования
ГОСТ Р 53534-2009 Цифровое телевидение высокой четкости. Измерительные сигналы. Методы измерений. Общие требования
Примечание - При пользовании настоящим стандартом целесообразно проверить действие ссылочных стандартов в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет или по ежегодно издаваемому информационному указателю "Национальные стандарты", который опубликован по состоянию на 1 января текущего года, и по соответствующим ежемесячно издаваемым информационным указателям, опубликованным в текущем году. Если ссылочный стандарт заменен (изменен), то при пользовании настоящим стандартом следует руководствоваться заменяющим (измененным) стандартом. Если ссылочный стандарт отменен без замены, то положение, в котором дана ссылка на него, применяется в части, не затрагивающей эту ссылку.
3 Термины, определения и сокращения
3.1 В настоящем стандарте применены термины по ГОСТ Р 52210, за исключением следующих уточненных и/или сокращенных формулировок:
- программа по расписанию вместо "фрагмент телевизионной программы (event)". Термин "event" по ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 означает программу с конкретным временем начала и окончания;
- кадр и поле вместо "псевдокадр (picture)", "псевдокадр-поле (field-picture)" и "псевдокадр-кадр (frame-picture)". Структурной единицей кодирования может быть как поле, так и кадр;
- группа кадров вместо "группа псевдокадров (group of picture)". В соответствии с ИСО/МЭК 13818-1/ МСЭ-Т Н.222.0 при кодировании полей в группу включаются пары полей, образующих кадры;
- прогноз вместо "предсказанные значения" или оценки предсказания.
3.2 В настоящем стандарте приняты следующие сокращения:
ВОП (PCR) - временные отметки программы;
ВОПР - расширение временных отметок программы;
ДЭП - дескриптор элементарного потока;
ЕККС (ETSI) - Европейский институт стандартизации в области электросвязи;
ЗТ (ST) - заполняющая таблица;
ИВОП (OPCR) - исходные временные отметки программы;
ИВОПР - расширение исходных временных отметок программы;
ИС (table ID) - идентификатор секции;
ИТП (PID) - идентификатор транспортного пакета;
МВДК (DTS) - метка времени декодирования;
МВДКП - метка времени декодирования для подключаемого потока;
МВП (PTS) - метка времени представления;
МВЭП - метка времени элементарного потока;
МВЭПР - расширение метки времени элементарного потока;
ОДКП - обратное (двумерное) дискретное косинусное преобразование;
ПД - программный дескриптор;
ПДКП - прямое (двумерное) дискретное косинусное преобразование;
ПЗИ (PSI) - программно-зависимая информация;
ПНМ (MIP) - пакет начала мегафрейма;
ПОР - преобразование с ограниченной разрядностью;
ПУСД (MAC) - пакет управления средствами доступа;
ПЭП (PES) - пакетированный элементарный поток;
РС - радиосигнал;
СИ (SI) - служебная информация;
СЭП - скорость элементарного потока;
ТВД (TDT) - таблица времени и даты;
ТВП (PAT) - таблица взаимосвязи программ;
ТВЧ - телевидение высокой четкости;
ТИВ (SIT) - таблица информации о выборе;
ТИК (CIT) - таблица идентификаторов контента;
ТИПР (EIT) - таблица информации о программах по расписанию;
ТИР (DIT) - таблица информации о разрывах;
ТОПП (BAT) - таблица объединения пакета программ;
ТОД (CAT) - таблица ограничения доступа;
ТОП (SDT) - таблица описания программ;
ТОТП (TSDT) - таблица описания транспортного потока;
ТРА (RNT) - таблица уведомлений разрешения архивации;
ТСВ (TOT) - таблица смещения времени;
ТСИ (NIT) - таблица сетевой информации;
ТСП (PMT) - таблица состава программы;
ТСПР (RST) - таблица состояния программ по расписанию;
ТСС (NST) - таблица состояния сети;
ТУЗИС (IPMP CIT) - таблица управления и защиты интеллектуальной собственности;
УНС (Pointer field) - указатель начала секции;
ЦП - цифровой поток;
ЦТВ (DVB) - цифровое телевизионное вещание;
ЦТВЧ - цифровое телевидение высокой четкости;
ЦТП - цифровой транспортный поток;
ЦТС - цифровые телевизионные сигналы;
ЭП (ES) - элементарный поток;
ATSC - комитет по системам перспективного телевидения;
AVC - улучшенное видеокодирование;
CABAC - контекстно адаптивное арифметическое кодирование;
CAVLC - контекстно адаптивное кодирование переменной длины;
EVC - эффективное видеокодирование;
IPMP - управление и защита интеллектуальной собственности;
MPEG - Международная экспертная группа по движущимся изображениям;
SEI - дополнительная информация по улучшению качества;
SMPTE - общество инженеров кино и телевидения;
VC - видеокодирование.
3.3 Системой телевидения высокой четкости (ТВЧ) называется телевизионная система, параметры которой выбраны исходя из расстояния наблюдения, равного трем высотам наблюдаемого изображения.
3.4 Цифровой системой телевидения высокой четкости (ЦТВЧ) называется телевизионная система высокой четкости, которая для передачи изображений использует цифровое представление телевизионного сигнала.
4 Цифровая система телевидения высокой четкости
4.1 Тракты и звенья цифровой системы телевидения высокой четкости со сжатием цифрового потока
Цифровая система телевидения высокой четкости (ЦТВЧ) со сжатием сигналов содержит следующие основные тракты и звенья (рисунок 1):
- источник цифровых сигналов изображения, в котором происходит преобразование оптического сигнала изображения высокой четкости в цифровые электрические сигналы изображения, их обработка и сжатие цифрового потока;
- мультиплексор программы, объединяющий различные виды данных (сжатых изображения и звука, дополнительных данных) с формированием цифрового транспортного потока, содержащего одну телевизионную программу;
- мультиплексор транспортных потоков, объединяющий несколько телевизионных программ и добавляющий служебную информацию в многопрограммный цифровой транспортный поток;
- тракт передачи цифрового транспортного потока;
- демультиплексор, в котором производится анализ служебной информации транспортного потока и демультиплексирование данных;
- тракт декодирования и воспроизведения изображения.
Рисунок 1 - Цифровая система телевидения высокой четкости со сжатием цифрового потока
Источник цифровых сигналов изображения состоит из двух звеньев (рисунок 2):
- звено тракта источника сигналов цифрового телевидения высокой четкости без сжатия цифрового потока;
- звено тракта источника сигналов цифрового телевидения высокой четкости со сжатием цифрового потока.
Рисунок 2 - Звенья тракта источника цифровых сигналов изображения
В составе элементарного потока (ЭП) должна передаваться информация о параметрах разложения в источнике цифровых телевизионных сигналов высокой четкости и о формате кадра. Дополнительно может передаваться информация об основных цветах приемника, матричных коэффициентах преобразования цветов и некоторых других параметрах.
4.2 Основные параметры цифровых систем телевидения высокой четкости
В настоящем стандарте рассматриваются системы телевидения высокой четкости с параметрами, приведенными в таблицах 1, 2.
Таблица 1 - Системы телевидения высокой четкости
Система | Частота кадров, Гц | Частота полей, Гц | Вид разложения | Полное число строк | Частота дискретизации сигналов яркости, МГц | Формат субдискре- |
ЦТВЧ-2 | 25 | 50 | Чересстрочный | 1250 | 74,25 | 4:2:2 |
ЦТВЧ-3 | 25 | - | Построчный | 1250 | 74,25 | 4:2:2 |
Таблица 2 - Номинальные параметры телевизионного изображения
Параметр | Значения параметров для систем | |
ЦТВЧ-2 1250/50/2:1 | ЦТВЧ-3 1250/25/1:1 | |
Порядок сканирования | слева направо, сверху вниз | |
первая строка первого поля выше первой строки второго поля | - | |
Разложение | Чересстрочное 2:1 | Построчное 1:1 |
Частота полей, Гц | 50 | - |
Частота кадров, Гц | 25 | |
Полное число строк | 1250 | |
Активное число строк в кадре | 1152 (для формата кадра 15:9) или 1080 (для 16:9) | |
Число активных элементов изображения в строке | 1920 | |
Формат кадра | 15:9 или 16:9 | |
Строчная частота, Гц | 31250 | |
Частота дискретизации сигналов яркости, МГц | 74,25 | |
Частота дискретизации цветоразностных сигналов, МГц | 37,125 | |
Число отсчетов в полной строке | ||
- | 2376 | |
- | 1188 |
5 Кодирование цифровых телевизионных сигналов для сжатия цифрового потока
5.1 Рекомендуемые профили и уровни стандартов (методов) сжатия цифрового потока ТВЧ
Кодирование цифровых сигналов телевидения высокой четкости выполняют с использованием стандартов (методов) сжатия MPEG-2 (ИСО/МЭК 13818-2/МСЭ-Т Н.262), AVC (ИСО/МЭК 14496-10/МСЭ-Т Н.264), MPEG-4 (ИСО/МЭК 14496-2), VC-1 (SMPTE 421M), EVC. Применение иных (альтернативных) методов сжатия допускается при условии соблюдения требований 5.2, 5.3 настоящего стандарта.
5.1.1 Профили и уровни MPEG-2 (ИСО/МЭК 13818-2/ МСЭ-Т Н.262)
При сжатии сигналов ЦТВЧ-2 и ЦТВЧ-3 по стандарту MPEG-2 рекомендуется использовать профили и уровни, параметры которых приведены в таблице 3.
Таблица 3 - Основные параметры профилей и уровней MPEG-2 для систем ЦТВЧ-2, 3
Параметр | Уровень | Профиль | ||||
Основной | Простран- | Высокий | 4:2:2 | Много- | ||
Число активных отсчетов в строке | "В" | 1920 | - | 1920 | 1920 | 1920 |
"В1440" | 1440 | 1440 | 1440 | - | 1440 | |
Число активных строк | "В" | 1152 или 1080 | - | 1152 или 1080 | 1152 или 1080 | 1152 или 1080 |
"В1440" | 1152 или 1080 | 1152 или 1080 | 1152 или 1080 | - | 1152 или 1080 | |
Формат субдискретизации цвета | "В" и "В1440" | 4:2:0 | 4:2:0 | 4:2:0 и 4:2:2 | 4:2:0 и 4:2:2 | 4:2:0 |
Идентификатор формата кадра | "В" | '0001' | '0001' | '0001' | '0001' | '0001' |
Максимальная скорость сжатого потока, Мбит/с | "В1440" | '0001', '0010' и '0101' | '0001', '0010' и '0101' | '0001', '0010' и '0101' | '0001', '0010' и '0101' | '0001', '0010' и '0101' |
"В" | 80 | - | 100 | 300 | 130 (стерео) | |
Максимальный объем сжатых данных макроблока, бит | "В" | 60 | 60 | 80 | - | 100 (стерео) |
"В" и "В1440" | 4608 | 4608 | 4608 (4:2:0) 6144 (4:2:2) | 4608 (4:2:0) не ограничен (4:2:2) | 4608 | |
Диапазон значений векторов движения | "В" и "В1440" | от -128 до 127,5 | от -128 до 127,5 | от -128 до 127,5 | от -128 до 127,5 | от -128 до 127,5 |
Разрядность постоянной составляющей, бит | "В" и "В1440" | от 8 до 10 | от 8 до 10 | от 8 до 11 | от 8 до 11 | от 8 до 10 |
Примечания 1 Обозначение уровней: "В" - "Высокий", "В1440" - "Высокий 1440". 2 Значение числа строк (1152) увеличено по сравнению с рекомендованным значением 1088 стандарта ИСО/МЭК 13818-2/МСЭ-Т Н.262. 3 Идентификатор формата кадра "0001" соответствует передаче любого формата кадра при условии сохранения формата элемента изображения 1:1 (квадратного пикселя). Идентификатор "0010" используется при формате изображения 4:3. Идентификатор формата кадра "0101", используемый в настоящем стандарте для уровня "Высокий 1440" и означающий соотношение сторон изображения 15:9, в ИСО/МЭК 13818-2/МСЭ-Т Н.262 не рассматривается. 4 Максимальный объем данных макроблока, приведенный в таблице, может быть превышен, но не более чем для двух макроблоков в слайсе. 5 Для многоракурсного профиля базовый поток данных (от левой камеры) использует параметры основного профиля. Дополнительный поток (от правой камеры) кодируется с применением масштабирования во времени и гибридного предсказания движения. |
Для целей вещания предпочтительно использование профилей "Основной", "Пространственно масштабируемый", "Высокий" и "Многоракурсный" с уровнями "Высокий" и "Высокий 1440".
Синтаксис элементарного потока MPEG-2 должен соответствовать требованиям стандарта ИСО/МЭК 13818-2/ МСЭ-Т Н.262 [2].
Обзор принципов кодирования цифровых телевизионных сигналов ЦТВЧ-2, 3 по стандарту MPEG-2 приведен в приложении А.
5.1.2 Профили и уровни MPEG-4
Для кодирования естественных сцен могут использоваться 2 профиля: основной (Main) и повышенной степени сжатия (Advanced Coding Efficiency) уровня 4. Максимальная скорость сжатого элементарного потока - 38,4 Мбит/с.
Для кодирования синтетических и смешанных сцен могут применяться несколько профилей и уровней, параметры которых приведены в таблице 4.
Таблица 4 - Основные параметры профилей и уровней MPEG-4 при кодировании синтетических и смешанных сцен для систем ЦТВЧ-2, 3
Параметр | Профиль | Уровень | Значение |
Максимальное число декомпозиций вейвлет-анализа | Масштабируемый текстурный и расширенный масштабируемый текстурный | L2 | 10 |
L3 | 8 | ||
Максимальное число битовых плоскостей для постоянной составляющей | Масштабируемый текстурный и расширенный масштабируемый текстурный | L2 | 18 |
L3 | 16 | ||
Максимальная скорость сжатого потока, кбит/с | Простая анимация лиц | L2 | 32 |
Простая анимация лиц и фигур | L2 | 64 | |
Основная анимация текстур | L2 | 128 |
Синтаксис элементарного потока MPEG-4 должен соответствовать требованиям стандарта ИСО/МЭК 14496-2 [3].
5.1.3 Профили и уровни AVC
При сжатии сигналов ЦТВЧ-2 и ЦТВЧ-3 рекомендуется использовать уровни стандарта AVC (ИСО/МЭК 14496-10/ МСЭ-Т Н.264 [4]), параметры которых с уточнениями, принятыми в ETSI TS 101154 [11] и в настоящем стандарте, приведены в таблице 5.
Таблица 5 - Основные параметры уровней AVC для систем ЦТВЧ-2, 3
Параметр | Уровень | ||||
4 | 4.1 | 4.2 | 5 | 5.1 | |
Число активных отсчетов в кадре | 2211840 (для формата кадра 15:9) или 2073600 (для 16:9) | ||||
Максимальное число активных отсчетов в кадре по ИСО/МЭК 14496-10/МСЭ-Т Н.264 | 2097152 | 2097152 | 2228224 | 5652480 | 9437184 |
Скорость входного потока, элементов изображения в секунду | 55296000 (для формата кадра 15:9) или 51840000 (для 16:9) | ||||
Максимальная скорость входного потока элементов изображения в секунду по ИСО/МЭК 14496-10/МСЭ-Т Н.264 | 62914560 | 62914560 | 133693440 | 150994944 | 251658240 |
Число активных отсчетов в строке | 1920 | 1920 | 1920 | 1920 | 1920 |
Максимальное число активных отсчетов в строке по ИСО/МЭК 14496-10/МСЭ-Т Н.264 | 4096 | 4096 | 4222 | 6724 | 8688 |
Число активных строк | 1152 (для формата кадра 15:9) или 1080 (для 16:9) | ||||
Максимальное число активных строк по ИСО/МЭК 14496-10/МСЭ-Т Н.264 | 4096 | 4096 | 4222 | 6724 | 8688 |
Диапазон значений векторов движения в вертикальном направлении | от -512 до 511,75 | ||||
Примечания 1 В соответствии с ИСО/МЭК 14496-10/МСЭ-Т Н.264 [4] произведение максимального числа активных отсчетов в строке на число активных строк должно быть меньше или равно максимальному числу активных отсчетов в кадре. Значение числа активных отсчетов в кадре для уровней 4 и 4.1 увеличено по сравнению с максимально допустимым, рекомендованным стандартом ИСО/МЭК 14496-10/МСЭ-Т Н.264, поскольку соответствующая скорость входного потока меньше максимально возможной для этих уровней. 2 Значения векторов движения в горизонтальном направлении для всех профилей и уровней не должны быть меньше - 2048 и больше 2047,75. Вектор, указывающий на опорный фрагмент, находящийся за пределами изображения, продлевается с противоположной стороны кадра. |
Параметры рекомендуемых к применению профилей AVC приведены в таблице 6.
Таблица 6 - Основные параметры профилей AVC для систем ЦТВЧ-2, 3
Профиль | Параметр | ||||||
Тип слайсов | Энтро- | Раздельное кодирование полей | Формат субдискре- | Число слайсов в кадре | Размеры преобра- | Разряд- | |
Базовый | I и P | CAVLC | нет | 4:2:0 | от 1 до 8 | 4x4 | 8 |
Базовый ограниченный | I, P | CAVLC | нет | 4:2:0 | 1 | 4x4 | 8 |
Масштабируемый базовый | I, P EI, EP, EB | CAVLC | нет | 4:2:0 | от 1 до 8 | 4x4 | 8 |
Основной | I, B, P | CAVLC, CABAC | есть | 4:2:0 | 1 | 4x4 | 8 |
Расширенный | I, B, P, SI, SP | CAVLC | есть | 4:2:0 | от 1 до 8 | 4x4 | 8 |
Высокий | I, B, P | CAVLC, CABAC | есть | 4:2:0 и 4:0:0 | 1 | 4x4, 8x8 | 8 |
Масштабируемый высокий | I, B, P, EI, EP, EB | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0 | 1 | 4x4, 8x8 | 8 |
Масштабируемый высокий внутрикадровый | I, EI | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0 | 1 | 4x4, 8x8 | 8 |
Высокий 10 | I, B, P | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 10 |
Высокий 4:2:2 | I, B, P | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0, 4:2:2 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 10 |
Высокий 4:4:4 с предсказанием | I, B, P | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0, 4:2:2, 4:4:4 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 14 |
Высокий 10 внутрикадровый | I | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 10 |
Высокий 4:2:2 внутрикадровый | I | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0, 4:2:2 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 10 |
Высокий 4:4:4 внутрикадровый | I | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0, 4:2:2, 4:4:4 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 14 |
CAVLC 4:4:4 внутрикадровый | I | CAVLC | для уровней 4 и 4.1 | 4:2:0, 4:2:2, 4:4:4 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 14 |
Многоракурсный высокий | I, B, P | CAVLC, CABAC | нет | 4:2:0 и 4:0:0 | 1 | 4x4, 8x8 | 8 |
Базовый | I и P | CAVLC | нет | 4:2:0 | от 1 до 8 | 4x4 | 8 |
Базовый ограниченный | I, P | CAVLC | нет | 4:2:0 | 1 | 4x4 | 8 |
Базовый ограниченный | I, P | CAVLC | нет | 4:2:0 | 1 | 4x4 | 8 |
Масштабируемый базовый | I, P, EI, EP, EB | CAVLC | нет | 4:2:0 | от 1 до 8 | 4x4 | 8 |
Основной | I, B, P | CAVLC, CABAC | есть | 4:2:0 | 1 | 4x4 | 8 |
Расширенный | I, B, P, SI, SP | CAVLC | есть | 4:2:0 | от 1 до 8 | 4x4 | 8 |
Высокий | I, B, P | CAVLC, CABAC | есть | 4:2:0 и 4:0:0 | 1 | 4x4, 8x8 | 8 |
Масштабируемый высокий | I, B, P, EI, EP, EB | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0 | 1 | 4x4, 8x8 | 8 |
Масштабируемый высокий внутрикадровый | I, EI | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0 | 1 | 4x4, 8x8 | 8 |
Высокий 10 | I, B, P | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 10 |
Высокий 4:2:2 | I, B, P | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0, 4:2:2 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 10 |
Высокий 4:4:4 с предсказанием | I, B, P | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0, 4:2:2, 4:4:4 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 14 |
Высокий 10 внутрикадровый | I | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 10 |
Высокий 4:2:2 внутрикадровый | I | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0, 4:2:2 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 10 |
Высокий 4:4:4 внутрикадровый | I | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0, 4:2:2, 4:4:4 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 14 |
CAVLC 4:4:4 внутрикадровый | I | CAVLC | для уровней 4 и 4.1 | 4:2:0, 4:2:2, 4:4:4 и 4:0:0 | 1 | 4x4, 8x8 | от 8 до 14 |
Многоракурсный высокий | I, B, P | CAVLC, CABAC | нет | 4:2:0 и 4:0:0 | 1 | 4x4, 8x8 | 8 |
Стерео высокий | I, B, P | CAVLC, CABAC | для уровней 4 и 4.1 | 4:2:0 и 4:0:0 | 1 | 4x4, 8x8 | 8 |
Примечания 1 Для базового, базового ограниченного и масштабируемого базового слоев взвешенное предсказание не используется. 2 При чересстрочном разложении для некоторых профилей может применяться раздельное кодирование полей. Основным вариантом кодирования является покадровое. |
Максимальные скорости потока для разных профилей и уровней приведены в таблице 7.
Таблица 7 - Максимальные скорости потока AVC для различных профилей и уровней, применяемых при кодировании сигналов систем ЦТВЧ-2, 3
Профиль | Скорость (Мбит/с) для уровней | ||||
4 | 4.1 | 4.2 | 5 | 5.1 | |
Базовый, базовый ограниченный, основной, расширенный | 20 | 50 | 50 | 135 | 240 |
Высокий, масштабируемый базовый, масштабируемый высокий, масштабируемый высокий внутрикадровый, стерео высокий, многоракурсный высокий | 25 | 62,5 | 62,5 | 168,75 | 300 |
Высокий 10, высокий 10 внутрикадровый | 60 | 150 | 150 | 405 | 720 |
Высокий 4:2:2, высокий 4:4:4 с предсказанием, высокий 10 внутрикадровый, высокий 4:2:2 внутрикадровый, высокий 4:4:4 внутрикадровый, CAVLC 4:4:4 внутрикадровый | 80 | 200 | 200 | 540 | 960 |
Для целей вещания рекомендуется использовать профили и уровни, приведенные в таблице 8.
Таблица 8 - Профили и уровни AVC, рекомендуемые для кодирования сигналов систем ЦТВЧ-2, 3 в целях вещания
Профиль | Уровень | ||
4 | 4.1 | 4.2 | |
Высокий | ЦТВЧ-2, ЦТВЧ-3 | ЦТВЧ-2, ЦТВЧ-3 | ЦТВЧ-2, ЦТВЧ-3 |
Высокий 10 | ЦТВЧ-2, ЦТВЧ-3 | ЦТВЧ-2, ЦТВЧ-3 | ЦТВЧ-3 |
Масштабируемый высокий | ЦТВЧ-2, ЦТВЧ-3 | ЦТВЧ-2, ЦТВЧ-3 | ЦТВЧ-3 |
Стерео высокий | ЦТВЧ-2, ЦТВЧ-3 | ЦТВЧ-2, ЦТВЧ-3 | ЦТВЧ-3 |
Синтаксис элементарного потока AVC должен соответствовать требованиям стандарта ИСО/МЭК 14496- 10/МСЭ-Т Н.264 [4].
Краткие сведения об особенностях кодирования сигналов ЦТВЧ-2, ЦТВЧ-3 по стандарту AVC приведены в приложении Б.
5.1.4 Профили и уровни VC-1
Параметры профилей и уровней VC-1, применяемых при кодировании сигналов ЦТВЧ-2 и ЦТВЧ-3, приведены в таблице 9.
Таблица 9 - Параметры профилей и уровней VC-1 для систем ЦТВЧ-2, 3
Параметр | Профиль и уровень | ||
Основной профиль, высокий уровень (код 0x53) | Улучшенный профиль, уровень 3 (код 0x94) | Улучшенный профиль, уровень 4 (код 0x95) | |
Число активных отсчетов в кадре | 2211840 (для формата кадра 15:9) или 2073600 (для 16:9) | ||
Максимальное число активных отсчетов в кадре по SMPTE 421М | 2097152 | 2097152 | 4194304 |
Скорость входного потока, элементов изображения в секунду | 55296000 (для формата кадра 15:9) или 51840000 (для 16:9) | ||
Максимальная скорость входного потока по SMPTE 421М, элементов изображения в секунду | 62914560 | 62914560 | 125829120 |
Число активных отсчетов в строке | 1920 | ||
Число активных строк | 1152 (для формата кадра 15:9) или 1080 (для 16:9) | ||
Применение для систем | ЦТВЧ-3 | ЦТВЧ-2,3 | ЦТВЧ-2,3 |
Максимальная скорость сжатого потока, Мбит/с | 20 | 45 | 135 |
Диапазон значений векторов движения в горизонтальном направлении | от -1024 до 1023,75 | ||
Диапазон значений векторов движения в вертикальном направлении | от -256 до 255,75 | ||
Примечание - В соответствии с SMPTE 421М произведение максимального числа активных отсчетов в строке на число активных строк должно быть меньше или равно максимальному числу активных отсчетов в кадре. Значение числа активных отсчетов в кадре увеличено по сравнению с максимально допустимым рекомендованным стандартом SMPTE 421М, поскольку соответствующая скорость входного потока оказывается меньше максимально возможной. |
Для целей вещания рекомендуется использовать "Основной профиль, высокий уровень" и "Улучшенный профиль, уровень 3".
Синтаксис элементарного потока VC-1 должен соответствовать требованиям стандарта SMPTE 421М [9].
Краткие сведения об особенностях кодирования сигналов ЦТВЧ-2, 3 по стандарту VC-1 приведены в приложении В.
5.1.5 Профили и уровни EVC
Параметры профилей и уровней EVC, рекомендуемых для кодирования сигналов ЦТВЧ-2 и ЦТВЧ-3, приведены в таблице 10.
Таблица 10 - Параметры профилей и уровней EVC для систем ЦТВЧ-2, 3
Параметр | Уровень | Профиль | ||
Архивный | Основной | Малой задержки | ||
Группа кадров | Основной | от 1 до 8 | от 1 до 8 | от 1 до 4 |
Простой | от 1 до 4 | от 1 до 4 | от 1 до 2 | |
Разложение | Основной и простой | Прогрессивное, чересстрочное | Прогрессивное, чересстрочное | Чересстрочное |
Адаптивное расщепление | Основной | есть | есть | нет |
Простой | есть | нет | нет | |
Скорость | Основной и простой | Переменная | Переменная, постоянная | Переменная, постоянная |
Информация о применяемых профилях и уровнях EVC передается в пакетированном элементарном потоке.
Краткие сведения об общих принципах кодирования сигналов ЦТВЧ по технологии EVC приведены в приложении Г.
5.2 Пакетированный элементарный поток
Сжатые элементарные цифровые потоки сигналов изображения и звука с целью их единой привязки по времени к началу декодирования и воспроизведения преобразуются в пакетированные элементарные потоки (ПЭП). Пакетирование может осуществляться также для дополнительных данных, в частности для данных, требующих единой шкалы времени с видео и/или звуком. Длина пакетов в потоке может быть переменной, но всегда равна целому числу байтов. В последовательности байтов старшим считается первый во времени или в файле. При необходимости побитовой передачи ПЭП первым передается старший бит.
В общем случае пакет ПЭП состоит из двух заголовков и данных (рисунок 3).
Основной заголовок | Дополнительный заголовок и данные | ||
Стартовый префикс 0х000001 | Идентификатор потока (0хBC...0хFF) | Длина пакета | |
3 байта | 1 байт | 2 байта | Число байтов равно значению поля "Длина пакета" |
Рисунок 3 - Обобщенная структура пакета ПЭП
Идентификатор потока (четвертый байт основного заголовка) определяет тип ПЭП и уточняет структуру пакета. Шестнадцатеричные значения идентификаторов и их соответствие типам ПЭП (типам данных) приведены в таблице 11. Значения идентификаторов от 0x00 до 0xВВ не используются, поскольку битовые последовательности от 0x00000100 до 0x000001 ВВ являются стартовыми кодами, которые служат для разделения сжатых видеоданных в элементарных потоках MPEG-2, MPEG-4, AVC и VC-1 на отдельные смысловые группы (элементы доступа).
Таблица 11 - Идентификация пакетированных элементарных потоков
Значение идентификатора потока | Тип данных, содержащихся в пакете ПЭП |
0xBC | Таблица состава программного потока (Program Stream) |
0xBD | Частные данные 1-го типа (синхронные) |
0xBE | Неинформативные (заполняющие) данные |
0xBF | Частные данные 2-го типа (асинхронные) |
0xC0...0xDF | Сжатые звуковые данные |
0xE0...0xEF | Видеоданные, сжатые в соответствии с ИСО/МЭК 13818-2/МСЭ-Т Н.262, ИСО/МЭК 14496-2, ИСО/МЭК 14496-10/МСЭ-Т Н.264 |
0xF0 | Информация об управляющих словах (при ограничении доступа) - ЕСМ |
0xF1 | Информация о санкционированном приеме (при ограничении доступа) - ЕММ |
0xF2 | Контрольная сумма или информация конфигурации и управления для высокоскоростной передачи информации |
0xF3 | Мультимедийные и гипермедийные данные по ИСО/МЭК 13818-1 Annex B |
0xF4 | Видеоданные MPEG-1, передаваемые через сети АТМ |
0xF5 | Звуковые данные, передаваемые через сети АТМ |
0xF6 | Данные субканалов и синхронизации, передаваемые через сети АТМ |
0xF7 | Данные, передаваемые через сети АТМ |
0xF8 | Зарезервировано под данные, передаваемые через сети АТМ |
0xF9 | Данные программного потока ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 |
0xFA | Пакеты синхронизационного слоя MPEG-4 |
0xFB | Мультиплексированные пакеты (FlexMux) MPEG-4 |
0xFC | Метаданные |
0xFD | Признак расширения (для идентификаторов потока, не вошедших в данный перечень) |
0xFE | Зарезервирован |
0xFF | Директорий программного потока |
Пакетированным элементарным цифровым потокам, содержащим видеоданные, сжатые в соответствии со стандартами MPEG-2, MPEG-4 и AVC, присваиваются идентификаторы из диапазона от 0xE0 до 0xEF. Пакетированный элементарный цифровой поток VC-1 или EVC должен иметь идентификатор 0xFD.
Значение поля "Длина пакета", равное нулю, означает, что пакет имеет произвольную длину, а его окончание фиксируется при обнаружении основного заголовка нового пакета ПЭП. В связи с этим поле "Длина пакета" с нулевым значением не должно использоваться при наличии в пакете собственных данных, фрагмент которых может быть интерпретирован декодером как заголовок нового пакета ПЭП.
Детализированная структура пакета ПЭП представлена на рисунке 4.
Рисунок 4 - Детализированная структура пакета ПЭП
Порядок следования и назначение флагов дополнительного заголовка приведены в таблице 12.
Таблица 12 - Флаги дополнительного заголовка
Номер бита | Семантика флага | Примечание |
1, 2 | - | Фиксированный код `10' |
3, 4 | Управление скремблированием | '00' - полезные данные в ПЭП не скремблированы, '10' - скремблирование с четным ключом,'11' - скремблирование с нечетным ключом, '01' - резерв |
5 | Приоритетность ПЭП | ПЭП с флагом '1' более приоритетны |
6 | Индикатор выравнивания данных | Если флаг установлен, то полезные данные пакета начинаются с префикса элемента доступа |
7 | Авторское право | Если флаг установлен, то контент защищен авторскими правами |
8 | Оригинал или копия | Если флаг установлен, то полезные данные - оригинал |
9, 10 | Наличие меток времени представления (МВП) и декодирования (МВДК) | '00' - дополнительных полей МВП и МВДК нет, '10' - есть дополнительное поле МВП, '11' - имеются МВП и МВДК |
11 | Наличие метки времени элементарного потока (МВЭП) | Если флаг установлен, то имеется дополнительное поле МВЭП |
12 | Наличие поля скорости элементарного потока (СЭП) | Если флаг установлен, то имеется дополнительное поле СЭП |
13 | Воспроизведение со спецэффектами | Если флаг установлен, то имеется 8-битовое поле трюкового воспроизведения |
14 | Информация о копии | Если флаг установлен, то имеется информация о копии |
15 | Наличие контрольной суммы | Если флаг установлен, то имеется контрольная сумма предыдущего пакета ПЭП |
16 | Наличие расширенного поля данных | Если флаг установлен, то после дополнительных полей данных, определенных предшествующими флагами (биты 1-15), следует расширенное поле данных |
Примечания 1 Если поток формируется для вещательных целей, то поле МВЭП не обязательно, а трюковое воспроизведение не используется. 2 Скорость элементарного потока - 22-битовое число, обрамленное двумя маркерными (единичными) битами, выражает скорость ПЭП в единицах "50 байтов в секунду". Значение 0 не должно применяться. Если поток формируется для вещательных целей, поле СЭП не обязательно. 3 Дополнительная информация о копии начинается с единичного бита и заключена в следующих за ним 7 битах. 4 Контрольная сумма ранее переданного пакета ПЭП (с тем же идентификатором потока), занимающая 16 битов, вычисляется только для полезных данных при помощи полинома: x |
Все заполняющие байты дополнительного заголовка должны иметь одинаковое значение 0xFF, а их общее количество не должно превышать 32.
Поля, наличие которых определяется битами 9-16 флагов, размещаются в дополнительном заголовке ПЭП в той же последовательности, что и флаги.
Структура дополнительных полей данных МВП, МВДК и МВЭП показана на рисунке 4. Метки времени МВП [32:0], МВДК [32:0] и МВЭП [32:0] задают количество тактов единой опорной частоты 90 кГц, а расширение МВЭПР [8:0] - число тактов системной частоты 27 МГц по модулю 300. Частота 90 кГц формируется делением частоты 27 МГц на 300. Метки воспроизведения и декодирования включаются в состав дополнительного заголовка пакета, если в полезных данных этого пакета содержится начало соответствующего элемента доступа: кадра для MPEG-2, MPEG-4, VC-1; слайса-кадра для AVC; группы кадров для EVC. В целом совокупность меток времени являет собой механизм синхронизации потоков данных при их обработке в декодере.
Структура дополнительного поля данных воспроизведения со спецэффектами для архивного применения показана на рисунке 5.
Поле воспроизведения со спецэффектами (если 13-й бит флагов установлен в '1') | |||
Режим трюка | Биты управления | ||
3 бита | 2 бита | 1 бит | 2 бита |
'000' - быстрая перемотка вперед, '011' - быстрая перемотка назад | '00' - верхнее поле, | '1' - восстановить /-слайс | Число ненулевых трансформант: |
Замедленное воспроизведение: '001' - вперед, '100' - назад | Кратность повтора | ||
'010' - стоп-кадр | '00' - верхнее поле, | Резерв | |
'101', '110', '111' - резерв | '11111' - резерв |
Рисунок 5 - Структура данных воспроизведения со спецэффектами (1 байт)
Расширенное поле данных позволяет в общем случае формировать и передавать пакетированные элементарные потоки, отличающиеся синтаксисом и семантикой от элементарных потоков, сформированных по стандартам MPEG-2, MPEG-4, AVC.
В системах ЦТВЧ-2 и ЦТВЧ-3 расширенное поле данных применяется в целях кодирования сигналов методами VC-1 и EVC. Указанное поле включается в состав пакетов ПЭП, основные заголовки которых содержат идентификатор потока 0xFD.
Структура расширенного поля данных показана на рисунке 6.
Флаги | Служебные данные (если 1-й бит флагов установлен в '1') | Второе расширенное поле данных (если 8-й бит флагов установлен в '1') | ||||||
Наличие служе- | Наличие полей программ- | '111' (резерв) | Наличие второго расши- | '1' | Длина 2-го расши- | Расши- | Данные второго расши- | |
Бит 1 | Биты 2-4 | Биты 5-7 | Бит 8 | 128 битов | '1' | 7 битов | 8 битов | |
1 байт | 16 байтов | 1 байт | Число байтов равно значению "Длина 2-го расширенного поля" |
Рисунок 6 - Структура расширенного поля данных
При кодировании сигналов ЦТВЧ-2 и ЦТВЧ-3 биты 2-4 флагов расширенного поля данных должны быть сброшены в `0'. Шестнадцатеричные значения расширенных идентификаторов должны находиться в диапазоне от 0х00 до 0х7F и использоваться в соответствии с рекомендациями ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 [1]:
- 0x00 и 0x01 - для потоков управления и защиты интеллектуальной собственности (IPMP - Intellectual Property Management and Protection);
- 0x02...0x0F - для текстовых потоков;
- 0x10...0x1 F - для дополнительных видеопотоков;
- 0x22...0x3F - для потоков данных;
- 0x40...0x7F - для элементарных потоков видеоданных, сжатых методами VC-1, EVC или иными альтернативными методами, а также для данных пользователя.
5.2.1 Пакетированные элементарные потоки MPEG-2, MPEG-4 и AVC
Наиболее распространенные (типовые) варианты пакетов ПЭП для стандартов сжатия MPEG-2, MPEG-4 и AVC показаны на рисунке 7.
А) Пакет ПЭП с метками МВП, МВДК и одним заполняющим байтом | ||||||||||
Основной заголовок | Дополнительный заголовок | |||||||||
Стартовый префикс и идентификатор потока | Длина пакета | Флаги | Длина дополни- | МВП | МВДК | Заполня- | Сжатые видео- | |||
0х000001E0... 0х000001EF | 0х0000 | 0х81С0 | 0х0В | 0хFF | ||||||
4 байта | 2 байта | 2 байта | 1 байт | 5 байтов | 5 байтов | 1 байт | Длина не определена | |||
Б) Пакет ПЭП с меткой МВП | ||||||||||
Основной заголовок | Дополнительный заголовок | |||||||||
Стартовый префикс и идентификатор потока | Длина пакета | Флаги | Длина дополнительного заголовка | МВП | Сжатые видеоданные | |||||
0х000001E0... 0х000001EF | 0x0000 | 0x8180 | 0x05 | |||||||
4 байта | 2 байта | 2 байта | 1 байт | 5 байтов | Длина не определена | |||||
В) Пакет ПЭП фиксированной длины только с полезными данными | ||||||||||
Основной заголовок | Дополнительный заголовок | |||||||||
Стартовый префикс и идентификатор потока | Длина пакета | Флаги | Длина дополнительного заголовка | Сжатые видеоданные | ||||||
0х000001E0... 0х000001EF | 0х0803 | 0х8100 | 0х00 | |||||||
4 байта | 2 байта | 2 байта | 1 байт | 2048 байтов |
Рисунок 7 - Варианты пакетов ПЭП для стандартов сжатия MPEG-2, MPEG-4 и AVC
5.2.2 Пакетированный элементарный поток VC-1
Вариант пакета ПЭП с метками МВП и МВДК для улучшенного профиля стандарта кодирования VC-1 показан на рисунке 8.
Пакет ПЭП с метками МВП, МВДК для улучшенного профиля VC-1 | ||||||||||
Основной заголовок | Дополнительный заголовок | |||||||||
Стар- | Длина пакета | Флаги | Длина дополни- | МВП | МВДК | Расширенное поле данных | Сжатые видеодан- | |||
Флаги | Второе расширенное поле данных | |||||||||
1 | Длина 2-го расши- | Расши- | ||||||||
0х000001FD | 0x0000 | 0x81C1 | 0x0D | 0x0F | 0x81 | 0x55..0х5F | ||||
4 байта | 2 байта | 2 байта | 1 байт | 5 бай- | 5 бай- | 1 байт | 1 байт | 1 байт | Длина не опреде- |
Рисунок 8 - Вариант пакета ПЭП для стандарта кодирования VC-1
Для основного профиля VC-1 при наличии в полезных данных пакета ПЭП элемента доступа типа "Начало видеопоследовательности" первые 16 байтов поля "Полезные данные" должны содержать форматный заголовок (рисунок 9). Значения и семантика параметров кодирования, включаемых в состав форматного заголовка, приведены в таблице 13.
Полезные данные с элементом доступа типа "Начало видеопоследовательности" | |||||
Форматный заголовок | |||||
Стартовый код видеопоследо- | Число пар пикселов в строке кадра | Число пар строк в кадре | Параметры кодирования | Стартовый код кадра | Сжатые видеоданные |
0х0000010F | 0x0002...0x2000 | 0x0002...0x2000 | 0х0000010D | ||
4 байта | 2 байта | 2 байта | 4 байта | 4 байта |
Рисунок 9 - Структура форматного заголовка
Таблица 13 - Параметры кодирования, передаваемые в составе форматного заголовка
Номера битов | Допустимые значения параметра | Значения параметра для систем ЦТВЧ-2,3 | Семантика значений |
1... 4 | '0000' или '0100' | '0100' | Основной профиль |
5...7 | `000'...'111' | '110' | Необходимая скорость последующей обработки, определяемая приближенной частотой кадров |
8...12 | '00000'...'11111' | '11111' | Необходимая скорость постобработки, определяемая приближенной скоростью потока |
13 | '0' или '1' | '0' или `1' | '1' - используется фильтр обратной связи |
14 | '0' | '0' | |
15 | '0' или '1' | '0' или '1' | '1' - кодирование с переменной четкостью разрешено (I-кадров) |
16 | '1' | '1' | |
17 | '0' или `1' | '0' или `1' | '1' - векторы движения цветоразностных сигналов должны округляться до 1/2 или до целых |
18 | '0' или `1' | '0' или `1' | '1' - разрешены расширенные векторы движения для P- и B-кадров |
19, 20 | "00"..."10" | "00"..."10" | Размер шага квантования: '00' - единый для всего кадра, '10' - альтернативный для приграничных макроблоков, '01' - остальные случаи |
21 | '0' или '1' | '0' или '1' | '1' - для последовательности разрешен переменный размер блока (4х4, 4х8, 8х4, 8х8) |
22 | '0' | '0' | |
23 | `0' или `1' | '0' или `1' | '1' - перед процедурой деблокинг-фильтрации должно осуществляться сглаживание на границах блоков |
24 | '0' или `1' | '0' или `1' | '1' - в элементарном потоке имеются синхронизационные коды |
25 | '0' или `1' | '0' или `1' | '1' - присутствие синтаксических элементов сужения динамического диапазона |
26...28 | '000'...'111' | '000'...'111' | Максимальное число B-кадров между I- или P-кадрами |
29, 30 | '00'...'11' | '00'...'11' | '00' - квантователь задан неявно на уровне кадров, '01' - квантователь задан явно, '10' - неравномерный квантователь для всех кадров, '11' - равномерный квантователь для всех кадров |
31 | '0' или '1' | '0' или `1' | '1' - элемент разрешения интерполяции по времени (с увеличением частоты кадров) присутствует в потоке |
32 | '1' | '1' |
Если полезные данные пакета ПЭП начинаются новым кадром, который не является первым кадром видеопоследовательности, то форматный заголовок имеет длину 4 байта и состоит только из стартового кода кадра.
5.2.3 Пакетированный элементарный поток EVC
Пример пакета ПЭП, содержащего видеоданные, сжатые методом EVC, показан на рисунке 10.
Рисунок 10 - Пример пакета ПЭП при кодировании сигналов ЦТВЧ-2,3 методом EVC
Профили и уровни EVC кодируются в соответствии с таблицей 14.
Таблица 14 - Кодирование профилей и уровней EVC
Уровень | Профиль | ||
Архивный | Основной | Малой задержки | |
Основной | '000' | '010' | '100' |
Простой | '001' | '011' | '101' |
5.3 Транспортный поток
Каждый из пакетированных элементарных потоков разбивается на транспортные пакеты размером по 188 байтов. Последовательность транспортных пакетов образует транспортный поток. Объединение нескольких транспортных потоков с добавлением обобщающей служебной информации (СИ) осуществляется перемежением пакетов во времени (мультиплексированием).
Транспортный поток может объединять пакетированные элементарные потоки с единой временной базой, переносящие данные одной телепрограммы, или ПЭП нескольких программ с независимыми временными базами. В любом случае пакетированные элементарные потоки видео, звука и дополнительных данных (например, телетекст) разбиваются на фрагменты, равные по длине полезной нагрузке транспортного пакета (184 байта), с соблюдением следующих ограничений:
- первый байт каждого пакета ПЭП должен быть первым байтом полезной нагрузки транспортного пакета;
- каждый транспортный пакет может содержать данные не более чем одного пакета ПЭП;
- если длина пакета ПЭП, исчисляемая в байтах, не кратна 184, то полезная нагрузка одного из транспортных пакетов дополняется до 184 байтов данными поля адаптации;
- транспортные пакеты, переносящие данные разных элементарных потоков, могут следовать в произвольном порядке, но пакеты, относящиеся к одному и тому же элементарному потоку, должны появляться в транспортном потоке в хронологической очередности, т.е. в порядке их формирования из пакетов соответствующего ПЭП.
Структура транспортного пакета показана на рисунке 11.
Рисунок 11 - Структура транспортного пакета
Синхронизирующий байт имеет фиксированное значение 0х47, которое может появляться и в других полях транспортного пакета. Наличие синхробайта, а также тот факт, что в нормальных условиях заголовки должны следовать с интервалом в 188 байтов, упрощают выявление ошибок и определение начала каждого очередного пакета в транспортном потоке.
Флаг ошибки пакета устанавливается в '1' приемником (перед декодером) в случае неполного исправления ошибок, возникших при передаче данного пакета по каналу связи.
Флаг начала пакета ПЭП или СИ устанавливается в '1' для транспортного пакета, в поле данных которого присутствует заголовок пакета ПЭП или содержится начало массива служебной информации. Заголовок ПЭП (указатель начала СИ) следует непосредственно за заголовком транспортного пакета либо правее поля адаптации при его наличии.
Флаг приоритета применяется к транспортным пакетам с одинаковым идентификатором. Пакет с флагом приоритета, установленным в '1', имеет более высокий приоритет.
Каждый транспортный пакет снабжается 13-битным идентификатором (ИТП). Идентификаторы транспортных пакетов служат для разделения объединенного транспортного потока на составляющие его компонентные потоки (в частности, на отдельные телепрограммы и образующие их элементарные потоки данных). Кроме того, ИТП позволяют классифицировать данные, содержащиеся в транспортных пакетах (таблица 15). Из 8192 возможных значений ИТП тридцать три зарезервированы для специальных целей, а остальные 8159 могут использоваться в качестве номеров для элементарных потоков.
Таблица 15 - Идентификация транспортных пакетов
Значения ИТП | Содержимое транспортных пакетов |
0x0000 | Таблица взаимосвязи программ (ТВП, РАТ) |
0x0001 | Таблица ограничения доступа (ТОД, САТ) |
0x0002 | Таблица описания транспортного потока (ТОТП, TSDT) |
0x0003 | Таблица управления и защиты интеллектуальной собственности (ТУЗИС, IPMP CIT) |
0x0004...0x000F | Зарезервировано |
0x0010...0x001F | Зарезервировано DVB для служебной информации |
0x0020...0x1FFE | Служебная или любая другая информация (в том числе, видео- и аудиоданные) |
0x1FFF | Выравнивающий (нулевой) пакет |
Конкретная привязка значений ИТП из диапазона 0x0020...0x1FFE к тем или иным типам данных задается вещателем с помощью иерархической системы таблиц и/или иных синтаксических единиц служебной информации.
Поле скремблирования (2 бита) со значением, отличным от `00', означает, что полезные данные передаются в зашифрованном виде. Поле должно иметь значение '00' для служебной информации и нулевых пакетов. В целях вещания могут быть использованы значения '10' (скремблирование с четным ключом) и '11' (скремблирование с нечетным ключом).
Флаги наличия поля адаптации определяют присутствие этого поля в теле пакета и уточняют структуру пакета (таблица 16).
Таблица 16 - Семантика флагов наличия поля адаптации
Значения флагов | Семантика |
'00' | Зарезервировано |
'01' | Поле адаптации отсутствует |
'10' | В пакете имеется только поле адаптации |
'11' | За полем адаптации следуют полезные данные |
Номер пакета (счетчик непрерывности, continuity counter) - значение от 0 до 15, увеличивающееся на единицу для каждого следующего пакета с тем же ИТП, кроме случаев:
- когда флаги наличия поля адаптации имеют значения '00' или '10'. В этом случае номер пакета по отношению к предыдущему не изменяется;
- когда передается копия пакета с тем же ИТП, а флаги наличия поля адаптации имеют значения '01' или '11'. Копия пакета содержит полезные данные пакета-оригинала, однако при наличии в оригинале и в копии полей адаптации содержащиеся в этих полях временные отметки программы (ВОП) различны (в поле адаптации копии пакета содержится обновленное значение ВОП);
- когда передается нулевой пакет (номер такого пакета может быть произвольным).
Использование счетчика непрерывности позволяет декодеру обнаруживать потерю транспортных пакетов и принимать меры к маскированию ошибок, которые могут из-за этого возникнуть.
5.3.1 Поле адаптации
Поле адаптации включается в состав транспортного потока для дополнения в необходимых случаях полезной нагрузки транспортного пакета до 184 байтов, а также в целях синхронизации процессов обработки элементарных потоков в декодере.
Для визуализации любой телепрограммы с помощью того или иного средства отображения используется конкретная совокупность частот дискретизации видео, звука и телетекста, привязанных к системной опорной частоте 27 МГц. Вместе с тем образующие программу сжатые элементарные потоки асинхронны по своей природе. В связи с этим при обработке таких потоков на приемной стороне требуется восстановление (автоподстройка) опорной частоты 27 МГц. Для осуществления автоподстройки используются метки ВОП, включаемые в поля адаптации транспортных пакетов (рисунок 12).
Рисунок 12 - Структура поля адаптации транспортного пакета
Значения ВОП должны быть синхронными, но не обязательно сфазированными со значениями меток МВП и МВДК, которые передаются в составе ПЭП.
Для передачи значений ВОП предпочтительно использование транспортных пакетов с идентификаторами, отведенными для видеоданных.
При доставке пакетов ПЭП одной телепрограммы двумя и более транспортными потоками по нескольким резервным каналам применяются исходные временные отметки программы (ИВОП, OPCR - Original PCR), которые не подвергаются изменениям в процессе мультиплексирования и передачи.
Временной интервал между соседними отметками ВОП в транспортном потоке, формируемом в целях вещания, должен составлять не более 40 мс, а для других применений - не более 100 мс.
Временные отметки, включаемые в состав поля адаптации транспортного пакета, так же, как и в пакетах ПЭП, передаются основным 33-битным значением счетчика системного времени частоты 90 кГц (ВОП) и 9-битным расширением (ВОПР). Аналогичным образом формируются значения ИВОП и ИВОПР.
Каждое значение ВОП, ВОПР, ИВОП, ИВОПР привязано по времени к моменту передачи его последнего бита в транспортном потоке.
В многопрограммном транспортном потоке серии временных отметок, относящиеся к разным программам, независимы, то есть каждая программа имеет собственную временную базу.
Флаг разрыва (discontinuity indicator) применяется в двух целях: для сообщения о возможном нарушении нумерации транспортных пакетов с одинаковым ИТП и для предупреждения о смене временных отметок программы. В последнем случае этот флаг сигнализирует о том, что значения очередных отметок могут сильно отклониться от ожидаемых и потребуется быстрая подстройка частоты или фазы в приемнике. Ситуации, фиксируемые с помощью флага разрыва, отражены в таблице 17.
Таблица 17 - Классификация событий при единичном значении флага разрыва
Тип и содержимое транспортного пакета | Ситуация |
Пакет не предназначен для передачи ВОП | Возможно нарушение нумерации пакетов |
Пакет может использоваться для передачи ВОП; ВОП отсутствует | Ожидается смена ВОП (переход к новой временной базе) |
Пакет может использоваться для передачи ВОП; ВОП присутствует | В пакете содержится ВОП, относящаяся к новой временной базе. Возможно нарушение нумерации пакетов |
Флаг произвольного доступа (random access indicator) устанавливается в '1', если в полезной нагрузке текущего или следующего транспортного пакета содержится заголовок элемента доступа элементарного потока: видеопоследовательности или I-кадра для MPEG-2; произвольного элемента доступа для AVC или VC-1.
Флаг приоритетности элементарного потока устанавливается в '1', если в транспортном пакете присутствует начало слайса (I-кадра или IDR-кадра) для AVC, либо начало I-кадра для VC-1.
Флаг наличия поля переключения устанавливается в '1', если соответствующее поле содержит заданное в дополнительном коде знакопеременное значение счетчика переключения (splice countdown). Положительное значение счетчика указывает число транспортных пакетов с одинаковым ИТП, которые должны быть переданы до момента переключения элементарного потока, переносимого такими пакетами. Копии пакетов и пакеты, содержащие только поле адаптации, не учитываются. Момент переключения считается наступившим с приходом последнего байта транспортного пакета, в котором значение счетчика переключения равно нулю или отсутствует, но может быть рассчитано по ранее переданному полю. При этом в пакете, соответствующем моменту переключения, должен присутствовать последний байт сжатого кадра и не должно содержаться данных нового (подключаемого) кадра. Следующий транспортный пакет с тем же ИТП (за исключением копии пакета или пакетов, содержащих только поле адаптации) должен содержать новые данные, то есть начало первого пакета нового ПЭП. Отрицательное значение счетчика переключения соответствует количеству транспортных пакетов, сформированных после переключения элементарных потоков.
Переключение ПЭП является обычно результатом врезки рекламы или региональных новостей в транспортный поток, поступающий от централизованного источника. Как правило, для организации корректного переключения элементарных потоков используется расширенное поле адаптации, содержащее ряд собственных полей и флагов (см. рисунок 12).
Поле допустимой задержки - целое число, которое определяет измеряемую в секундах допустимую задержку транспортного пакета в буфере ремультиплексора. Заданное значение используется, если флаг верности поля допустимой задержки установлен в '1'.
Поле оценки скорости потока, выраженное в битах в секунду, используется только при установленных в '1' флагах наличия и верности поля допустимой задержки, а также флага наличия поля оценки скорости потока. Данное поле служит для приближенного расчета задержки последующих транспортных пакетов, в которых отсутствует поле допустимой задержки. Применяется для потоков со скоростью до 4 Мбит/с.
Тип переключения (ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 [1]) определяет допустимую задержку транспортных пакетов в буфере ремультиплексора и скорость потока для разных профилей и уровней стандарта сжатия MPEG-2.
Метка времени декодирования для подключаемого потока (МВДКП) задается в единицах текущего времени счетчика 90 кГц и позволяет определить момент начала декодирования первого кадра подключаемого элементарного потока, сжатого по стандарту MPEG-2. Значение МВДКП считается действующим, если поле переключения в пакете содержит дополнительный код нуля.
5.3.2 Общие требования к пакетам служебной информации
Для правильной идентификации транспортных пакетов и корректной интерпретации данных, передаваемых в составе транспортного потока, в последний вводится служебная информация (СИ) нескольких видов.
Первый вид СИ - программно-зависимая информация (ПЗИ, PSI - Program Specific Information), устанавливающая соответствие между транспортными пакетами и телевизионными программами (рисунок 13).
Рисунок 13 - Взаимосвязь элементов ПЗИ и телепрограмм
Основными элементами (объектами) ПЗИ являются:
- таблица взаимосвязи программ (ТВП);
- таблицы состава программ (ТСП);
- таблица ограничения доступа (ТОД);
- таблица сетевой информации (ТСИ).
Согласно ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 [1] к служебной информации относятся также:
- таблица описания транспортного потока (ТОТП);
- таблица управления и защиты интеллектуальной собственности (ТУЗИС).
В соответствии с ЕТСИ ЕН 300468 [10] для вещательных целей используется дополнительная служебная информация.
Рекомендуемые варианты идентификации транспортных пакетов, применяемых для переноса различных видов СИ в целях вещания, приведены в таблице 18.
Таблица 18 - Идентификация транспортных пакетов со служебной информацией
Элемент (объект) служебной информации | Обозначение | ИТП по | Примечание | |
ЕТСИ ЕН 300468 | ИСО/МЭК 13818-1 | |||
Таблица взаимосвязи программ (Program Association Table) | ТВП (РАТ) | 0x0000 | 0x0000 | ИСО/МЭК 13818-1, ГОСТ Р 53527, |
Таблица ограничения доступа (Conditional Access Table) | ТОД (САТ) | 0x0001 | 0x0001 | |
Таблица описания транспортного потока (Transport Stream Description Table) | ТОТП (TSDT) | 0x0002 | 0x0002 | ИСО/МЭК 13818-1 |
Таблица управления и защиты интеллектуальной собственности (Intellectual Property Management and Protection Control Information Table) | ТУЗИС (IPMPCIT) | не предусмотрен | 0x0003 | |
Таблица сетевой информации (Network Information Table) | ТСИ (NIT) | 0x0010 | 0x0010...0x1FFE | ЕТСИ ЕН 300468 [10] |
Таблица описания программ (Service Description Table) | ТОП (SDT) | 0x0011 | 0x0010...0x1FFE | ЕТСИ ЕН 300468 [10] |
Таблица объединения пакета программ (Bouquet Association Table) | ТОПП (BAT) | 0x0011 | 0x0010...0x1FFE | ЕТСИ ЕН 300468 [10] |
Таблица информации о программах по расписанию (Event Information Table) | ТИПР (EIT) | 0x0012 | 0x0010...0x1FFE | ЕТСИ ЕН 300468 [10] |
Таблица идентификаторов контента (Content Identifier Table) | ТИК (CIT) | 0x0012 | 0x0010...0x1FFE | |
Таблица состояния программ по расписанию (Running Status Table) | ТСПР (RST) | 0x0013 | 0x0010...0x1FFE | ЕТСИ ЕН 300468 [10] |
Таблица времени и даты (Time and Date Table) | ТВД (TDT) | 0x0014 | 0x0010...0x1FFE | ЕТСИ ЕН 300468 [10] |
Таблица смещения времени (Time Offset Table) | ТСВ (TOT) | 0x0014 | 0x0010...0x1FFE | ЕТСИ ЕН 300468 [10] |
Пакет начала мегафрейма (Mega-frame initialization Packet) | ПНМ (MIP) | 0x0015 | 0x0010...0x1FFE | |
Таблица уведомлений разрешения архивации (Resolving Authority Record Notification Table) | ТРА (RNT) | 0x0016 | 0x0010...0x1FFE | |
Пакет управления средствами доступа (Medium Access Control) | ПУСД (MAC) | 0x001C | 0x0010...0x1FFE | |
Таблица состояния сети (Network Status Table) | ТСС (NST) | 0x001D | 0x0010...0x1FFE | |
Таблица информации о разрывах (Discontinuity Information Table) | ТИР (DIT) | 0x001E | 0x0010...0x1FFE | ЕТСИ ЕН 300468 [10] |
Таблица информации о выборе (Selection Information Table) | ТИВ (SIT) | 0x001F | 0x0010...0x1FFE | ЕТСИ ЕН 300468 [10] |
Таблица состава программ (Program Map Table) | ТСП (PMT) | 0x0010... 0x1FFE | 0x0010...0x1FFE | ИСО/МЭК 13818-1, ГОСТ Р 53527, |
Заполняющая таблица (Stuffing Table) | ЗТ (ST) | 0x0010... 0x0014 | 0x0010...0x1FFE | ЕТСИ ЕН 300468 [10] |
Примечания 1 ИТП 0x0004...0x000F зарезервированы ИСО/МЭК 13818-1/МСЭ-Т Н.222.0. 2 ИТП 0x0003...0x000F и 0x0017...0x001B зарезервированы ЕТСИ ЕН 300468 [10]. 3 ИТП 0x1FF6...0x1FFFE зарезервированы ATSC. 4 Программа по расписанию (неточный перевод - "событие" от англ.event) - передача, имеющая точное время начала и окончания (например, первый тайм футбольного матча). |
При большом объеме передаваемой СИ она должна разделяться на секции размером не более 1024 байтов. Исключение составляют частные данные и таблица информации о программах по расписанию (ТИПР), для которых допускаются секции длиной до 4096 байтов. Длина секции указывается в ее заголовке. Структура заголовка секции унифицирована для большинства видов СИ.
Секциям, содержащим части единого объекта СИ (например, фрагменты одной таблицы), присваиваются порядковые номера. При этом, как правило, каждая из них содержит в себе информацию об общем количестве секций (собственный номер и номер последней секции). Рекомендуется последовательная передача секций в порядке возрастания их номеров.
В отдельных случаях допускается передача СИ разного вида в транспортных пакетах с одинаковым ИТП. Так, например, пакеты с идентификатором 0х0012 могут использоваться для передачи секций ТИПР и ТИК (см.таблицу 18). В таких случаях, а также в ряде других (например, при передаче ТВП) для точного распознавания служебной информации, переносимой транспортным пакетом, применяется пара идентификаторов: ИТП и идентификатор секции (ИС).
Допустимые комбинации ИС и ИТП, используемые в вещательных целях, приведены в таблице 19.
Таблица 19 - Идентификация секций служебной информации
ИС | Вид секции | Передается в транспортных пакетах с ИТП |
0x00 | Секция ТВП (PAT) | 0x0000 |
0x01 | Секция ТОД (CAT) | 0x0001 |
0x02 | Секция ТСП (PMT) | 0x0010...0x1FFE |
0x03 | Секция ТОТП (TSDT) | 0x0002 |
0x04 | Секция описания сцены ИСО/МЭК 14496-2 | 0x0010...0x1FFE |
0x05 | Идентификатор объекта ИСО/МЭК 14496-2 | 0x0010...0x1FFE |
0x06 | Секция метаданных | 0x0010...0x1FFE |
0x07 | Секция ТУЗИС (IPMPCIT) | 0x0003 |
0x40 | Секция ТСИ (NIT) текущая сеть | 0x0010 |
0x41 | Секция ТСИ (NIT) другие сети | 0x0010 |
0x42 | Секция ТОП (SDT) текущий транспортный поток | 0x0011 |
0x46 | Секция ТОП (SDT) другие транспортные потоки | 0x0011 |
0x4A | ТОБП (BAT) | 0x0011 |
0x4E | Секция ТИПР (EIT): текущий транспортный поток, текущее и следующее состояние программы | 0x0012 |
0x4F | Секция ТИПР (EIT): другие транспортные потоки, текущее и следующее состояние программы | 0x0012 |
0x50..0x5F | Секция ТИПР (EIT): текущий транспортный поток, расписание | 0x0012 |
0x60..0x6F | Секция ТИПР (EIT): другие транспортные потоки, расписание | 0x0012 |
0x70 | Секция ТВД (TDT) | 0x0014 |
0x71 | Секция ТСПР (RST) | 0x0013 |
0x72 | Секция ЗТ (ST) | 0x0010... 0x0014 |
0x73 | Секция ТСВ (TOT) | 0x0014 |
0x74 | Секция информации о применении DVB-J, DVB-HTML | 0x0010...0x1FFE |
0x78 | Секция корректирующих данных потоков EMM (ограниченного доступа) | 0x0010...0x1FFE |
0x7A | Секция межпакетных корректирующих данных | 0x0010...0x1FFE |
0x7E | Секция ТИР (DIT) | 0x001E |
0x7F | Секция ТИВ (SIT) | 0x001 |
Примечания 1 Идентификаторы секций со значениями 0x08...0x3F зарезервированы ИСО/МЭК 13818-1, в том числе 0x3A...0x3F используются для передачи данных в секциях DSM-CC. 2 Идентификаторы секций со значениями 0x43...0x45, 0x47..0x49, 0x4B.. 0x4D, 0x7B.. 0x7D зарезервированы ЕТСИ ЕН 300468 [10] для будущих целей. 3 Идентификаторы 0x75...0x77 и 0x79 зарезервированы для передачи данных TV-AnyTime. Данные передаются в пакетах с ИТП 0x0010...0x1FFE. 4 Идентификаторы 0x80...0xFE могут использоваться по усмотрению вещателя. 5 Идентификатор 0xFF недопустим. |
Для некоторых видов служебной информации применение идентификаторов секций не предусмотрено.
Секции СИ образуют полезную нагрузку транспортных пакетов. Один транспортный пакет может использоваться для переноса секций только одного объекта СИ, но, возможно, с разными ИС (например, двух секций ТИПР (EIT) с идентификаторами 0x4E и 0x6F).
Примеры компоновки транспортных пакетов со служебной информацией представлены на рисунке 14.
А) Пакет, содержащий две секции СИ с идентификаторами | |||||||||||
Начало транспортного пакета | Указатель начала секции (УНС) | Произ- | Секция N | Секция N+1 | Запол- | ||||||
Заголовок транс- | Поле адаптации (допус- | ИС | Данные секции N | ИС | Данные секции N+1 | ||||||
4 байта | 1 байт | Число байтов равно значению УНС | 1 байт | 1 байт | |||||||
Б) Пакет, содержащий одну секцию СИ без идентификатора | |||||||||||
Начало транспортного пакета | УНС | Произвольные данные | Секция | Запол- | |||||||
Заголовок транс- | Поле адаптации (допускается) | ||||||||||
4 байта | 1 байт | Число байтов равно значению УНС |
Рисунок 14 - Транспортные пакеты со служебной информацией
В общем случае одна секция СИ может размещаться в нескольких пакетах. Транспортный пакет, содержащий начало секции, должен иметь флаг начала СИ, установленный в '1', а полезные данные такого пакета должны начинаться однобайтовым указателем начала секции (УНС). Если длина секции превышает длину поля полезных данных транспортного пакета, то следующий пакет с тем же ИТП должен содержать сброшенный в "0" флаг начала СИ и продолжение текущей секции без УНС.
Если число свободных байтов транспортного пакета не позволяет разместить и идентифицировать очередную секцию СИ, то свободные байты текущего пакета заполняются значением 0xFF, а непоместившаяся секция загружается в следующий пакет с тем же ИТП, но с нулевым значением УНС (секция размещается сразу за указателем УНС).
Настоящим стандартом рекомендуется:
1 Использовать для передачи СИ транспортные пакеты без поля адаптации и с нулевым значением поля УНС.
2 Выбирать длину секций СИ таким образом, чтобы количество транспортных пакетов, необходимых для передачи каждого объекта служебной информации (ТВП, ТОП, ТСП и т.п.), было минимальным.
Пример рациональной компоновки транспортного пакета со служебной информацией приведен на рисунке 15.
Заголовок транспортного пакета | УНС (0x00) | Секция N | Секция N+1 | Заполняющие байты | ||
ИС | Данные секции N | ИС | Данные секции N+1 | |||
4 байта | 1 байт | 1 байт | 1 байт |
Рисунок 15 - Рекомендуемая структура транспортного пакета со служебной информацией
5.3.3 Таблица взаимосвязи программ - ТВП (Program Association Table - PAT)
Таблица взаимосвязи программ содержит сведения обо всех телевизионных программах, передаваемых в составе транспортного потока. Каждой из этих программ присваивается индивидуальный номер (от 0х0001 до 0хFFFF) и ставится в соответствие своя таблица состава программы (ТСП). Данные, образующие ТВП (PAT), группируются в секции, которые передаются в транспортных пакетах с ИТП, равным 0х0000. Максимальное количество секций ТВП - 255. Для описания каждой программы отводится четырехбайтовая строка ТВП (PAT), устанавливающая взаимно однозначное соответствие между номером программы и идентификатором транспортных пакетов, которые применяются для передачи ТСП, сопоставленной программе с этим номером.
Номер программы 0х0000 зарезервирован для указания на идентификатор 0x0010 транспортных пакетов, предназначенных для доставки таблицы сетевой информации (ТСИ), в которую включаются сведения о сетях передачи транспортного потока, частотах каналов, характеристиках модуляции сигналов и т.п.
Структура транспортного пакета, содержащего секцию ТВП (PAT), показана на рисунке 16.
Рисунок 16 - Транспортный пакет с секцией ТВП (РАТ)
Длина секции указывает число последующих информативных байтов секции, включая контрольную сумму. Максимальное количество программ, сведения о которых могут быть скомпонованы в одну секцию ТВП (PAT) и помещены в один транспортный пакет, равно 42.
Идентификатор транспортного потока используется в случае слияния нескольких многопрограммных транспортных потоков в единый мультиплексированный поток. Наличие такого идентификатора в заголовке секции ТВП (PAT) позволяет определить, к какому из многопрограммных транспортных потоков относится та или иная таблица взаимосвязи программ.
Номер версии ТВП (PAT) увеличивается на единицу, если вещатель вводит изменения в состав программ, а индикатор достоверности сброшен (передаваемая информация еще недостоверна).
Контрольная сумма секции вычисляется в соответствии с полиномом
на основе данных всей секции, начиная с идентификатора секции до поля контрольной суммы, в которое при формировании ТВП (РАТ) вставляются рассчитанные значения (рисунок 17).
Рисунок 17 - Вычисление контрольной суммы в формирователе ТВП (РАТ)
В приемнике при анализе ТВП (PAT) расчет выполняется аналогично с проверкой получившейся контрольной суммы, либо производится проверка на нуль при подаче на вход декодера всех данных секции вместе с контрольной суммой (рисунок 18).
Рисунок 18 - Вычисление контрольной суммы в анализаторе ТВП (PAT)
5.3.4 Таблица состава программы - ТСП (Program Map Table - PMT)
Как правило, ТСП (PMT) содержит сведения двух категорий: о программе в целом и о составляющих ее элементарных потоках.
К общим сведениям о программе относятся:
- данные о стандартах, профилях, уровнях и параметрах кодирования видео, звука и телетекста;
- информация об объемах и особенностях использования буферов при ремультиплексировании и декодировании элементарных потоков программы;
- данные о способах и точности установки системной частоты и др.
Вышеуказанные служебные данные ТСП (PMT) оформляются и передаются в виде набора программных дескрипторов. Сведения о конкретных элементарных потоках программы передаются обычно в форме конструкций, называемых описаниями потоков.
Служебная информация, образующая ТСП (PMT), может разделяться на несколько секций. Структура транспортного пакета, содержащего секцию ТСП (PMT), представлена на рисунке 19.
Заголовок транспортного пакета | Программный дескриптор |
Рисунок 19 - Транспортный пакет с секцией ТСП (РМТ)
Контрольная сумма секции ТСП (PMT) вычисляется так же, как и для секций ТВП (PAT).
Заголовок секции ТСП (PMT) имеет ряд особенностей:
1) В поле "ИТП" заголовка заносится номер программы, которой сопоставлена ТСП (PMT);
2) Номера текущей и последней секций ТСП (РМТ), указываемые в заголовке, имеют одинаковое значение 0х00.
В следующем за заголовком поле "ИТП ВОП" указывается идентификатор транспортных пакетов, с помощью которых передаются временные отметки программы. Для систем ЦТВЧ-2 и ЦТВЧ-3 в качестве ИТП ВОП рекомендуется использовать идентификаторы пакетов со сжатыми видеоданными.
В зависимости от специфики телепрограммы секция ТСП (РМТ) может содержать только программные дескрипторы или только описания потоков, либо совокупность программных дескрипторов и описаний потоков.
Программный дескриптор (ПД) содержит метку, поле длины и поле данных. Аналогичную структуру имеют дескрипторы элементарных потоков (ДЭП), включаемые в состав описаний потоков программы (см.рисунок 19). Метка (тег) дескриптора определяет его тип и содержимое. Варианты интерпретации меток дескрипторов, предусмотренные ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 [1] и ЕТСИ ЕН 300468 [10], приведены в таблицах 20 и 21 соответственно.
Субдескриптор |
Рисунок 20 - Регистрационный дескриптор, содержащий N субдескрипторов
Таблица 20 - Дескрипторы по ИСО/МЭК 13818-1/МСЭ-Т Н.222.0
Метка дескриптора | Тип дескриптора | Длина данных, байт | Вид данных |
0x02 | ДЭП | 1 или 3 | Видео |
0x03 | ДЭП | 1 | Звук |
0x04 | ДЭП | 4 | Кодированные видео, звук и данные для иерархической модуляции |
0x05 | ПД, ДЭП | до 255 | Формат данных (метод сжатия); частные данные, включая субдескрипторы |
0x06 | ДЭП | 1 | Тип элемента доступа ЭП (слайс, кадр, группа изображений и т.п.) |
0x07 | ДЭП | 4 | Параметры фона (заднего плана) |
0x08 | ДЭП | 4 | Параметры переднего плана |
0x09 | ПД, ДЭП | Информация о данных с ограничением доступа | |
0x0A | ДЭП | до 255 | Язык звукового сопровождения |
0x0B | ПД | 2 | Информация о точности системной частоты, используемой для МВП и МВДК |
0x0C | ПД | 4 | Данные по использованию буферов при ремультиплексировании |
0x0D | ПД, ДЭП | до 255 | Разрешение идентификации звука и видео (copyright descriptor) |
0x0E | ПД | 3 | Максимальная скорость потока |
0x0F | ДЭП | 4 | Индикатор частных данных |
0x10 | ПД, ДЭП | 6 | Информация для сглаживающих буферов |
0x11 | ДЭП | 1 | Информация для системного декодера приемника |
0x12 | ДЭП | 2 | Информация о группе кадров (MPEG-1,-2,-4) |
0x1B | ДЭП | 1 | Профиль и уровень видео MPEG-4 (ИСО/МЭК 14496-2) |
0x1C | ДЭП | 1 | Профиль и уровень звука MPEG-4 |
0x24 | ПД, ДЭП | до 255 | Метки контента метаданных |
0x28 | ДЭП | 4 | Параметры кодирования AVC |
0x29 | ПД, ДЭП | до 255 | Информация ТУЗИС (IPMPCIT) |
0x2A | ДЭП | 15 | Параметры времени и гипотетического опорного декодера AVC |
0x2B | ДЭП | 3 | Параметры кодирования звука |
0x2D | ДЭП | 4 или 12 | Параметры текстовых данных |
0x2E | ДЭП | до 255 | Расширенное описание звука MPEG-4 |
0x2F | ДЭП | до 255 | Тип и информация о дополнительном видеопотоке |
0x30 | ДЭП | 13 | Параметры расширения масштабируемого видеокодирования SVC (ИСО/МЭК 14496-10/МСЭ-Т Н.264, приложение G) |
0x31 | ДЭП | 8 | Информация о субпотоках многоракурсного видеокодирования MVC (ИСО/МЭК 14496-10/МСЭ-Т Н.264, приложение Н) |
0x32 | ДЭП | до 255 | Параметры видеопотока JPEG2000 |
0x33 | ПД | до 255 | Параметры субпотоков многоракурсного видеокодирования MVC (ИСО/МЭК 14496-10/МСЭ-Т Н.264, приложение Н) |
0x34 | ДЭП | 1 | Тип кадрового упорядочивания стереоскопического видео (ИСО/МЭК 13818-2/МСЭ-Т Н.262) |
0x40...0xFE | Зарезервированы под частные данные и данные по ЕТСИ ЕН 300468 | ||
Примечания 1 Дескрипторы с метками 0x01 и 0xFF не должны использоваться. Метки 0x00 и 0x35...0x3F зарезервированы ИСО/МЭК 13818-1/МСЭ-Т Н.222.0. 2 Дескриптор с меткой 0x09 может также содержаться в таблице ТУД (CAT). 3 Дескрипторы с метками 0x13...0x1A используются для описания данных высокоскоростной передачи информации. 4 Дескрипторы с метками 0x1D...0x23 и 0x2C служат для описания данных системного уровня MPEG-4. 5 Дескрипторы с метками 0x24...0x27 используются для описания метаданных. |
Таблица 21 - Дескрипторы по ЕТСИ ЕН 300468
Метка дескриптора | Тип дескриптора | Длина данных, байт | Вид данных |
0x45 | ДЭП | до 255 | Тип данных, передаваемых на обратном ходу по вертикали |
0x46 | ДЭП | до 255 | Параметры данных телетекста, передаваемых на обратном ходу по вертикали |
0x51 | ДЭП | до 255 | Описание микроизображений (мозаики) |
0x52 | ДЭП | 1 | Идентификатор потока |
0x56 | ДЭП | до 255 | Параметры данных телетекста |
0x59 | ДЭП | до 255 | Параметры субтитров (тип потока в ТСП (PMT) - 0x06) |
0x5F | ДЭП | 4 | Описание частных данных |
0x60 | ПД | 6 | Ссылка на другую программу при перемещении данных |
0x65 | ПД | 1 | Тип (режим) ограничения доступа |
0x66 | ДЭП | до 255 | Тип данных вещания |
0x6A | ДЭП | до 255 | Описание параметров кодирования звука AC-3 |
0x6B | ДЭП | 1 | Наличие и тип вспомогательных данных сжатого звука MPEG-1, MPEG-2 |
0x6F | ДЭП | до 255 | Тип и версия таблицы информации о приложениях при передаче данных, тип элементарного потока - 0x05 |
0x70 | ДЭП | 1 | Поддерживаемый тип частных данных в поле адаптации |
0x74 | ДЭП | до 255 | Описание связанного контента |
0x78 | ПД, ДЭП | до 255 | Задержка между данными ECM |
0x7A | ДЭП | до 255 | Расширенное описание параметров кодирования звука AC-3 |
0x7B | ДЭП | до 255 | Описание звуковых данных, сжатых по когерентной акустической технологии цифрового театра |
0x7C | ДЭП | до 255 | Параметры кодирования звука по MPEG-4 AAC, MPEG-4 HE AAC |
0x7D | ПД | 5 | Описание положения таблицы информации о приложениях при передаче данных |
0x7F | ПД, ДЭП | до 255 | Расширенный дескриптор |
Примечания 1 Дескриптор с меткой 0x51 может передаваться также в секциях ТОП (SDT) и ТИВ (SIT). 2 Дескриптор с меткой 0x5F может передаваться также в секциях ТСИ (NIT), ТОБП (BAT), ТОП (SDT), ТИПР (EIT) и ТИВ (SIT). 3 Дескрипторы с метками 0x7D и 0x7F могут передаваться также в секциях ТСИ (NIT), ТОБП (BAT), ТОП (SDT), ТИПР (EIT), ТСВ (TOT) и ТИВ (SIT). |
В необходимых случаях номенклатура основных дескрипторов, приведенных в таблицах 20, 21, наращивается за счет применения субдескрипторов (ИСО/МЭК 13818-1/МСЭ-Т Н.222.0) и дескрипторов с расширенными метками (ЕТСИ ЕН 300468). Фактически субдескрипторы и дескрипторы с расширенными метками - это особая разновидность частных данных, которые могут включаться в состав некоторых основных дескрипторов. В отличие от обычных дескрипторов, субдескрипторы и дескрипторы с расширенными метками не содержат поля "Длина дескриптора".
Субдескрипторы могут размещаться в дескрипторах с метками 0x05 и 0x80...0xFF. Дескриптор с меткой 0x05 (см. таблицу 20) называется регистрационным. Структура регистрационного дескриптора, содержащего в своем составе несколько субдескрипторов, представлена на рисунке 20. В дескрипторах с метками 0x80...0xFF поле "Формат частных данных" отсутствует и субдескрипторы следуют сразу за полем "Длина дескриптора".
Дескрипторы с расширенными метками имеют такую же структуру, что и субдескрипторы (см.рисунок 20). Для передачи каждого такого дескриптора используется расширенный дескриптор, имеющий метку 0x7F (см.таблицу 21). Дескрипторы с расширенными метками используются в секциях ТСП (PMT) для определения:
- типа системы ограничения доступа и ИТП данных (расширенная метка 0x02, длина поля данных - до 254 байтов). Дескрипторы с расширенной меткой 0x02 могут использоваться также в секциях ТОБП (BAT), ТОП (SDT) и ТИПР (EIT);
- типа системы защиты контента и типа данных (расширенная метка 0x03, длина данных - до 127 двухбайтовых слов);
- дополнительной информации о звуке (расширенная метка 0x06, длина поля данных - до 254 байтов).
Расширенные метки 0x0C...0x7F зарезервированы для будущих целей, а метки 0x80...0xFF могут использоваться по усмотрению вещателя.
Описание элементарного потока программы (см.рисунок 19) содержит в общем случае следующие составные части:
- тип потока;
- идентификатор транспортных пакетов (ИТП ПЭП), используемых для передачи потока;
- дескрипторы элементарного потока;
- значение общей длины дескрипторов, включенных в описание потока.
Тип потока, указываемый в описании потока, определяет вид данных, которые будут передаваться в транспортных пакетах с идентификатором из поля "ИТП ПЭП" того же описания.
Основные типы потоков, описания которых могут содержаться в секциях ТСП (PMT), приведены в таблице 22.
Таблица 22 - Типы потоков, описываемых в секциях ТСП (PMT)
Тип потока | Вид данных |
0x00 | Зарезервирован ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 |
0x01 | Видео MPEG-1 |
0x02 | Видео MPEG-2 (ИСО/МЭК 13818-2/МСЭ-Т Н.262) или параметры MPEG-1 |
0x03 | Звук MPEG-1 |
0x04 | Звук MPEG-2 |
0x05 | Частные данные в составе секций СИ (ИСО/МЭК 13818-1/МСЭ-Т Н.222.0) |
0x06 | Частные данные в составе пакетов ПЭП (ИСО/МЭК 13818-1/МСЭ-Т Н.222.0) |
0x07 | Данные MHEG |
0x08 | Данные высокоскоростной передачи информации (ИСО/МЭК 13818-1/МСЭ-Т Н.222.0, приложение B (DSM-CC) |
0x09 | Данные, передаваемые через сети ATM |
0x0E | Дополнительные данные (ИСО/МЭК 13818-1/МСЭ-Т Н.222.0) |
0x0F | Звук по MPEG-2 AAC с транспортным синтаксисом ADTS |
0x10 | Видео MPEG-4 (ИСО/МЭК 14496-2) |
0x11 | Звук MPEG-4 с транспортным синтаксисом LATM |
0x12 | Данные в пакетах SL или данные потока FlexMux MPEG-4 |
0x13 | Секции СИ в пакетах SL или в потоке FlexMux MPEG-4 |
0x15 | Метаданные в составе пакетов ПЭП |
0x16 | Метаданные в составе секций СИ |
0x1A | Поток IPMP по ИСО/МЭК 13818-11 |
0x1B | Видео или субпотоки видео AVC (ИСО/МЭК 14496-10/МСЭ-Т Н.264) |
0x1C | Звук MPEG-4 без дополнительного транспортного синтаксиса |
0x1D | Текстовые данные |
0x1E | Дополнительный видеопоток |
0x1F | Субпоток SVC (в AVC) по ИСО/МЭК 14496-10/МСЭ-Т Н.264, приложение G |
0x20 | Субпоток MVC (в AVC) по ИСО/МЭК 14496-10/МСЭ-Т Н.264, приложение H |
0x21 | Видеопоток JPEG2000 |
0x22 | Стереоскопическое видео с кадровым упорядочиванием по ИСО/МЭК 13818-2/МСЭ-Т Н.262 |
0x23-0x7E | Зарезервированы ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 |
0x7F | Поток IPMP |
0x80-0xFF | Частные данные |
Примечания 1 Значения типа потока 0x0A...0x0D и 0x14 используются для высокоскоростной передачи данных DSM-CC. 2 Значения типа потока 0x17...0x19 используются для передачи данных с циклическим повтором. 3 Значение 0xEA используется для описания потока VC-1. |
Иерархическая связь между элементами служебной информации таблиц ТВП (PAT) и ТСП (PMT) отражена на рисунке 21.
Рисунок 21 - Иерархия элементов служебной информации ТВП (PAT) и ТСП (PMT)
Примеры заполнения транспортных пакетов, содержащих секции ТСП (PMT) для различных методов кодирования сигналов ЦТВЧ-2 и ЦТВЧ-3, приведены в таблицах 23, 24 и на рисунках 22, 23.
Таблица 23 - Пример транспортного пакета, содержащего секцию ТСП (PMT) с описаниями потоков видеоданных и звука, сжатых по стандартам AVC и MPEG-2 соответственно
Номера байтов | Шестнадца- | Содержание | |||
1...4 | 0x47402112 | Заголовок транспортного пакета: флаг начала секции СИ установлен в '1'; ИТП=0x0021; скремблирования нет; поле адаптации отсутствует; номер пакета `0010' | |||
5 | 0x0 | УНС=0х0 (секция СИ начинается сразу за указателем) | |||
6 | 0x02 | ИС=0x02 (идентификатор секции ТСП (PMT) | Заголовок секции | Секция ТСП (РМТ) | |
7, 8 | 0хВ017 | Фиксированные биты '1011'; длина секции - 23 байта | |||
9, 10 | 0х0001 | Номер программы - 1 | |||
11 | 0хС3 | Резервные биты '11'; номер версии ТСП - 1; флаг достоверности ТСП (PMT) установлен в '1' | |||
12, 13 | 0х0000 | Номера текущей и последней секций СИ (нули) | |||
14, 15 | 0хЕ101 | Резервные биты '111'; ИТП ВОП=0x0101 | |||
15, 16 | 0хF000 | Резервные биты '1111'; длина программных дескрипторов - 0 (ПД отсутствуют) | |||
17 | 0х1В | Тип потока - видео AVC | Описание потока 1 | Описание потоков | |
18, 19 | 0хЕ101 | Резервные биты '111'; ИТП ПЭП=0x0101 | |||
20, 21 | 0хF000 | Резервные биты '1111'; длина дескрипторов ЭП - 0 (ДЭП отсутствуют) | |||
22 | 0х04 | Тип потока - звук MPEG-2 | Описание потока 2 | ||
23, 24 | 0хЕ102 | Резервные биты '111'; ИТП ПЭП=0x0102 | |||
25, 26 | 0хF000 | Резервные биты '1111'; длина дескрипторов ЭП - 0 (ДЭП отсутствуют) | |||
27...30 | 0х2В700BF6 | Контрольная сумма | |||
31...188 | все 0хFF | Заполняющие байты |
Таблица 24 - Пример транспортного пакета, содержащего секцию ТСП (PMT) с описаниями элементарных потоков, сжатых по стандарту MPEG-2
Номера байтов | Шестнадца- | Содержание | |||||
1...4 | 0х47402110 | Заголовок транспортного пакета: флаг начала секции СИ установлен '1'; ИТП=0х0021; скремблирования нет; поле адаптации отсутствует; номер пакета '0010' | |||||
5 | 0х0 | УНС=0х0 (секция СИ начинается сразу за указателем) | |||||
6...8 | 0х02В031 | ИС=0х02 (идентификатор секции ТСП (РМТ); фиксированные биты '1011'; длина секции - 49 байтов | Заголовок секции | Секция ТСП (РМТ) | |||
9, 10 | 0х29D0 | Номер программы - 10704 | |||||
11 | 0хС7 | Резервные биты '11'; номер версии ТСП - 3; флаг достоверности ТСП (РМТ) установлен '1' | |||||
12, 13 | 0х0000 | Номера текущей и последней секции СИ (нули) | |||||
14, 15 | 0хЕ0Е0 | Резервные биты '111'; ИТП ВОП=0х00Е0 | Секция ТСП (РМТ) | ||||
16, 17 | 0хF011 | Резервные биты '1111'; длина программных дескрипторов - 17 байтов | Программ- | ||||
18, 19 | 0х0Е03 | Метка дескриптора - 0х0Е ("Максимальная скорость потока"); длина дескриптора - 3 байта | Программный дескриптор 1 | ||||
20...22 | 0хС030D4 | Резервные биты '11'; максимальная скорость потока в единицах "50 байтов в секунду" (здесь: 12500·50·8=5 млн бит/с) | |||||
23, 24 | 0х1006 | Метка дескриптора - 0х10 ("Информация для сглаживающих буферов"); длина дескриптора - 6 байтов | Программ- | ||||
25...27 | 0хС00271 | Резервные биты '11'; скорость опустошения приемного системного буфера в единицах "400 бит/с" (здесь: 625·400=250 тыс.бит/с) | |||||
28...30 | 0хС00400 | Резервные биты '11'; размер сглаживающего буфера мультиплексора в байтах (здесь 1024 байта) | |||||
31, 32 | 0х0В020 | Метка дескриптора - 0х0В ("Информация о точности системной частоты", используемой для МВП и МВДК, в миллионных долях значения частоты); длина дескриптора - 2 байта | Про- | ||||
33, 34 | 0х423F | Старший бит '0' - внешняя опорная частота не используется; резервный бит '1'; шесть бит - целая часть точности частоты (здесь 2); три бита - множитель | |||||
35 | 0х02 | Тип потока - видео MPEG-2 | Описание потока 1 | Описание потоков | |||
36, 37 | 0хЕ0Е0 | Резервные биты '111'; ИТП ПЭП=0х00Е0 | |||||
38, 39 | 0хF003 | Резервные биты '1111'; длина дескрипторов ЭП - 3 байта | |||||
40, 41 | 0х0601 | Метка ДЭП - 0х06 ("Тип элемента доступа ЭП"); длина ДЭП - 1 байт | Дескрип- | ||||
42 | 0х02 | Тип элемента доступа - начало видео- | |||||
43 | 0х04 | Тип потока - звук MPEG-2 | Описание потока 2 | ||||
44, 45 | 0хE0F4 | Резервные биты '111'; ИТП ПЭП=0х00F4 | |||||
46, 47 | 0хF006 | Резервные биты '1111'; длина дескрипторов ЭП - 6 байтов | |||||
48, 49 | 0х0А04 | Метка ДЭП - 0х0А ("Язык звукового сопровождения и тип звука"); длина ДЭП - 4 байта | Дескрип- | ||||
50...52 | 0х697461 | ita (язык звукового сопровождения - итальянский) | |||||
53 | 0х0 | Тип звука - не определен | |||||
54...57 | 0х02СВ6С60 | Контрольная сумма | |||||
58...188 | все 0хFF | Заполняющие байты |
Рисунок 22 - Пример транспортного пакета, содержащего секцию ТСП (PMT) с описанием элементарного видеопотока, сжатого по стандарту VC-1
Рисунок 23 - Пример транспортного пакета, содержащего секцию ТСП (PMT) с описанием элементарного видеопотока, сжатого по стандарту EVC
В примере на рисунке 22 описание сжатого видеопотока (в соответствии с SMPTE RP227 [15]) содержит:
1 Тип потока - 0xEA (видеопоток VC-1);
2 Идентификтор 0х045 транспортных пакетов, назначенных для передачи сжатого видеопотока VC-1;
3 Значение суммарной длины дескрипторов сжатого видеопотока VC-1 (14 байтов);
4 Метку 0x05 регистрационного дескриптора, имеющего поле данных длиной 12 байтов, в которое включены:
- четырехбайтовый идентификатор формата данных 0x56432D31 - буквенно-цифровое обозначение применяемого метода сжатия (VC-1);
- субдескриптор с меткой 0x01, в однобайтовом поле данных которого содержится код 0x94 улучшенного профиля уровня 3 VC-1 (см.таблицу 9);
- субдескриптор с меткой 0x02, в однобайтовом поле данных которого содержится код 0x05, означающий, что элементом доступа описываемого элементарного потока является кадр (другие возможные значения для систем ЦТВЧ-2, 3: 0x01);
- слайс или элемент доступа видео, 0x02 - элемент доступа видео, 0x03 - точка входа или последовательность, 0x04 - последовательность;
- субдескриптор с меткой 0x03, в трехбайтовом поле данных которого содержится код 0xF1F423, позволяющий вычислить значение минимального размера видеобуфера в соответствии с формулой
где целое
В примере на рисунке 23 описание сжатого видеопотока содержит:
- тип потока - 0xDD (видеопоток EVC);
- идентификтор 0x046 транспортных пакетов, назначенных для передачи сжатого видеопотока EVC;
- значение суммарной длины дескрипторов видеопотока EVC (8 байтов);
- метку 0x05 регистрационного дескриптора, имеющего поле данных длиной 6 байтов, в которое включены:
- четырехбайтовый идентификатор формата данных - буквенно-цифровое обозначение применяемого метода сжатия;
- субдескриптор с меткой 0x01, в однобайтовом поле данных которого содержится код 0x01 версии кодека EVC.
6 Методы измерений параметров цифрового транспортного потока телевидения высокой четкости
6.1 Передача цифрового транспортного потока телевидения высокой четкости
Тракт передачи цифровых телевизионных сигналов высокой четкости, определенный как тракт передачи цифрового транспортного потока, состоит из следующих звеньев: цифровое телевизионное радиопередающее устройство, радиочастотный тракт передачи и профессиональное цифровое интегрированное приемное устройство. Входным и выходным сигналами тракта являются сигналы цифрового транспортного потока.
Перечень средств измерений и технологического оборудования для измерений параметров структуры и синтаксиса цифрового транспортного потока приведен в приложении Д.
6.2 Методы измерений параметров структуры и синтаксиса цифрового транспортного потока
Схема проведения измерений параметров тракта передачи цифрового транспортного потока приведена на рисунке 24.
Рисунок 24 - Схема измерений параметров тракта передачи цифрового транспортного потока (ЦТП)
Метод измерения параметров тракта передачи цифрового транспортного потока заключается в следующем.
На вход тракта передачи ЦТП подается цифровой транспортный поток от источника цифровых телевизионных сигналов со сжатием.
Выходной цифровой транспортный поток через декодер цифрового транспортного потока подается на устройство отображения телевизионных изображений. Входной и выходной ЦТП тракта контролируются анализатором ЦТП. Параметры тракта передачи ЦТП устанавливаются соответствующими номинальному режиму работы. Затем ЦТП источника отключается от входа тракта передачи и на вход тракта подается ЦТП от генератора испытательных цифровых сигналов транспортного потока. Анализатором цифрового транспортного потока, подключенным к выходу тракта передачи ЦТП, производят измерение скорости передачи цифрового транспортного потока, параметров структуры и синтаксиса цифрового транспортного потока, джиттера.
6.2.1 Методы измерений параметров радиопередающих устройств в системах ТВЧ со сжатием цифрового потока
Основными измеряемыми параметрами цифровых радиопередающих устройств являются:
- спектр излучения, проверяемый на соответствие спектральной маске допусков;
- коэффициент ошибок модуляции;
- сигнальное созвездие.
Схема измерений параметров цифровых радиопередающих устройств ЦТВЧ приведена на рисунке 25.
Рисунок 25 - Схема измерений параметров радиопередающего устройства цифрового телевидения высокой четкости
Метод измерения параметров цифрового радиопередающего устройства заключается в следующем.
На вход цифрового радиопередающего устройства подают цифровой транспортный поток (ЦТП) от генератора испытательных цифровых сигналов транспортного потока. С калиброванного аттенюатора через измерительный демодулятор и декодер цифровой телевизионный сигнал (ЦТС) подается на устройство отображения телевизионных изображений.
Анализатором цифрового транспортного потока контролируют параметры цифрового транспортного потока на входе цифрового телевизионного радиопередающего устройства и на выходе измерительного демодулятора.
Цифровое телевизионное радиопередающее устройство устанавливают в рабочий режим. Измерительным демодулятором измеряют соответствие спектра излучения спектральной маске допусков, коэффициент ошибок модуляции, сигнальное созвездие.
Анализатором спектра осуществляют контроль частотного спектра излучения цифрового телевизионного радиопередающего устройства и соответствие спектра принятой маске допусков.
6.2.2 Методы измерений параметров профессионального интегрированного приемного устройства
Профессиональное цифровое интегрированное приемное устройство включает в себя демодулятор радиосигналов и декодер цифрового транспортного потока.
К основным параметрам профессионального цифрового телевизионного интегрированного приемника относятся:
- избирательность в рабочем диапазоне частот;
- избирательность по соседнему и зеркальному каналам;
- коэффициент битовых ошибок перед внешним декодером;
- опознавание и отображение режимов телевизионного радиопередатчика;
- уровни входных сигналов;
- уровни выходных сигналов;
- чувствительность.
Схема измерений параметров профессионального интегрированного приемного устройства приведена на рисунке 26. Она включает в себя цифровой телевизионный радиопередатчик, генератор испытательных цифровых сигналов транспортного потока, анализатор цифрового транспортного потока и устройство отображения телевизионных изображений.
Рисунок 26 - Схема измерений параметров профессионального цифрового интегрированного приемного устройства
Метод измерений параметров профессионального цифрового интегрированного приемного устройства состоит в следующем.
Испытательные сигналы от генератора испытательных цифровых сигналов транспортного потока подаются на цифровой телевизионный радиопередатчик, выход которого через калиброванный аттенюатор подсоединяется ко входу демодулятора.
Цифровой транспортный поток испытательных сигналов с выхода демодулятора декодируется и по полученным телевизионным изображениям испытательных таблиц устройством отображения телевизионных изображений производится контроль преобразований сигналов интегрированного приемного устройства.
Параметры цифрового транспортного потока оцениваются анализатором цифрового транспортного потока.
6.3 Основные требования к аппаратуре для измерения параметров структуры и синтаксиса цифрового транспортного потока
Генератор испытательных цифровых сигналов транспортного потока должен обеспечивать:
- формирование цифрового транспортного потока, соответствующего ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 [1] и содержащего испытательные сигналы;
- возможность изменения скорости транспортного потока;
- возможность ввода преднамеренных ошибок.
Выходные интерфейсы генератора должны соответствовать ГОСТ Р 52592-2006 для сжатого цифрового потока.
Анализатор цифрового транспортного потока (ЦТП) должен обеспечивать:
- анализ параметров ЦТП в реальном масштабе времени;
- анализ пакетов ЦТП длиной 188 байтов и 204 байта;
- измерение фактической скорости мультиплексированного ЦТП;
- определение эффективной скорости ЦТП для каждой программы и каждого типа транспортных пакетов в отдельности;
- определение ошибок ЦТП в соответствии с группами приоритета по рекомендации ЕТСИ ТО 101290 [12], настройку параметров анализа;
- анализ таблиц системной информации ЦТП;
- просмотр состава программ внутри транспортного потока;
- измерение фазового дрожания (джиттера) программы, выбранной из ЦТП;
- вывод на дисплей персонального компьютера текущей информации о параметрах ЦТП и об ошибках с возможностью более детальной обработки;
- максимальную скорость входного ЦТП - 108 Мбит/с;
- пределы допускаемой погрешности измерения скорости ЦТП - ±100 бит/с;
- диапазон измерения фазового дрожания программных тактов (джиттера) - ±1000 нс;
- разрешающую способность измерения фазового дрожания программных тактов - один период тактовой частоты ВОП (PCR).
Декодер цифрового транспортного потока должен обеспечивать:
- декодирование цифровых транспортных потоков, соответствующих методам сжатия MPEG-2, AVC/H.264, VC-1, EVC и требованиям ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 [1];
- формирование декодированных цифровых телевизионных сигналов с параметрами разложения 1250/25/1:1 и 1250/50/2:1 при частотах дискретизации сигналов яркости
- прием цифровых транспортных потоков по входным интерфейсам в соответствии с ГОСТ Р 52592-2006 и SMPTE 305.2M [13];
- выдачу цифровых телевизионных сигналов по выходным интерфейсам в соответствии с Рекомендацией МСЭ-Р BT.1120-7 [6].
Измерительные демодуляторы должны обеспечивать:
- измерение коэффициента битовых ошибок;
- измерение параметров модуляции: коэффициента ошибок модуляции, величины вектора ошибки, среднего значения системной ошибки, девиации системной ошибки, дисбаланса амплитуд, квадратурной ошибки, фазового джиттера;
- отображение сигнального созвездия на плоскости;
- формирование демодулированного цифрового транспортного потока;
- выдачу демодулированных цифровых транспортных потоков по выходным интерфейсам в соответствии с ГОСТ Р 52592-2006 и SMPTE 305.2M [13];
- настройку на любой из каналов входного диапазона частот;
- возможность подключения к персональному компьютеру для вторичной обработки информации.
Приложение А
(справочное)
Принципы кодирования сигналов ЦТВЧ-2,3 по стандарту MPEG-2
А.1 Общая схема кодирования/декодирования видеосигналов
Обобщенная схема процессов кодирования и декодирования видеосигналов по стандарту MPEG-2 представлена на рисунке А.1.
Рисунок А.1 - Процессы кодирования и декодирования видеосигналов по стандарту MPEG-2
Оценка движения (предсказание) - поиск в ранее закодированных и восстановленных (опорных) кадрах фрагмента изображения (прогноза), максимально похожего на текущий кодируемый фрагмент.
Каждый опорный фрагмент, кодируемый без предсказания, и каждый массив поэлементных разностей между кодируемым фрагментом и его прогнозом (массив ошибок предсказания) подвергаются прямому двумерному дискретному косинусному преобразованию.
Для уменьшения объема передаваемой информации полученные в результате косинусного преобразования трансформанты квантуются путем деления на элементы матрицы квантования.
Квантованные трансформанты и указатели прогнозов (векторы движения) кодируются кодами переменной длины с учетом среднестатистических свойств фрагментов (так называемое статистически согласованное или энтропийное кодирование).
С целью предотвращения накопления ошибок, как это принято в системах с дифференциальной импульсно-кодовой модуляцией, кодер содержит в своем составе узел декодирования. Процесс декодирования ошибок предсказания и опорных фрагментов включает деквантование трасформант и обратное косинусное преобразование массивов. Для восстановления фрагментов изображения, закодированных с предсказанием, декодированные ошибки предсказания суммируются с элементами соответствующего прогноза. Реконструированные изображения, практически совпадающие с поступающими на вход кодера, сохраняются в буфере для последующего предсказания.
Полный процесс декодирования изображений на приемной стороне (в декодере) включает два дополнительных этапа: 1) энтропийное декодирование квантованных трансформант и векторов движения и 2) компенсацию движения, т.е. восстановление прогнозов с использованием векторов движения.
А.2 Форматы субдискретизации цвета
Для кодирования сигналов ЦТВЧ-2 и ЦТВЧ-3 по стандарту MPEG-2 может быть использован формат субдискретизации цвета 4:2:2 или 4:2:0 (предпочтителен для вещания). Формат 4:4:4, применяемый для студийного производства, далее не рассматривается.
Расположение отсчетов в кадре для форматов 4:2:2 и 4:2:0 показано на рисунке А.2.
Рисунок А.2 - Форматы субдискретизации цвета 4:2:2 и 4:2:0
Для перевода формата субдискретизации 4:2:2 в формат 4:2:0 в простейшем случае, при построчном разложении (ЦТВЧ-3), может быть использована полусумма значений вышележащего и нижележащего отсчетов
где
Восстановление может быть реализовано копированием отсчетов цветоразностных сигналов в строки, из которых они были получены:
Аналогично при чересстрочном разложении (ЦТВЧ-2) может быть использована взвешенная сумма отсчетов одного поля:
При обратном восстановлении:
В соответствии с тестовой моделью MPEG-2 [14] значения отсчетов цветоразностных сигналов формата 4:2:0, используемые для последующего кодирования, рассчитываются для чересстрочного разложения из отсчетов цветоразностных сигналов формата 4:2:2 при помощи вертикальных сглаживающих фильтров:
где
Обратное восстановление:
А.3 Иерархия структурных элементов кодирования MPEG-2
Рисунок А.3 - Структурные элементы кодирования видеосигналов
В качестве основных структурных элементов кодирования предусмотрены (рисунок А.3):
- видеопоследовательность - серия кадров или полей. Построчная видеопоследовательность может содержать только кадры, чересстрочная - кадры и поля. Разрешение, формат и частота кадров, а также формат субдискретизации цвета одинаковы для всех кадров/полей видеопоследовательности;
- группа кадров - серия кадров или полей, использующих предсказание по времени, начинающаяся с кадра, допускающего только внутрикадровое кодирование, и содержащая ровно один такой кадр (либо одно или два поля). В элементарном потоке группа кадров может иметь переменную длину;
- кадр/поле. Предусмотрены 3 вида кодирования кадров/полей и их составных частей: внутрикадровое (Intra, I-кадр или I-поле), с предсказанием вперед (Predicate, P-кадр или P-поле) и с двунаправленным предсказанием (Bidirectional, B-кадр или B-поле). Для чересстрочной последовательности два поля одного кадра должны иметь одинаковый вид кодирования, кроме случая I-кадра, для которого первое поле должно иметь внутрикадровое кодирование, а второе - либо внутрикадровое, либо с предсказанием вперед. Чересстрочный кадр может кодироваться как единый кадр либо как два последовательных поля;
- слайс - группа из 16 последовательных строк в кадре/поле яркостной компоненты и 8 (для формата 4:2:0) или 16 (для 4:2:2) строк каждого из цветоразностных сигналов;
- макроблок - группа 16x16 элементов изображения сигнала яркости и 8x16 (для 4:2:2) или 8x8 (для 4:2:0) каждого из цветоразностных сигналов. Последовательность макроблоков образует слайс. При кодировании I-кадра для всех макроблоков осуществляется внутрикадровое кодирование (I-макроблоки), для P-кадра может быть использовано внутрикадровое кодирование или кодирование с предсказанием вперед (I- и P-макроблоки), в B-кадре могут использоваться все варианты кодирования макроблоков. В пределах каждого кадра/поля осуществляется независимая адресация (последовательная нумерация) макроблоков;
- блок - группа 8x8 элементов изображения (отсчетов). Один макроблок содержит 4 блока яркостной компоненты и два (для 4:2:0) или четыре (для 4:2:2) блока цветоразностных сигналов. Каждый из отсчетов представляет собой положительное число без знака, целая часть которого кодируется восемью битами. Минимальное значение отсчета равно 1, максимальное значение равно 254.
Перед кодированием в каждом отсчете инвертируется старший бит двоичного кода. Тем самым формируются дополнительные коды смещенных отсчетов
А.4 Внутрикадровое кодирование
При кодировании I-макроблока все входящие в него блоки отсчетов
где
Трансформанты могут принимать как положительные, так и отрицательные значения и имеют 11-разрядную целую часть (включая знаковый разряд). Трансформанта
Таблица А.1 - Максимальные абсолютные значения трансформант ПДКП при диапазоне входных значений
Максимальные абсолютные значения | ||||||||
1016,00 | 917,00 | 934,97 | 917,00 | 1012,00 | 917,00 | 934,97 | 917,00 | |
917,00 | 830,92 | 847,20 | 830,92 | 917,00 | 830,92 | 847,20 | 830,92 | |
934,97 | 847,20 | 863,80 | 847,20 | 934,97 | 847,20 | 863,80 | 847,20 | |
917,00 | 830,92 | 847,20 | 830,92 | 917,00 | 830,92 | 847,20 | 830,92 | |
1012,00 | 917,00 | 934,97 | 917,00 | 1012,00 | 917,00 | 934,97 | 917,00 | |
917,00 | 830,92 | 847,20 | 830,92 | 917,00 | 830,92 | 847,20 | 830,92 | |
934,97 | 847,20 | 863,80 | 847,20 | 934,97 | 847,20 | 863,80 | 847,20 | |
917,00 | 830,92 | 847,20 | 830,92 | 917,00 | 830,92 | 847,20 | 830,92 |
При кодировании чересстрочной видеопоследовательности с объединением обоих полей в кадре блоки
Рисунок А.4 - Формирование блоков отсчетов для последующего кадрового или полевого ПДКП
При кодировании последовательности полей формирование блоков осуществляется только из строк кодируемого поля, как для кадрового ПДКП. Для построчной видеопоследовательности используется только кадровое ПДКП.
Трансформанты, кроме
где
Шкала типа 0 - линейная. Для линейной шкалы значение фактора равно удвоенному значению его кода. Шкала типа 1 - нелинейная.
Для нелинейной шкалы значение фактора определяется его кодом в соответствии с таблицей А.2.
Таблица А.2 - Коды и значения факторов квантования для шкалы типа 1
Код фактора | ||||
Значение фактора |
Фактор квантования может изменяться для каждого макроблока. Коэффициенты квантования
16 | 19 | 22 | 26 | 27 | 29 | 34 | ||
16 | 16 | 22 | 24 | 27 | 29 | 34 | 37 | |
19 | 22 | 26 | 27 | 29 | 34 | 34 | 38 | |
22 | 22 | 26 | 27 | 29 | 34 | 37 | 40 | |
22 | 26 | 27 | 29 | 32 | 35 | 40 | 48 | |
26 | 27 | 29 | 32 | 35 | 40 | 48 | 58 | |
26 | 27 | 29 | 34 | 38 | 46 | 56 | 69 | |
27 | 29 | 35 | 38 | 46 | 56 | 69 | 83 |
Рисунок А.5 - Коэффициенты квантования
Постоянная составляющая квантуется и округляется в соответствии с формулой
где
квантователь
Смена значения квантователя
Постоянные составляющие кодируются в пределах каждого слайса с применением метода дифференциальной импульсно-кодовой модуляции (ДИКМ), согласно которому для всех трех компонент вычисляются ошибки предсказания
- для первого блока любой компоненты в слайсе;
- если предшествующий макроблок не кодируется (пропущен) или использует кодирование с предсказанием (в P- и B-кадрах или полях).
Каждая отличная от нуля ошибка предсказания
Порядок обхода (сканирования) блоков при вычислении и кодировании ошибок предсказания постоянных составляющих показан на рисунке А.6.
Рисунок А.6 - Порядок сканирования блоков в слайсе при кодировании транформант - постоянных составляющих
Все остальные трансформанты сканируются в пределах каждого блока в отдельности. Предусмотрено два вида сканирования трансформант в блоке - зигзагообразное и альтернативное (рисунок А.7). Вид сканирования может изменяться в начале видеопоследовательности.
Получаемая в результате сканирования одномерная последовательность, состоящая из 63 квантованных трансформант каждого блока, подвергается энтропийному RLE-кодированию (RunLevelEncoding) с использованием стандартизованных таблиц кодов переменной длины (таблицы B.14, B.15 и B.16 ИСО/МЭК 13818-2/МСЭ-Т H. 262 [2]).
Рисунок А.7 - Варианты сканирования трансформат в блоке
Порядок формирования фрагмента элементарного видеопотока из RLE-кодов для макроблока с внутрикадровым кодированием отражен на рисунке А.8.
Код увеличения номера на рисунке А.8 - это разность между адресами текущего и следующего I-макроблоков. для I-кадров код увеличения номера в каждом I-макроблоке равен 1. Для Р- и В-кадров код увеличения номера имеет переменную длину от 1 до 11 битов и задает увеличенное на 1 количество пропущенных макроблоков Р- или В-типа (таблица В.1 ИСО/МЭК 13818-2/МСЭ-Т Н.262 [2]).
Рисунок А.8 - Результат кодирования I-макроблока
Значение "Тип I-макроблока" зависит от типа кадра (поля) и определяет наличие кода фактора квантования среди дополнительных данных. В соответствии с таблицами B.2, В.3, В.4 ИСО/МЭК 13818-2/МСЭ-Т H.262 [2], тип I-макроблока с кодом фактора квантования задается: в I-кадре (поле) двухбитовой комбинацией '01'; в P- и B-кадре (поле) - шестибитовой комбинацией '000001'. Тип I-макроблока без кода фактора квантования (используется предыдущее значение фактора) задается: в I-кадре (поле) - одним битом '1'; в P- и B-кадре (поле) - комбинацией '00011'.
Тип ПДКП кодируется одним битом: '0' - кадровое, '1' - полевое ПДКП. Присутствует только в чересстрочной видеопоследовательности при кодировании кадра и сброшенном в `0' флаге кадровых типов предсказания и ПДКП "frame_pred_frame_dct".
В составе дополнительных данных передается 5-битный код фактора квантования (для типов I-макроблока '01' или '000001'). При наличии в расширенном заголовке кадра соответствующего флага разрешения в состав дополнительных данных включаются также скрытые векторы движения. Основная цель передачи скрытых (виртуальных) векторов - восстановление информации, поврежденной в канале связи. Поскольку алгоритм исправления ошибок не специфицирован, во избежание несовместимости оборудования различных производителей использование виртуальных векторов настоящим стандартом не рекомендуется (флаг "concealment_motion_vectors" в расширенном заголовке кадра должен быть сброшен в '0').
Восстановление закодированных отсчетов яркости и цветоразностных сигналов в кодере, а также на приемной стороне производится в порядке, обратном порядку кодирования.
Деквантование трансформант осуществляется в соответствии с формулами:
Здесь
В результате квантования/деквантования трансформант возможно получение значений
Младшие биты всех трансформант каждого блока суммируются по модулю 2. При получении значения `0' младший бит трансформанты
Из трансформант
Значения
Кроме того, на приемной стороне для получения из реконструированных отсчетов
- все декодированные блоки отсчетов представляются в пригодной для вывода форме (полевой для ЦТВЧ-2 и кадровой для ЦТВЧ-3);
- значения
- значения яркостных и цветоразностных сигналов преобразуются к виду целых без знака путем инвертирования старшего бита;
- формат субдискретизации цвета 4:2:0 преобразуется в формат 4:2:2.
Примечание - Прямое и обратное косинусные преобразования с округлением трансформант до целых значений не являются взаимообратимыми - результат ОДКП отличается от исходного массива отсчетов. Для обеспечения взаимообратимости требуется обработка трансформант минимум с двумя дополнительными разрядами дробной части (с точностью 0,25), что не предусмотрено ИСО/МЭК 13818-2/МСЭ-Т Н.262.
А.5 Кодирование с предсказанием вперед
Для макроблока P-кадра (P-поля), кодируемого с предсказанием вперед, производится поиск наиболее похожего на этот макроблок фрагмента изображения (прогноза) в опорном кадре (поле). В качестве опорного используется ближайший ранее закодированный и реконструированный кодером кадр (поле) I- или P-типа. Порядок поиска оптимального прогноза ИСО/МЭК 13818-2/МСЭ-Т Н.262 [2] не регламентирован. Из-за сложности полного перебора всех возможных вариантов предсказания на практике применяют алгоритмы неполного поиска, как правило, в пределах некоторой ограниченной зоны опорного кадра (поля). Из всех анализируемых прогнозов обычно выбирается наилучший по критерию максимального сходства (в идеальном случае полностью совпадающий с кодируемым макроблоком).
Формирование прогноза
Примечание - ИСО/МЭК 13818-2/МСЭ-Т Н.262 рассматривает четыре класса макроблоков: I-макроблоки, макроблоки с предсказанием вперед, назад или с двунаправленным предсказанием. Здесь и далее для упрощения описания основных процедур кодирования сигналов ЦТВЧ применяется следующая классификация макроблоков: I-макроблоки, P-макроблоки (используемые только в P-кадрах или P-полях) и B-макроблоки (используемые только в B-кадрах или B-полях).
В зависимости от типа видеопоследовательности допускается применение нескольких вариантов кодирования с предсказанием вперед, отличающихся видами прогнозов и ПДКП (рисунок А.9).
Рисунок А.9 - Виды предсказания и ПДКП для P-макроблоков
Найденный наилучший прогноз используется для формирования одного или двух векторов движения и ошибок предсказания P-макроблока. Векторы движения кодируются методом ИДКМ. Ошибки предсказания, т.е. массивы попиксельных разностей между P-макроблоком и его прогнозом, подвергаются ПДКП с последующим статистическим кодированием трансформант.
А.5.1 Формирование прогнозов для предсказания вперед при кодировании кадров
А.5.1.1 Кадровый прогноз
Порядок формирования элементов кадрового прогноза для P-макроблока по отсчетам выбираемых фрагментов опорного I- или P-кадра отражен на рисунке А.10.
Для каждой пары целочисленных значений координат
Рисунок А.10 - Формирование кадрового прогноза для Р-макроблока
В таблице А.3 приведены формулы расчета прогнозов для яркостной компоненты. Прогнозы 2 и 3 формируются из опорных отсчетов путем линейной интерполяции вдоль одной из координат (
Таблица А.3 - Вычисление кадровых прогнозов
Вариант прогноза | Прогноз | Вектор движения ( |
1 | ||
2 | ||
3 | ||
4 |
Получаемые значения элементов прогнозов 2-4 округляются в сторону ближайших целых. Порядок формирования сопутствующих прогнозов
Таблица А.4 - Вычисление кадровых прогнозов
Вариант прогноза | Значение | Значение | Прогноз | |
4:2:2 | 4:2:0 | |||
1 | Четное | Четное | ||
Нечетное | ||||
Нечетное | Четное | |||
Нечетное | ||||
2 | Четное | Четное | ||
Нечетное | ||||
Четное | Четное | |||
Нечетное | ||||
Нечетное | Четное | |||
Нечетное | ||||
3 | Четное | Четное | ||
Четное | ||||
Нечетное | ||||
Нечетное | Четное | |||
Четное | ||||
Нечетное | ||||
4 | Четное | Четное | ||
Четное | ||||
Нечетное | ||||
Четное | Четное | |||
Четное | ||||
Нечетное | ||||
Нечетное | Четное | |||
Четное | ||||
Нечетное | ||||
Примечания 1 Значения координаты 2 Расчет значений координат с точностью до половины пиксела осуществляется линейной интерполяцией: |
А.5.1.2 Полевой прогноз
Полевой прогноз P-макроблока рассчитывается по элементам двух полевых фрагментов опорного чересстрочного кадра (рисунок А.11). Один фрагмент содержит блок 16х8 элементов яркости и два блока 8х8 (4:2:2) или 8х4 (4:2:0) элементов цветоразностных компонент. Каждый из них может принадлежать любому из полей опорного кадра, поэтому при полевом предсказании формируются два вектора движения. Один из векторов определяет фрагмент, по которому предсказаны четные строки, другой - фрагмент, по которому предсказаны нечетные строки кодируемого P-макроблока. По аналогии с кадровым предсказанием каждый из фрагментов используется для получения четырех вариантов прогноза (см.таблицы А.3, А.4). При этом применяется сквозная нумерация строк по полю. После нахождения наилучших частных прогнозов для четных и нечетных строк P-макроблока окончательный прогноз формируется их чересстрочным объединением.
Рисунок А.11 - Формирование полевого прогноза P-макроблока
В элементарном потоке для каждого из двух передаваемых векторов движения, относящихся к одному и тому же P-макроблоку, указывается поле кадра, из фрагмента которого сформирован прогноз его четных (нечетных) строк. Первым всегда передается вектор для четных строк закодированного P-макроблока. Значения вертикальных составляющих обоих векторов задаются с точностью до половины межстрочного интервала.
А.5.1.3 Прогноз двойной опоры
В чересстрочных видеопоследовательностях, не имеющих B-кадров и B-полей, может применяться специальный прогноз P-макроблока, называемый прогнозом двойной опоры (Dual prime). В прогнозе двойной опоры частные прогнозы четных и нечетных строк P-макроблока усредняются с полевыми прогнозами альтернативных опорных полей. Формирование прогноза двойной опоры может производиться в следующем порядке:
1 Кодируемый и опорный кадры разделяются на поля, в каждом из которых используется сквозная нумерация строк. Кодируемый макроблок в этом случае состоит их двух субмакроблоков 16х8 - один в четном, другой в нечетном поле. Оба кодируемых субмакроблока имеют одинаковые начальные координаты (
2 Для кодируемого субмакроблока четного поля из опорного субфрагмента четного поля формируются 4 прогноза с соответствующими начальными координатами (
где добавление дробной части означает, что значения массива прогноза получены межпиксельной интерполяцией. Соответствующие значения векторов движения:
Значения векторов движения для нечетного опорного поля, находящегося во времени между четным опорным и четным кодируемым полями, интерполируются в предположении поступательности движения:
Таким образом, для каждого из 4 прогнозов опорного субфрагмента четного поля формируются 9 прогнозов в нечетном поле.
Окончательные 36 прогнозов для субмакроблока четного поля получаются усреднением значений прогнозов четного и нечетного опорных полей. Для небольших значений векторов некоторые из 36 прогнозов могут оказаться совпадающими друг с другом.
3 Аналогичные процедуры проводятся для кодируемого субмакроблока нечетного поля. Из опорного субфрагмента нечетного (т.е. совпадающего по четности с кодируемым) поля формируются 4 прогноза с соответствующими начальными координатами (
Соответствующие значения векторов движения равны
Значения векторов движения экстраполируются для четного опорного поля с аналогичным округлением и получением начальных координат прогнозов четного опорного поля для субмакроблока нечетного поля:
4 Единый прогноз всего макроблока образуется объединением наилучших прогнозов субмакроблоков.
5 В элементарный поток заносятся значения вектора для совпадающей четности кодируемого и опорного полей (т.е.
Данный способ имеет повышенную сложность и применяется только в целях обеспечения малой задержки кодирования-декодирования сигналов. Кроме того, многие приемники-декодеры не поддерживают этот способ кодирования как устаревший, поэтому прогноз двойной опоры не рекомендуется использовать при кодировании сигналов ЦТВЧ-2, ЦТВЧ-3 в вещательных целях.
А.5.2 Формирование прогнозов для предсказания вперед при кодировании полей
При кодировании полей каждые два соседних поля (изображения) считаются относящимися к одному кадру. Опорными для кодирования P-полей могут быть поля, в совокупности образующие кадры вида: "I-поле+ I-поле"; "I-поле+P-поле"; "P-поле+P-поле".
Для первого P-поля (из двух в кодируемом кадре) производится формирование четырех прогнозов по одному из ранее переданных I- или P-полей. Прогнозы формируются так же, как при кодировании P-кадра (см.таблицы А.3 и А.4). При передаче вектора движения в элементарном потоке указывается поле, из которого сформирован прогноз. Первое кодируемое поле может быть как верхним (четным), так и нижним (нечетным).
Для второго P-поля прогнозы могут быть сформированы аналогичным образом. Кроме того, допускается формирование прогнозов из реконструированного (кодированного, а затем декодированного) P- или I-поля самого кодируемого кадра. Специальный прогноз двойной опоры вычисляется так же, как и при кодировании кадров, но только в том случае, если первое поле в каждой паре полей одного кадра четно (является верхним). Если это не так, то расчет прогнозов должен быть соответствующим образом скорректирован. Для кадров вида " I-поле+P-поле" данная разновидность прогнозов не используется.
При кодировании полей допускается также формирование прогнозов типа "Компенсация движения 16x8". В этом случае кодируемый макроблок поля разбивается на две части - верхнюю и нижнюю половины. Для каждой из частей производится формирование прогнозов из ранее переданных полей. На рисунке А.12 приведен пример, в котором прогноз верхней части получен из нечетного поля, а прогноз нижней части - из четного.
Рисунок А.12 - Формирование прогноза типа "компенсация движения 16x8" для P-поля
А.5.3 Кодирование макроблоков с предсказанием вперед
Кодируемый P-макроблок и его наилучший прогноз используются для вычисления ошибок предсказания:
Вычисленные ошибки предсказания округляются до целых и вводятся в диапазон [-256, +255].
Последующие процедуры кодирования во многом схожи с процедурами, применяемыми при внутрикадровом кодировании макроблоков. Основные особенности и отличия состоят в следующем:
1 Прямому (полевому или кадровому) дискретному косинусному преобразованию подвергаются массивы (блоки) ошибок предсказания
2 Для блоков ошибок предсказания не делается различий между постоянной составляющей
Если коэффициенты
3 В результате сканирования блока формируется линейная последовательность, состоящая из 64 квантованных трансформант.
4 Групповое RLE-кодирование трансформант выполняется с использованием стандартизованных таблиц B.14 и B.16 ИСО/МЭК 13818-2/МСЭ-Т Н.262 [2].
Успешный прогноз обеспечивает высокую вероятность того, что в одном или более блоках P-макроблока все квантованные трансформанты
P-макроблок, у которого все блоки и значения векторов движения равны нулю, считается пропущенным (кроме первого и последнего макроблока в слайсе). Пропущенные макроблоки в элементарный поток не включаются.
Структура фрагмента элементарного видеопотока, формируемого в результате кодирования P-макроблока, приведена на рисунке А.13.
Рисунок А.13 - Результат кодирования P-макроблока
Тип макроблока - один из кодов переменной длины, уточняющих структуру P-макроблока в элементарном потоке:
'1' - передаются векторы движения и закодированные трансформанты; код фактора квантования отсутствует;
'01' - передаются только закодированные трансформанты; код фактора квантования отсутствует; векторы движения равны нулю;
'001' - передаются только векторы движения; код фактора квантования отсутствует; трансформанты всех блоков равны нулю;
'00010' - передаются векторы движения, код фактора квантования и закодированные трансформанты;
'00001' - передаются закодированные трансформанты и код фактора квантования; векторы движения равны нулю.
Тип предсказания задается двухбитовым кодом фиксированной длины. Для пропущенных макроблоков подразумевается кадровый или полевой прогноз при кодировании соответственно кадра или поля.
Тип ПДКП кодируется одним битом: '0' - кадровое, '1' - полевое. Присутствует только в чересстрочной видеопоследовательности при кодировании кадра и сброшенном флаге "кадровые типы предсказания и ПДКП" ("frame_pred_frame_dct").
Векторы движения передаются в элементарном потоке в виде закодированных разностей между текущими значениями векторов и их предикторами - предсказанными значениями. Правила формирования предикторов представлены в таблице А.5.
Таблица А.5 - Формирование предикторов для векторов движения P-макроблоков
Кодирование | Прогноз текущего макроблока | Векторы, разностные коды которых передаются в элементарном потоке | Предикторы, используемые для следующего макроблока |
P-кадра | Кадровый | А | А, В=А |
Полевой | А, В | не изменяются | |
Двойной опоры | А, В | А, В=А | |
P-поля | Полевой | А | А, В=А |
Двойной опоры | А, В | А, В=А | |
"Компенсация движения 16x8" | А, В | не изменяются | |
Примечание - Предиктор вектора, полученного прогнозом двойной опоры при кадровом кодировании, сохраняется с удвоенным значением вертикальной координаты. |
При кодировании текущего макроблока P-кадра (поля) неизвестно, к какому типу (I- или P-) будет отнесен следующий макроблок, а если это будет P-макроблок, то какой из вариантов прогноза окажется для него наилучшим и соответственно сколько векторов (один или два) потребуется для компенсации движения такого P-макроблока. В связи с этим при обработке каждого макроблока формируется и запоминается пара предикторов: А и В. Предиктор А является основным и применяется для кодирования первого (возможно единственного) вектора движения следующего P-макроблока. Предиктор В используется для кодирования второго вектора, если таковой имеется. Оба предиктора полагаются равными нулю в следующих случаях:
- перед кодированием первого макроблока слайса;
- после передачи I-макроблока без скрытых векторов;
- после передачи P-макроблока без векторов;
- если текущий макроблок оказался пропущенным.
После передачи очередного непропущенного P-макроблока производится реконструирование всех его ненулевых блоков в порядке, обратном порядку их кодирования: инверсное сканирование, деквантование трансформант, вычисление ошибок предсказания посредством ОДКП, восстановление исходных отсчетов.
Деквантование трансформант осуществляется в соответствии с выражениями:
где
Результаты деквантования вводятся в диапазон [-2048, +2047].
Младшие биты всех трансформант каждого блока суммируются по модулю 2. При получении значения '0' младший бит трансформанты
Над трансформантами
Вычисленные ошибки предсказания блока суммируются с соответствующими элементами ранее сформированного для него прогноза
На приемной стороне для формирования несжатых цифровых сигналов ЦТВЧ-2, ЦТВЧ-3:
- все декодированные блоки отсчетов представляются в пригодной для вывода форме (полевой для ЦТВЧ-2 и кадровой для ЦТВЧ-3);
- значения отсчетов вводятся в диапазон [-127, +126], а затем преобразуются к виду целых без знака путем инвертирования старшего бита;
- формат субдискретизации цвета 4:2:0 преобразуется в формат 4:2:2.
А.6 Кодирование с двунаправленным предсказанием
Для макроблока B-кадра (поля) поиск наиболее удачного прогноза производится по двум ближайшим опорным кадрам (полям) I- или P-типа (рисунок А.14). Частным случаем является предсказание только вперед или только назад, когда прогноз формируется соответственно из предыдущего или следующего по времени опорного кадра (поля).
Рисунок А.14 - Виды межкадровых предсказаний
Формирование прогнозов для B-макроблока по каждому опорному кадру (полю) может быть осуществлено любым из способов, применяемых для предсказания вперед, кроме прогноза двойной опоры.
При двунаправленном предсказании итоговый прогноз
Для B-макроблока, использующего предсказание только вперед или только назад, число векторов движения такое же, как и для P-макроблока (1 или 2). Для B-макроблока с двунаправленным предсказанием число векторов движения удваивается.
Пример формирования двунаправленного полевого прогноза для B-макроблока с начальными координатами (
Из-за существенного увеличения количества возможных альтернативных прогнозов обычно используется упрощенный подход к кодированию B-макроблоков. Для текущего макроблока ищутся два наилучших прогноза во встречных направлениях: один "вперед", другой "назад". Затем макроблок кодируется четырьмя разными способами:
- с предсказанием вперед на основе наилучшего прогноза из предшествующего I- или P-кадра (поля);
- с предсказанием назад на основе наилучшего прогноза из последующего I- или P-кадра (поля);
- с двунаправленным предсказанием (по усредненному прогнозу);
- без предсказания (I-макроблок).
Из четырех полученных результатов в качестве оптимального выбирается тот, которому соответствует фрагмент элементарного потока наименьшей длины.
Примечание - Строки в кадре нумеруются, начиная с нуля. Четные строки принадлежат вышележащему полю, нечетные - нижележащему полю.
Рисунок А.15 - Формирование полевого прогноза для B-макроблока
Процедуры кодирования и реконструирования B-макроблоков не отличаются от аналогичных процедур кодирования и реконструирования P-макроблоков. Вместе с тем, представление B-макроблоков в элементарном потоке имеет ряд особенностей:
1 Для указания типа B-макроблока в его заголовке используется не 5, а 9 различных кодов переменной длины (номенклатура типов расширена в связи с возможностью двунаправленного предсказания и предсказания назад). Обобщенные сведения о кодировании типов I-, P-, и B-макроблоков представлены в таблице А.6.
Таблица А.6 - Кодирование типов I-, P-, и B-макроблоков
Тип макроблока | Код типа макроблока (код фактора квантования отсутствует) | Код типа макроблока (передаются код фактора квантования и ненулевые трансформанты) | ||||||
в I-кадре (поле) | со всеми нулевыми трансформантами | с ненулевыми трансформантами | в I-кадре (поле) | в P-кадре (поле) | в B-кадре (поле) | |||
в P-кадре (поле) | в B-кадре (поле) | в P-кадре (поле) | в B-кадре (поле) | |||||
I- | 1 | 00011 | 00011 | 00011 | 00011 | 01 | 000001 | 000001 |
P- с векторами движения | - | 001 | (0010) | 1 | (0011) | - | 00010 | (000011) |
P- без векторов движения | - | пропущенный | (0010) | 01 | (0011) | - | 00001 | (000011) |
B- с двунаправлен- | - | - | 10 | - | 11 | - | - | 00010 |
B- с предсказа- | - | - | 010 | - | 011 | - | - | 000010 |
B- с предсказа- | - | - | 0010 | - | 0011 | - | - | 000011 |
2 B-макроблок с нулевыми трансформантами во всех блоках и нулевыми значениями разностных векторов движения считается пропущенным только в том случае, когда вариант используемого прогноза (кадровый либо полевой) в точности соответствует типу кодируемого изображения (кадр либо поле). В противном случае такой B-макроблок включается в элементарный поток. При этом в зависимости от способа предсказания тип B-макроблока задается в его заголовке кодом '10', '010' или '0010' (см.таблицу А.6) и нулевые разностные векторы передаются в явном виде.
3 При выявлении пропущенного B-макроблока текущие предикторы векторов движения не обнуляются.
4 При кодировании B-макроблока, не относящегося к категории пропущенных, в соответствии с таблицей А.7 формируются четыре предиктора векторов движения: два для предсказания вперед (Ав, Вв) и два для предсказания назад (Ан, Вн).
Таблица А.7 - Формирование предикторов векторов движения для B-макроблоков
Кодирование | Прогноз текущего макроблока | Предсказание | Векторы, передаваемые в элементарном потоке | Предикторы, используемые для следующего макроблока |
B-кадра | Кадровый | Вперед | Ав | Ав, Вв=Ав; Ан не изменяется, Вн не изменяется |
Назад | Ан | Ан, Вн=Ан; Ав не изменяется, Вв не изменяется | ||
Двунаправленное | Ав, Ан | Ав, Вв=Ав; Ан, Вн=Ан | ||
Полевой | Вперед | Ав, Вв | Не изменяются | |
Назад | Ан, Ан | Не изменяются | ||
Двунаправленное | Ав, Ан, Вв, Вн | Не изменяются | ||
B-поля | Полевой | Вперед | Ав | Ав, Вв=Ав; Ан не изменяется, Вн не изменяется |
Назад | Ан | Ан, Вн=Ан; Ав не изменяется, Вв не изменяется | ||
Двунаправленное | Ав, Ан | Ав, Вв=Ав; Ан, Вн=Ан | ||
16x8 | Вперед | Ав, Вв | Не изменяются | |
Назад | Ан, Ан | Не изменяются | ||
Двунаправленное | Ав, Ан, Вв, Вн | Не изменяются |
А.7 Перестановка кадров (полей)
Для сокращения объема локальной буферной памяти декодера кадры (поля), закодированные с использованием двунаправленного предсказания, передаются в канал связи или записываются в файл не в порядке их отображения (поступления от источника), а в порядке декодирования (рисунок А.16). При таком подходе в локальном буфере декодера требуется хранить не более двух уже декодированных кадров, являющихся опорными для текущего. Группа переставленных местами кадров (полей) начинается в элементарном потоке с заголовка, за которым следует I-кадр (поле). Видеопоследовательность начинается с заголовка; за ним размещается либо заголовок группы с последующим I-кадром (полем), либо P-кадр (поле).
Рисунок А.16 - Отображаемая и кодированная последовательность кадров
В вещании для обеспечения быстрого переключения принимаемых абонентом телепрограмм каждая группа кадров (полей) оформляется обычно как отдельная видеопоследовательность, в заголовке которой содержатся все необходимые для правильного декодирования данные.
При архивировании сжатого видео записываемый файл представляется чаще всего как одна видеопоследовательность. Тем самым достигается экономия памяти на внешнем носителе за счет сокращения числа и общего объема заголовков.
Для воспроизведения - отображения декодированных кадров (полей) выполняется их обратная перестановка.
Приложение Б
(справочное)
Основные особенности кодирования сигналов ЦТВЧ по ИСО/МЭК 14496-10
По ИСО/МЭК 14496-10 (AVC/H264) предусмотрена возможность использования других цветовых пространств: ахроматического (только яркость),
Сигналы цветового пространства
В пределах последовательности может использоваться кодирование как по кадрам, так и по полям. Для чересстрочного изображения возможен выбор способа кодирования для каждой пары вертикально смежных макроблоков. В этом случае один макроблок содержит четные строки, а другой - нечетные.
Слайс представляет собой последовательность макроблоков, не обязательно соседних по горизонтали. Обычно весь кадр (поле) кодируется как один слайс. Допускается 5 видов слайсов: I-, P-, B-, SI- и SP-. Наличие слайсов дополнительных типов SI- и SP- делает возможным быстрое переключение декодера с обработки одного закодированного видеопотока на обработку другого (например, переключение между потоками, используемыми для передачи одного и того же видеоконтента с разным разрешением или с разным соотношением битрейт/качество). Слайсы одного кадра могут объединяться в группы с различным (в том числе шахматным) расположением макроблоков, относящихся к разным слайсам.
При межкадровом предсказании с компенсацией движения для прогнозирования любого P-макроблока может быть использовано до 4 опорных кадров (8 полей) из 16 кадров (32 поля), хранящихся в буфере и используемых в качестве опорных для кодируемого слайса. Для B-макроблока количество опорных кадров (полей) может достигать 8. В качестве опорных могут использоваться I-, P- и B-кадры. Прогнозы для яркостной компоненты формируются с точностью
- для формата 4:4:4 - на два субмакроблока "8х16+8х16+8х16", на два субмакроблока "16х8+16х8+16х8" или на четыре субмакроблока "8х8+8х8+8х8";
- для формата 4:2:2 - на два субмакроблока "16х8+8х8+8х8" или на четыре субмакроблока "8х8+4х8+4х8"";
- для формата 4:2:0 - на два субмакроблока "8х16+4х8+4х8", на два субмакроблока "16х8+8х4+8х4" или на четыре субмакроблока "8х8+4х4+4х4".
Количество субмакроблоков в макроблоке определяет число используемых опорных кадров.
При разбиении макроблока на 4 субмакроблока каждый из них, в свою очередь, может дробиться на две или четыре секции по одному из трех вариантов. Так, например, для субмакроблока "8х8+4х4+4х4" возможно дробление на две секции "4х8+2х4+2х4", на две секции "8х4+4х2+4х2" или на четыре секции "4х4+2х2+2х2" (рисунок Б.1).
Рисунок Б.1 - Разбиение макроблока на субмакроблоки и секции (яркостная компонента)
Разделение макроблоков на составные части составляет основу древовидной структуры компенсации движения. Наименьшими элементами прогнозирования являются компоненты 16 секций, т.е. блоки 4х4 отсчетов яркости и блоки 4х4 либо 2х2 цветоразностных отсчетов. Таким образом, при двунаправленном предсказании частей B-макроблока в предельном случае требуется передача 32 векторов движения.
В дополнение к межкадровому предсказанию применяется внутрикадровое прогнозирование I-макроблоков без компенсации движения. Для построения внутрикадровых Intra-прогнозов используются реконструированные отсчеты последней закодированной строки (прилегает к кодируемому блоку сверху) и последнего закодированного столбца (прилегает к текущему блоку слева). Предусмотрено три варианта построения Intra-прогнозов яркостной компоненты: для блоков 16х16, 8х8 и 4х4. Наилучший прогноз для блока яркостных отсчетов 16х16 выбирается среди четырех альтернативных - с направлением предсказания вправо, вниз, по диагонали и без направления (в последнем случае вычисляется среднее значение всех смежных с блоком элементов строки сверху и столбца слева). Для каждого из яркостных блоков 8х8 и 4х4 наилучший прогноз выбирается среди девяти альтернативных. Для цветоразностных сигналов в формате субдискретизации 4:4:4 используются те же виды прогнозов, что и для яркостной компоненты. Для остальных форматов применяется Intra-прогнозирование блоков 4х4 вправо, вниз, по диагонали и без направления.
При внутрикадровом кодировании с Intra-прогнозом 16х16 блок ошибок предсказания яркости разбивается на 16 массивов по 4х4 элементов в каждом. Аналогичным образом производится разбиение блоков ошибок предсказания цветоразностных компонент при формате субдискретизации цвета 4:4:4. Для форматов 4:2:2 и 4:2:0 используются только массивы 4х4. Для всех остальных вариантов прогнозирования (как внутрикадрового, так и межкадрового) разностные блоки яркостной компоненты разделяются на массивы либо по 4х4, либо по 8х8 элементов.
Каждый массив ошибок предсказания 4х4 или 8х8 подвергается приближенному целочисленному псевдокосинусному преобразованию, которое выполняется в два этапа: вначале производится прямое базовое двумерное преобразование, а затем осуществляется коррекция полученных промежуточных трансформант, совмещаемая с процессом их квантования. Базовое преобразование может быть осуществлено выполнением только операций сложения и сдвигов, а совмещение процедур коррекции и квантования промежуточных трансформант позволяет значительно сократить общее количество операций умножения. Процедуры деквантования и обратного базового преобразования реализуются в рамках целочисленной арифметики с использованием всего лишь одной операции умножения на каждый реконструируемый элемент (ошибку предсказания).
В режиме внутрикадрового кодирования с Intra-прогнозом 16х16 предусмотрена дополнительная обработка промежуточных трансформант
Для реконструирования значений промежуточных трансформант
В силу разнообразия обрабатываемых массивов (8х8, 4х4 с элементом
Множество используемых значений фактора квантования расширено до 52. Допускается применение разных значений фактора для яркостной и цветоразностных компонент. В заголовке видеопоследовательности может передаваться несколько матриц квантования для массивов, различающихся своим содержимым и размерностью. Применяются два типа матриц квантования, используемых по умолчанию. В матрицах первого типа все коэффициенты
Рисунок Б.2 - Коэффициенты квантования
Для уменьшения заметности границ блоков при воспроизведении видеоконтента используется специальный антиблокинг-фильтр, информация о необходимости применения и параметрах которого (направлении, интенсивности) передается в элементарном потоке для каждого макроблока.
Допускается применение двух альтернативных методов контекстно-адаптивного энтропийного кодирования квантованных трансформант: кодами переменной длины и арифметическое. Разностные векторы движения и другие синтаксические единицы элементарного потока кодируются экспоненциальными кодами Голомба.
Приложение В
(справочное)
Особенности кодирования сигналов ЦТВЧ по стандарту VC-1
Стандарт VC-1 [9], принятый в 2005 году, объединяет в себе много общих подходов, характерных для AVC/H.264 и MPEG-2.
Особенности кодирования сигналов ЦТВЧ по стандарту VC-1 заключаются в следующем:
1 Используется только один формат субдискретизации цвета 4:2:0.
2 Введен дополнительный структурный элемент - точка подключения (entry-point), предназначенная для инициализации декодирования цифрового потока в приемных устройствах.
3 Номенклатура типов кадров (полей) дополнена BI-типом. Кадр (поле) BI-типа содержит только I-макроблоки и в качестве опорного не используется.
4 Слайс представляет собой последовательность макроблоков "16х16+8х8+8х8" в пределах кадра или поля. Присутствует только в расширенном профиле, но и в нем не является обязательным, поскольку обычно кадр кодируется как один слайс, и в этом случае достаточно кадра как структурной единицы. Разбиение на слайсы может использоваться для сброса предикторов.
5 Предусмотрено динамическое изменение разрешения. Для каждой группы построчных кадров все кадры могут быть дополнительно масштабированы по отношению к исходному разрешению в два раза по горизонтали или вертикали либо одновременно по горизонтали и вертикали. Информация о масштабировании передается в заголовке I-кадра.
6 Блоки 8х8, входящие в состав макроблока, могут иметь индивидуальный характер кодирования, т.е. быть I-типа (для любых кадров или полей), P-типа (для P-кадров, кроме чересстрочных) и B-типа (для построчных B-кадров или B-полей).
7 Кодирование квантованной постоянной составляющей
Либо верхняя строка, либо левый столбец квантованных трансформант I-блока (кроме постоянной составляющей) могут кодироваться дифференциально по отношению к таким же трансформантам соседних I-блоков, расположенных соответственно выше или левее, в том числе входящих в тот же макроблок. Дифференциальное кодирование может применяться для I-блоков в I-кадрах, а также в P- или B-кадрах, если соседние блоки имеют I-тип. При этом в улучшенном профиле прогнозы в необходимых случаях переквантуются.
8 Для P-макроблоков число векторов движения, передаваемых в элементарном потоке, может быть равно 1, 2 или 4. Если формируется один вектор, то он используется для макроблока в целом. Один вектор применяется при кодировании полей или построчных кадров. Для P-макроблока в чересстрочном кадре требуется как минимум два вектора: один для верхнего поля, другой для нижнего. При передаче четырех векторов каждый из них используется для своего блока яркости 8х8. Кроме того, по ним вычисляются векторы движения цветоразностных блоков, для чего применяется несколько альтернативных методов, включая усреднение и медианную выборку.
Для B-макроблока формируется 1, 2 или 4 (для чересстрочных кадров) вектора движения, которые всегда применяются к макроблоку в целом. При этом один вектор может использоваться как при однонаправленном предсказании (вперед или назад), так и при двунаправленном предсказании, если одноименные координатные элементы двух векторов одинаковы по абсолютной величине, но различаются знаком.
Прогнозы макроблоков (блоков) могут быть скомпенсированы по контрасту и яркости. Значения корректирующих коэффициентов едины для всех макроблоков в опорном кадре.
Предикторы векторов движения могут формироваться из векторов, ранее сформированных для соседних макроблоков (расположенных левее, выше и диагонально), а в случае четырехвекторных P-макроблоков и из векторов, сформированных ранее для блоков текущего P-макроблока.
Прогноз блоков яркости осуществляется с точностью в 1/4 пиксела. Прогнозы со смещением формируются билинейной или бикубической интерполяцией.
9 Для P- и B-макроблоков разностные блоки 8х8, содержащие ошибки предсказания, могут разбиваться на субблоки 8х4, 4х8, 4х4 с целью спектрального преобразования, квантования и энтропийного кодирования трансформант для каждого субблока в отдельности.
10 Используется сепарабельное прямое преобразование специального вида, для которого стандартизованы значения норм, представленных рациональной дробью. В обратном преобразовании применяются целые коэффициенты и детерминированный порядок вычислений с округлением промежуточных и конечного результатов. Применяются два ядра одномерных преобразований, одно из которых предназначено для четырехэлементного вектора, а другое - для восьмиэлементного. Комбинирование и поочередное применение таких одномерных преобразований позволяет реализовать все типы двумерных преобразований (8х8, 8х4, 4х8 и 4х4). Взаимообратимость прямого и обратного преобразований из-за округлений и применения целочисленной арифметики не обеспечивается.
11 Для I-блоков 8х8 предусмотрено 3 варианта сканирования. Для P- и B-блоков и их субблоков применяется 10 вариантов сканирования. Выбор конкретного варианта зависит от размеров кодируемого массива (блок 8х8, субблок 8х4, 4х8 или 4х4), а также от профиля кодирования и способа разложения кадра (построчное или чересстрочное).
12 Значение кода фактора квантования для очередного макроблока может передаваться как в обычном, так и в дифференциальном виде. Используется линейная шкала квантования со значениями от 1 до 31 и с промежуточными значениями с шагом в 1/2 для факторов от 1 до 8. Частотно-зависимые матрицы квантования не используются.
13 Для уменьшения заметности границ блоков применяется набор специальных фильтров против блок-эффекта, антиконтурный и адаптивного сглаживания. При этом в зависимости от разбиения блоков фильтрация может производиться не для всех приграничных пикселов.
14 Энтропийное кодирование трансформант осуществляется триплетами Run-Level-LastFlag и кодами переменной длины. Используются 6 таблиц кодов переменной длины. Выбор той или иной таблицы зависит от интенсивности движения (высокое, среднее, низкое), вида кодирования (внутрикадровое или межкадровое). В случае I-блоков таблицы могут быть разными для яркостной и цветовых компонент.
Приложение Г
(справочное)
Общие принципы кодирования сигналов ЦТВЧ по технологии EVC
Кодируемая видеопоследовательность разделяется на группы из
Применяемый формат субдискретизации цвета - 4:2:0.
Рисунок Г.1 - Структурные элементы кодирования EVC
Отсчеты яркостного и цветоразностных сигналов - восьмиразрядные целые числа без знака. Диапазоны допустимых значений отсчетов: от 16 до 235 для яркости и от 16 до 240 для цветоразностных сигналов. Перед кодированием отсчетов в двоичном коде каждого из них инвертируется старший бит, в результате чего формируются дополнительные коды смещенных отсчетов
Каждый из блоков
Каждый из субблоков подвергается прямому трехмерному (пространственно-временному) косинусному преобразованию
где
Полученные в результате прямого преобразования трансформанты
- квантованию с учетом зрительного восприятия динамичных сцен, глубины
- прямому сканированию;
- энтропийному кодированию.
Структура EVC-кодера показана на рисунке Г.2.
Рисунок Г.2 - Структура кодера EVC
Предсказание и компенсация движения не используются. Реконструирование закодированных субблоков, формирование, кодирование и передача векторов движения не требуются.
Выходной элементарный поток (ЭП) содержит следующие структурные элементы:
- группа кадров (полей) со стартовым префиксом 0x00000200;
- слайс с префиксом из диапазона от 0x00000201 до 0x000002AF, где последний байт кода (0x01...0xAE) - номер слайса. Для кодирования изображений со сверхвысоким разрешением (более 2784 строк) код 0x000002AF используется в качестве флага расширения номера слайса. Следующий за ним байт служит для вычисления номера слайса как суммы 176+(значение байта);
- макроблок - шестерка закодированных блоков;
- блок - серия из
- субблок - одномерный массив закодированных трансформант.
Группы кадров, слайсы и макроблоки снабжаются соответствующими заголовками.
В заголовке группы кадров (полей) передается информация о параметрах разложения исходного изображения, длине группы кадров (полей) и параметрах кодирования.
Заголовок слайса содержит порядковый номер слайса в группе кадров (полей).
В заголовке макроблока передается информация о варианте сканирования субблоков, способе и параметрах квантования трансформант и о конфигурации каждого из шести блоков (количестве, глубине и порядке следования образующих его субблоков).
На приемной стороне декодирование производится в обратном порядке. При этом для обратного ДКП используется то же ядро преобразования
Приложение Д
(рекомендуемое)
Перечень средств измерений и технологического оборудования
Перечень средств измерений и технологического оборудования, применяемого при измерении параметров тракта цифровой системы телевидения высокой четкости и его звеньев:
1 Генератор испытательных цифровых сигналов и цифрового транспортного потока.
2 Анализатор цифрового транспортного потока АТП-1.
3 Измерительный демодулятор ДТЦ-2И.
4 Анализатор спектра.
5 Декодер цифрового транспортного потока.
6 Анализатор параметров изображения.
7 Цифровой телевизионный радиопередатчик.
8 Цифровое устройство воспроизведения телевизионного изображения.
9 Устройство отображения телевизионных изображений.
Примечания
1 Допускается применение аналогичных измерительных приборов, включенных в Государственный реестр средств измерений Российской Федерации.
2 Приборы по перечислениям 5...9 относятся к технологическому оборудованию.
Библиография
[1] ИСО/МЭК 13818-1/МСЭ-Т Н.222.0 (ISO/IEC 13818-1/ITU-T H.222.0) | Информационные технологии. Родовое кодирование киноизображений и сопровождающей звуковой информации. Системы. Часть 1 (Information technology - Generic coding of moving pictures and associated audio information: Systems) |
[2] ИСО/МЭК 13818-2/МСЭ-Т Н.262 (ISO/IEC 13818-2/ITU-T H.262) | Информационные технологии. Родовое кодирование киноизображений и сопровождающей звуковой информации. Часть 2. Видеоданные (Information technology - Generic coding of moving pictures and associated audio information - Part 2: Video) |
[3] ИСО/МЭК 14496-2 (ISO/IEC 14496-2) | Информационные технологии. Кодирование аудиовизуальных объектов. Часть 2. Визуальные объекты |
[4] ИСО/МЭК 14496-10/МСЭ-Т Н.264 (ISO/IEC 14496-10/ITU-Т H.264) | Информационные технологии. Кодирование аудиовизуальных объектов. Часть 10. Улучшенное видеокодирование |
[5] Рекомендация МСЭ-Р BT.709-5 (ITU-R BT.709-5) | Значения параметров телевидения высокой четкости для производства и международного обмена программами |
[6] Рекомендация МСЭ-Р BT.1120-7 (ITU-R BT.1120-7) | Цифровые интерфейсы для студийных сигналов ТВЧ |
[7] Стандарт Американского общества инженеров в области кино и телевидения SMPTE 274М | Структура отсчетов изображения 1920x1080, цифровое представление и интервалы времени для различных частот кадров и числа бит |
[8] Стандарт Американского общества инженеров в области кино и телевидения SMPTE 295M | Сканирование и интерфейсы изображения 1920x1080, 50 Гц |
[9] Стандарт Американского общества инженеров в области кино и телевидения SMPTE 421М | Формат сжатого потока VC-1 и процесс его декодирования |
[10] Стандарт Европейского института по стандартизации в области телекоммуникаций (ЕТСИ) ЕTSI EN 300468 | Цифровое телевизионное вещание (ЦТВ). Спецификация для служебной информации (СИ) в системах ЦТВ |
[11] Техническая спецификация европейского института по стандартизации в области телекоммуникаций (ЕТСИ) ETSI TS 101154 | Цифровое телевизионное вещание (ЦТВ). Руководство по реализации системного, видео и звуковых уровней MPEG-2 в спутниковом, кабельном и наземном вещании |
[12] Технический доклад европейского института по стандартизации в области телекоммуникаций (ЕТСИ) ETSI TR 101290 | Цифровое телевизионное вещание (ЦТВ). Руководство по измерениям для систем ЦТВ |
[13] Стандарт Американского общества инженеров в области кино и телевидения SMPTE 305.2M | Стандарт SMPTE для телевидения. Цифровой транспортный интерфейс данных (ЦТИД) |
[14] Документ Международной организации по стандартизации (АВК-491б) Document AVC-491b, ISO/IEC JTC1/SC29/WG11/N0400 | Тестовая модель 5 |
[15] Рекомендация Американского общества инженеров в области кино и телевидения SMPTE RP227 | Кодирование VC-1 в транспортном потоке |
Электронный текст документа
и сверен по:
, 2013