ГОСТ Р 55713-2013
НАЦИОНАЛЬНЫЙ СТАНДАРТ РОССИЙСКОЙ ФЕДЕРАЦИИ
ТЕЛЕВИДЕНИЕ ВЕЩАТЕЛЬНОЕ ЦИФРОВОЕ
Кодирование для защиты от ошибок при передаче служб DVB по сетям с IP протоколами
Основные параметры
Digital video broadcasting. Error protection coding for transport of DVB services over IP based networks. Basic parameters
ОКС 33.170
ОКП 657400
Дата введения 2014-09-01
Предисловие
1 РАЗРАБОТАН Автономной некоммерческой организацией "Научно-технический центр информатики" (АНО "НТЦИ")
2 ВНЕСЕН Управлением технического регулирования и стандартизации Федерального агентства по техническому регулированию и метрологии
3 УТВЕРЖДЕН И ВВЕДЕН В ДЕЙСТВИЕ Приказом Федерального агентства по техническому регулированию и метрологии от 8 ноября 2013 г. N 1367-ст
4 Настоящий стандарт разработан с учетом основных нормативных положений:
- стандартов Европейского института по стандартизации в области телекоммуникаций (ETSI):
- ETSI TS 102 034 V1.4.1 (2009-08)* "Телевидение вещательное цифровое (DVB). Передача служб DVB, базирующихся на транспортном потоке MPEG-2, по сетям с IP протоколами" (ETSI TS 102 034 V1.4.1 (2009-08). Digital Video Broadcasting (DVB); Transport of MPEG-2 TS Based DVB Services over IP Based Networks);
________________
* Доступ к международным и зарубежным документам, упомянутым в тексте, можно получить, обратившись в Службу поддержки пользователей. - .
- ETSI TS 126 346 V11.4.0 (2013-04) "Универсальная система мобильных телекоммуникаций (UMTS); LTE; Мультимедийное вещание/Широковещательная услуга (MBMS); Протоколы и кодеки (3GPP TS 26.346 версия 11.4.0 Выпуск 11)" (ETSI TS 126 346 V11.4.0 (2013-04) Universal Mobile Telecommunications System (UMTS); LTE; Multimedia Broadcast/Multicast Service (MBMS); Protocols and codecs (3GPP TS 26.346 version 11.4.0 Release 11));
- ETSI TS 102 472 V1.3.1 (2009-06) "Телевидение вещательное цифровое (DVB). Передача IP-данных через DVB-H: Протоколы доставки контента" (ETSI TS 102 472 V1.3.1 (2009-06) Digital Video Broadcasting (DVB); IP Datacast over DVB-H: Content Delivery Protocols);
- "Спецификация SMPTE 2022-1 (2007): Прямая коррекция ошибок при передаче в реальном времени видео/аудио-данных по IP-сетям" (SMPTE specification 2022-1 (2007): Forward Error Correction for Real-time Video/Audio Transport Over IP Networks).
5 ВВЕДЕН ВПЕРВЫЕ
Правила применения настоящего стандарта установлены в ГОСТ Р 1.0-2012 (раздел 8). Информация об изменениях к настоящему стандарту публикуется в ежегодном (по состоянию на 1 января текущего года) информационном указателе "Национальные стандарты", а официальный текст изменений и поправок - в ежемесячном информационном указателе "Национальные стандарты". В случае пересмотра (замены) или отмены настоящего стандарта соответствующее уведомление будет опубликовано в ближайшем выпуске информационного указателя "Национальные стандарты". Соответствующая информация, уведомление и тексты размещаются также в информационной системе общего пользования - на официальном сайте Федерального агентства по техническому регулированию и метрологии в сети Интернет (gost.ru)
1 Область применения
Настоящий стандарт распространяется на кодирование для защиты от ошибок при передаче служб DVB по сетям с IP протоколами.
Настоящий стандарт устанавливает основные параметры протоколов защиты от ошибок базового и дополнительного уровней.
Требования настоящего стандарта следует учитывать при разработке, изготовлении и эксплуатации оборудования передачи и приема служб DVB по сетям с IP протоколами.
2 Нормативные ссылки
В настоящем стандарте использованы нормативные ссылки на следующие стандарты:
ГОСТ Р 52210-2004 Телевидение вещательное цифровое. Термины и определения.
ГОСТ Р 52591-2006 Система передачи данных пользователя в цифровом телевизионном формате. Основные положения
ГОСТ Р 53528-2009 Телевидение вещательное цифровое. Требования к реализации протокола высокоскоростной передачи информации DSM-CC. Основные параметры
3 Сокращения
В настоящем стандарте применены следующие сокращения:
AL-FEC (Application Layer Forward Error Correction) - прямая коррекция ошибок прикладного уровня;
CNAME (Canonical Name) - каноническое имя;
CSRC (Contributing Sources List) - список информационных источников;
DVB (Digital Video Broadcasting) - цифровое телевизионное вещание;
ETSI (European Telecommunications Standards Institute) - европейский институт по стандартизации в области телекоммуникаций;
FEC (Forward Error Correction) - прямая коррекция ошибок;
IANA (Internet Assigned Numbers Authority) - Администрация адресного пространства Интернет;
IP (Internet Protocol) - протокол Интернет;
РТ (Payload Туре) - тип полезной нагрузки;
RTCP (Real-time Transport Control Protocol) - протокол управления передачей в реальном времени;
RTP (Real Time Protocol) - протокол реального времени;
SSRC (Synchronization Source List) - список источников синхронизации;
TS (Timestamp) - временной штамп;
UDP (User Datagram Protocol) - протокол пользовательских датаграмм.
4 Основные параметры
При передаче служб DVB по сетям с IP протоколами должен использоваться протокол AL-FEC. Протокол AL-FEC представляет собой протокол многоуровневого типа, состоящий из базового уровня и включающий один или более расширенных уровней.
Базовый уровень представляет собой упрощенный пакетный перемежающийся код с контролем четности. Базовый уровень коррекции ошибок должен использоваться всегда при использовании протокола AL-FEC [1]. Для обеспечения дополнительной защиты от потери пакетов опционально может использоваться расширенный уровень защиты под названием "Раптор-код" [2].
4.1 Упрощенный пакетный перемежающийся код с контролем четности
На базовом уровне коррекции ошибок должен использоваться упрощенный пакетный перемежающийся код с контролем четности [3].
4.1.1 Схема инкапсуляции
4.1.1.1 Уровень RTP/UDP/IP
Использование протокола RTP обязательно.
Поле счетчика CSRC (СС) в исходных пакетах должно иметь значение "0".
Значение SSRC исходного потока должно выбираться случайным образом (с обнаружением коллизий). Поле RTCP CNAME должно использоваться для сопоставления потоков FEC с исходными потоками.
Начальное значение порядкового номера исходного потока должно быть случайным.
4.1.2 Структура FEC
4.1.2.1 Организация пакетов FEC
Упрощенная схема организации защищаемых пакетов приведена на рисунке 1.
Рисунок 1 - Схема организации защищаемых пакетов
RTP Pkt ххх - пакет RTP номер ххх;
В случае применения многоуровневой защиты,
Должна использоваться схема только с одним (с перемежением) потоком FEC. При этом передаваемые исходные пакеты должны отправляться на порт N (где N - четное целое число), а поток пакетов FEC должен отправляться на порт N+2.
4.1.2.2 Параметры буфера FEC
Приемник должен поддерживать комбинации значений
Приемник может поддерживать любые иные комбинации значений
4.1.2.3 Формат заголовка RTP пакета FEC
Поток FEC должен использовать номер типа полезной нагрузки (РТ) равный 96.
Значение SSRC потока FEC должно быть равно "0". Поле RTCP CNAME должно использоваться для сопоставления потоков FEC с исходными потоками.
Начальное значение порядкового номера потока FEC должно быть случайным и должно быть на 1 больше переданного ранее пакета FEC.
Приемник должен игнорировать метки времени в пакетах FEC.
4.1.2.4 Формат заголовка FEC
Формат заголовка FEC показан на рисунке 2.
Рисунок 2 - Формат заголовка FEC
Младшие биты SNBase: минимальный порядковый номер пакетов, соответствующих пакету FEC; содержит порядковый номер целиком, если он укладывается в 16 битов, иначе содержит младшие 16 битов последовательного номера.
Восстановление длины: данное поле используется для определения любых исходных пакетов, соответствующих пакету FEC.
Восстановление РТ: данное поле используется для определения типа полезной нагрузки РТ любых исходных пакетов, соответствующих пакету FEC.
Восстановление TS: данное поле используется для восстановления меток времени любых исходных пакетов, соответствующих пакету FEC.
Е: данный бит должен устанавливаться в "1", чтобы показать, что заголовок расширен.
Маска: данное поле должно быть равно "0", взамен следует использовать поле NA.
N: данный бит зарезервирован для дальнейшего использования и должен быть установлен в "0".
D: данный бит должен быть установлен в "0".
Тип: данное поле указывает, какой выбран код исправления ошибок, и должно быть равно "0". Приемник должен игнорировать пакеты с нераспознанным значением типа.
Индекс: данное поле используется для более комплексных кодов защиты от ошибок и должно быть равно "0".
Примечание - Для метода "исключающее или" только один пакет FEC защищает группу исходных пакетов и поэтому поле индекса всегда должно содержать "0".
Смещение: данное поле должно быть равно числу столбцов защищаемых пакетов
NA: данное поле должно быть равно числу строк защищаемых пакетов
Расширенные биты SNBase: данное поле приемник должен игнорировать.
Исходные пакеты, защищаемые данным пакетом FEC, определяются по последовательным номерам
где
4.1.3 Конфигурация системы
Передатчики и приемники должны поддерживать все номера портов в зарегистрированном диапазоне портов, в динамически выделяемом и/или приватном диапазонах портов, определенных в реестре IANA.
У потока FEC должен быть такой же IP адрес назначения (индивидуальный или широковещательный), как у соответствующего ему потока данных.
У потока FEC должен быть такой же UDP порт источника, как у соответствующего ему потока данных.
4.2 Раптор-код
Раптор-код включает в себя следующие компоненты:
- построение потоковой FEC, определяющее протокол применения FEC к потокам медиаданных;
- схемы FEC, определяющие компоненты протокола, необходимые для различных классов применения Раптор-кода к потоковым приложениям.
4.2.1 Построение потоковой FEC
При построении потоковой FEC определяется протокол доставки контента, который обеспечивает FEC защиту передачи потока данных через UDP.
Протокол доставки контента, который использует данное построение потоковой FEC, должен предоставить для передачи от передатчика к приемнику:
- информацию о потоковой конфигурации FEC;
- информацию о передаче объектов FEC.
Информация о потоковой конфигурации FEC не зависит от схемы FEC и необходима при построении потоковой FEC для обеспечения защитой FEC потока UDP.
Информация о передаче объектов FEC определяет схему FEC.
Механизм построения потоковой FEC состоит из следующих компонентов:
1) создание исходного блока из исходных медиапакетов, принадлежащих одному или нескольким потокам UDP пакетов;
2) опциональное расширение исходных пакетов для идентификации исходного блока и позиции в исходном блоке, занимаемой данными из исходного пакета и относящихся к исходному пакету;
3) определение пакетов восстановления, передаваемых через UDP, которые могут использоваться декодером FEC для восстановления отсутствующих пакетов в исходном блоке.
4.2.1.1 Структура исходного блока
Исходный блок должен содержать последовательность блоков с информацией об исходных пакетах (
где
Исходный блок должен формироваться путем конкатенации
для
Размер исходного блока в байтах должен рассчитываться по формуле
Каждый исходный блок должен идентифицироваться посредством номера исходного блока SBN. Символы внутри исходного блока должны идентифицироваться посредством идентификаторов символов кодирования ESI.
Идентификатор символа кодирования
где
4.2.1.2 Формат исходных пакетов FEC
Формат исходных пакетов FEC показан на рисунке 3.
Рисунок 3 - Формат исходных пакетов FEC
Заголовки IP, UDP и полезные данные в исходном пакете FEC должны быть такими же, как в оригинальном исходном пакете UDP. За полезными данными оригинального UDP пакета в исходном пакете FEC должно следовать поле идентификатора исходных полезных данных FEC (опционально). Формат и наличие поля идентификатора исходных полезных данных FEC должны определяться схемой FEC.
4.2.1.3 Формат пакетов восстановления FEC
Формат пакета восстановления FEC показан на рисунке 4.
Рисунок 4 - Формат пакета восстановления FEC
Поле идентификатора полезных данных восстановления FEC должно содержать информацию для работы алгоритма FEC. Формат поля идентификатора полезных данных восстановления FEC должен определяться схемой FEC.
Количество символов восстановления должно определяться схемой FEC, длиной символа и ограничиваться общими требованиями к длине пакета. Пакет восстановления FEC должен содержать только целые символы восстановления, включение части символа восстановления не допускается.
4.2.1.4 Информация о потоковой конфигурации FEC
Информация о потоковой конфигурации FEC необходима при построении потоковой FEC для обеспечения защитой FEC потока UDP.
Информация о потоковой конфигурации FEC включает в себя идентификацию нескольких потоков UDP пакетов. Каждый поток UDP пакетов должен однозначно идентифицироваться структурой данных, состоящей из IP адреса источника, IP адреса приемника, UDP порта источника, UDP порта приемника.
Одиночный этап построения потоковой FEC обеспечивает защиту FEC всех пакетов из определенного набора исходных потоков UDP пакетов, благодаря наличию одного или нескольких потоков UDP пакетов, содержащих данные восстановления пакетов. Для каждого этапа построения потоковой FEC информация о потоковой конфигурации FEC включает:
1) данные идентификации потока (потоков) UDP пакетов с FEC пакетами восстановления (FEC поток восстановления);
2) для каждого исходного потока UDP пакетов, защищенного FEC потоком (потоками) восстановления:
- данные идентификации потока UDP пакетов, содержащего исходные пакеты;
- целочисленный идентификатор исходного потока UDP пакетов в диапазоне от 0 до 255. Данный идентификатор должен быть уникальным для всех исходных потоков UDP пакетов, защищенных одним FEC потоком восстановления;
3) схему FEC, которая должна применяться.
Множественные этапы построения потоковой FEC с раздельной и независимой информацией о потоковой конфигурации FEC могут присутствовать в передатчике или в приемнике. Одиночный этап построения потоковой FEC защищает все пакеты всех исходных потоков UDP пакетов, указанных в 2). Все пакеты данных потоков должны быть исходными пакетами FEC, как определено в 4.2.1.2. Одиночный исходный поток UDP пакетов не должен защищаться более чем одним этапом построения потоковой FEC.
Одиночный FEC поток восстановления должен содержать пакеты восстановления для одиночного этапа построения потоковой FEC. В данном потоке не должны передаваться иные пакеты. Все пакеты в FEC потоке восстановления должны быть пакетами восстановления FEC, как определено в 4.2.1.3 и должны относиться к одному этапу построения потоковой FEC.
Построение потоковой FEC должно быть информировано о применяемом в каждом исходном блоке размере символа. Данная информация может содержаться в информации о потоковой конфигурации FEC или может сообщаться иным способом, например, в поле идентификатора полезных данных восстановления FEC. Детальная спецификация протокола доставки контента должна определять, как данная информация передается между передатчиком и приемником.
4.2.2 Схемы FEC для потоковой передачи
Схема FEC должна:
- быть систематизированной;
- быть основана на исходных блоках, неперекрывающихся и непрерывных в пределах потока;
- указывать, как SBN и ESI, соответствующие исходному пакету, передаются от передатчика приемнику (например, в поле идентификатора исходных полезных данных FEC);
- указывать, как длина символа передается от передатчика приемнику (например, как часть информации о передаче объектов FEC);
- указывать, как индикатор длины
- указывать, как длина SPI
4.2.2.1 Раптор-схема FEC для произвольных потоков пакетов
4.2.2.1.1 Форматы и коды
Элементы информации о передаче объектов FEC:
- максимальная длина исходного блока в символах, 16 битов;
- размер кодируемого символа в байтах, 16 битов.
Формат кодирования информации о передаче объектов FEC приведен на рисунке 5.
Рисунок 5 - Формат кодирования информации о передаче объектов FEC
Формат идентификатора исходных полезных данных FEC приведен на рисунке 6.
Рисунок 6 - Формат идентификатора исходных полезных данных FEC
Формат идентификатора полезных данных восстановления FEC приведен на рисунке 7.
Рисунок 7 - Формат идентификатора полезных данных восстановления FEC
Интерпретация SBN, ESI и SBL дана в 4.2.2.1.3.
4.2.2.1.2 Процедуры
Передатчик должен последовательно размещать в исходных блоках номера исходных блоков SBN, начиная отсчет с 0 после достижения SBN значения 2
В процессе формирования исходного блока согласно 4.2.1.1:
- индикатор длины
- значение
4.2.2.1.3 Спецификация кода FEC
Размер символа
Максимальная длина исходного блока SBL в символах должна выбираться из следующего ряда:
101, 120, 148, 164, 212, 237, 297, 371, 450, 560, 680, 842, 1031, 1139, 1281.
Для достижения заданной длины исходный блок может дополняться символами дополнения
4.2.2.1.4 Построение пакетов восстановления
Каждый пакет восстановления должен содержать следующую информацию:
- номер исходного блока SBN;
- идентификатор символа кодирования ESI;
- длина исходного блока SBL;
- символ(ы) восстановления.
Число символов восстановления в пакете восстановления рассчитывают из длины пакета.
Значение ESI, помещаемое в пакет восстановления, рассчитывают по формуле
где
Поле SBL в составе поля идентификатора полезных данных восстановления FEC должно содержать число символов, включенных в SPI пакетов, соответствующих исходному блоку, т.е. перед дополнением до максимальной длины исходного блока согласно 4.2.2.1.3.
4.2.2.1.5 Транспорт
Кодер, формирующий Раптор-код (Раптор-кодер) для потоковой передачи должен получить от протокола передачи для каждого исходного блока следующую информацию:
- размер символа
- число символов в исходном блоке
- номер исходного блока SBN;
- исходные символы для кодирования.
Раптор-кодер предоставляет протоколу передачи информацию кодирования пакетов, содержащую для каждого пакета восстановления:
- номер исходного блока SBN;
- идентификатор символа кодирования ESI;
- длина исходного блока SBL;
- символ(ы) восстановления.
Протокол передачи должен прозрачно передавать эту информацию декодеру Раптор-кода (Раптор-декодеру).
4.2.2.2 Раптор-схема FEC для одиночного последовательного потока пакетов
В данной схеме в отличие от схемы, описанной в 4.2.2.1, поле идентификатора полезных данных FEC заменяется последовательным номером пакета. Последовательные номера пакетов в каждом защищаемом потоке должны возрастать на единицу для каждого пакета в потоке.
Размер SPI в отдельном исходном блоке для каждого пакета в отдельном последовательном потоке должен быть единым и должен получаться из размера пакетов восстановления FEC, которые также должны быть одного размера для отдельного исходного блока.
4.2.2.2.1 Форматы и коды
Информации о передаче объектов FEC соответствует 4.2.2.1.1.
Поле идентификатора исходных полезных данных FEC не используется в Раптор-схеме FEC, приведенной в 4.2.2.2. Исходные пакеты не модифицируются данной схемой FEC.
Идентификатор полезных данных восстановления FEC в данной схеме FEC должен состоять из двух частей:
- опциональный заголовок RTP для расширенного уровня протокола DVB AL-FEC;
- поле идентификатора полезных данных восстановления FEC для расширенного уровня протокола DVB AL-FEC.
Формат поля идентификатора полезных данных восстановления FEC для данной схемы FEC приведен на рисунке 8.
Рисунок 8 - Формат поля идентификатора полезных данных восстановления FEC
Поле начального порядкового номера (ISN) должно содержать младшие 16 битов порядкового номера первого пакета, включенного в данный суб-блок. Если длина порядкового номера короче 16 битов, он должен быть дополнен нулями до длины 16 битов.
Идентификатор символа кодирования ESI должен указывать, какие символы восстановления содержатся в данном пакете восстановления. Идентификатор символа кодирования ESI должен информировать о первом символе восстановления в пакете.
Длина исходного блока SBL содержит информацию о длине исходного блока в символах.
4.2.2.2.2 Процедуры
Передатчик должен последовательно размещать в исходных блоках номера исходных блоков SBN, начиная отсчет с 0 после достижения SBN значения 2
В процессе формирования исходного блока согласно 4.2.1.1:
- индикатор длины
- значение
Номера исходных пакетов, включенных в исходный блок, определяются из ISN и SBL и должны следовать от
где
ESI для пакета с последовательным номером
Все пакеты восстановления, относящиеся к данному исходному блоку, должны содержать единые SBL и ISN.
4.2.2.2.3 Спецификация кода FEC
Спецификация кода FEC должна соответствовать требованиям, изложенным в 4.2.2.1.3.
Библиография
[1] | ETSI TS 102 472 V1.3.1 (2009-06) | Digital Video Broadcasting (DVB); IP Datacast over DVB-H: Content Delivery Protocols |
[2] | ETSI TS 102 034 V1.4.1 (2009-08) | Digital Video Broadcasting (DVB); Transport of MPEG-2 TS Based DVB Services over IP Based Networks |
[3] | SMPTE 2022-1-2007 | Forward Error Correction for Real-Time Video/Audio Transport Over IP Networks |
________________________________________________________________________________________
УДК 621.397:681.327.8:006.354 ОКС 33.170 ОКП 657400
Ключевые слова: телевидение вещательное цифровое, символ, пакет, FEC, коррекция ошибок, Раптор-код, DVB, IP, UDP, RTP
________________________________________________________________________________________
Электронный текст документа
и сверен по:
, 2014