Cобираем информацию по Dolby Vision и пытаемся корректно отобразить такое видео в MPC-BE.
Описание патента по Dolby Vision (https://www.freepatentsonline.com/y2019/0373290.html).
Сэмплы можно найти на странице Samples - Official Kodi Wiki (https://kodi.wiki/view/Samples#4K_(UltraHD)_Formats).
Сэпмлы можно условно разделить на две группы:
1. Совместимые, которые нормально отображаются на большинстве плееров.
2. Несовместимие, которые нормально отображаются только на плеерах поддерживаемых Dolby Vision. На других плеерах цвета будут сильно искажены.
Плееры, которые поддерживают Dolby Vision:
* Кино и ТВ. Необходимо установить в систему Dolby Vision Extension.
* mpv. Необходимо выбрать вывод видео - gpu-next. Я советую плеер mpv.net (https://github.com/mpvnet-player/mpv.net/releases), в котором сделать это можно через окно настроек без ручного редактирования конфигурационных файлов.
Поддержка для MPC VR в разработке...
Для тестирования файлов Dolby Vision в MPC-BE нужно использовать:
1. MPC VR 0.6.8.2113 или новее (https://disk.yandex.ru/d/X0EVMKP4TcmnHQ)
2. MPC-BE 1.6.8.24 или новее (https://mpc-be.org/forum/index.php?topic=4.0).
Поддержка Dolby Vision реализована в библиотеке libplacebo (https://github.com/haasn/libplacebo/blob/master/src/shaders/colorspace.c).
Преобразования цветов происходит в функции pl_shader_decode_color, из которой можно выделить следующие этапы:
1. Масштабирование
ident_t scale = SH_FLOAT(pl_color_repr_normalize(repr));
GLSL("color.rgb *= vec3("$"); \n", scale);
Этап не сильно важен, на оттенки цветов почти не влияет.
2. Изменение формы
pl_shader_dovi_reshape(sh, repr->dovi);
Важный этап, но влияет больше на яркость, чем на цвета.
3. Цветовые преобразования
pl_transform3x3 tr = pl_color_repr_decode(repr, params);
...
GLSL("color.rgb = "$" * color.rgb + "$"; \n", cmat, cmat_c);
Самый важный этап, использует ycc_to_rgb_matrix и ycc_to_rgb_offset.
4. Эм-м, дополнительные цветовые преобразования.
pl_matrix3x3_mul(&dovi_lms2rgb, &repr->dovi->linear);
...
GLSL("color.rgb = "$" * color.rgb; \n", mat);
Этап использует rgb_to_lms_matrix.
Случайно найденные сэмплы
Извините, вам запрещён просмотр содержимого спойлеров.
Выложил 3 варианта (https://disk.yandex.ru/d/tc4s2zb6KwzsgQ) поддержки Dolby Vision для DX9.
mpcvr_0.6.8.2080_dovi_dx9_lut_float32.zip
mpcvr_0.6.8.2081_dovi_dx9_lut_float16.zip
mpcvr_0.6.8.2082_dovi_dx9_func.zip
Кто имеет возможность, сравните по эффективности.
Проверил на ролике dolby-vision-containers-(www.demolandia.net).mp4 (https://www.demolandia.net/downloads.html?id=79032546) (23,976 к/сек), на котором кадры не дропаются. Режим энергопотребления - максимальная производительность. Процессор i5-11500, встройка Intel UHD 750.
dx9_lut_float32/16
CPU - 9%, GPU - 32%, 3,3W
dx9_func
CPU - 8%, GPU - 37%, 3,7W
Установил MpcVideoRenderer-0.6.8.2107_git2023.08.03-3257844
С Dovi файлами в статистике отсутствует Convert to SDR.
Но если на лету отключить эту опцию, появится Not used, и опять включить,
то только тогда получим Convert to SDR.
Пример > https://disk.yandex.ru/i/buGWQc2T0tJZAA
Цитата: MPCfan от 03 августа 2023, 23:09:14С Dovi файлами в статистике отсутствует Convert to SDR.
Нужно больше информации.
С каким именно файлом проблема? Какие настройки видеорендерера.
04 августа 2023, 06:26:01У меня проблемы нет.
Файл - dolby-vision-containers-(www.demolandia.net).mp4 (https://www.demolandia.net/downloads.html?id=79032546)
Настройки по умолчанию, кроме включенной статистики.
(https://i.ibb.co/swsFfpN/convert-to-sdr.jpg) (https://ibb.co/swsFfpN)
Настройки рендерера по умолчанию. С вашим файлом также отсутствует. У меня софтовое декодирование.
И ещё. Если статистику включать через рендерер, то Convert to SDR есть, Но через Ctrl+J нет.
Мой файл > https://disk.yandex.ru/d/5smoRy52XEOxIA
P.S. Такое поведение есть и в первой доступной сборке с dovi > https://disk.yandex.ru/i/OduK91CwzcEweg
Ещё дополнение. В эксклюзиве через Ctrl+j статистика полная с Convert to SDR.
MPCfan
Попробуйте 0.6.8.2112.
Да, теперь есть Convert to SDR в DX11 и 9.
У кого-нибудь есть видео HDR10 compatible, чтобы при изменении опции "Prefer Dolby Vision over PQ and HLG" цвета заметно менялись. Даже для случая, когда опция "P010/P016" выключена.
PS: Выложил 0.6.8.2113.