All bins have been removed. README has been spellchecked. \ Fix formatting of FFmpeg dependency link Fixed README
3.5 KiB
DV-HDR-merge
A script to batch combine HDR media with Dolby Vision media for a hybrid file that uses Dolby Vision but with fallback to HDR. The script has a built in frame compare tool that makes syncing the different files very easy. The script matches the files by comparing frame count because Dolby Vision RPU-files are based on frames, not on time.
Dependencies
The following dependencies must either be installed to PATH or added to a folder called bin in the main directory:
FFmpeg
quietvoid/dovi_tool
mkvmerge
mkvextract
Python requirements that needs to be installed: requirements.txt
Usage
DV_HDR_Merge.py [Input files/folders]
Optional commands: --help, -logL, -maxdif
DV_HDR_Merge.py -logL debug -maxdif 100 HDR_movie.mkv DV_movie.mp4 HDR_movie2.mkv DV_movie2.mkv ./DV_movie_folder ./HDR_movie_folder
Valid input formats:
HDR media: *.mkv
Dolby Vision media: *.mkv, *.mp4\
Can be customized to use *.mp4 as HDR input as well but Matroska is the superior container.
Output format: *.mkv
Explanations
Shift frames:
A negative amount means that frames will be removed in the beginning and a positive means that the first frame will be duplicated to add enough frame.
Any excess frame on the end will be cut off
General:
If frame dimensions do not match the script will automagically correct for it.
Example of code running
Frame Compare Tool
- Opens the active image in your default photo application for easier inspection
- Switches between a 50/50 blend of the two compared images or a grey-scale difference
- Set the frame to reference in the HDR media file, press
Enterto apply. (Total amount of frames in media is shown in label) - Set how may frames to shift Dolby Vision layer with, press
Enterto apply. - Closes window and sends inputted frame-shift to be used when combining the two media.
(Closing the window will do the same as theDonebutton)
Always compare multiple reference frames in case of missing or extra frames in some of the materials used.
Example images
Both scenarios are using frame 30000 as the HDR reference frame.
Unsynced images
| Blended 50/50 | Difference |
|---|---|
No frame shift have been added and the result is blurry edges and sometimes even different scenes. The difference images shows a lot of anomalies when pixels don't cancel each other out.
Synced images
| Blended 50/50 | Difference |
|---|---|
When Dolby Vision layer is shifted with -3 frames in this cae, no blurry edges can be seen on the blend image and on the difference image no anomalies can be found. (Sometimes you can get a faded silhouette as in this case because the luminance levels could not be correctly matched when trying to tonemap the thumbnails taken from the media)

