Всё об HDR

Всё об HDR

15 апреля 2022

 

Несмотря на все недостатки и устаревший технологический процесс, сегодня видеоконтент в формате SDR (Standard Dynamic Range) сохраняет доминирующее положение на медиарынке. HDR формат (High Dynamic Range) только начинает свою экспансию.

В этой статье мы расскажем, чем различаются SDR и HDR, и рассмотрим основные HDR стандарты, их идентификацию и валидацию для H.264/AVC, H.265/HEVC, VP9 и AV1. Эта статья будет полезна QA инженерам, разработчикам приложений, OEM-производителям и SOC дизайнерам, которые хотят внедрить или идентифицировать HDR контент.

Чем отличается HDR от SDR

Колориметрические параметры


SDR формат базируется на колориметрических параметрах, описанных в Rec. ITU-R BT. 709. Они охватывают всего лишь 35,9% видимого человеческим глазом спектра системы CEI 1931 (Рис. 1). В свою очередь HDR использует цветовые параметры Rec.ITU-R BT. 2020, охватывающие 75,8% спектра.

Рис.1 Цветовое пространство системы CEI 1931.

Глубина цвета

 

Глубина цвета SDR — 8 бит. SDR не запрещает использовать 10 бит, но на практике подавляющее большинство видеоконтента сжато с глубиной цвета 8 бит. Это означает, что у каждого из базовых цветов — красного, зеленого и синего — может быть 28 значений, равное 256 или суммарное количество 256х256х256 = 16 777 216 цветов. Это много, но человеческий глаз видит гораздо больше, поэтому на практике различает ступенчатые переходы у SDR видео (Рис. 2). Особенно это заметно на градиентных сценах фона, например неба.  

Рис.2 Глубина цвета 8 и 10 бит.

У HDR минимальная глубина цвета — 10 бит: 1024 возможных значений для каждого базового цвета или суммарно  1 073 741 824 цветов, что в 64 раза больше, чем у SDR. Такое изображение гораздо ближе к действительному, однако при определенных обстоятельствах человеческий глаз все еще способен заметить ступенчатость цветовых переходов.

Яркость

Человеческий глаз устроен так, что помимо компонентов цветности различает и компонент яркости, причем яркость воспринимается гораздо острее. SDR ограничен яркостью в 100 кд/м2, в то время как теоретические возможности стандартов HDR достигают 10 000 кд/м2.

На практике дисплеи с поддержкой HDR из среднего ценового сегмента заявляют яркость 1000 кд/м2, премиальный сегмент предлагает яркость до 4000 кд/м2, но для определенных сцен и на непродолжительное время.

 

Стандарты HDR

Стоит отметить, что термин HDR носит собирательный характер, поскольку на рынке представлено несколько стандартов реализации HDR от разных вендоров. Наибольшее распространение получили четыре стандарта HDR: HDR10, HLG, HDR10+ и Dolby Vision. На рисунках 3.1 и 3.2 представлены бренды производителей телевизоров с поддержкой HDR, а на рисунке 4 вы можете ознакомиться с поддержкой HDR у стриминговых сервисов.

Рис.3.1 Бренды ТВ с поддержкой HDR в США.

Рис.3.2 Бренды ТВ с поддержкой HDR в Европе.

Рис.4 Стриминговые сервисы с поддержкой HDR.

Чтобы воспроизвести HDR контент, необходимы правильно подготовленный контент, соответствующий стандарту, а также декодер и дисплей, поддерживающие HDR стандарт.

С помощью StreamEye вы можете проверить параметры на уровне элементарного потока, а Stream Analyzer поможет верифицировать параметры как на уровне элементарного потока, так и на уровне медиаконтейнера для файлов. В новой версии Boro будет доступно определение формата HDR, представление и проверка метаданных для потокового вещания.

HDR10

Этот стандарт был принят в 2014 году. HDR10 получил широкое распространение благодаря простоте в эксплуатации и отсутствию лицензионных отчислений. Стандарт описывает видеоконтент, соответствующий рекомендациям UHDTV Rec. ITU-R BT. 2020:

Разрешение До 7680 × 4320 (8K) пикселей
Соотношение сторон16:9
Соотношение пикселей 1:1
Развертка Прогрессивная
Частота кадров (fps)До 120
Глубина цвета 10–12 бит
Колориметрические параметры BT. 2020
Яркостьдо 10 000 кд/м2 в освещенных сценах, в темных до 0,0001 кд/м2

HDR10 базируется на PQ EOTF функции передачи, из-за чего такой видеоконтент не совместим с SDR дисплеями. Также HDR10 имеет один единственный слой видеоконтента.

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

