Товары в корзине: 0 шт Оформить заказ
Стр. 1 

31 страница

456.00 ₽

Купить ГОСТ Р 56953-2016 — бумажный документ с голограммой и синими печатями. подробнее

Распространяем нормативную документацию с 1999 года. Пробиваем чеки, платим налоги, принимаем к оплате все законные формы платежей без дополнительных процентов. Наши клиенты защищены Законом. ООО "ЦНТИ Нормоконтроль"

Наши цены ниже, чем в других местах, потому что мы работаем напрямую с поставщиками документов.

Способы доставки

  • Срочная курьерская доставка (1-3 дня)
  • Курьерская доставка (7 дней)
  • Самовывоз из московского офиса
  • Почта РФ

Определяет систему кодирования субтитров, логотипов и иных графических элементов для их передачи в транспортных потоках DVB. Данная система использует таблицы преобразования цветовой палитры (ТПЦП) для определения цветов графических элементов. Транспортировка кодированных графических элементов основана на системе MPEG-2.

 Скачать PDF

Оглавление

1 Область применения

2 Нормативные ссылки

3 Термины, определения и сокращения

4 Введение в систему субтитров DVB

5 Модель декодера субтитров

6 Формат пакета PES

7 Данные субтитров в пакете PES

8 Требования к данным субтитров

9 Преобразование цветовых компонентов

10 Содержание таблиц преобразования цветовой палитры (ТПЦП) и таблиц перекодировки по умолчанию

Библиография

 
Дата введения01.06.2017
Добавлен в базу01.02.2017
Актуализация01.01.2021

Этот ГОСТ находится в:

Организации:

07.06.2016УтвержденФедеральное агентство по техническому регулированию и метрологии546-ст
РазработанАНО НТЦИ
ИзданСтандартинформ2016 г.

Digital Video Broadcasting. Subtitling systems. Basic parameters

Стр. 1
стр. 1
Стр. 2
стр. 2
Стр. 3
стр. 3
Стр. 4
стр. 4
Стр. 5
стр. 5
Стр. 6
стр. 6
Стр. 7
стр. 7
Стр. 8
стр. 8
Стр. 9
стр. 9
Стр. 10
стр. 10
Стр. 11
стр. 11
Стр. 12
стр. 12
Стр. 13
стр. 13
Стр. 14
стр. 14
Стр. 15
стр. 15
Стр. 16
стр. 16
Стр. 17
стр. 17
Стр. 18
стр. 18
Стр. 19
стр. 19
Стр. 20
стр. 20
Стр. 21
стр. 21
Стр. 22
стр. 22
Стр. 23
стр. 23
Стр. 24
стр. 24
Стр. 25
стр. 25
Стр. 26
стр. 26
Стр. 27
стр. 27
Стр. 28
стр. 28
Стр. 29
стр. 29
Стр. 30
стр. 30

ПО ТЕХНИЧЕСКОМУ РЕГУЛИРОВАНИЮ И МЕТРОЛОГИИ

ГОСТР

56953—

2016

НАЦИОНАЛЬНЫЙ

СТАНДАРТ

РОССИЙСКОЙ

ФЕДЕРАЦИИ

ТЕЛЕВИДЕНИЕ ВЕЩАТЕЛЬНОЕ ЦИФРОВОЕ СИСТЕМЫ СУБТИТРОВ

Основные параметры

ETSI EN 300 743 VI .5.1 (2014-01) Digital Video Broadcasting (DVB); Subtitling systems (NEQ)

Издание официальное

Москва

Стандартинформ

2016


Предисловие

1    РАЗРАБОТАН Автономной некоммерческой организацией «Научно-технический центр информатики» (АНО «НТЦИ»)

2    ВНЕСЕН Техническим комитетом по стандартизации ТК 480 «Связь»

3    УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 7 июня 2016 г. № 546-ст

4    Настоящий стандарт разработан с учетом основных нормативных положений стандарта Европейского института по стандартизации в области телекоммуникаций (ETSI) ЕТСИ ЕН 300 743 VI .5.1 (2014-01) «Телевидение вещательное цифровое. Системы субтитров» [ETSI EN 300 743 VI .5.1 (2014-01) «Digital Video Broadcasting (DVB); Subtitling systems», NEQ]

5    ВВЕДЕН ВПЕРВЫЕ

Правила применения настоящего стандарта установлены в ГОСТ Р 1.0-2012 (раздел 8). Информация об изменениях к настоящему стандарту публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе «Национальные стандарты», а официальный текст изменений и поправок — в ежемесячном информационном указателе «Национальные стандарты». В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ближайшем выпуске ежемесячного информационного указателя «Национальные стандарты». Соответствующая информация, уведомления и тексты размещаются также в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (www.gost.ru)

© Стандартинформ, 2016

Настоящий стандарт не может быть полностью или частично воспроизведен, тиражирован и распространен в качестве официального издания без разрешения Федерального агентства по техническому регулированию и метрологии

Размер памяти, выделяемый для региона в буфере пикселей region_bits, определяют по формуле: region_bits = region_width х region_height х region_depth    (1)

где region_width — ширина региона в пикселях; region_height — высота региона в пикселях; region_depth — глубина пикселя региона, определенная в СКР.

В течение эпохи память, выделенная под регионы в буфере пикселей, равна сумме значений region_bits для всех регионов, используемых в данной эпохе.

Размер памяти, выделяемый декодером субтитров в буфере композиции, следующий:

-    композиция страницы за исключением списка регионов: 4 байта плюс 6 байтов на каждый включенный регион;

-    композиция региона за исключением списка объектов: 12 байтов плюс 8 байтов на каждый включенный объект;

-    определение ТПЦП за исключением записей: 4 байта плюс 4 байта на каждую неполную запись и 6 байт на каждую полную запись.

5.3    Кумулятивная конструкция дисплея

В течение одной эпохи модификации региона, определенные в наборах показа, накапливаются в буфере пикселей, но воздействия на выделенную для каждого региона память не происходит.

5.4    Модель ширины полосы рендеринга декодера

Ширина полосы рендеринга для буфера пикселей должна быть равна 512 кбит/с (2 Мбит/с для декодеров, которые способны работать с потоками, содержащими сегменты определения дисплея).

После тайм-аута страницы страница должна очищаться. При этом стирание страницы не подразумевает изменений в буфере пикселей.

Регионы могут быть репозиционированы путем обновления спецификаций их позиций в списке регионов СКС. Видимость регионов может быть изменена путем ее включения или выключения в списке регионов СКС.

Установка флага заполнения региона указывает, что регион должен быть перерисован с определенным цветом заполнения перед размещением на нем любых объектов.

Графические объекты должны быть выведены в буфер пикселей сразу после декодирования. На один объект можно ссылаться несколько раз, например, когда символ несколько раз используется в тексте. Внутри региона рендеринг, предназначенный для каждого объекта, может быть получен из:

-    количества пикселей, заключенных в пределах наименьшего прямоугольника, который может окружать объект;

-    глубины пикселя в области, где объект позиционируется;

-    количества появлений объекта в регионе.

