Dolby Vision now possible through MP4 Mux.

Please post here for issues related to UHD discs
DaMacFunkin
Posts: 311
Joined: Tue Oct 30, 2018 4:17 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by DaMacFunkin »

kws53 wrote:
Thu Nov 05, 2020 10:45 pm
DaMacFunkin wrote:
Thu Nov 05, 2020 9:57 pm
kws53 wrote:
Thu Nov 05, 2020 9:52 pm


Excellent! Do you have any way of incorporating/using playlist reference files (.MPLS) instead of .M2TS reference? This will accommodate seamless branching UHD disks.
Using the blu-ray protocol rips via mpls.
I believe it uses the last (or biggest or something). Not necessarily the right MPLS. I would like to specify...
Hi, I have previously posted if you know what playlist you need you can ‘temporary remove’ the other playlists from the playlist folder and ffmpeg will then process the correct one, it actually processed the mpls related to the largest title so you usually only need to remove 1 or 2, or you can just move them all.
kws53
Posts: 49
Joined: Sun May 04, 2014 9:09 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by kws53 »

DaMacFunkin wrote:
Fri Nov 06, 2020 6:08 am
kws53 wrote:
Thu Nov 05, 2020 10:45 pm
DaMacFunkin wrote:
Thu Nov 05, 2020 9:57 pm

Using the blu-ray protocol rips via mpls.
I believe it uses the last (or biggest or something). Not necessarily the right MPLS. I would like to specify...
Hi, I have previously posted if you know what playlist you need you can ‘temporary remove’ the other playlists from the playlist folder and ffmpeg will then process the correct one, it actually processed the mpls related to the largest title so you usually only need to remove 1 or 2, or you can just move them all.
How does that process work with GAMMA? That's my objective.
Are you saying use ffMpeg to create a new M2TS file, then use GAMMA?
DaMacFunkin
Posts: 311
Joined: Tue Oct 30, 2018 4:17 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by DaMacFunkin »

kws53 wrote:
Fri Nov 06, 2020 3:10 pm
DaMacFunkin wrote:
Fri Nov 06, 2020 6:08 am
kws53 wrote:
Thu Nov 05, 2020 10:45 pm

I believe it uses the last (or biggest or something). Not necessarily the right MPLS. I would like to specify...
Hi, I have previously posted if you know what playlist you need you can ‘temporary remove’ the other playlists from the playlist folder and ffmpeg will then process the correct one, it actually processed the mpls related to the largest title so you usually only need to remove 1 or 2, or you can just move them all.
How does that process work with GAMMA? That's my objective.
Are you saying use ffMpeg to create a new M2TS file, then use GAMMA?

Code: Select all

python-3.7.6.amd64\python.exe src\app.py -mode 2 -mux -exp bluray: I:\Atomic
Hi, that was your command.

that should choose the largest mlps file.

If you have 3 mlps of the same size it will choose the first one it comes too ie 00800.mlps - but what if you want 00801.mlps?

Delete the mlps from the file you DONT want leaving the one you do.
whiplash1
Posts: 38
Joined: Sun Apr 19, 2020 7:40 am

Re: Dolby Vision now possible through MP4 Mux.

Post by whiplash1 »

PlatypusW wrote:
Thu Nov 05, 2020 10:24 pm
yusesope wrote:
Thu Sep 17, 2020 2:59 pm