Метаданные HDR10 включают в себя mastering display colour volume и content light level information.

Mastering display colour volume  — параметры дисплея, которые использовались для создания видеоконтента и считаются эталонными. При воспроизведении видеоконтента дисплей будет перенастроен относительно эталона.

Mastering display colour volume описывает:

  • Display_primaries, координаты Х и Y трех основных компонентов цветности;
  • White_point, координаты X и Y точки белого;
  • Max_display_mastering_luminance, номинально максимальная яркость дисплея мастеринга в единицах 0,0001   кд/м2;
  • Min_display_mastering_luminance, номинально минимальная яркость дисплея мастеринга в единицах 0,0001  кд/м2.

Content light level information  — значение верхней границы номинального целевого уровня яркости изображений. Оно включает в себя:

  • Content light level information (MaxCLL), указывает верхнюю границу максимального уровня яркости пикселя в  кд/м2;
  • Max_pic_average_light_level (MaxFALL), указывает верхнюю границу максимального среднего уровня яркости целого кадра в  кд/м2.

У H.264/AVC и H.265/HEVC видеоформатов  метаданные HDR10 могут быть указаны на двух уровнях.

  1. На уровне элементарного видеопотока в соответствующих SEI заголовках блока доступа IDR. На рисунке 5 представлен пример SEI Mastering display colour volume и Content light level information для видеопоследовательности HEVC: максимальная номинальная яркость  1000 кд/м2, минимальная номинальная яркость 0,05 кд/м2, MaxCLL 1000 кд/м2, MaxFALL 400 кд/м2, а также координаты компонентов цветности и точки белого.
  2. На уровне MP4 медиаконтейнера: атомы mdcv (Mastering display colour volume)  и clli (Content light level);
  3. На уровне MKV/WebM медиаконтейнера: атомы SmDm и CoLL.

Рис.5 SEI сообщения: Content light level и Mastering display colour volume.

У VP9 данные располагаются на уровне медиаконтейнера:

  1. MKV/WebM: SmDm (Mastering Display Metadata) и CoLL (Content Light Level) (рис. 6);
  2. MP4: атомы mdcv и clli.

Рис.6 Mastering Metadata для видеопоследовательности VP9.

У AV1 метаданные располагаются:

  1. На уровне элементарного видеопотока и сигнализируются с помощью  OBU синтаксиса (metadata_hdr_mdcv  и metadata_hdr_cll);
  2. На уровне MP4 медиаконтейнера: атомы mdcv и clli;
  3. На уровне MKV/WebM медиаконтейнера: атомы SmDm и CoLL.

HLG

Стандарт HLG появился в 2015 году и также получил широкое распространение. Стандарт описывает видеоконтент, соответствующий спецификации BT 2020.

Разрешение До 7680 × 4320 (8K) пикселей
Соотношение сторон16:9
Соотношение пикселей 1:1
Развертка Прогрессивная
Частота кадров (fps)До 120
Глубина цвета 10–12 бит
Колориметрические параметры BT. 2020, BT. 2100, BT. 709
Яркостьдо 1000 кд/м2 в освещенных сценах, в темных до 0,0001 кд/м2

HLG, как и HDR10, имеет один слой видеоконтента. В отличие от HDR10, HLG не имеет метаданных, поскольку задействует гибридную логарифмическую функцию HLG EOTF, частично повторяющую кривую функции SDR, частично HDR (рис. 7). Такая реализация теоретически позволяет воспроизводить HLG как на дисплеях, поддерживающих PQ EOTF (HDR10, HDR10+, Dolby Vision), так и на SDR дисплеях с колориметрическими параметрами, соответствующими BT. 2020. Что касается степени реалистичности, HLG, как и HDR10, не способен полностью передать задумку и видение автора. А из-за особенностей функции HLG EOTF изменения оттенков могут быть заметны на дисплее SDR, если изображения содержат яркие области насыщенного цвета. Как правило, искажения наблюдают в сценах с зеркальными бликами.

 

Рис.7. Кривая HLG относительно SDR и PQ HDR.

Идентифицировать видеопоток HLG можно по параметру Transfer_characteristics, который будет иметь значение 14 или 18. 

Для H.264/AVC и H.265/HEVC параметр может быть указан:

  1. На уровне MP4 медиаконтейнера: в атомах avcc, hvcc или colr (рис. 8);
  2. На уровне MKV/WebM медиаконтейнера в соответствующем видео ТrackEntry и атоме colour;
  3. На уровне элементарного стрима в заголовках SPS → VUI → video_signal_type_present_flag → colour_description_present_flag → Transfer_characteristics (рис. 8);
  4. SEI сообщение Alternative transfer characteristics, расположенное в блоке доступа IDR на уровне элементарного потока. Сообщение содержит параметр preferred_transfer_characteristics = 18 (рис. 9). При расхождении значений в SEI, VUI или медиаконтейнере, значению SEI отдается приоритет.