6 Формат пакета PES

Синтаксис и семантика пакета PES, содержащего субтитры, определена в [3] и применима для передачи субтитров с учетом ограничений, приведенных в таблице 1.

Таблица 1 — Синтаксис и семантика пакета PES, содержащего субтитры

Поле пакета

Описание

stream_id

Значение '1011 НОТ указывает на «private_stream_1

PES_packet_length

Содержит длину пакета PES согласно [3]

data_alignment_indicator

Значение 'Т указывает, что сегменты субтитров выравнены по пакетам PES

Presentation_Time_Stamp субтитров

PTS, указывающее на время, в какое начинается презентация набора показа, передаваемого пакетами PES с данным PTS. PTS последовательности показов должны отличаться более чем на один видеокадр

PES_packet_data_byte

Описание дано в разделе 7 настоящего стандарта

7 Данные субтитров в пакете PES

7.1 Синтаксис и семантика поля данных субтитров пакета PES

При передаче потока субтитров DVB поле PES_packet_data_bytes должно кодироваться как поле PES_data_field согласно таблице 2.

Таблица 2 — Кодирование поля PES_data_field

Синтаксис

Количество битов

Формат

PES_data_field() {

data identifier

8

bslbf

subtitle stream id

8

bslbf

while nextbits() == ‘0000 1111’{ Subtitling segment()

}

end of PES data field marker

8

bslbf

}

Семантика:

data_identifier: поле должно содержать значение 0x20. subtitle_stream_id: поле должно содержать значение 0x00.

end_of_PES_data_field_marker: 8-битовое поле фиксированного значения ‘1111 1111’.

7.2 Синтаксис и семантика сегмента субтитров

Синтаксис сегмента субтитров приведен в таблице 3.

Таблица 3 — Синтаксис сегмента субтитров

Синтаксис

Количество битов

Формат

Subtitling_segment() {

sync_byte

8

bslbf

segment_type

8

bslbf

pagejd

16

bslbf

segmentjength

16

uimsbf

segment data fieldQ

}

sync_byte: 8-битовое поле, должно содержать значение ’0000 1111’.

segment_type: значения данного поля определяет тип данных, содержащихся в поле данных сегмента. Возможные значения приведены в таблице 4.

Таблица 4 — Значения поля segment_type

Значение

Тип сегмента

0x10

Сегмент композиции страницы. Рассмотрен в 7.2.2 настоящего стандарта

0x11

Сегмент композиции региона. Рассмотрен в 7.2.3 настоящего стандарта

0x12

Сегмент определения ТПЦП. Рассмотрен в 7.2.4 настоящего стандарта

0x13

Сегмент данных объекта. Рассмотрен в 7.2.5 настоящего стандарта

0x14

Сегмент определения дисплея. Рассмотрен в 7.2.1 настоящего стандарта

0x15

Сегмент сигнализации расхождения. Рассмотрен в 7.2.7 настоящего стандарта

0x16 —0x7F

Зарезервировано

0x80

Сегмент конца набора показа. Рассмотрен в 7.2.6 настоящего стандарта

0x81 — OxEF

Данные пользователя

Окончание таблицы 4

Значение

Тип сегмента

OxFF

Заполнение

Все остальные значения

Зарезервировано

page_id: поле идентификатора страницы.

segment_length: поле длины сегмента, определяет длину последующего поля segment_data_field в байтах.

segment_data_field: полезная нагрузка сегмента. Синтаксис зависит от типа сегмента и описан в 7.2.1,7.2.5 настоящего стандарта.

7.2.1 Сегмент определения дисплея

Синтаксис сегмента определения дисплея приведен в таблице 5.

Таблица 5 — Синтаксис сегмента определения дисплея

Синтаксис

Количество битов

Формат

display_definition_segment(){

sync_byte

8

bslbf

segment_type

8

bslbf

page_id

16

uimsbf

segmentjength

16

uimsbf

dds version number

4

uimsbf

display_window_flag

1

uimsbf

reserved

3

uimsbf

display_width

16

uimsbf

display_height

16

uimsbf

if (display_window_flag == 1) {

16

uimsbf

display_window_horizontal_position_minimum

16

uimsbf

16

uimsbf

display_window_horizontal_position_maximum

16

uimsbf

display_window_vertical_position_minimum

display window vertical position maximum

}

}

Семантика:

dds_version_number: версия данного сегмента определения дисплея. При изменении контента сегмента определения дисплея данное поле должно быть инкрементировано (по модулю 16).

display_window_flag: если данное поле равно 1, набор показа субтитров, связанный с данным сегментом определения дисплея, должен быть перерисован в окне внутри дисплея с размерами, определенными полями display_width и display_height.

Размер и положение данного окна внутри дисплея определяются параметрами данного сегмента display_window_horizontal_position_minimum, display_window_horizontal_position_maximum, display_ window_vertical_position_minimum и display_window_vertical_position_maximum.

Если данное поле равно 0, набор показа субтитров, связанный сданным сегментом определения дисплея, должен быть перерисован непосредственно внутри границ дисплея, определенных полями display_width и display_height.

display_width: определяет максимальную ширину дисплея в пикселях минус 1. Значение должно лежать в пределах 0..4095.

display_height: определяет максимальную высоту дисплея в строках минус 1. Значение должно лежать в пределах 0..4095.

display_window_horizontal_position_minimum: определяет номер крайнего левого пикселя данного набора показа относительно крайнего левого пикселя дисплея.

ГОСТ Р 56953-2016

display_window_horizontal_position_maximum: определяет номер крайнего правого пикселя данного набора показа относительно крайнего левого пикселя дисплея.

display_window_vertical_position_minimum: определяет номер крайней верхней строки данного набора показа относительно крайней верхней строки дисплея.

display_window_vertical_position_maximum: определяет номер крайней нижней строки данного набора показа относительно крайней верхней строки дисплея.

7.2.2 Сегмент композиции страницы

Синтаксис сегмента композиции страницы приведен в таблице 6.

Таблица 6 — Синтаксис сегмента композиции страницы

Синтаксис

Количество битов

Формат

page_composition_segment() {

sync_byte

8

bslbf

segment_type

8

bslbf

page_id

16

bslbf

segmentjength

16

uimsbf

pageJime_out

8

uimsbf

page version number

4

uimsbf

page_state

2

bslbf

reserved

2

bslbf

while (processedjength < segmentjength) {

regionjd

8

bslbf

reserved

8

bslbf

region horizontal address

16

uimsbf

region vertical address }

}

16

uimsbf

Семантика:

page_time_out: период тайм-аута в секундах, после истечения которого экземпляр страницы должен быть уделен с экрана. Точность отсчета тайм-аута приемником-декодером должна быть не хуже -0/+5 с.

page_version_number: версия данного сегмента композиции страницы. При изменении контента сегмента композиции страницы данное поле должно быть инкрементировано (по модулю 16). page_state: поле содержит статус данного экземпляра страницы субтитров.

Возможные значения поля приведены в таблице 7.

Таблица 7 — Возможные значения поля page_state

Значение

Статус страницы

Действие

Примечание

