[Feature Request] Mux Dolby Vision (profile 5)

Issue #611 new
Hongyu Shi created an issue

I have some Dolby Vision videos in .mp4 and .ts, they are all encoded in Dolby Vision profile 5, which is compatible with QuickTime. However, Apple requires the fourcc tag to be “dvh1” instead of “dvhe” found in many videos. It would be very convenient if Subler could mux them and force “dvh1” tag.

Currently, I have to demux them, and remux tracks using a modified version of Dolby’s official muxer (I changed their source code to force “dvh1”). Then use Subler to edit subtitles and metadata… too complex…

Attachment: sample file info of a Dolby Vision profile 5 video.

Comments (11)

  1. Jackalworks

    dvh1 is dolby vision with hevc format. For me I use VIM to change dvhe to dvh1 via terminal script, the same thing as the hev1 vs hvc1. I think that if Subler could use the same routine, it should solve this.

  2. Hongyu Shi reporter

    Changing the fourcc code works for profile 5.
    But for new profile 8.4 (shot on iPhone 12), the fourcc is hvc1 which is the same as regular HDR. The difference only lies in the HEVC stream. However, when remuxing using Subler, all DoVi metadata is lost.

  3. Hongyu Shi reporter

    Here is a DoVi profile 8.4 sample (shot on iPhone 12 Pro):

    https://drive.google.com/file/d/1JsFd_KKU0k5Emgl74PnrwmUfqdFDP9JJ/view?usp=sharing


    Here is a sample set for DoVi profile 5 and 8.1 (copyright MBOX):

    https://drive.google.com/drive/folders/10Hcx28hoapsYErnfJWVRLpYY4x56w_7B?usp=sharing

    The m4v files are compatible with Apple QuickTime. The mp4 files in the zip file are the original files from MBOX.


    ** According to the copyright law in PRC, the above files can only be used in purpose of study / experiments. Please follow the copyright laws in your own country when using these files.

  4. Damiano Galassi repo owner

    Almost done with muxing DV from mp4, mov, and mkv.

    Do you have some mp4 samples with a EL layer too? All the mp4 I have are only BL+RPU, I need one with BL+EL+RPU.

  5. Hongyu Shi reporter

    I’ve tested the new 1.16.15 version. It works, but there is a trivial issue: both test inputs are constant frame rate, but the output files are variable frame rate. I tried both profile 5 and 8.1 (BL+RPU for both files).

    I also tried the official tool mp4muxer from Dolby, it worked correctly.

    EDIT: There are more problems with the remuxed profile 8.1 file:

    1. Color space info is missing

      2. Minor compatibility issue with QuickTime

    The second issue also presents with previous versions (up-to 1.16.13), when I try to mux files ripped from Netflix. In fact, majority of Netflix rips suffer from this issue, while all Disney+/Apple TV+/HBO max rips don’t have this problem. I don’t know which part went wrong, but I never encountered this when using mp4muxer from Dolby.


    About EL, unfortunately, it seems that only Blu-ray has EL (dual-layer, one for BL, another for EL+RPU). All streaming services only provide BL+RPU media (NF, Disney+, Apple TV/iTunes, and HBO max stream in Dolby Vision profile 5; Hulu streams in DV profile 8.1).

    It seems that MakeMKV can make a single-layer BL+EL+RPU file. I may give it a try when I have time.

  6. Damiano Galassi repo owner

    MKV can’t do proper “constant framerate” , mediainfo is lying.

    1. That’s normal for Dolby Vision 5, but for profile 8 Subler currently reads these metadata only at the container level, so if the original file did not set them there, the muxed file won’t have it either.
    2. Probably because the original file was dvhe or hev1 with an incomplete hvcC config. Subler does not parse the hevc frames to recreate a complete hvcC config.

  7. Akash Dsouza

    Do you have some mp4 samples with a EL layer too? All the mp4 I have are only BL+RPU, I need one with BL+EL+RPU.

    From my understanding, Apple only supports profile 5/8, neither of which have EL’s. So, I don’t think Subler would need to support that?

  8. Log in to comment