Для VP9 параметр может быть указан на уровне медиаконтейнера:

  1. MP4: в атомах vpcс и сolr;
  2. MKV/WebM: атом colour.

Для AV1 параметр может быть указан:

  1. На уровне элементарного потока в OBU Sequence Header → color_config →  if(color_description_present_flag) → Transfer_characteristics;
  2. На уровне MP4 медиаконтейнера в атомах av1с и colr;
  3. на уровне MKV/WebM медиаконтейнера в соответствующем видео TrackEntry и атоме colour.

 

Рис. 8. Часть SPS → VUI параметров из атомов AvcС и colr MP4 медиаконтейнера.

Рис. 9. SEI сообщение Alternative transfer characteristics.

HDR10+

Стандарт также описывает видеоконтент, соответствующий рекомендациям UHDTV BT.2020.

Разрешение До 7680 × 4320 (8K) пикселей
Соотношение сторон16:9
Соотношение пикселей 1:1
Развертка Прогрессивная
Частота кадров (fps)До 120
Глубина цвета 10–16 бит
Колориметрические параметрыRec. BT. 2020
Яркостьдо 10000 кд/м2 в освещенных сценах, в темных до 0,0001 кд/м2

HDR10+ задействует PQ EOTF, поэтому несовместим с SDR дисплеями.

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

HDR10+ предлагает обратную совместимость с HDR10. В том случае, если дисплей не поддерживает HDR10+ динамические метаданные, но поддерживает статические метаданные HDR10, и в потоке или медиаконтейнере такие данные присутствуют, диcплей может воспроизвести видеопоследовательность по стандарту HDR10.

У H.264/AVC и H.265/HEVC динамические метаданные находятся на уровне элементарного потока в SEI user_data_registered_itu_t_t35 (рис. 10). У VP9 метаданные они указаны в BlockAddID (ITU-T T.35 metadata) WebM контейнера. У AV1 метаданные указаны в metadata_itut_t35() OBU синтаксисе.

 

Рис. 10. Динамические метаданные HDR10+, SEI сообщение.

 

Dolby Vision

Проприетарный и наиболее сложный HDR стандарт, разработанный и лицензируемый компанией Dolby.  HDR стандарт, описывающий возможность применения сразу двух слоев в одном видеофайле:  базового (Base layer, BL) и улучшенного (Enhancement layer, EL). В действительности наличие двух видео слоев встречается редко из-за большого размера видео файлов и сложностей с подготовкой и воспроизведением такого контента.

Стандарт Dolby Vision имеет 5 предопределенных профилей: 4, 5 ,7 , 8 (8.1 и 8.4) и 9.

 Поддерживаемые кодекиМаксимальное разрешениеМаксимальная частота кадров (fps)Цветовая глубинаНаличие 2 слояКолориметрические параметрыСовместимость с другими стандартами SDR/HDRНазначениеНаличие VUI данных
Профиль 41H.265/Hevc Main 10 profile3840х21606010 битBL и ELBT. 2020, BT.709BL совместим с SDR (2) опционально (2,2,2)
Профиль 5H.265/Hevc Main 10 profile7680х432012010 бит

Нет, только

BL
BT. 2020

Нет

(0)
HLS и MPEG-DASH платформыопционально (2,2,2)
Профиль 7H.265/Hevc Main 10 profile3840х21606010 битBL и ELBT. 2020(6)Blu-ray Discобязательно (9,16,9) для EL
Профиль 8.1H.265/Hevc Main 10 profile7680х432012010 бит

Нет, только

BL
BT. 2020HDR10  (1)HLS и MPEG-DASH платформыобязательно (9,16,9)
Профиль 8.42H.265/Hevc Main 10 profile   

Нет, только

BL
BT. 2020, BT. 2100, BT. 709

HLG,

SDR (2, 4)
HLS и MPEG-DASH платформыопционально (9,18,9 или 9,14,9)
Профиль 9H.264/AVC High profile1920x1080608 бит

Нет, только

BL
BT. 709

SDR

(2)
MPEG-DASH платформыопционально 

1 Профиль 4 не поддерживается для новых приложений и поставщиков услуг.

2 Профиль 8.4  находится на этапе стандартизации.Максимальный уровень яркости — 1000 кд/м2