00

normal case (нормальный случай)

Частичное обновление страницы

Набор показа содержит только те элементы субтитров, которые изменились по отношению к предыдущему экземпляру страницы

01

acquisition point (точка сбора)

Полное обновление страницы

Набор показа содержит все элементы субтитров, которые должны быть показаны на следующем экземпляре страницы

10

mode change (смена режима)

Новая страница

Набор показа содержит все элементы субтитров, которые должны быть показаны на новой странице

11

reserved

(зарезервирован)

Зарезервирован

Если статус страницы «mode change или «acquisition point, то набор показа должен содержать сегменты композиции региона для каждого региона, используемого в данной эпохе.

processedjength: общее число байтов, следующих за полем segmentjength, которые уже обработаны.

region_ID: уникальный идентификатор региона в пределах страницы.

region_horizontal_address: поле определяет горизонтальный адрес верхнего левого пикселя данного региона. Крайний левый пиксель из числа активных пикселей имеет горизонтальный адрес равный 0, пиксельные адреса увеличиваются слева направо.

region_vertical_address: определяет вертикальный адрес верхней строки данного региона. Верхняя строка кадра имеет адрес равный 0, адрес строк увеличивается на единицу в пределах кадра сверху вниз.

7.2.3 Сегмент композиции региона

Синтаксис сегмента композиции региона приведен в таблице 8.

Таблица 8 — Синтаксис сегмента композиции региона

Синтаксис

Количество битов

Формат

region_composition_segment() {

sync_byte

8

bslbf

segment_type

8

bslbf

page_id

16

bslbf

segmentjength

16

uimsbf

regionjd

8

uimsbf

region version number

4

uimsbf

r e g i о n_f i 1 l_f 1 a g

1

bslbf

reserved

3

bslbf

region_width

16

uimsbf

region_height

16

uimsbf

region_level_of_compatibility

3

bslbf

region_depth

3

bslbf

reserved

2

bslbf

CLUT id

8

bslbf

region_8-bit_pixel_code

8

bslbf

region_4-bit_pixel-code

4

bslbf

region_2-bit_pixel-code

2

bslbf

reserved

while (processedjength < segmentjength) {

2

bslbf

object id

16

bslbf

objectjype

2

bslbf

object_provider_flag

2

bslbf

object_horizontal_position

12

uimsbf

reserved

4

bslbf

object_vertical_position

if (objectjype ==0x01 or objectjype == 0x02){

12

uimsbf

foreground_pixel_code

8

bslbf

background pixel code

}

}

}

8

bslbf

Семантика:

region_ID: 8-битовое поле, однозначно идентифицирует регион, информация о котором содержится в данном сегменте композиции региона.

region_version_number: указывает на версию данного региона. Номер версии должен быть инкрементирован (по модулю 16) при следующих условиях:

-    установлен флаг region_fill_flag;

-    семейство таблиц ТПЦП изменено;

-    регион содержит список объектов ненулевой длины.

region_fill_flag: если данное поле установлено в ’1’, указывает, что регион должен быть заполнен цветом фона, определенным в поле region_n-bit_pixel_code данного сегмента.

region_width: определяет ширину данного региона в пикселях.

region_height: определяет высоту данного региона в пикселях.

region_level_of_compatibility: указывает минимальный тип ТПЦП, необходимый декодеру для декодирования данного региона согласно таблице 9.

Таблица 9 — Минимальный тип ТПЦП, необходимый декодеру для декодирования региона

Значение

Минимальный тип ТПЦП

0x00

Зарезервировано

0x01

ТПЦП с 2-битными записями

0x02

ТПЦП с 4-битными записями

0x03

ТПЦП с 8-битными записями

0x04... 0x07

Зарезервировано

region_depth: определяет назначенную глубину пикселей для данного региона согласно таблице 10. Таблица 10 — Глубина пикселей региона

Значение

Глубина пикселей региона

0x00

Зарезервировано

0x01

2 бита

0x02

4 бита

0x03

8 битов

0x04... 0x07

Зарезервировано

CLUT_id: определяет семейство таблиц ТПЦП, относящихся к данному региону. region_8-bit_pixel-code: определяет запись примененной 8-битной ТПЦП как цвет фона для региона, если флаг region_fill_flag установлен, при условии что глубина региона составляет 8 битов. Значение этого поля не определено, если глубина региона 2 или 4 бита.

region_4-bit_pixel-code: определяет запись примененной 4-битной ТПЦП как цвет фона для региона, если флаг region_fill_flag установлен, при условии что глубина региона составляет 4 бита, или если глубина региона 8 битов, при условии что поле region_level_of_compatibility определяет, что 4-бит-ная ТПЦП соответствует минимальным требованиям. В любом другом случае значение этого поля не определено.

region_2-bit_pixel-code: определяет запись примененной 2-битной ТПЦП как цвет фона для региона, если флаг region_fill_flag установлен, при условии что глубина региона составляет 2 бита, или если глубина региона 4 или 8 битов, при условии что поле region_level_of_compatibility определяет, что 2-битная ТПЦП соответствует минимальным требованиям. В любом другом случае значение этого поля не определено.

processedjength: общее количество байтов после поля segmentjength, которые уже обработаны.

object_id: идентификатор объекта, показываемого в регионе. object_type: тип объекта согласно таблице 11.

Таблица 11—Тип объекта

Значение

Тип объекта

0x00

basic_object, рисунок

0x01

basic_object, символ

0x02

composite_object, строка символов

0x03

Зарезервировано

object_provider_flag: 2-битовый флаг, показывающий, как предоставлен данный объект, согласно таблице 12.

13

Таблица 12 — Способ предоставления объекта

Значение

Способ предоставления объекта

0x00

Предоставлен в потоке субтитров

0x01

Предоставлен из ПЗУ приемника

0x02

Зарезервировано

0x03

Зарезервировано

object_horizontal_position: определяет горизонтальное положение верхнего левого пикселя объекта, выраженного в числе горизонтальных пикселей относительно левого края связанного региона. Указанное горизонтальное положение должно находиться внутри региона, и его значение должно быть в диапазоне между 0 и region_width-1.

object_vertical_position: определяет вертикальное положение верхнего левого пикселя объекта, выраженного в числе строк, относительно верхней части связанного региона. Указанное вертикальное положение должно находиться внутри региона, и его значение должно быть в диапазоне между 0 и region_height-1.

foreground_pixel_code: определяет запись в примененной 8-битной ТПЦП, которая была выбрана в качестве цвета переднего плана символа(-ов).

background_pixel_code: определяет запись в примененной 8-битной ТПЦП, которая была выбрана в качестве цвета фона символа(-ов).

Примечание — приемники-декодеры с 4- и 16-битными ТПЦП получают цвета переднего плана и фона через схемы сокращения, описанные в разделе 9 настоящего стандарта.

7.2.4 Сегмент определения ТПЦП

Цвета, которые должны применяться в семействе таблиц ТПЦП, передаются в сегменте определения ТПЦП согласно таблице 13.

Таблица 13 — Сегмент определения ТПЦП

Синтаксис

