2025-02-18, 10:50 PM
(This post was last modified: 2025-02-18, 10:54 PM by SquishySquash. Edited 2 times in total.)
Hello, I tried using the one-liner from updated guide on my file that contains Dolby Vision metadata Dolby Vision, Version 1.0, Profile 5, dvhe.05.06, BL+RPU, no metadata compression. I wanted to do it because this file does not play correctly on my devices that do not have Dolby Vision capable screen. On these devices when playing this file it displays wrong colors, everything is purple-greenish, like on my PC using VLC media player. Of course file plays correctly on my TV which is DV capable.
So first I downloaded Jellyfin FFMPEG from here https://github.com/jellyfin/jellyfin-ffm...g/v7.0.2-9 The Windows version. Then I used your command pointing it to my MKV file:
but it kept erroring out despite path to file being correct
Now I figured it may be because of DV profile 5. You mentioned that the guide is focusing on Dolby Vision profile 7 and 8 files so using dovi tools I converted the file to 8.1 profile first extracting HEVC file from MKV then executing dovi tools with
command 3 " Converts profile 5 to 8.1. " and then remuxing new HEVC file back into MKV. This produced a new entry in MediaInfo: Dolby Vision, Version 1.0, Profile 8.2, dvhe.08.06, BL+RPU, no metadata compression, SDR compatible
The converted file still produced wrong colors when played it so I ran ffmpeg with same command as above and now it ran. The problem is that once its done MediaInfo on the HDR10 file reports that there is no HDR data at all in the file. Jellyfin also recognizes the file as SDR. But now it plays in wrong color everywhere, even on my TV where it worked all right before all the conversions.
What did go wrong? I'm attaching mediainfo on original, after dovitool and after ffmpeg.
So first I downloaded Jellyfin FFMPEG from here https://github.com/jellyfin/jellyfin-ffm...g/v7.0.2-9 The Windows version. Then I used your command pointing it to my MKV file:
Code:
ffmpeg -y -hide_banner -stats -fflags +genpts+igndts -loglevel error -i "D:\StarWars.mkv" -map 0 -bsf:v hevc_metadata=remove_dovi=1 -codec copy -max_muxing_queue_size 2048 -max_interleave_delta 0 -avoid_negative_ts disabled hdr10_video.mkv
but it kept erroring out despite path to file being correct
Code:
[out#0/matroska @ 000001f8d79b9b00] Could not write header (incorrect codec parameters ?): Invalid data found when processing input
Now I figured it may be because of DV profile 5. You mentioned that the guide is focusing on Dolby Vision profile 7 and 8 files so using dovi tools I converted the file to 8.1 profile first extracting HEVC file from MKV then executing dovi tools with
Code:
D:\>dovi_tool -m 3 convert starwars.hevc
command 3 " Converts profile 5 to 8.1. " and then remuxing new HEVC file back into MKV. This produced a new entry in MediaInfo: Dolby Vision, Version 1.0, Profile 8.2, dvhe.08.06, BL+RPU, no metadata compression, SDR compatible
The converted file still produced wrong colors when played it so I ran ffmpeg with same command as above and now it ran. The problem is that once its done MediaInfo on the HDR10 file reports that there is no HDR data at all in the file. Jellyfin also recognizes the file as SDR. But now it plays in wrong color everywhere, even on my TV where it worked all right before all the conversions.
What did go wrong? I'm attaching mediainfo on original, after dovitool and after ffmpeg.
(2024-08-06, 09:25 PM)TheDreadPirate Wrote: ****This guide has been updated****
Jellyfin-ffmpeg 7.0.2-4 added a feature to remove Dolby Vision directly. The process of removing Dolby Vision can now be accomplished with a single ffmpeg command, greatly simplifying the process. I am leaving the original walkthrough for those on non-Jellyfin builds of ffmpeg or jellyfin-ffmpeg6.
Code:/usr/lib/jellyfin-ffmpeg/ffmpeg -y -hide_banner -stats -fflags +genpts+igndts -loglevel error -i "/path/to/dv_video.mkv" -map 0 -bsf:v hevc_metadata=remove_dovi=1 -codec copy -max_muxing_queue_size 2048 -max_interleave_delta 0 -avoid_negative_ts disabled hdr10_video.mkv
And that is it. Still no re-encoding required.
A bonus feature: If you do re-encode, to AV1 specifically, you can skip using the bitstream filter entirely. Re-encoding to AV1 will automatically strip the Dolby Vision EL and RPU while maintaining the BT2020 HDR10 color space.
=========================================================================