BL для профилей 5,8,9 и EL для профилей 4 и 7 задействуют PQ EOTF, поэтому  они не совместимы с SDR дисплеями. Такие профили используют динамические метаданные, схожие с метаданными у HDR10+. Это позволяет эффективно редактировать каждую сцену в процессе мастеринга и точно передавать задумку автора. При воспроизведении контента дисплей перестраивается от сцены к сцене, базируясь на динамических метаданных.

У H.264/AVC и H.265/HEVC видеоформатов динамические метаданные Dolby Vision находятся на уровне элементарного видео:

  • В SEI user_data_registered_itu_t_t35 ST2094-10_data ();
  • В заголовке NAL 62 на уровне элементарного потока.

Что касается Dolby стандартизировали идентификацию Dolby Vision для MPEG-2 transport stream и MP4 медиаконтейнера. В MPEG-2 TS информирование осуществляется с помощью DOVI Video Stream Descriptor в PMT таблице, по содержанию которой можно определить профиль, уровень, наличие слоев и совместимость.

BL слой, совместимый с SDR или HDRBL слой, несовместимый с SDR и HDRSecondary Dolby Vision PID

stream_type в PMT таблице должен быть:

0x1B для AVC

0x24 для HEVC

stream_type в PMT таблице должен быть равен 0x06Stream_type в PMT таблице должен быть равен  0x06
bl_present_flag = 1bl_present_flag = 1bl_present_flag = 0
el_present_flag = profileel_present_flag = 0el_present_flag set to 1
dv_bl_signal_compatibility_id соответствует BL signal compatibility IDdv_bl_signal_compatibility_id = 0x0dv_bl_signal_compatibility_id соответствует BL signal compatibility ID

В MP4 контейнере с этой целью используются конфигурационные атомы: dvcc (для профилей ниже или равного 7), dvvc ( для профилей выше 7, но ниже 10), dvwc (для профилей равного и выше 10 — зарезервировано на будущее).

Также задействуется один из атомов:

  • dvav, dva1, dvhe, dvh1, avc1, avc3, avc2, avc4, avc1, avc3, hev1, hvc1 для инициализации декодера; 
  • avcс, hvcc для информирования о конфигурации кодера;
  • avce, hvce для описания EL при наличии 2-го видеослоя (профиль 4 и 7).

Рис. 11. Конфигурационные атомы Dolby Vision из MP4 медиаконтейнера.

Общий обзор стандартов HDR

 HDR 10HGLHDR 10+Dolby Vision
ВидеокодекH.264/AVC, H.265/HEVC, VP9, AV1H.264/AVC, H.265/HEVC, VP9, AV1H.264/AVC, H.265/HEVC, VP9, AV1H.264/AVC, H.265/HEVC
Тип HDR метаданныхстатическиеотсутствуютдинамическиединамические3
Обратная совместимость с SDR/HDRотсутствуетSDRHDR 10HDR10, HLG, SDR
EOTFPQHLGPQPQ, HLG
Колориметрические параметрыBT. 2020BT. 2020, BT. 2100, BT. 709BT. 2020BT. 2020, BT. 2100, BT. 709
Максимальный уровень яркости10000 кд/м21000 кд/м210000 кд/м210000 кд/м2
Возможный медиаконтейнерMP4, MKV/Webm, TSMP4, MKV/Webm, TSMP4, MKV/Webm, TSMP4, TS

3 Динамические: профили 4 (EL), 5, 7, 8.1, 9. Отсутствуют в 8.4.

Воспроизведение HDR контента происходит следующим образом (рис. 12):

  1. Приложение извлекает элементарное видео и метаданные HDR (при наличии) из MP4, MKV/WebM, TS медиаконтейнеров, затем передает данные в декодер;
  2. Декодер декодирует видеопоследовательность и извлекает статические или динамические HDR метаданные, либо получает статические HDR метаданные по фреймворку из медиаконтейнера;
  3. Декодер передает декодированные кадры и HDR метаданные на дисплей;
  4. Дисплей выводит изображение.

HLG не имеет метаданных. Если есть 2 видеослоя (BL/EL — профили 4 или 7 Dolby Vision), экстрактор их извлекает, но приложение может решить, какой слой и соответствующий декодер выбрать, в зависимости от возможностей платформы.

Рис. 12. Общий процесс воспроизведения HDR контента