Количество битов

Формат

CLUT_definition_segment() {

sync_byte

8

bslbf

segment_type

8

bslbf

page_id

16

bslbf

segment length

16

uimsbf

CLUT-id

8

bslbf

CLUT version number

4

uimsbf

reserved

while (processed length < segment length) {

4

bslbf

CLUT entry id

8

bslbf

2-bit/entry_CLUT_flag 1 bslbf

1

bslbf

4-bit/entry_CLUT_flag 1 bslbf

1

bslbf

8-bit/entry_CLUT_flag 1 bslbf

1

bslbf

reserved

4

bslbf

f u 1 l_r a n g e_f 1 a g if full_range_flag ==’T {

1

bslbf

Y-value

8

bslbf

Cr-value

8

bslbf

Cb-value

8

bslbf

T-value } else {

8

bslbf

Y-value

6

bslbf

Cr-value

4

bslbf

Cb-value

4

bslbf

T-value

}

}

}

2

bslbf

ГОСТ P 56953—2016

Семантика:

CLUT-id: Уникальный в пределах страницы идентификатор семейства ТПЦП, данные которого содержатся в этом сегменте.

CLUT_version_number: указывает на версию этого сегмента данных. Когда любое содержание этого сегмента меняется, номер версии подлежит инкременту (по модулю 16).

processedjength: общее количество байтов после поля segmentjength, которые были обработаны.

CLUT_entry_id: определяет номер записи ТПЦП. Первая запись ТПЦП идет под номером 0.

2-bit/entry_CLUT_flag: если это поле установлено в Т, это указывает, что данное значение ТПЦП должно быть загружено в определенную запись 2-битовой ТПЦП.

4-bit/entry_CLUT_flag: если это поле установлено в Т, это указывает, что данное значение ТПЦП должно быть загружено в определенную запись 4-битовой ТПЦП.

8-bit/entry_CLUT_flag: если это поле установлено в Т, это указывает, что данное значение ТПЦП должно быть загружено в определенную запись 8-битовой ТПЦП.

Только один флаг N-bit/entry_CLUT_flag (где N — 2,4 или 8) должен быть установлен в ’1 ’ в пределах одного поля CLUT_entry_id и связан сУ-, Сг-, СЬ- и Т-значениями.

full_range_flag: если это поле установлено в ’1’, это указывает, что поля Y_value, Cr_value, Cb_ value и T_value имеют полное 8-битное разрешение. Если оно установлено в ’0’, то эти поля содержат только старшие значащие биты.

Y_value: выходное значение Y ТПЦП для данной записи. Значение 0 поля Y_value сигнализирует о полной прозрачности. В этом случае значения полей Cr_value, Cb_value и T_value не важны и должны быть установлены в ноль.

Cr_value: выходное значение СгТПЦП для данной записи.

Cb_value: выходное значение СЬ ТПЦП для данной записи.

T_value: выходное значение прозрачности ТПЦП для данной записи. Значение 0 данного поля означает полную непрозрачность. Максимальное значение плюс соответствует полной прозрачности. Для всех других значений уровень прозрачности должен быть определен линейной интерполяцией.

Полная прозрачность достигается установкой в ’0’ поля Y_value.

7.2.5 Сегмент данных объекта

Синтаксис сегмента данных объекта приведен в таблице 14.

Таблица 14 — Синтаксис сегмента данных объекта

Синтаксис

Кол-во битов

Формат

object_data_segment() {

sync_byte

8

bslbf

segment_type

8

bslbf

page_id

16

bslbf

segmentjength

16

uimsbf

objectjd

16

bslbf

object version number

4

uimsbf

object_coding_method

2

bslbf

non_modifying_colour_flag

1

bslbf

reserved 1

if (object_coding_method == ’00’){

1

top field data block length

16

uimsbf

bottom_field_data_block_length

while (processed length<top field data block length)

16

uimsbf

pixel-data_sub-block()

while (processed length<bottom field data block length)

pixel-data_sub-block()

if (!wordaligned())

8 stuff bits

}

if (object_coding_method == ’0T) {

8

bslbf

number of codes

8

uimsbf

for (i == 1, i <= number of codes, i ++)

character code

}

}

16

bslbf

Семантика:

object_id: уникальный в пределах страницы идентификатор объекта, данные которого содержатся в этом сегменте.

object_version_number: указывает на версию данных этого сегмента. Когда любое содержание этого сегмента меняется, номер версии подлежит инкременту (по модулю 16).

object_coding_method: определяет метод кодирования объекта согласно таблице 15.

Таблица 15 — Методы кодирования объекта

Значение

Метод кодирования объекта

0x00

Кодирование пикселей

0x01

Кодирование как строка символов

0x02

Зарезервировано

0x03

Зарезервировано

non modifying colour flag: если это поле установлено в Т, это указывает, что запись ТПЦП со значением Т является немодифицирующим цветом. Когда немодифицирующий цвет будет назначен пикселю объекта, пиксель основного фона региона или объекта не должен быть изменен. Это может использоваться для создания «прозрачных отверстий в объектах.

top_field_data_block_length: определяет число байтов, содержащихся в субблоке пиксельных данных верхнего поля.

bottom_field_data_block_length: определяет число байтов, содержащихся в субблоке пиксельных данных нижнего поля.

Для каждого объекта субблок пиксельных данных верхнего поля и субблок пиксельных данных нижнего поля должны передаваться в одном сегменте object_data_segment. Если этот сегмент не содержит данных для нижнего поля, т. е. bottom_field_data_block_length содержит значение ’0x0000’, то данные для верхнего поля должны быть также действительны для нижнего поля.

processedjength: число байтов поля (-ей) в цикле, которые были обработаны декодером. 8_stuff_bits: восемь битов заполнения, которые должны быть равны ’0000 0000’. number_of_codes: определяет число кодов символов в строке.

character_code: определяет символ через его индексный номер в таблице символов, определенной в дескрипторе subtitle_descriptor. Каждая ссылка на таблицу символов учитывается как отдельный код символа, даже если получающийся символ не занимает интервалов. Например, знаки ударения учитываются как отдельные коды символов.

7.2.5.1 Субблок пиксельных данных pixel-data_sub-block Синтаксис субблока пиксельных данных приведен в таблице 16.

Таблица 16 — Синтаксис субблока пиксельных данных

Синтаксис

Кол-во битов

Формат

pixel-data_sub-block() { data_type

8

bslbf

if data_type ==’0x10’ { repeat {

2-bit/pixel_code_string()

} until (end of 2-bit/pixel_code_string) while (ibytealignedQ)

2 stuff bits

2

bslbf

if data_type ==’0x11’ { repeat {

4-bit/pixel_code_string()

} until (end of 4-bit/pixel_code_string) if (!bytealigned())

4 stuff bits

4

bslbf

}

Окончание таблицы 16

Синтаксис

Кол-во битов

Формат

}

if data_type ==’0x12’ { repeat {

8-bit/pixel_code_string()

} until (end of 8-bit/pixel code string)

}

if data type ==’0x20’

2 to 4-bit map-table

16

bslbf

if data type ==’0x2T

2 to 8-bit map-table

32

bslbf

if data type ==’0x22’

4 to 8-bit map-table

}

