Ультимативный гайд по HDR

Купил ты, значит такой, HDR-монитор и думаешь “Ну сейчас начнется праздник для глаз!” А потом включил, запустил один из типичных HDR-роликов на ютубе, смотришь на это всё и не понимаешь, почему так не очень. Щас будем разбираться.

Ультимативный гайд по HDR

Содержание

Немного вводной инфы про HDR

HDR (high dynamic range) — если дословно, высокий динамический диапазон. Простым языком, это значительное расширение диапазона яркости картинки на экране по сравнению со стандартным диапазоном (он же SDR — standard dynamic range). На практике это убирает засветы, позволяет видеть больше деталей и делает картинку более приближенной к возможностям человеческого зрения. Бонусом идет еще более широкий цветовой охват, но, как по мне, это второстепенный фактор, и яркость решает куда сильнее в восприятии.

Очень условное, но наглядное описание HDR
Очень условное, но наглядное описание HDR

Сам стандарт поддерживает до 10000 нит яркости и цветовой охват BT.2020, но таких экранов в потребительском сегменте по сути нет (пока что) либо они слишком дороги. Чаще всего можно встретить экраны с яркостью ~1000 нит и охватом P3. Но даже из самых простеньких экранов в 400 нит можно выжать максимум по HDR, если всё правильно настроить, и картинка будет приятнее SDR.

Типичные цветовые охваты экранов
Типичные цветовые охваты экранов

Данный гайд подойдет для HDR-экранов любой яркости и цветового охвата. Просто имейте ввиду, что на бюджетных HDR в 400 нит результат будет не таким впечатляющим, как на 1000 нит и более, но всё равно можно замутить приятнее, чем в SDR. Также неважно, какая технология подсветки у экрана, но стоит иметь ввиду, что те же OLED дадут куда более крутой результат за счет особенностей своей работы.

На всякие сертификации типа Vesa DisplayHDR 400 можете не обращать внимания, зачастую их используют маркетологи для того, чтобы показать, что вот у нас экран поддерживает HDR, и не важно, что яркость такая низкая.

Итак, погнали.

Настройка HDR

Всё перечисленное далее актуально для Windows 11 и экранов с поддержкой HDR.

Подготовка системы

Предварительно обновляем систему и драйвер видеокарты до последних версий.

В первую очередь включаем HDR в настройках Windows. Обязательно отключаем AutoHDR (о нем позже). При этом на мониторе или телеке нужно тоже включить HDR, если не включается автоматически.

Включаем HDR. Здесь же ссылка на Windows HDR Calibration
Включаем HDR. Здесь же ссылка на Windows HDR Calibration

Крайне рекомендую также отключать различные улучшайзеры картинки типа динамичных цветов и прочего подобного непотребства. В телеках еще бывает необходимо отключить динамическую гамму и выбрать HGIG, что позволит отключить обработку гаммы телеком (игровые движки и так это делают) и избежать двойного тонмаппинга. HDR-мониторы, как правило, уже находятся в режиме HGIG.

Windows теперь находится условно в SDR-режиме, но распознает HDR контент. Там рядом есть ползунок яркости SDR, который влияет как на яркость SDR-контента, так и может затрагивать HDR местами. Значение ставить на свой вкус, но рекомендуется 31 (что соответствует стандартным 203 нит для средней яркости HDR).

Значение 31 соответствует 203 нит
Значение 31 соответствует 203 нит

Далее в драйвере видюхи проверяем следующие настройки экрана:

  • Глубина цвета: 10 бит или выше
  • Динамический диапазон: Полный (Full)
  • Формат цвета: RGB (или RGB 4:4:4)
Пример для Nvidia
Пример для Nvidia

Если экран подключен по DisplayPort, то обычно встают нормальные максимальные настройки, указанные выше. По HDMI часто встают настройки под стандарты видео, так что лучше лишний раз проверить и поменять.

Калибровка HDR

Теперь будем создавать ICC-профиль для HDR, где зададим параметры предельной яркости под конкретный экран. Делается это приложением Windows HDR Calibration, которое качаем из Microsoft Store. Лучше калибровать при выключенном свете.

Ультимативный гайд по HDR

В целом, там всё интуитивно, двигаем ползунки, пока квадраты не сольются с фоном. Всего 4 параметра:

  1. Минимальная яркость. Для большинства экранов значение 0.
  2. Максимальная яркость. Это предельная яркость вашего экрана. Лучше запомнить это число, пригодится в дальнейшем.
  3. Максимальная яркость полнокадровая. Часто равняется предыдущему пункту. На практике особо ни на что не влияет.
  4. Насыщенность. Крайне не рекомендую менять, лучше оставить на нуле. По сути это просто искусственное задирание насыщенности цвета, может привести к клиппингу.