Валидацию HDR видеопотока условно можно разделить на несколько этапов.

  1. Проверка видеопоследовательности на соответствие  колориметрическим параметрам BT. 2020/2100  и функции преобразования видеосигнала EOTF. Для всех 4 видеокодеков (H.264/AVC, H.265/HEVC, VP9, AV1) стандартизован идентичный набор параметров:
    • colour_primaries, указывает координаты основных компонентов цветности, как указано в терминах системы CIE 1931;
    • transfer_characteristics, указывает эталонную оптико-электронную передаточную характеристическую функцию исходного изображения;
    • matrix_coeffs описывает матричные коэффициенты, используемые при получении сигналов яркости и цветности из зеленого, синего и красного цветов или основных цветов Y, Z и X.

    Расположение параметров представлено ниже.

    Для H.264/AVC и H.265/HEVC:

    • на уровне элементарного потока в заголовках VUI: Sequence Parameter Set → VUI → video_signal_type_present_flag → colour_description_present_flag (рис. 8);
    • на уровне MP4 медиаконтейнера в атомах avcc, hvcc или colr (рис. 8);
    • на уровне MKV/WebM медиаконтейнера в соответствующем видео TrackEntry и атоме colour.

    Для VP9:

    • MP4: в атомах vpcс и сolr;
    • MKV/WebM: атом colour.

    Для AV1:

    • на уровне элементарного потока в OBU Sequence Header → color_config → if(color_description_present_flag);
    • на уровне MP4 медиаконтейнера в атомах av1с и colr;
    • на уровне MKV/WebM медиаконтейнера в соответствующем видео TrackEntry и атоме colour.
  2. Проверка на соответствие разрешения, соотношения сторон, частоты кадров, глубины цвета, видеокодека.
  3. Проверка HDR метаданных.

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

С помощью StreamEye вы можете проверить параметры на уровне элементарного потока, а Stream Analyzer поможет верифицировать параметры как на уровне элементарного потока, так и на уровне медиаконтейнера. 

 

 

Запросить демоверсию StreamEye Studio

 

ИСТОЧНИКИ

  1. HDR Ecosystem Tracker fall 2020 update, available from https://www.flatpanelshd.com/focus.php?subaction=showfull&id=1606977052
  2. Recommendation ITU-R BT.2020-2 (10/2015) Parameter values for ultra-high definition television systems for production and international programme exchange
  3. SMPTE ST 2084:2014 High Dynamic Range ElectroOptical Transfer Function of Mastering Reference Displays
  4. SMPTE ST 2086:2014 Mastering Display Color Volume Metadata Supporting High Luminance and Wide Color Gamut Images
  5. CTA-861.3-A, HDR Static Metadata Extensions 
  6. ITU-T H.264, Infrastructure of audiovisual services – Coding of moving video
  7. ITU-T H.265, Infrastructure of audiovisual services – Coding of moving video
  8. ISO/IEC 14496-12, Information technology — Coding of audio-visual objects — Part 12 : ISO base media file format
  9. WebM Container Guidelines, available from https://www.webmproject.org/docs/container/
  10. Matroska Media Container,  available from https://www.matroska.org/technical/elements.html
  11. AV1 Bitstream & Decoding Process Specification,  available from  https://aomediacodec.github.io/av1-spec/av1-spec.pdf
  12. ARIB STD-B67, Essential Parameter Values For The Extended Image Dynamic Range Television (Eidrtv) System For Programme Production 
  13. Recommendation ITU-R BT.2100-2 Image parameter values for high dynamic range television for use in production and international programme exchange
  14. HDR10+ System Whitepaper, available from https://hdr10plus.org/wp-content/uploads/2019/08/HDR10_WhitePaper.pdf
  15. SMPTE ST 2094-40:2016  Dynamic Metadata for Color Volume Transform — Application #4
  16. User_data_registered_itu_t_t35 SEI message for ST 2094-40
  17. Dolby Vision Profiles and Levels Version 1.3.3 Specification 
  18. Dolby Vision Streams Within the ISO Base Media File Format Version 2.2
  19. Dolby Vision Streams Within the MPEG-2 Transport Stream Format 
  20. Dolby Vision Streams within the HTTP Live Streaming format
  21. Dolby Vision Streams within the MPEG-DASH format
  22. SMPTE ST 2094-10:2016,  Dynamic Metadata for Color Volume Transform – Application #1
  23. INTERNATIONAL APPLICATION PUBLISHED UNDER THE PATENT COOPERATION TREATY (PCT), International Application Number PCT/US20 16/059862
  24. ETSI TS 103 572, HDR Signalling and Carriage of Dynamic Metadata for Colour Volume Transform; Application #1 for DVB compliant systems

 

 

 


Автор

Александр Круглов

Александр Круглов — ведущий инженер компании Elecard. Работает в сфере видеоанализа с 2018 года. Александр отвечает за работу с крупнейшими клиентами Elecard, такими как Netflix, Cisco, Walt Disney Studios и др.