[*]In the case of a Single Track Dual Layer DV file (e.g. mkv, ts, mp4 file previously modified using MakeMKV and/or TsMuxeR and/or my tool)
  • Extract the BL_EL_RPU.hevc file

    Code: Select all

    ffmpeg -i path\to\the\file.mp4 -ss 0 -t 120 -map 0:0 -c copy path\to\BL_EL_RPU.hevc
  • Using my tool, double click on the DEMUX_AND_CONVERT_TO_MEL.bat file and follow the instructions on the screen.
    You will get a BL.hevc file and a EL_RPU.hevc file
  • Using my tool, double click on the MUX.bat file (and NOT MUX_AND_CONVERT_TO_MEL.bat) and follow the instructions on the screen.
    You will get a BL_EL_RPU.hevc file
  • Create a TS file using the BL_EL_RPU.hevc file and TsMuxeR

    EXTRA (MP4):
    In case TsMuxeR does not return a working file, create an mp4 file

    Code: Select all

    mp4muxer -i path\to\BL_EL_RPU.hevc --dv-profile 7 -o path\to\TEST_FILE.mp4
    EXTRA (MKV):
    Right after using DEMUX_AND_CONVERT_TO_MEL.bat, import the two BL.hevc (as first) and EL_RPU.hevc (as second) into TsMuxeR and create an ISO file.
    Open the ISO with MakeMKV


    Happy testing!