После калибровки в настройках дисплея появится профиль, который могут считывать некоторые программы и игры. А могут и не считывать, потому что не все приложения или игры умеют работать с ICC-профилями. Но как же хорошо, что на ПК всё решаемо.

Небольшой нюанс

При включенном HDR интерфейс системы может показаться немного выцветшим и это действительно так. Дело в том, что Windows при включенном HDR всё равно работает в цветовом пространстве sRGB. При этом гамма тоже взята по стандарту sRGB, в отличие от SDR-режима, и она отличается от типичной для мониторов гаммы 2.2 именно в темных оттенках. На HDR-контент это не влияет, но SDR-контент будет с чуть выцветшими темными участками.

Отличия в гамме между sRGB и 2.2
Отличия в гамме между sRGB и 2.2

Для тех, кто не хочет постоянно переключаться между HDR и SDR для SDR-контента, есть фиксы этой проблемы (как этот). Также не забывайте про горячие клавиши Win+Alt+B для быстрого переключения между режимами.

Про калибровку цвета

Описанная выше калибровка HDR позволит задать только предельные значения яркости экрана. А что по цвету? Тут тоже есть свои особенности. Вообще у любого выводимого изображения есть много параметров, и ключевыми из них являются яркость, цветовой пространство, баланс белого (цветовая температура) и гамма. Последние два очень могут бросаться в глаза при отклонении от нормы, особенно баланс белого. Наверняка многие сталкивались с тем, что экран желтит, зеленит и т.д. Это и есть отклонения баланса белого от нейтрального белого цвета (6500 К или D65, актуально на всех типовых цветовых пространствах). Обычно у телеков он настраивается очень гибко от черного к белому, на мониторах только непосредственно точка белого, и то в HDR-режиме настройки цвета монитора могут быть недоступны. В этом случае помогут ползунки цвета в настройках драйвера. Очень рекомендую настроить этот параметр при возможности, либо колориметром и программами типа HCFR, либо заказав калибровку экрана.

Калибровка баланса белого в HCFR
Калибровка баланса белого в HCFR

Гамма в HDR динамическая, в отличие от линейной SDR, но нижняя часть гаммы HDR в идеале должна быть схожа с SDR (обычно это гамма 2.2 на яркости ~100 нит), а верхняя часть уже подстраивается под максимальную яркость экрана. Это очень грубое и схематичное описание, но не стану утомлять лишними деталями.

HDR на консолях

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

Игры и HDR

Тут всё печально на самом деле. В большинстве игр HDR просто очень плох, мягко говоря. Самые популярные проблемы это неверная гамма, особенно в нижних участках, завышенная точка черного (тени выглядят “серыми”) и пересветы ярких областей, как в SDR-режиме, без какого-то тонмаппинга.

Что за тонмаппинг

Тонмаппинг, тоновая коррекция (tone mapping) — преобразование изображения с более высокими данными в менее высокие. Проще говоря, HDR → SDR или HDR → HDR с меньшей яркостью. Это один из ключевых моментов получения приятной картинки, ведь смотреть на обрезанные яркие участки яркостью, например, в 10000 нит на экране 1000 нит не особо приятно. Такая обрезка называется “клиппинг”.

Примеры клиппинга на картинках. Сконвертированы из HDR, т.к. сайт поддерживает только SDR-картинки.

Есть еще обратный тонмаппинг (inverse tone mapping), когда SDR → HDR, и в каких-то играх именно так внедряют HDR, но тоже делают это абы как.

Почему HDR в играх плохой

В чем причина? Вероятнее всего, при разработке игр просто не используют HDR-мониторы, а в движке просто делают привязку HDR со стандартными неоптимальными настройками, ничего потом не проверяя и не тестируя. Либо обратный тонмаппинг на скорую руку.

Вот тут есть инфа о качестве HDR в некоторых играх.

И в очередной раз лучшая платформа доказывает, что она master race, ведь на ней есть моды.

Псевдо-HDR

Наверняка вы слышали про AutoHDR и RTX HDR. По сути эти штуки сделаны под игры, у которых нет родного HDR, и фактически являются фильтрами изображения, которое уже отрендерилось движком игры и выведено на экран.

Пример из маркетинговых материалов Nvidia
Пример из маркетинговых материалов Nvidia

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

