БИБЛИОТЕКА НОРМАТИВНЫХ ДОКУМЕНТОВ

ГОСТ Р 59806-2021. Национальный стандарт Российской Федерации. Телевидение вещательное цифровое. Динамическая адаптивная потоковая передача форматов файлов медиаслужб DVB средствами протокола HTTP по сетям с IP. Основные параметры

4.2 Требования к описанию презентации медиа при динамической адаптивной потоковой передаче через протокол передачи гипертекста HTTP

4.2.1 Общие требования

MPD должно соответствовать требованиям настоящего подраздела.

Примечание - MPD или его составные части, которые не соответствуют требованиям настоящего подраздела могут игнорироваться пользователем.

 

MPD не должно содержать определения XML документа <! DOCTYPE ...>.

4.2.2 Общие правила использования элементов периода презентации медиа

Интервал периода презентации должен использовать следующие правила:

- элемент Subset допускается игнорировать;

- удаленные элементы с @xlink: actate, установленные на onRequest, допускается игнорировать;

- если элемент Period содержит несколько наборов адаптаций с @ contentType = video, то элемент Role с @ circuitIdUri = urn: mpeg: dash: role: 2011 и @ value = main должен содержать не менее одного набора адаптации;

- на интервале периода не должен применяться элемент Period.SegmentList.

Каждый элемент периода должен соответствовать требованиям 4.2.3 или 4.2.5.

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

 

4.2.3 Условия применения элементов периода профиля реального времени

Элементы AdaptationSet, не соответствующие требованиям 4.2.4, допускается игнорировать.

4.2.4 Применение элементов AdaptationSet периодов профиля реального времени

Элементы AdaptationSet, периодов профиля реального времени должны соответствовать следующим правилам:

- атрибут @group может игнорироваться;

- элементы AdaptationSet, содержащие элементы BaseURL с абсолютными базовыми BaseURL, могут быть проигнорированы;

- элемент AdaptationSet с элементом ContentComponent может игнорироваться.

Примечание - Допускается игнорировать наборы адаптации с мультиплексированными медиа-потоками;

 

- элемент AdaptationSet должен игнорироваться, если в нем отсутствует элемент AdaptationSet.SegmentTemplate или если этот элемент присутствует в каждом представлении.

Элемент AdaptationSet, содержащий более одного представления, может игнорироваться, если не выполняются условия:

- AdaptationSet @ segmentAlignment присутствует и имеет значение "истина" или "1";

- AdaptationSet @ startWithSAP присутствует и имеет значение "1" или "2";

- присутствуют атрибуты MPD @ maxSegmentDuration или MPD @ type = static.

Примечание - AdaptationSets может включать одну или несколько пар представлений, между которыми клиентам переключаться не требуется.

 

4.2.5 Применение элементов представления (для профиля периода реального времени)

Элементы представления (для профиля периода реального времени) соответствуют следующим правилам:

- представления со значением атрибута @mimeType, начинающиеся со строки, отличной от xxx/mp4, где xxx - один из атрибутов видео, аудио, приложение или текст (video, audio, application or text), могут игнорироваться. Дополнительные параметры профиля или кодека могут быть добавлены в конец значения атрибута @mimeType;

- представления, для которых не предполагается наличие атрибута @profiles, равного urn: dvb: dash: profile: dvb-dash: isoff-extlive: 2014, могут игнорироваться;

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

- элементы представления, которые не соответствуют требованиям настоящего пункта, могут игнорироваться.

4.2.6 Использование элементов периода профиля по запросу

Использование элементов периода профиля по запросу осуществляется по следующим правилам:

- элемент Period.SegmentTemplate не должен использоваться;

- элементы AdaptationSet, не соответствующие 4.2.7, могут игнорироваться.

4.2.7 Использование элемента AdaptationSet профиля "по запросу"

Элемент AdaptationSet профиля "по запросу" используется по следующим правилам:

- элемент AdaptationSet атрибут @group может игнорироваться;

- элемент AdaptationSet с элементом ContentComponent может игнорироваться.

Примечание - Наборы адаптации с мультиплексированными потоками медиа игнорируются;

 

- элемент AdaptationSet может игнорироваться, если в нем для каждого представления отсутствует Representation.BaseURL;

- элемент AdaptationSet может игнорироваться, если в нем присутствуют элементы AdaptationSet.SegmentList или AdaptationSet.SegmentTemplate.

Элемент AdaptationSet не должен использоваться при следующих условиях:

- если в элементе AdaptationSet содержится более одного элемента Representation;

- если в элементе AdaptationSet присутствует AdaptationSet @ subsgmentAlignment, имеющее значение true;

- если в элементе AdaptationSet присутствует AdaptationSet @ subsgmentStartsWithSAP, имеющие значения "1" или "2";

- элементы представлений, не соответствующие 4.2.8, могут игнорироваться.

Примечание - Наборы AdaptationSets могут включать одну или несколько пар представлений, переключение между которыми не требуется.

 

4.2.8 Правила использования элементов представления в профиле "по запросу"

Элементы представлений в профиле "по запросу" должны соответствовать следующим условиям:

- элементы Representation со значением атрибута @mimeType, начинающиеся со строки, отличной от xxx/mp4, где xxx - одно из: video, audio, application или text могут быть игнорированы. Дополнительные параметры профиля или кодека могут быть добавлены в конце значения атрибута @mimeType;

- элементы Representation, которые не содержат атрибут @profiles, эквивалентного urn: dvb: dash: profile: dvb-dash: isoff-exton-demand: 2014, могут игнорироваться;

- элемент Representation можно игнорировать, если в элементе Representation присутствуют элементы Representation. SegmentList или Representation. SegmentTemplate;

- элемент Representation можно игнорировать, если он не содержит элемент BaseURL;

- элемент Representation может игнорироваться, если он состоит из одного индексированного сегмента медиа или если он состоит из одного индексированного самоинициализирующегося сегмента медиа и в нем отсутствует элемент SegmentBase @ indexRange.

4.2.9 Требования к контенту с малой задержкой

Контент с малой задержкой, использующий фрагментированные сегменты, доступные проигрывателям до их завершения, должен сигнализироваться с помощью атрибута SegmentTemplate @ availabilityTimeOffset в сочетании с атрибутом SegmentTemplate @ availabilityTimeComplete, установленным на false.

Примечание - Атрибуты BaseURL @ availabilityTimeOffset и BaseURL @ availabilityTimeComplete не должны использоваться для потоковой передачи в реальном времени с малой задержкой.

 

Длительность атрибута SegmentTemplate @ availabilityTimeOffset не должна превышать длительность сегмента, заданную SegmentTemplate @ duration, деленную на значение соответствующего атрибута @timescale.

Пример - элемент AdaptationSet, использующий сегменты медиа с длительностью 3,84 с при длительности фрагмента 960 мс, как правило сигнализируется с помощью атрибутов SegmentTemplate @ availabilityTimeOffset = 2.88 и SegmentTemplate @ availabilityTimeComplete = false. Эти атрибуты содержат смысловое значение сигнализации, согласно которой неполный сегмент начинает становиться доступным при длительности 2,88 с.

Контент с малой задержкой, использующий короткие сегменты, который не требует сигнализации с использованием атрибутов SegmentTemplate @ availabilityTimeOffset или SegmentTemplate @ availabilityTimeComplete.

Элемент ServiceDescription, содержащий не более одного элемента Latency и элемента PlaybackRate, должен использоваться для описания контента с малой задержкой, расположенного на уровне MPD или на уровне периода. Использование элементов Scope с элементом schemeIdUri означает соответствие urn: dvb: dash: lowlatency: scope: 2019 и возможность таргетирования клиентов с проигрывателями, поддерживающими функцию малой задержки.