This tool is an excellent automation script that wraps dovi_tool and ffmpeg into a simple command. It automates the entire workflow: demuxing the video streams, performing the RPU conversion, and remuxing the final MKV. It's designed for MEL files and will skip FEL files by default to prevent accidental quality loss.
RPU merging & packaging
Most consumer streaming clients and TV operating systems lack the secondary hardware decoders required to stitch the BL and EL together on the fly. When a media server like Plex, Emby, or Jellyfin serves a raw Profile 7 MKV file to an unsupported device, the player drops the Dolby Vision metadata entirely and falls back to static HDR10 . The Solution: Profile 8.1 (Single-Layer) convert dolby vision profile 7 to profile 8 new
class DolbyVisionConverter: def __init__(self, input_file, output_file): self.input_file = input_file self.output_file = output_file self.temp_hevc = "temp_video.hevc" self.temp_rpu = "temp_rpu.bin"
Yes, if you use the "Backup Enhancement Layer" feature in newer versions of tools like dovi_convert , you can convert back from the 8.1 file to the original 7 file at any time. Why not just use HDR10? This tool is an excellent automation script that
This multi-step method is for those who want maximum control, particularly for working with Complex FEL files or for advanced users who want to inspect and potentially edit the RPU data before injection.
To backup your source media into a manageable container. The Conversion Workflow RPU merging & packaging Most consumer streaming clients
While dovi_tool is the raw engine, other projects offer more user-friendly interfaces and automation.
dovi_tool info -i "your_movie.mkv"