128

bslbf

Семантика:

data_type: указывает на тип информации, содержащейся в субблоке пиксельных данных согласно таблице 17.

Таблица 17 — Тип информации субблока пиксельных данных

Значение

Тип информации

0x10

строка кодов 2 бита/пиксель

0x11

строка кодов 4 бита/пиксель

0x12

строка кодов 8 битов/пиксель

0x20

Данные таблицы 2_to_4-bit_map

0x21

Данные таблицы 2_to_8-bit_map

0x22

Данные таблицы 4_to_8-bit_map

OxFO

Конец кода строки объекта

Примечание — Все остальные значения зарезервированы.

Значение OxFO (конец кода строки объекта) должно быть включено после каждой серии кодовых строк, которые вместе составляют строку объекта.

2_to_4-bit_map-table: определяет, как отобразить коды 2-бита/пиксель на ТПЦП с 4-битовыми записями путем перечисления 4 номеров записей по 4 бита каждая; запись номер 0 первая, запись номер 3 последняя.

2_to_8-bit_map-table: определяет, как отобразить коды 2-бита/пиксель на ТПЦП с 8-битовыми записями путем перечисления 4 номеров записей по 8 битов каждая; запись номер 0 первая, запись номер 3 последняя.

4_to_8-bit_map-table: определяет, как отобразить коды 4-бита/пиксель на ТПЦП с 8-битовыми записями путем перечисления 16 номеров записей по 8 битов каждая; запись номер 0 первая, запись номер 15 последняя.

2_stuff_bits: два бита заполнения, которые должны быть равны ’00’.

4_stuff_bits: четыре бита заполнения, которые должны быть равны ’0000’.

7.2.5.2 Синтаксис и семантика строк пиксельных кодов pixel_code_string

Синтаксис строк пиксельных кодов 2 бита/пиксель приведен в таблице 18.

Таблица 18 — Синтаксис строк пиксельных кодов 2 бита/пиксель

Синтаксис

Кол-во битов

Формат

2-bit/pixel_code_string() {

if (nextbitsQ != ’00’) {

ГОСТ P 56953—2016

Содержание

1    Область применения..................................................................1

2    Нормативные ссылки..................................................................1

3    Термины, определения и сокращения....................................................1

4    Введение в систему субтитров DVB.....................................................2

5    Модель декодера субтитров............................................................6

6    Формат пакета PES...................................................................8

7    Данные субтитров в пакете PES........................................................9

8    Требования к данным субтитров.......................................................22

9    Преобразование цветовых компонентов.................................................23

10    Содержание таблиц преобразования цветовой палитры (ТПЦП)

и таблиц перекодировки по умолчанию...................................................24

Библиография........................................................................28

III

Окончание таблицы 18

Синтаксис

Кол-во битов

Формат

2-bit_pixel-code } else {

2

bslbf

2-bit zero

2

bslbf

switch 1

if (switch_1 == T){

1

bslbf

run length 3-10

3

uimsbf

2-bit_pixel-code } else {

2

bslbf

switch_2

if (switch_2 == ’O’) {

1

bslbf

switch 3

if (switch_3 == ’10’) {

2

bslbf

run length 12-27

4

uimsbf

2-bit pixel-code

}

if (switch_3 == ’IT) {

2

bslbf

run length 29-284

8

uimsbf

2-bit pixel-code

}

}

}

}

}

2

bslbf

Семантика:

2-bit_pixel-code: 2-битный код, определяет псевдоцвет пикселя или как номер записи ТПЦП с четырьмя записями, или как номер записи таблицы перекодировки.

2-bit_zero: 2-битовое поле, равное ’00’.

switch_1: 1-разрядный флаг-переключатель, который определяет значение последующих полей.

run_length_3-10: число пикселей минус 3, которое должно быть установлено в псевдоцвет, как определено далее.

switch_2:1-разрядный флаг-переключатель. Если установлен в Т, сигнализирует, что один пиксель должен быть установлен в псевдоцвет (запись) ’00’, также указывает на присутствие последующих полей.

switch_3: 2-разрядный флаг-переключатель со значениями согласно таблице 19.

Таблица 19 — значения 2-разрядного флага-переключателя switch_3

Значение

Описание

00

Конец строки 2-bit/pixel_code_string

01

Два пикселя должны быть установлены в псевдоцвет (запись) ’00’

10

Следующие 6 битов содержат закодированные пиксельные данные длины пробега

11

Следующие 10 битов содержат закодированные пиксельные данные длины пробега

run_length_12-27: число пикселей минус 12, которое должно быть установлено в псевдоцвет, как определено далее.

run_length_29-284: число пикселей минус 29, которое должно быть установлено в псевдоцвет, как определено далее.

Синтаксис строк пиксельных кодов 4 бита/пиксель приведен в таблице 20.

Таблица 20 — Синтаксис строк пиксельных кодов 4 бита/пиксель

Синтаксис

Кол-во битов

Формат

