Dolby Vision: различия между версиями

Материал из wolfram
Перейти к навигации Перейти к поиску
мНет описания правки
мНет описания правки
Строка 4: Строка 4:


Dolby Vision - победил, причин много, но основные: отличная среда для создания контента. Студиям попросту было интересно и удобно с этим работать.
Dolby Vision - победил, причин много, но основные: отличная среда для создания контента. Студиям попросту было интересно и удобно с этим работать.




Строка 14: Строка 15:
Blu-ray - имеет двухслойный поток 7-й профиль.
Blu-ray - имеет двухслойный поток 7-й профиль.


Источником всех форматов для ТВ является Blu-ray. Из него уже получают однослойные комбинированные потоки. За 4 года нет прогресса по части работы с этими делами.
Источником всех форматов для ТВ является Blu-ray. Из него уже получают однослойные комбинированные потоки. За 4 года нет прогресса по части работы с данными форматами. Все инструменты совершенно не приветливы, работают из под командной строки.
 
На данную тему есть 2 русскоязычных форма где обсуждаются темы связанные с Dolby Vision: [http://webos-forums.ru/topic4970.html webos-forums] и [https://forum.ixbt.com/topic.cgi?id=60:4764 forum.ixbt].
 
 
Стремится мы будем к 8-му профилю, так как большинство новых ТВ с ним работают хорошо, так же немаловажным фактом является совместимость с обычным HDR. То есть даже если ТВ не знает о DV, он интерпретирует его как HDR.
 
=== Первый вариант развития событий: ===
У нас имеется Remux в m2ts, MP4 или MKV с двумя видеопотоками. Для преобразования этого дела в 8-мой профиль потребуется несколько шагов преобразований:
[[Файл:TsMuxer пример распаковки.png|мини|TsMuxer пример распаковки]]
 
==== Распаковка контейнера ====
Распаковать контейнер удобнее всего в '''tsMuxer'''. Скачать утилиту можно на [https://github.com/justdan96/tsMuxer github].
 
К счастью у данной утилиты есть интерфейс.
 
Закидываем в Окно нужный нам контейнер,
 
Отмечаем требуемые треки в списке Tracks.
 
В Output отмечаем Demux
 
Указываем место для сохранения.
 
Готово, далее мы будем иметь дело именно с дорожками в чистом виде в форматах: '''hevc, dts, ac3, thd, sup'''.
 
На выходе мы получаем в нужной папке 2 файла с расширением: '''hevc''' или '''h265'''.
 
Переименуем их для удобства восприятия
 
- Тот что по тяжелее это основной поток '''BL'''
BL.hevc
- Более лёгкий это метаданные '''EL_RPU'''.
EL_RPU.hevc
----
 
==== Преобразование '''BL + EL_RPU''' в '''BL+RPU''' ====
Есть два способа это сделать:
 
===== Первый - dovi_tool =====
Скачать утилиту можно на [https://github.com/quietvoid/dovi_tool github].
 
Исполняемый файл '''dovi_tool.exe''' лучше всего разместить в папке с треками'''.'''
 
Запускаем командную строку в этой папке, выполняем действия от имени '''dovi_tool.exe'''
 
Извлекаем '''RPU''' из '''BL+RPU''', файл меньшего размера.
.\dovi_tool.exe -m 2 extract-rpu -i .\EL_RPU.hevc -o .\RPU.bin
Вставляем получившийся '''RPU''' в '''BL'''
.\dovi_tool.exe inject-rpu -i .\BL.hevc --rpu-in .\RPU.bin -o .\BL_EL_RPU.hevc
На выходе мы имеем комбинированный трек BL_EL_RPU.hevc, который несет в себе информацию о файлах '''BL''' и '''EL_RPU'''.
 
Этот файл можно уже укладывать в контейнер MP4.
 
==== Второй - Скрипт от какого го человека ====
Скачиваем файл с облака.
 
Внутри архива BAT файлы, Запускаем MUX_AND_CONVERT_TO_PROFILE_81.bat.
 
Командная строка попросит пометить '''BL.hevc''' файл в окно, затем нажать ENTER.
 
Командная строка попросит поместить '''EL_RPU.hevc''' файл в окно, затем нажать ENTER.
 
На выходе в папке с BAT файлами получим файл '''BL_EL_RPU.hevc'''
 
Теперь его так же можно упаковывать в контейнер MP4.
----
 
==== Упаковка в контейнер MP4 ====
Выполняется это при помощи утилиты mp4muxer. Скачать её можно со страницы [https://github.com/DolbyLaboratories/dlb_mp4demux githab].
 
Исполняемый файл из папки BIN лучше всего разместить рядом с '''BL_EL_RPU.hevc'''.
 
Выполняем простую команду:
.\mp4muxer.exe -i BL_EL_RPU.hevc --dv-profile 8 --dv-bl-compatible-id 1 -o BL_EL_RPU.mp4
Всё файл запакован в контейнер с 8-мым профилем. Можно даже попробовать его воспроизвести на ТВ, чтобы понять всё ли хорошо.
 
Теперь можно наполнять контейнер MP4 различными дорожками.
----
 
==== Формирование конечного контейнера ====
У фильма наверняка есть куча аудио дорожек и субтитров.
 
Я на момент написания статьи предпочитаю использовать звук в формате ac3 с битрейтом 640. Причин несколько: ТВ не поддерживает DTS, нет оборудования для качественного воспроизведения звука, что не дает возможности услышать разницу, размер.
 
Поэтому я конвертирую все звуковые дорожки в ac3. Способов много:
 
- UsEac3To
 
- XviD4PSP
 
Описание перекодирования Аудио, это отдельная тема.
 
Тоже самое касается субтитров. При экспорте из m2ts или MKV, субтитры имеют формат sup. И даже этот формат является контейнером. В любом случае это формат представляет из себя картинки с текстом, нам же нужно преобразовать это в текст. Использовать для этого лучше всего.
 
- Subtitle Edit
 
А теперь к самому процессу создания фильма.
 
Для этого используется утилита mp4box входящая в состав GPAC. Скачать его можно с [https://gpac.wp.imt.fr/ официального сайта].
 
Команда выглядит так:
'''.\mp4box.exe''' -brand mp42isom -ab dby1 -no-iod -add '''BL_EL_RPU.mp4''' -add '''audio1.ac3''':lang=ru:name="название" '''track.srt''':lang=ru:name="название" '''video_out.mp4'''
К аудио дорожке добавляются через двоеточие параметры:
 
''':name'''="любой текст"
 
''':lang'''=ru (язык дорожки ru, en)
 
''':delay'''=20 (задержка в миллисекундах)
 
 
После этого будет сформирован конечный файл, со звуком и субтитрами, готовый к использованию.

Версия от 18:20, 11 марта 2022

"Новый формат качества изображения" - почему в кавычках? Ему уже 5 лет. В какой то момент началось противостояние Dolby Vision с HDR10+, в итоге со вторым так и не вышло не одного диска.

В чем особенность всех эти HDR-ов - в том, что управление по яркость ТВ полностью передается видео. В HDR при запуске фильма, файл видео передал требуемы пределы по яркости, цветовому пространству, гамме ТВ. Но наступила эра динамичного HDR. Как раз эти 2 формата упомянутых выше в противостоянии, и занялись этим. Суть динамики в том, что данные для параметров яркости и производных могут меться от кадра к кадру. У Dolby Vision есть инструментарий для ручной творческой настройки. У конкурента же HDR10+, алгоритм автотипический.

Dolby Vision - победил, причин много, но основные: отличная среда для создания контента. Студиям попросту было интересно и удобно с этим работать.


Ну а теперь к фактам. Что мы имеем на данный момент. Появилось 3 основных версии данного стандарта. 5-тый, 7-й и 8-й стандарты.

На ТВ старше 19 года был 5-тый стандарт.

На ТВ после 19 года преимущественно 8-й.

Blu-ray - имеет двухслойный поток 7-й профиль.

Источником всех форматов для ТВ является Blu-ray. Из него уже получают однослойные комбинированные потоки. За 4 года нет прогресса по части работы с данными форматами. Все инструменты совершенно не приветливы, работают из под командной строки.

На данную тему есть 2 русскоязычных форма где обсуждаются темы связанные с Dolby Vision: webos-forums и forum.ixbt.


Стремится мы будем к 8-му профилю, так как большинство новых ТВ с ним работают хорошо, так же немаловажным фактом является совместимость с обычным HDR. То есть даже если ТВ не знает о DV, он интерпретирует его как HDR.

Первый вариант развития событий:

У нас имеется Remux в m2ts, MP4 или MKV с двумя видеопотоками. Для преобразования этого дела в 8-мой профиль потребуется несколько шагов преобразований:

TsMuxer пример распаковки

Распаковка контейнера

Распаковать контейнер удобнее всего в tsMuxer. Скачать утилиту можно на github.

К счастью у данной утилиты есть интерфейс.

Закидываем в Окно нужный нам контейнер,

Отмечаем требуемые треки в списке Tracks.

В Output отмечаем Demux

Указываем место для сохранения.

Готово, далее мы будем иметь дело именно с дорожками в чистом виде в форматах: hevc, dts, ac3, thd, sup.

На выходе мы получаем в нужной папке 2 файла с расширением: hevc или h265.

Переименуем их для удобства восприятия

- Тот что по тяжелее это основной поток BL

BL.hevc

- Более лёгкий это метаданные EL_RPU.

EL_RPU.hevc

Преобразование BL + EL_RPU в BL+RPU

Есть два способа это сделать:

Первый - dovi_tool

Скачать утилиту можно на github.

Исполняемый файл dovi_tool.exe лучше всего разместить в папке с треками.

Запускаем командную строку в этой папке, выполняем действия от имени dovi_tool.exe

Извлекаем RPU из BL+RPU, файл меньшего размера.

.\dovi_tool.exe -m 2 extract-rpu -i .\EL_RPU.hevc -o .\RPU.bin

Вставляем получившийся RPU в BL

.\dovi_tool.exe inject-rpu -i .\BL.hevc --rpu-in .\RPU.bin -o .\BL_EL_RPU.hevc

На выходе мы имеем комбинированный трек BL_EL_RPU.hevc, который несет в себе информацию о файлах BL и EL_RPU.

Этот файл можно уже укладывать в контейнер MP4.

Второй - Скрипт от какого го человека

Скачиваем файл с облака.

Внутри архива BAT файлы, Запускаем MUX_AND_CONVERT_TO_PROFILE_81.bat.

Командная строка попросит пометить BL.hevc файл в окно, затем нажать ENTER.

Командная строка попросит поместить EL_RPU.hevc файл в окно, затем нажать ENTER.

На выходе в папке с BAT файлами получим файл BL_EL_RPU.hevc

Теперь его так же можно упаковывать в контейнер MP4.


Упаковка в контейнер MP4

Выполняется это при помощи утилиты mp4muxer. Скачать её можно со страницы githab.

Исполняемый файл из папки BIN лучше всего разместить рядом с BL_EL_RPU.hevc.

Выполняем простую команду:

.\mp4muxer.exe -i BL_EL_RPU.hevc --dv-profile 8 --dv-bl-compatible-id 1 -o BL_EL_RPU.mp4

Всё файл запакован в контейнер с 8-мым профилем. Можно даже попробовать его воспроизвести на ТВ, чтобы понять всё ли хорошо.

Теперь можно наполнять контейнер MP4 различными дорожками.


Формирование конечного контейнера

У фильма наверняка есть куча аудио дорожек и субтитров.

Я на момент написания статьи предпочитаю использовать звук в формате ac3 с битрейтом 640. Причин несколько: ТВ не поддерживает DTS, нет оборудования для качественного воспроизведения звука, что не дает возможности услышать разницу, размер.

Поэтому я конвертирую все звуковые дорожки в ac3. Способов много:

- UsEac3To

- XviD4PSP

Описание перекодирования Аудио, это отдельная тема.

Тоже самое касается субтитров. При экспорте из m2ts или MKV, субтитры имеют формат sup. И даже этот формат является контейнером. В любом случае это формат представляет из себя картинки с текстом, нам же нужно преобразовать это в текст. Использовать для этого лучше всего.

- Subtitle Edit

А теперь к самому процессу создания фильма.

Для этого используется утилита mp4box входящая в состав GPAC. Скачать его можно с официального сайта.

Команда выглядит так:

.\mp4box.exe -brand mp42isom -ab dby1 -no-iod -add BL_EL_RPU.mp4 -add audio1.ac3:lang=ru:name="название" track.srt:lang=ru:name="название" video_out.mp4

К аудио дорожке добавляются через двоеточие параметры:

:name="любой текст"

:lang=ru (язык дорожки ru, en)

:delay=20 (задержка в миллисекундах)


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