Исправляем HDR в играх

На самом деле всё очень просто. Нам нужно как-то переписать шейдеры, отвечающие за освещение и прочие эффекты. Для этого существует ReShade. Да-да, тот самый, которым часто любят делать васянские цветокоры. Но функционал проги куда шире обычных фильтров поверх картинки. С помощью ReShade как раз и можно править шейдеры на уровне движка. А эти правки уже сделаны большим сообществом в виде модов под названием RenoDX и Luma.

С помощью "тепловой карты" можно подсветить наиболее яркие участки в кадре. При SDR солнца не будет видно, при HDR будет.
С помощью "тепловой карты" можно подсветить наиболее яркие участки в кадре. При SDR солнца не будет видно, при HDR будет.

Эти аддоны к решейду исправляют гамму, делают правильный тонмаппинг и в большинстве случаев позволяют регулировать среднюю яркость и яркость интерфейса независимо. Бонусом можно настроить картинку под себя как угодно, с помощью ползунков, как в каком-нибудь лайтруме. И всё это на уровне движка, перед выводом картинки на экран.

Более того, эти моды также могут добавлять правильный HDR в те игры, где его изначально не было.

Список довольно внушительный и постоянно дополняется.

Установка простая. Скачиваем ReShade, обязательно вариант with full add-on support. При установке можно все расширения можно пропустить, но я обычно ставлю плагины от lilium. Затем скачиваем аддон RenoDX или Luma (для конкретной игры или движка в целом). Устанавливаем ReShade, затем кидаем аддон в папку рядом с exe игры и решейдом. При установке решейда нужно выбрать API игры, если не знаете, можно посмотреть, например, на PCGamingWiki, обычно внизу страницы игры.

Пример настроек RenoDX в ReShade и мониторинга плагином lilium__hdr_and_sdr_analysis.fx
Пример настроек RenoDX в ReShade и мониторинга плагином lilium__hdr_and_sdr_analysis.fx

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

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

Видео и HDR

С HDR-видео всё немного проще, но со своими особенностями.

Для видео существует несколько стандартов HDR. Самый распространенный — HDR10, где просто задается пиковая яркость по всему видео. Есть также HDR10+ и Dolby Vision, форматы с динамическими метаданными, подстраивающими картинку под каждую сцену или даже кадр. Но их поддержка есть обычно в продвинутых телеках или приставках для просмотра видео. На мониторах в основном только HDR10, но по факту его с головой достаточно для получения отличной картинки по сравнению с SDR.

Ультимативный гайд по HDR

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

Онлайн-видео HDR

Для просмотра HDR-видео на онлайн-сервисах (YouTube, Netflix и др.) обычно достаточно активировать HDR в настройках Windows. Но проблема в том, что браузеры пока не умеют в тонмаппинг видео. Стандарт HDR поддерживает яркость вплоть до 10000 нит, а ютубчик кушает видео с любой пиковой яркостью и ее же выводит. Поэтому нет никакого смысла смотреть все эти HDR-видосы на ютубе, ведь получим клиппинг (много рекламных HDR-видео там 4000-10000 нит). Остается надеяться, что со временем браузеры научатся считывать пиковую яркость калибровки HDR и применять тонмаппинг.

Смотрим HDR-видео

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

Я опишу рабочий способ в плеере MPC-HC. При его установке можно выбрать MPC Video Renderer, это обработчик картинки, который умеет в HDR, в Dolby Vision и даже в тонмаппинг HDR → SDR, но пока не умеет в HDR → HDR, что критически важно для избежания клиппинга.

Для тонмаппинга нам понадобится обработчик madvr, можно скачать отсюда. Нужно качать основной архив, а также test build, установить madvr из основного архива, затем закинуть файлы из тестового билда в папку установки madvr.

В настройках MPC-HC идем во Встроенные фильтры → Декодер видео, там выбираем декодер D3D11 и вашу самую мощную видеокарту.

Ультимативный гайд по HDR

Далее идем в Воспроизведение → Вывод, там выбираем madvr, идем в его настройки, затем в вашем экране выбираем hdr → tone map HDR using pixel shaders, и тут выставляем пиковую яркость экрана, которая была при калибровке ранее. При этом не забываем отметить output video in HDR format. Сохраняем настройки, закрываем плеер, открываем HDR-видео и радуемся приятной картинке с тонмаппингом под яркость вашего экрана.

Ультимативный гайд по HDR
Ультимативный гайд по HDR

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

Ультимативный гайд по HDR
101
9
3
1
1
85 комментариев