I managed to get this to work for one movie (I'm pretty sure), but I seem to have hit a problem with everything now :?

I'm taking an mkv created with MakeMKV, using the FFMpeg command to get the hevc file.

I'm then using the 'DEMUX_AND_CONVERT_TO_MEL.bat' bat, which is just straight 'python-3.7.6.amd64\python.exe src\app.py -demux -fel_to_mel'. That runs fine, and I get the expected BL & EL_RPU hevc files. I am then wanting the end result to be an MKV, so I'm jumping to importing these into TsMuxR. Again this runs fine, no issues. I then load the iso in Makemkv and it recognises the file. This is where my problem begins. Once I start makemkv off I eventually get this:
AV synchronization issues were found in file 'V:/MEL/title_t00.mkv' (title #1)
AV sync issue in stream 0 at 0:47:47.573 : video frame timecode differs by -0.1ms
AV sync issue in stream 0 at 0:47:47.573 : secondary stream video frame timecode differs by -83.511ms
AV sync issue in stream 0 at 0:47:47.739 : secondary stream video frame timecode differs by -0.1ms
..........
AV sync issue in stream 0 at 0:47:51.243 : too many video frames with invalid timecodes, future messages will be suppressed
The interesting thing to me, this happens with the last 3-4 movies I have tried. It is ALWAYS at 47:47:573. That can't be a coincidence right? The first time it happened I thought it would be fine, but as soon as you get to that timestamp something odd happens. Like the brightness starts flashing - I guess because the two video streams are out of sync based on what MakeMKV is reporting. I think I might need to move onto GAMMA :P
I faced this problem with Apocalypse Now. Exact same timestamp for the av sync error messages too. That was a weird disk. The movie was in one m2ts file while the end credits was in another m2ts file of 6 mins. MakeMKV was giving me a proper FEL mkv, but my TV can't play FELs. I had to use the Gamma version, work both m2ts files separately (-fel_to_mel switch). Patch both resulting MKVs separately, and then join them with MKVtoolNix to finally get a proper working file without the flickering or av sync errors.
PlatypusW
Posts: 50
Joined: Mon Aug 03, 2020 2:14 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by PlatypusW »

whiplash1 wrote:
Fri Nov 06, 2020 8:17 pm

I faced this problem with Apocalypse Now. Exact same timestamp for the av sync error messages too. That was a weird disk. The movie was in one m2ts file while the end credits was in another m2ts file of 6 mins. MakeMKV was giving me a proper FEL mkv, but my TV can't play FELs. I had to use the Gamma version, work both m2ts files separately (-fel_to_mel switch). Patch both resulting MKVs separately, and then join them with MKVtoolNix to finally get a proper working file without the flickering or av sync errors.
Interesting. I’m going to give gamma a go when I have time.
From my experience this problem seems to be quite wide spread then. So far for me it’s been 4/5 movies I’ve tried :shock:

Update: Gamma seems to work really well. Haven’t had time to completely verify an entire movie but will over the weekend. The speed of Gamma is also really nice. Hopefully with some more automation/script improvements the whole FEL to MEL process etc will become really easy 8)
Not that the current method is particular hard, just lots of processes to kick off :P
DaMacFunkin
Posts: 311
Joined: Tue Oct 30, 2018 4:17 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by DaMacFunkin »

Hi Yusesope.

It would seem that MKV FEL converted to 8.1 with Beta 004 triggers Dolby Vision on the new Zidoo products. MKV FEL to 8.1 with Gamma doesn't trigger Dolby Vision on the new ZIdoo products.

Is there a reason for this, what is the difference?

Thank you.
yusesope
Posts: 221
Joined: Sun Jul 28, 2019 3:34 am

Re: Dolby Vision now possible through MP4 Mux.

Post by yusesope »

kws53 wrote:
Fri Nov 06, 2020 3:10 pm
How does that process work with GAMMA?
Now the -exp switch also accepts the path of a BluRay folder as input (the address of the folder that contains the BDMV folder).
Download the new version from the original GAMMA post

I also added the -playlist switch to be able to select the playlist of interest (how do I know which playlist to choose? Use an app like BDinfo).
Specify the playlist number only without the .mpls extension.
If no playlist is indicated, the longer one will be chosen.
The -playlist value is ignored if the -exp input is not a BluRay folder.


If in the second command line you choose to use the same folder and playlist used in the first (as "donor of audio and subs"), then, for consistency, you must indicate to FFmpeg the same folder and the same playlist. FFmpeg also uses the -playlist switch and the bluray keyword.


EXAMPLE (more info in the original GAMMA post):
python-3.7.6.amd64\python.exe src\app.py -mux -exp \path\to\bluray -playlist 00222
src\Gpac\gpac.exe -i pipe://video:ext=hevc:audelim=true -o stdout:ext=ts:pes_pack=none | src\FFmpeg\ffmpeg_win_x64.exe -hide_banner -y -i - -playlist 00222 -i bluray:\path\to\bluray -map 0:0 -map 1:2 -c copy -bsf:v hevc_metadata=aud=insert -metadata title="Movie Title_________________________________________________________________________" \path\to\your\output\file.mkv
I remind everyone that this is an experimental version and there is always the possibility that something is wrong.
Many of the topics and aspects covered are new to me :wink: .
Even adding a simple function takes some time :( .
Be patient and follow the instructions.


NOTE
  • In FFmpeg (second command line) the -playlist switch, if used, must necessarily precede the input one ("-i")
  • Ignore WARNINGS and ERRORS related to the "libbluray" library that may appear in the first Command Prompt window.



PlatypusW wrote:
Fri Nov 06, 2020 8:38 pm
The speed of Gamma is also really nice. Hopefully with some more automation/script improvements the whole FEL to MEL process etc will become really easy 8)
Not that the current method is particular hard, just lots of processes to kick off :P
I need some time to simplify the procedure. That's okay for now :mrgreen:


DaMacFunkin wrote:
Sat Nov 07, 2020 7:57 am
Hi Yusesope.

It would seem that MKV FEL converted to 8.1 with Beta 004 triggers Dolby Vision on the new Zidoo products. MKV FEL to 8.1 with Gamma doesn't trigger Dolby Vision on the new ZIdoo products.

Is there a reason for this, what is the difference?

Thank you.
I have no idea. Owners of other devices do not complain about this problem. When I have time and you are available maybe we could do some tests together to understand where the problem lies.

But first I have to extend GAMMA support to Linux too, fix the creation of the mp4 DTDL files, add chapter support ... :shock:
You need to have a bit of patience... :lol:
DaMacFunkin
Posts: 311
Joined: Tue Oct 30, 2018 4:17 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by DaMacFunkin »

yusesope wrote:
Sat Nov 07, 2020 2:20 pm
kws53 wrote:
Fri Nov 06, 2020 3:10 pm
How does that process work with GAMMA?
Now the -exp switch also accepts the path of a BluRay folder as input (the address of the folder that contains the BDMV folder).
Download the new version from the original GAMMA post

I also added the -playlist switch to be able to select the playlist of interest (how do I know which playlist to choose? Use an app like BDinfo).
Specify the playlist number only without the .mpls extension.
If no playlist is indicated, the longer one will be chosen.
The -playlist value is ignored if the -exp input is not a BluRay folder.


If in the second command line you choose to use the same folder and playlist used in the first (as "donor of audio and subs"), then, for consistency, you must indicate to FFmpeg the same folder and the same playlist. FFmpeg also uses the -playlist switch and the bluray keyword.


EXAMPLE (more info in the original GAMMA post):
python-3.7.6.amd64\python.exe src\app.py -mux -exp \path\to\bluray -playlist 00222
src\Gpac\gpac.exe -i pipe://video:ext=hevc:audelim=true -o stdout:ext=ts:pes_pack=none | src\FFmpeg\ffmpeg_win_x64.exe -hide_banner -y -i - -playlist 00222 -i bluray:\path\to\bluray -map 0:0 -map 1:2 -c copy -bsf:v hevc_metadata=aud=insert -metadata title="Movie Title_________________________________________________________________________" \path\to\your\output\file.mkv
I remind everyone that this is an experimental version and there is always the possibility that something is wrong.
Many of the topics and aspects covered are new to me :wink: .
Even adding a simple function takes some time :( .
Be patient and follow the instructions.


NOTE
  • In FFmpeg (second command line) the -playlist switch, if used, must necessarily precede the input one ("-i")
  • Ignore WARNINGS and ERRORS related to the "libbluray" library that may appear in the first Command Prompt window.



PlatypusW wrote:
Fri Nov 06, 2020 8:38 pm
The speed of Gamma is also really nice. Hopefully with some more automation/script improvements the whole FEL to MEL process etc will become really easy 8)
Not that the current method is particular hard, just lots of processes to kick off :P
I need some time to simplify the procedure. That's okay for now :mrgreen:


DaMacFunkin wrote:
Sat Nov 07, 2020 7:57 am
Hi Yusesope.

It would seem that MKV FEL converted to 8.1 with Beta 004 triggers Dolby Vision on the new Zidoo products. MKV FEL to 8.1 with Gamma doesn't trigger Dolby Vision on the new ZIdoo products.

Is there a reason for this, what is the difference?

Thank you.
I have no idea. Owners of other devices do not complain about this problem. When I have time and you are available maybe we could do some tests together to understand where the problem lies.

But first I have to extend GAMMA support to Linux too, fix the creation of the mp4 DTDL files, add chapter support ... :shock:
You need to have a bit of patience... :lol:
No worries, thank you.
ragico
Posts: 257
Joined: Fri Feb 15, 2019 1:09 am

Re: Dolby Vision now possible through MP4 Mux.

Post by ragico »

@Yusesope

Tested your latest creation (Gamma tool revised) and it works perfectly.
Made 2 films very quickly.
Thanks again Maestro Yusesope.
4knewbie
Posts: 15
Joined: Mon Apr 06, 2020 2:43 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by 4knewbie »

Hi everyone !
Could anybody update me on the methods to make dv files ? I made a first batch back in march and haven’t made any since then as there were barely any new releases. I used to do it the regular way as described in the original post with dv profile 7 which seems to be the best for Plex on lg c9. Do you guys still use the original method or is there something simpler now ?
Thank you all
shawnc22
Posts: 636
Joined: Tue Jan 21, 2020 7:40 am

Re: Dolby Vision now possible through MP4 Mux.

Post by shawnc22 »

4knewbie wrote:
Sun Nov 08, 2020 3:24 pm
Hi everyone !
Could anybody update me on the methods to make dv files ? I made a first batch back in march and haven’t made any since then as there were barely any new releases. I used to do it the regular way as described in the original post with dv profile 7 which seems to be the best for Plex on lg c9. Do you guys still use the original method or is there something simpler now ?
Thank you all
if you're just playing them off your tv's internal player, then no, stick to what you've been doing
whiplash1
Posts: 38
Joined: Sun Apr 19, 2020 7:40 am

Re: Dolby Vision now possible through MP4 Mux.

Post by whiplash1 »

TheChief wrote:
Sat Oct 17, 2020 7:20 am
Smthng gone wrong:

Code: Select all

Traceback (most recent call last):
  File "S:\_Out\MKV_DV\python-3.7.6.amd64\lib\site-packages\bitstring.py", line 833, in _initialise
    init_without_length_or_offset[k](self, v)
KeyError: 'uint'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "src\MKV_patcher.py", line 233, in <module>
    patched_data = mkv_patcher.inject_dolby_vision(dolby_vision_data)
  File "src\MKV_patcher.py", line 207, in inject_dolby_vision
    self.init_elements()
  File "src\MKV_patcher.py", line 149, in init_elements
    el_property["size"] = self.read_variable_size_int()
  File "src\MKV_patcher.py", line 128, in read_variable_size_int
    parsedValue = BitArray(uint=(self.mkv_data[pos:pos + 8] & (~self.get_len_mark(length))).uint,length=length)
  File "src\MKV_patcher.py", line 117, in get_len_mark
    return BitArray(uint=1 << (8 - int(length / 8)),length=8)
  File "S:\_Out\MKV_DV\python-3.7.6.amd64\lib\site-packages\bitstring.py", line 3059, in __new__
    y = Bits.__new__(BitArray, auto, length, offset, **kwargs)
  File "S:\_Out\MKV_DV\python-3.7.6.amd64\lib\site-packages\bitstring.py", line 812, in __new__
    x._initialise(auto, length, offset, **kwargs)
  File "S:\_Out\MKV_DV\python-3.7.6.amd64\lib\site-packages\bitstring.py", line 838, in _initialise
    init_with_length_only[k](self, v, length)
  File "S:\_Out\MKV_DV\python-3.7.6.amd64\lib\site-packages\bitstring.py", line 1388, in _setuint
    raise CreationError(msg, uint, length, (1 << length) - 1)
bitstring.CreationError: 256 is too large an unsigned integer for a bitstring of length 8. The allowed range is [0, 255].
Facing the exact same issue with Back to the Future Part 1. Haven't tried the other two. This message shows up in mkvpatcher. Accompanied by some errors in the 2nd command window. MKV generates properly but can't be patched successfully. I'm using the -fel_to_mel switch. Tried once with skiphdr10plus switch along with it as well. Same error.

Update - I tried creating the mkv without mapping any audio streams. The resulting mkv appears to have patched successfully. Currently muxing in the audio and commentary tracks and pgs subs using MKVtoolNix. Let's hope it works without any further errors.

Update 2 - Everything works like a charm! Even with the HDR10+ metadata. Next up are Parts 2 & 3 and then 1917.
ghostshadow
Posts: 55
Joined: Sun Sep 13, 2020 10:25 am

Re: Dolby Vision now possible through MP4 Mux.

Post by ghostshadow »

Hello would it be possible to make a list on this Topic of players reading mkv DV:

player X ---> mkv dv profil X --> TV pana X

thank
kws53
Posts: 49
Joined: Sun May 04, 2014 9:09 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by kws53 »

yusesope wrote:
Sat Nov 07, 2020 2:20 pm
kws53 wrote:
Fri Nov 06, 2020 3:10 pm
How does that process work with GAMMA?
Now the -exp switch also accepts the path of a BluRay folder as input (the address of the folder that contains the BDMV folder).
I also added the -playlist switch to be able to select the playlist of interest.
Playlist works perfectly - just waiting for the Chapter support!
Amazing work @Yusesope!
kws53
Posts: 49
Joined: Sun May 04, 2014 9:09 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by kws53 »

ghostshadow wrote:
Mon Nov 09, 2020 5:11 pm
Hello would it be possible to make a list on this Topic of players reading mkv DV:

player X ---> mkv dv profil X --> TV pana X

thank
Shield 2019 Pro (PLEX client) ----> GAMMA Profile 7 ----> LG CX
Post Reply