4-bit/pixel_code_string() {

НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ

ТЕЛЕВИДЕНИЕ ВЕЩАТЕЛЬНОЕ ЦИФРОВОЕ СИСТЕМЫ СУБТИТРОВ Основные параметры

Digital Video Broadcasting. Subtitling systems. Basic parameters

Дата введения — 2017—06—01

1    Область применения

Настоящий стандарт определяет систему кодирования субтитров, логотипов и иных графических элементов для их передачи в транспортных потоках DVB. Данная система использует таблицы преобразования цветовой палитры (ТПЦП) для определения цветов графических элементов. Транспортировка кодированных графических элементов основана на системе MPEG-2.

Требования настоящего стандарта следует учитывать при разработке, изготовлении и эксплуатации оборудования DVB.

2    Нормативные ссылки

В настоящем стандарте использованы нормативные ссылки на следующие стандарты:

ГОСТ Р 52210-2004 Телевидение вещательное цифровое. Термины и определения

ГОСТ Р 52591-2006 Система передачи данных пользователя в цифровом телевизионном формате. Основные параметры

ГОСТ Р 54994-2012 Телевидение вещательное цифровое. Передача служб DVB по сетям с IP протоколами. Общие технические требования

Примечание — При пользовании настоящим стандартом целесообразно проверить действие ссылочных стандартов в информационной системе общего пользования — на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет или по ежегодному информационному указателю «Национальные стандарты, который опубликован по состоянию на 1 января текущего года, и по выпускам ежемесячного информационного указателя «Национальные стандарты за текущий год. Если заменен ссылочный стандарт, на который дана недатированная ссылка, то рекомендуется использовать действующую версию этого стандарта с учетом всех внесенных в данную версию изменений. Если заменен ссылочный стандарт, на который дана датированная ссылка, то рекомендуется использовать версию этого стандарта с указанным выше годом утверждения (принятия). Если после утверждения настоящего стандарта в ссылочный стандарт, на который дана датированная ссылка, внесено изменение, затрагивающее положение, на которое дана ссылка, то это положение рекомендуется применять без учета данного изменения. Если ссылочный стандарт отменен без замены, то положение, в котором дана ссылка на него, рекомендуется применять в части, не затрагивающей эту ссылку.

3 Термины, определения и сокращения

3.1 Термины и определения

В настоящем стандарте применены термины по ГОСТ Р 52210, ГОСТ Р 52591, ГОСТ Р 54994, а также следующие термины с соответствующими определениями:

Издание официальное

3.1.1    объект (object): Графическая единица, которая может быть размещена в регионе (изображение символа, логотип, таблица и т. п.).

3.1.2    регион (region): Прямоугольная область внутри страницы, на которой располагаются объекты.

3.1.3    страница (раде): Набор субтитров из службы субтитров в течение определенного периода времени.

3.1.4    таблица преобразования цветовой палитры; ТПЦП (Colour Look-Up Table; CLUT): Справочная таблица, применяема в каждом регионе для преобразования псевдоцвета объектов в правильные цвета для отображения.

3.1.5    служба субтитров (subtitle service): Служба, предоставляющая в программу субтитры определенного назначения (на определенном языке, для слабослышащих).

3.2 Сокращения

В настоящем стандарте применены следующие сокращения:

bslbf — строка битов, левый бит первый (bit string, left bit first);

DVB — цифровое телерадиовещание (Digital Video Broadcasting);

EIT — таблица информации о событиях (Event Information Table);

ETSI — Европейский институт по стандартизации в области телекоммуникаций (European Telecommunications Standards Institute);

HDTV — телевидение высокой четкости (High Definition Television);

IPTV — телевещание по протоколу Интернет (Internet Protocol Television);

MPEG — экспертная группа по движущемуся изображению; стандарт сжатия видео- и аудиоданных (Moving Picture Experts Group);

PCR — опорное время программы (Program Clock Reference);

PES — пакетизированный элементарный поток (Packetized Elementary Stream);

PID — идентификатор пакета (Packet Identifier);

PMT — таблица структуры программы (Program Map Table);

SI — информация об услугах (Service Information);

PTS — временная отметка предоставления пакета (Presentation Time Stamp);

SD — стандартное разрешение (Standard Definition);

SDT — таблица описания услуги (Service Description Table);

tcimsbf — целое в дополнительном коде, старший значащий бит первый (two’s complement integer, msb (sign) bit first);

TS — транспортный поток (Transport Stream);

uimsbf— целое без знака, старший значащий бит первый (unsigned integer, most significant bit first).

4 Введение в систему субтитров DVB

4.1 Общие положения

Система субтитров DVB, определенная в настоящем стандарте, предоставляет синтаксис декодирования потоков субтитров. Поток субтитров переносит одну или несколько служб субтитров; каждая служба содержит текстовую и/или графическую информацию, необходимую для передачи субтитров или символов для определенных целей. Отдельные услуги субтитров могут быть использованы, например, для передачи субтитров на нескольких языках.

Каждая служба субтитров отображает информацию в последовательности так называемых страниц, которые накладываются на связанные видеоизображения. Страница субтитров содержит один или несколько регионов, каждый регион представляет собой прямоугольную область с определенным набором атрибутов. Эти атрибуты включают в себя идентификатор региона, горизонтальный и вертикальный размер, глубину пикселя и фоновый цвет. Регион используется в качестве фоновой структуры, в которой размещены графические объекты. Объект может представлять собой символ, слово, строку текста или целое предложение; он также может быть логотипом или значком.

Использование и расположение объектов в пределах региона определяется сегментом композиции региона.

Использование и расположение регионов внутри страницы определяется сегментом композиции страницы, в котором находится список отображаемых регионов, каждый со своим собственным пространственным положением. Нет необходимости менять композицию страницы, когда объекты региона

2

ГОСТ P 56953—2016

Логотип

канала

добавляются или удаляются. Более того, регионы могут быть объявлены, но не использованы. Например, один регион может быть использован для отображения нескольких фрагментов субтитров, как показано на рисунке 1. Сначала текст «Пойдем? отображается в регионе, затем этот текст будет удален, и новый текст «Сказала муха на зеркале будет отображен. Можно использовать более одного региона в одно и то же время. Например, один регион может быть использован для отображения субтитров внизу экрана, в то время как другой регион может быть использован для отображения логотипа в другом месте на экране.

Регион 1

■----------------------------1

Регион 2

!    Пойдем?    1-

Логотип

канала


| Сказала муха на зеркале    |

1____________________________1


1____________________________1

Рисунок 1 — Пример размещения регионов на странице

Поток субтитров DVB переносится в пакетах PES, и время их представления определяется PTS из заголовка PES. После приема и декодирования данных субтитров для страницы (таких как композиция страницы, композиция региона, объекты, которые будут использоваться и другие соответствующие данные) содержимое страницы отображается в момент времени согласно соответствующему PTS. Когда объекты должны быть добавлены, декодер получает обновления для композиции региона, данные для новых объектов и показывает обновленную страницу в срок, указанный в новом PTS. Для обновления страницы нужна только информация о различиях. Для улучшения произвольного доступа к субтитрам DVB также возможно полное обновление страницы. Для полного обновления страницы нужны все данные субтитров. Каждое частичное или полное обновление страницы создает новый экземпляр страницы. Страница перестает существовать после тайм-аута страницы или после определения новой страницы.

Для обеспечения эффективного использования памяти дисплея в декодере система субтитров DVB использует графику, основанную на регионах, с индексированием цветов пикселей. Поддерживаемые глубины пикселя 2, 4 и 8 битов позволяют определить до 4, 16 или 256 соответственно различных кодов пикселей для использования в каждом регионе. Каждый регион связан с одной таблицей семейства ТПЦП, определяющей цвет и прозрачность для каждого кода пикселя. В большинстве случаев одной ТПЦП достаточно для правильной передачи цветов всех объектов в регионе, но если этого недостаточно, объекты могут быть разделены по горизонтали на более мелкие по смежным разделенным вертикально регионам со своей ТПЦП для каждого.

Использование ТПЦП позволяет создавать динамичные цветовые схемы. Цвета, соответствующие объектам в регионе, могут быть переопределены в любое удобное время, например, в случае с ТПЦП из четырех записей из черно-серо-белой схемы в сине-серо-желтую схему. Кроме того, графический блок может быть разделен на несколько регионов, каждый с использованием различных ТПЦП, т. е. своя цветовая схема может быть применена в каждом отдельном регионе. По усмотрению кодера объекты, предназначенные для дисплеев, поддерживающих 16 или 256 цветов, могут быть декодированы для дисплеев, поддерживающих меньшее число цветов. Алгоритм квантования определен для того, чтобы результат этого процесса мог быть предсказан отправителем. Использование такой опции позволяет использовать один поток данных, подлежащих декодированию семейством декодеров с различными и, возможно, развивающимися возможностями.

3

Поток субтитров может предавать несколько компонентов служб субтитров. В этом случае страницы отдельной службы субтитров должны идентифицироваться одним значением идентификатора страницы. Это значение используется при транспортировке данных субтитров таким образом, чтобы обеспечить механизм для извлечения данных, специфичных для службы, из потока субтитров. Система субтитров позволяет совместно использовать данные субтитров между службами в том же потоке субтитров. Частым и предпочтительным методом является передача различных услуг в различных потоках с отдельными PID. Во всех случаях соответствующий PID, язык и идентификаторы страниц должны быть указаны в таблице карты программ (РМТ) для интересующей телевизионной услуги (язык и идентификатор страницы в дескрипторе субтитров, определенного в DVB-SI [1]).

Система субтитров DVB предоставляет ряд методов, которые обеспечивают эффективную передачу данных субтитров:

-    объекты, которые наблюдаются несколько раз в регионе, должны быть переданы только однажды, а затем многократно размещены в регионе;

-    объекты, используемые больше чем в одной службе субтитров, должны быть переданы только однажды;

-    пиксельные данные в объектах сжимают, используя кодирование по длинам серий;

-    если гамма цветов, требуемых для части графического объекта, ограничена, эта часть может быть закодирована с использованием меньшего числа битов на пиксель и меньшей таблицы перекодировки. Например, графический объект с 8 битами на пиксель может содержать области, закодированные как 4 или 2 бита на пиксель каждая, которым предшествует таблица перекодировки для отображения 16 или 4 цветов на 256-цветное пространство региона. Аналогично объект с 4 битами на пиксель может содержать области, закодированные как 2 бита на пиксель;

-    цветовые определения могут быть закодированы с использованием 16 или 32-битных элементов ТПЦП. Это обеспечивает компромисс между полосой пропускания канала передачи и точностью цветопередачи;

-    только те значения ТПЦП, которые используются, подлежат передаче.

Вышеупомянутые опции полностью поддерживаются системой субтитров DVB.

Потоки субтитров, предназначенные для HDTV, могут содержать дополнительную структуру данных, называемую display_definition_segment, которая явно определяет размер дисплея, для которого был создан данный поток.

Потоки субтитров, связанные с телевизионными услугами стандартного разрешения, не должны включать display_definition_segment и могут быть закодированы в соответствии с [2].

Потоки субтитров, связанные с телевизионными услугами стандартного разрешения и предназначенные для декодирования декодерами, разработанными согласно [2], не должны включать display_ definition_segment.

4.2 Иерархия данных и терминология

Основным элементом потока субтитров DVB является сегмент субтитров. Эти сегменты передаются в пакетах PES, которые, в свою очередь, передаются в транспортных пакетах. Число сегментов, передаваемых в пакете PES, ограничено максимальной длиной пакета PES.

Поток субтитров должен передаваться в транспортных пакетах с одним и тем же PID. Одиночный поток субтитров может содержать несколько различных служб субтитров. Все данные субтитров, требуемые для службы субтитров, должны передаваться в одном потоке субтитров. Различные службы субтитров могут быть субтитрами на различных языках для одной программы. И наоборот, они могут быть предназначены для различных программ (при условии, что программы разделяют общий PCR).

Одиночный поток субтитров не должен содержать одновременно службу субтитров, которая включает display_definition_segment, и службу субтитров, которая не включает display_definition_segment; в этом случае службы субтитров нужно передавать в отдельных потоках и с отдельными PID.

Потоки субтитров, предназначенные для услуг HDTV и включающие display_definition_segment, должны быть отличны от потоков, которые предназначены для услуг стандартного разрешения и закодированы в соответствии с [2] при помощи определенных для HDTV значений stream_content & component_type из дескриптора компонента DVB, содержащегося в таблицах SDT и EIT данной услуги. Это условие обеспечивает средство, посредством чего устаревшие декодеры, поддерживающие только SD-разрешение, должны игнорировать потоки, содержащие display_definition_segments.

Различные службы субтитров могут быть предназначены для различных типов дисплеев или требоваться для иных целей. Например:

4

ГОСТ Р 56953-2016

-    различные службы субтитров могут быть предназначены для дисплеев с соотношением сторон

4:3 и 16:9;

-    службы субтитров могут быть предназначены для зрителей с ослабленным слухом. Они могут содержать графические представления звуков.

Для каждой службы субтитров subtitling_descriptor согласно [1] сигнализирует о значениях идентификаторов страниц сегментов, необходимых для декодирования данной службы субтитров. Дескриптор субтитров должен быть включен в состав РМТ программы и должен быть связан с PID программы, которая передает поток субтитров. В дескрипторе субтитров идентификатор страниц сегментов сданными, предназначенными только для определенной услуги, называется идентификатором страницы композиции, в то время как идентификатор страниц сегментов сданными, предназначенными для одновременного использования различными услугами, называется идентификатором вспомогательной страницы. Например, идентификатор вспомогательной страницы может сигнализировать о сегментах, содержащих логотип, который характерен для субтитров на нескольких языках.

PTS в заголовке пакета PES содержит информацию о времени представления данных субтитров и связан сданными субтитров во всех сегментах, передаваемых в данном пакете PES. PTS определяет время, в которое должны быть представлены соответствующие декодированные сегменты.

Полный комплект сегментов службы субтитров, которые связаны с одним PTS, называется набор показа. Последним сегментом набора показа должен быть «end_of-display-set сегмент, который сигнализирует, что для начала декодирования больше не требуется данных субтитров, связанных с этим PTS. Наборы показа должны передаваться в правильном порядке представления, и PTS последующих наборов показа должны отличаться больше чем на один период видеокадра.

Для передачи множественных типов субтитров данных субтитров определены несколько типов сегментов, в частности:

-    сегмент определения дисплея; служба субтитров может быть предназначена или быть подготовлена к размерам дисплея, отличного от телевидения стандартного разрешения (т. е. кроме 720 пикселей на 576 линий, например, для HDTV). Дополнительный сегмент определения дисплея явно определяет размер дисплея, для которого было создана данная служба;

-    сегмент композиции страницы; декодирование службы субтитров приводит к показу на дисплее последовательности страниц, каждая из которых состоит из одного или более регионов; сегмент композиции страницы несет информацию о составе страницы, такую как список включенных регионов, пространственное положение каждого региона, информацию о тайм-ауте для страницы и состоянии страницы;

-    сегмент композиции региона; в каждом регионе, как правило, размещены один или несколько объектов, которые используют определенные ТПЦП, идентифицируемые идентификаторами ТПЦП; сегмент композиции региона несет информацию о составе региона и о атрибутах региона, таких как горизонтальный и вертикальный размер, цвет фона, пиксельная глубина региона, какая ТПЦП используется, список включенных объектов с их положением в регионе;

-    сегмент определения ТПЦП; сегмент определения ТПЦП содержит информацию об определенной ТПЦП, идентифицируемой идентификатором ТПЦП, какие цвета используются для элементов ТПЦП;

-    сегмент данных объекта; сегмент данных объекта несет информацию о конкретном объекте; существует два типа объектов: графические объекты и текстовые объекты. Сегмент данных объекта с графическим объектом содержит кодирование по длинам серий цвета битового массива, в то время как текстовый объект содержит строку кодов символов;

-    сегмент конца набора показа; сегмент конца набора показа не содержит внутренней информации, но используется, чтобы явно сигнализировать, что, прежде чем может начаться декодирование текущего набора показа, больше сегментов не должно быть получено.

Значение идентификатора страницы сегмента, содержащего данные для службы субтитров, должно быть равно значению composition_page_id или ancillary_page_id, содержащимся в дескрипторе субтитров. Композиции страниц не используются несколькими службами субтитров одновременно; следовательно, идентификатор страницы каждой композиции страницы сегмента должен быть равен значению composition_page_id.

Иерархия данных должна быть следующей:

-    транспортный поток (TS);

-    пакеты транспортного потока с одним PID;

-    пакеты PES, с PTS, содержащими временную информацию;

-    служба субтитров;

-    сегменты, определенные идентификатором страницы композиции и опционально идентификатором вспомогательной страницы;

5

-    в соответствующих случаях — сегмент определения дисплея;

-    данные субтитров, содержащие информацию о композиции страницы, композиции региона, таблицах ТПЦП, объектах и конце набора показа.

4.3 Временная иерархия и терминология

На уровне сегмента в иерархии данных есть также временная иерархия. Высший уровень — эпоха; в эпоху композиция страницы и композиция региона могут измениться: например, объекты и регионы могут быть добавлены или удалены. Понятие эпохи аналогично понятию видеопоследовательности MPEG. Никакое состояние декодера не сохраняется при переходе с одной эпохи к следующей.

Эпоха — последовательность одного или более экземпляров страницы. Каждый экземпляр страницы — это законченный экран с графическим материалом.

Последовательные экземпляры страницы могут отличаться в меньшей степени (например, отдельным словом, когда используется стенографическое введение субтитров) или могут отличаться полностью. Набор сегментов, необходимый для декодирования нового экземпляра страницы, называют набором показа.

В пределах набора показа последовательность сегментов (если представлена) должна быть следующей:

-    сегмент определения дисплея;

-    композиция страницы;

-    композиция региона;

-    определение ТПЦП;

-    данные объекта;

-    сегмент конца набора показа.

Все сегменты, сообщенные значением идентификатора страницы композиции, должны быть доставлены перед любым сегментом, сообщенным значением идентификатора вспомогательной страницы. Значение идентификатора вспомогательной страницы не должно сигнализировать о сегментах композиции страницы и сегментах композиции региона.

5 Модель декодера субтитров

Модель декодера субтитров приведена на рисунке 2.

Пакеты

ВЗ кбайт

Рисунок 2 — Модель декодера субтитров

На вход модели декодера субтитров поступает транспортный поток MPEG-2.

После фильтрации PID пакеты TS, содержащие поток субтитров, поступают на буфер передачи размеров В1 байт. Из буфера передачи данные выходят со скоростью R1 кбит/с. Если данные отсут-

6

ГОСТ P 56953—2016

ствуют, их скорость равна 0. Для устаревших декодеров размер буфера передачи равен 512 байтам, скорость выходного потока данных равна 192 кбит/с. Для декодеров, которые способны работать с потоками, содержащими сегменты определения дисплея, размер буфера передачи равен 1024 байтам, скорость выходного потока данных равна 400 кбит/с.

Транспортные пакеты из буфера передачи обрабатываются путем отброса заголовков транспортных пакетов и пакетов PES. Значения PTS передаются на следующие этапы обработки субтитров. В препроцессоре сегменты, необходимые для выбранной службы субтитров, выделяются из потока субтитров. Выходным сигналом препроцессора является поток сегментов субтитров, которые фильтруются на основе значения идентификатора страницы, полученного из дескриптора субтитров.

Отобранные сегменты поступают в буфер кодированных данных размером В2 кбайт. Для устаревших декодеров размер буфера кодированных данных равен 24 кбайтам. Для декодеров, которые способны работать с потоками, содержащими сегменты определения дисплея, размер буфера кодированных данных равен 100 кбайтам. Только полные сегменты выходят из данного буфера. Вывод и декодирование сегментов происходит мгновенно (занимает нулевое время). Если сегмент содержит данные пикселей, декодер субтитров останавливает вывод сегментов из буфера кодированных данных, пока все пиксели не будут переданы в буфер пикселей. Пиксельные данные объектов, которые используются более чем один раз, передаются отдельно для каждого использования.

Скорость передачи пиксельных данных в буфер пикселей равна R3 кбит/с, размер буфера пикселей равен ВЗ кбайтам. Для устаревших декодеров размер буфера пикселей равен 80 кбайтам, скорость входного потока данных равна 512 кбит/с. Для декодеров, которые способны работать с потоками, содержащими сегменты определения дисплея, размер буфера пикселей равен 320 кбайтам, скорость входного потока данных равна 2 Мбит/с.

Данные, необходимые для составления субтитров, такие как композиция страницы, композиции региона, таблицы ТПЦП, хранятся в буфере композиции, который имеет размер 4 кбайта.

5.1    Временная модель декодера

Требования к использованию памяти в модели декодера субтитров зависит от размера и глубины цветности используемых на странице регионов. Полное описание использования памяти декодера должно быть доставлено к началу каждой эпохи. Границы эпох обеспечивают гарантированные точки получения услуги. Границы эпохи сигнализируются сегментами композиции страницы с состоянием страницы типа «смена режима («mode change).

Буфер пикселей и буфер композиции хранят состояние декодера субтитров. Когда декодер принимает сегмент композиции страницы (СКС) с состоянием страницы типа «смена режима, вся выделенная для предыдущих сегментов память очищается, т. е. состояние декодера сбрасывается.

Все регионы, которые будут использоваться в эпохе, должны представляться в наборе показа сегментами композиции региона (СКР) в сопровождении СКС с состоянием страницы типа «смена режима (первый набор показа в эпохе). Все записи ТПЦП, которые будут использоваться в эпохе, должны быть введены в первом наборе показа. Последующие сегменты могут изменить значения буфера пикселей и буфера композиции, но не могут изменять количество требуемой памяти.

Требования к временной модели декодера:

-    в начале эпохи набор показа должен содержать полный набор сегментов СКР для всех регионов, которые будут использоваться в данной эпохе. СКС должен содержать список регионов, представленных в начале эпохи. В отдельных случаях СКС может содержать нулевой список видимых регионов;

-    СКР должен присутствовать в наборе показа, если регион должен быть изменен. СКР необязательно должен быть в списке регионов СКС. Это позволяет изменять регионы, пока они не видны;

-    СКР могут присутствовать в наборе показа, даже если они не будут изменены;

-    декодер должен проверять каждый СКР в наборе показа, чтобы определить, должен ли регион быть модифицирован. Три возможные причины изменения:

-    флаг заполнения региона установлен;

-    модификация содержания ТПЦП;

-    список объектов ненулевой длины.

5.2    Модель буферной памяти

СКС с состоянием страницы типа «смена режима разрушает все предыдущие содержания буфера пикселей и буфера композиции путем стирания их содержимого.

В течение одной эпохи размер выделенной памяти в буфере пикселей остается постоянным.

7