Skip to main content
The convert command converts Dolby Vision Profile 7 files to Profile 8.1. The process strips the Enhancement Layer, injects the dynamic metadata (RPU) into the Base Layer, and produces a file compatible with most Dolby Vision devices. You can convert individual files or entire directories. When you pass directories, the command enters batch mode — scanning everything first, showing a summary, then converting all eligible files.

How Conversion Works

The conversion process:
  1. Extracts the video stream from your MKV file
  2. Strips the Enhancement Layer (EL)
  3. Injects the RPU metadata into the Base Layer
  4. Remuxes everything back into a new MKV file
No video re-encoding happens. The bitstream is processed directly, so conversion is fast and quality is preserved exactly.

Safety Features

dovi_convert is designed to be non-destructive:
  • Automatic backup — Your original file is renamed to *.bak.dovi_convert before any changes
  • Scan before convert — Each file is analyzed to detect Complex FEL
  • Safe defaults — Complex FEL files are skipped unless you explicitly override
All audio and subtitle tracks are preserved in the converted file.

Converting Files

Single Files

Convert a file:
dovi_convert convert movie.mkv
The command:
  1. Analyzes the file for FEL complexity
  2. Creates a backup (movie.mkv.bak.dovi_convert)
  3. Converts to Profile 8.1
  4. Replaces the original with the converted file
Convert multiple files:
dovi_convert convert movie1.mkv movie2.mkv movie3.mkv
Each file is processed immediately, one after another.

Directories

When you pass directories instead of files, dovi_convert switches to batch mode:
dovi_convert convert /movies
In batch mode:
  1. All directories are scanned for Profile 7 files
  2. A summary shows what will be converted
  3. You confirm before conversion begins
  4. Each eligible file is converted
Batch mode displays a compact, table-based progress view by default. Use --verbose (or -v) to see detailed per-file output instead.

Recursive Conversion

By default, only the top level of each directory is scanned and converted. Use --recursive (or -r) to scan and convert subdirectories:
dovi_convert convert /movies --recursive
dovi_convert convert /movies -r
This scans up to 5 levels deep. Specify a number to limit or expand the depth:
dovi_convert convert /movies --recursive 2   # scans and converts 2 levels deep
dovi_convert convert /movies --recursive 10  # scans and converts 10 levels deep

Skipping Confirmation

For automated workflows, use --yes (or -y) to skip the confirmation prompts:
dovi_convert convert /movies --yes
With --yes, Simple FEL files are automatically skipped. This prevents unattended conversions from processing files that might need manual review. To include them, add --include-simple.
dovi_convert convert /movies --yes --include-simple

Processing Modes

dovi_convert has two processing modes:

Standard Mode (Default)

Pipes video data directly from ffmpeg to dovi_tool. Fast and efficient — requires no temporary disk space for the video stream.
dovi_convert convert movie.mkv

Safe Mode

Extracts the video stream to disk first, then processes it. Slower, but handles files that Standard mode can’t process.
dovi_convert convert movie.mkv --safe
dovi_convert convert movie.mkv -s
If Standard mode fails (common with Seamless Branching or irregular file structures), Safe mode is triggered automatically. You don’t need to manually retry.

What Gets Converted

Complex FEL

Complex FEL files are skipped by default because converting them produces incorrect tone mapping. To override this safety check, use --force (see Conversion Options).
Forcing conversion on Complex FEL files produces incorrect tone mapping. The picture may appear dark, have flickering, or show other artifacts. Only use this if you understand and accept the quality loss.

Simple FEL

When converting a Simple FEL file, dovi_convert prompts for confirmation:
Simple FEL detected. This file likely converts safely, but verify with inspect if uncertain.
Continue? [y/N]
This is a precaution — Simple FEL files usually convert correctly, but the scan might have missed isolated brightness spikes. If you want certainty, run inspect first.

Conversion Options

Force Mode (--force)

Override the Complex FEL safety check:
dovi_convert convert movie.mkv --force
dovi_convert convert movie.mkv -f

HDR10 Mode (--hdr10)

Convert to HDR10 instead of Dolby Vision Profile 8.1:
dovi_convert convert movie.mkv --hdr10
dovi_convert convert movie.mkv --hdr10 --force   # if Complex FEL
This strips all Dolby Vision metadata from the file, leaving a clean HDR10 stream. If the source contains HDR10+ metadata, it is preserved.
When to use this: Some devices like the Nvidia Shield convert Profile 7 files to Profile 8.1 automatically during playback — even when they shouldn’t. For Complex FEL files, this produces incorrect tone mapping. Converting to HDR10 upfront prevents the device from attempting its own conversion. You lose the dynamic metadata, but the picture displays correctly. HDR10 is better than broken Dolby Vision.
HDR10 mode is only available for single file conversions. This is intentional — stripping Dolby Vision entirely is a more significant decision than converting to Profile 8.1.

Output Directory (--output)

Place converted files in a different directory:
dovi_convert convert movie.mkv --output /converted
dovi_convert convert movie.mkv -o /converted
The original file is renamed to .bak.dovi_convert and stays in the source location. The output directory is created automatically if it doesn’t exist.

Temp Directory (--temp)

If your source files are on a mechanical hard drive or network storage, conversion can be slow. Use --temp to write temporary files to a separate, faster drive:
dovi_convert convert movie.mkv --temp /mnt/ssd/temp
dovi_convert convert movie.mkv -t /mnt/ssd/temp
Use an SSD or NVMe drive as your temp directory for best results.

Delete Backup (--delete)

Automatically delete the backup file after successful conversion:
dovi_convert convert movie.mkv --delete
This removes your only copy of the original Profile 7 file. Use with caution. If something goes wrong or you later want to restore the original, you can’t.

What Happens to Your Files

BeforeAfter
movie.mkv (Profile 7)movie.mkv (Profile 8.1)
movie.mkv.bak.dovi_convert (original backup)
The backup contains your complete original file. Restore it by:
mv "movie.mkv.bak.dovi_convert" "movie.mkv"

Troubleshooting

If conversion fails:
  1. Run with --debug to generate a log:
    dovi_convert convert movie.mkv --debug
    
  2. Check dovi_convert_debug.log for errors from ffmpeg, dovi_tool, or mkvmerge
  3. Common issues:
    • Seamless Branching — Try with --safe mode
    • Corrupted files — Verify the original file plays correctly
    • Disk space — Safe mode needs space for the extracted video stream

Next Steps