Dolby Vision now possible through MP4 Mux.

Please post here for issues related to UHD discs
ragico
Posts: 258
Joined: Fri Feb 15, 2019 1:09 am

Re: Dolby Vision now possible through MP4 Mux.

Post by ragico »

But, if tsmuxer is doing something wrong, why it plays correctly the first movie and the problem arises only if actually stop it and try to play a different movie???
yusesope
Posts: 221
Joined: Sun Jul 28, 2019 3:34 am

Re: Dolby Vision now possible through MP4 Mux.

Post by yusesope »

I try to answer the questions of some of you.
These are my personal considerations.

There are several "types" of Dolby Vision:
Double Track Double Layer: BL and EL + RPU (this is the case of Bluray discs where the Base Layer is represented by the first video track and the rest is placed in a second video track)
Single Track Single Layer: BL + RPU (this is the case of DVDFab)
Single Track Double Layer: BL + EL + RPU (my attempt)

There are also two types of EL:
The full enhancement layer (FEL) is a HEVC video stream with embedded Dolby Vision metadata: it requires a SoC to be capable of simultaneously decoding two video streams (base layer video stream and FEL video stream).
The minimal enhancement layer MEL, a constrained FEL, only consists of metadata: it requires a SoC to be capable of only decoding one single base layer video stream.


My mp4 files meet the characteristics listed in section 3.2 (in particular, subsection 3.2.2) of THIS document and have been generated from a Bluray disc with a Dolby Vision Double Track Double Layer (BL and EL + RPU) without alter any of the components.

It is logical to think that the best profiles for decoding my files are dvhe.04 and dvhe.07 (refer to THIS document) as they allow to improve the Base Layer using EL and the instructions contained in the RPU metadata.

I do not dwell on profile 07.
I take into account profile 04 (surely those interested in this type of file have a device, such as the new Shield, which does not support profile 07).
In official Dolby documents it is stated that a new Dolby Vision certified device is able to decode a profile 4 MEL bitstream without instantiating a secondary HEVC decoder for the enhancement layer.
A new Dolby Vision device that chooses not to instantiate a second HEVC decoder and supports
profile 4 must distinguish the original profile 4 bitstream from the profile 4 MEL bitstream. When
receiving an original profile 4 bitstream, such a device:
• Exits the Dolby Vision video pipeline
• Uses its normal video pipeline for video processing, and displays a standard dynamic range video
signal only
• Does not display the Dolby Vision logo

So follow me:

Code: Select all

Single Track Dual Layer dvhe.04.06 (BL + EL + RPU)
              |
              |
              |
              |
My device receives a Dolby Vision
Track whith a Base Layer and a Full   -------------  My device is able to decode a profile 4 MEL bitstream   
enhancement Layer (FEL)                              without instantiating a secondary HEVC decoder but is  -------------  Exits the Dolby Vision video pipeline, 
              |	                                     receiving a FEL bitstream                                             NO Dolby Vision logo, SDR                                				          
              |
	      |
	      |
My device can initiate a secondary HEVC decoder
	      |
              |
	      |
	      |
   Dolby Vision (Full enhanced)

My files (dvhe.04) are slightly out of standard: the EL layer should be represented by a HEVC main10 level 4.1 stream instead the one present in the Bluray disk is a High Tier level 5.1.
On some devices, the file may start (with its Dolby Vision Logo) but the file would not be reproduced because the decoder buffer would quickly become saturated.


If instead I choose to play my files with the profiles dvhe.05 and dvhe.08 (useful for processing Single Track Single Layer files (BL + RPU)), the hardware decoder will try to process the Base Layer (BL) and to improve it through RPU metadata by discarding the EL layer.
however, the Base Layer is non-standard (it has a different color space than the IPTPQc2/IPT one) as extracted from a Bluray disk.
It should appear better than an HDR stream (since metadata is dynamic and non-static) but will not reach its maximum splendor due to the lack of data contained in the EL layer.
The lack of this information, however, could lead, in some cases, to evident chromatic aberrations.
ATD555
Posts: 45
Joined: Fri Feb 28, 2020 4:04 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by ATD555 »

yusesope wrote:
Sat Feb 29, 2020 6:26 pm
I try to answer the questions of some of you.
These are my personal considerations.

There are several "types" of Dolby Vision:
Double Track Double Layer: BL and EL + RPU (this is the case of Bluray discs where the Base Layer is represented by the first video track and the rest is placed in a second video track)
Single Track Single Layer: BL + RPU (this is the case of DVDFab)
Single Track Double Layer: BL + EL + RPU (my attempt)

There are also two types of EL:
The full enhancement layer (FEL) is a HEVC video stream with embedded Dolby Vision metadata: it requires a SoC to be capable of simultaneously decoding two video streams (base layer video stream and FEL video stream).
The minimal enhancement layer MEL, a constrained FEL, only consists of metadata: it requires a SoC to be capable of only decoding one single base layer video stream.


My mp4 files meet the characteristics listed in section 3.2 (in particular, subsection 3.2.2) of THIS document and have been generated from a Bluray disc with a Dolby Vision Double Track Double Layer (BL and EL + RPU) without alter any of the components.

It is logical to think that the best profiles for decoding my files are dvhe.04 and dvhe.07 (refer to THIS document) as they allow to improve the Base Layer using EL and the instructions contained in the RPU metadata.

I do not dwell on profile 07.
I take into account profile 04 (surely those interested in this type of file have a device, such as the new Shield, which does not support profile 07).
In official Dolby documents it is stated that a new Dolby Vision certified device is able to decode a profile 4 MEL bitstream without instantiating a secondary HEVC decoder for the enhancement layer.
A new Dolby Vision device that chooses not to instantiate a second HEVC decoder and supports
profile 4 must distinguish the original profile 4 bitstream from the profile 4 MEL bitstream. When
receiving an original profile 4 bitstream, such a device:
• Exits the Dolby Vision video pipeline
• Uses its normal video pipeline for video processing, and displays a standard dynamic range video
signal only
• Does not display the Dolby Vision logo

So follow me:

Code: Select all

Single Track Dual Layer dvhe.04.06 (BL + EL + RPU)
              |
              |
              |
              |
My device receives a Dolby Vision
Track whith a Base Layer and a Full   -------------  My device is able to decode a profile 4 MEL bitstream   
enhancement Layer (FEL)                              without instantiating a secondary HEVC decoder but is  -------------  Exits the Dolby Vision video pipeline, 
              |	                                     receiving a FEL bitstream                                             NO Dolby Vision logo, SDR                                				          
              |
	      |
	      |
My device can initiate a secondary HEVC decoder
	      |
              |
	      |
	      |
   Dolby Vision (Full enhanced)

My files (dvhe.04) are slightly out of standard: the EL layer should be represented by a HEVC main10 level 4.1 stream instead the one present in the Bluray disk is a High Tier level 5.1.
On some devices, the file may start (with its Dolby Vision Logo) but the file would not be reproduced because the decoder buffer would quickly become saturated.


If instead I choose to play my files with the profiles dvhe.05 and dvhe.08 (useful for processing Single Track Single Layer files (BL + RPU)), the hardware decoder will try to process the Base Layer (BL) and to improve it through RPU metadata by discarding the EL layer.
however, the Base Layer is non-standard (it has a different color space than the IPTPQc2/IPT one) as extracted from a Bluray disk.
It should appear better than an HDR stream (since metadata is dynamic and non-static) but will not reach its maximum splendor due to the lack of data contained in the EL layer.
The lack of this information, however, could lead, in some cases, to evident chromatic aberrations.
This information is great but I think we are all interested in knowing how you created the Single Track Double Layer MP4 files so we can recreate and test with our own videos?
Grencola
Posts: 343
Joined: Sun Jan 27, 2019 5:19 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by Grencola »

baker99 wrote:
Sat Feb 29, 2020 1:29 pm
A quick update, using the 7.06 test file muxed with an Atmos track seems to play with both Atmos and Dolby vision in mx player (it seems to not always detect dolby vision but that may be my settings).
on the shield?! I didn't think it supported 7.06
baker99
Posts: 84
Joined: Wed Oct 30, 2019 7:05 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by baker99 »

Grencola wrote:
Sat Feb 29, 2020 6:41 pm
baker99 wrote:
Sat Feb 29, 2020 1:29 pm
A quick update, using the 7.06 test file muxed with an Atmos track seems to play with both Atmos and Dolby vision in mx player (it seems to not always detect dolby vision but that may be my settings).
on the shield?! I didn't think it supported 7.06
It appears to for me, unless something funny is going on, can someone else test using the 7.06 test files please?
RESET_9999
Posts: 2093
Joined: Mon Aug 05, 2019 7:12 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by RESET_9999 »

baker99 wrote:
Sat Feb 29, 2020 7:01 pm
Grencola wrote:
Sat Feb 29, 2020 6:41 pm
baker99 wrote:
Sat Feb 29, 2020 1:29 pm
A quick update, using the 7.06 test file muxed with an Atmos track seems to play with both Atmos and Dolby vision in mx player (it seems to not always detect dolby vision but that may be my settings).
on the shield?! I didn't think it supported 7.06
It appears to for me, unless something funny is going on, can someone else test using the 7.06 test files please?
works on mine too
mattmarsden
Posts: 88
Joined: Mon Sep 03, 2018 10:36 am

Re: Dolby Vision now possible through MP4 Mux.

Post by mattmarsden »

Interesting, so profile 04 doesnt’t have a different colorspace to UHD bluray, it seems in effect DL rolled in to a single layer.
hepe9
Posts: 71
Joined: Mon Jun 03, 2019 11:04 am

Re: Dolby Vision now possible through MP4 Mux.

Post by hepe9 »

So for people we can only play DV 5.06 is like DVDFab

Edit: I tried the new files and the important profiles 04 and 07 no DV and no play in normal speed, they play in fast speed and I can't stop the reproduction i need to wait until the end, its bugged

Sony Android Tv
hepe9
Posts: 71
Joined: Mon Jun 03, 2019 11:04 am

Re: Dolby Vision now possible through MP4 Mux.

Post by hepe9 »

ATD555 wrote:
Sat Feb 29, 2020 6:36 pm
yusesope wrote:
Sat Feb 29, 2020 6:26 pm
I try to answer the questions of some of you.
These are my personal considerations.

There are several "types" of Dolby Vision:
Double Track Double Layer: BL and EL + RPU (this is the case of Bluray discs where the Base Layer is represented by the first video track and the rest is placed in a second video track)
Single Track Single Layer: BL + RPU (this is the case of DVDFab)
Single Track Double Layer: BL + EL + RPU (my attempt)

There are also two types of EL:
The full enhancement layer (FEL) is a HEVC video stream with embedded Dolby Vision metadata: it requires a SoC to be capable of simultaneously decoding two video streams (base layer video stream and FEL video stream).
The minimal enhancement layer MEL, a constrained FEL, only consists of metadata: it requires a SoC to be capable of only decoding one single base layer video stream.


My mp4 files meet the characteristics listed in section 3.2 (in particular, subsection 3.2.2) of THIS document and have been generated from a Bluray disc with a Dolby Vision Double Track Double Layer (BL and EL + RPU) without alter any of the components.

It is logical to think that the best profiles for decoding my files are dvhe.04 and dvhe.07 (refer to THIS document) as they allow to improve the Base Layer using EL and the instructions contained in the RPU metadata.

I do not dwell on profile 07.
I take into account profile 04 (surely those interested in this type of file have a device, such as the new Shield, which does not support profile 07).
In official Dolby documents it is stated that a new Dolby Vision certified device is able to decode a profile 4 MEL bitstream without instantiating a secondary HEVC decoder for the enhancement layer.
A new Dolby Vision device that chooses not to instantiate a second HEVC decoder and supports
profile 4 must distinguish the original profile 4 bitstream from the profile 4 MEL bitstream. When
receiving an original profile 4 bitstream, such a device:
• Exits the Dolby Vision video pipeline
• Uses its normal video pipeline for video processing, and displays a standard dynamic range video
signal only
• Does not display the Dolby Vision logo

So follow me:

Code: Select all

Single Track Dual Layer dvhe.04.06 (BL + EL + RPU)
              |
              |
              |
              |
My device receives a Dolby Vision
Track whith a Base Layer and a Full   -------------  My device is able to decode a profile 4 MEL bitstream   
enhancement Layer (FEL)                              without instantiating a secondary HEVC decoder but is  -------------  Exits the Dolby Vision video pipeline, 
              |	                                     receiving a FEL bitstream                                             NO Dolby Vision logo, SDR                                				          
              |
	      |
	      |
My device can initiate a secondary HEVC decoder
	      |
              |
	      |
	      |
   Dolby Vision (Full enhanced)

My files (dvhe.04) are slightly out of standard: the EL layer should be represented by a HEVC main10 level 4.1 stream instead the one present in the Bluray disk is a High Tier level 5.1.
On some devices, the file may start (with its Dolby Vision Logo) but the file would not be reproduced because the decoder buffer would quickly become saturated.


If instead I choose to play my files with the profiles dvhe.05 and dvhe.08 (useful for processing Single Track Single Layer files (BL + RPU)), the hardware decoder will try to process the Base Layer (BL) and to improve it through RPU metadata by discarding the EL layer.
however, the Base Layer is non-standard (it has a different color space than the IPTPQc2/IPT one) as extracted from a Bluray disk.
It should appear better than an HDR stream (since metadata is dynamic and non-static) but will not reach its maximum splendor due to the lack of data contained in the EL layer.
The lack of this information, however, could lead, in some cases, to evident chromatic aberrations.
This information is great but I think we are all interested in knowing how you created the Single Track Double Layer MP4 files so we can recreate and test with our own videos?
For my part I will not try more test and rounds, if he release the tool I will test it and publish results

Maybe if I intall Mxplayer or Plex I can reproduces more profiles, i don't know, but I don't wanna install nothing in the TV and make it more laggy for clips of seconds that possibly have wrong colors

Good luck for people they can play more profiles :wink:
baker99
Posts: 84
Joined: Wed Oct 30, 2019 7:05 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by baker99 »

I'm happy to run any tests needed on my C6, Shield or X700. Things are getting so close now with everyone's hard work.
PapitaHD
Posts: 26
Joined: Sun Mar 01, 2020 10:31 am

Re: Dolby Vision now possible through MP4 Mux.

Post by PapitaHD »

New official documentation by Dolby states some concerning stuff for us: https://www.dolby.com/us/en/technologie ... v2.1.2.pdf

"As Dolby Vision profile 4 is not supported for new applications by service providers, profile 7 is currently the only Dolby Vision profile with dual layers. However, Blu‑ray dual-layer application of profile 7 uses transport streams rather than the ISO base media file format container. Dual-track ISO base media files are not
supported for new Dolby Vision applications.
As originally designed, dual-layer Dolby Vision streams can be multiplexed and transported on two separate tracks in an ISO base media file, with the base-layer substream on one track, and the enhancement-layer and reference-picture-unit substreams packaged together on another track. Each track has its own sample description table. The base-layer track can be either SDR compliant or HDR compliant."


So what do you guys think, can this mean that in the near future (because of upcoming firmware updates forced by Dolby) no device will support any type of mp4-DV files?
bgalakazam
Posts: 34
Joined: Wed May 01, 2019 6:15 pm
Location: Italy

Re: Dolby Vision now possible through MP4 Mux.

Post by bgalakazam »

.ts file with DV and TrueHD Atmos playing back on X700 :shock:
Tested and works properly with PGS and fast forwarding. This is amazing. As far as I am concerned my DV needs are fully met.
Sony X700 -> Onkyo TX-RZ830 -> LG C8
yusesope
Posts: 221
Joined: Sun Jul 28, 2019 3:34 am

Re: Dolby Vision now possible through MP4 Mux.

Post by yusesope »

mattmarsden wrote:
Sat Feb 29, 2020 7:03 pm
Interesting, so profile 04 doesnt’t have a different colorspace to UHD bluray, it seems in effect DL rolled in to a single layer.
It looks just like that.
Check out the LG demo video that I demuxed in one of my attempts (it's a yuv420p10le)
yusesope wrote:
Fri Feb 28, 2020 8:04 pm
I think I'm onto something: I am also able to demux Single Layer DV files and transform them into Dual Layer DV files.
I made an attempt with the file you find HERE.
The result is this (HERE the DL file):

Code: Select all

Video #1
ID                                      : 1
Formato                                 : HEVC
Formato/Informazioni                    : High Efficiency Video Coding
Profilo formato                         : Main 10@L5@Main
ID codec                                : hev1
ID codec/Informazioni                   : High Efficiency Video Coding
Durata                                  : 1 min 14s
Bitrate                                 : 15,4 Mb/s
Larghezza                               : 3.840 pixel
Altezza                                 : 2.160 pixel
Rapporto aspetto visualizzazione        : 16:9
Modalità frame rate                     : Costante
Frame rate                              : 23,976 (24000/1001) FPS
Spazio colore                           : YUV
Croma subsampling                       : 4:2:0
Profondità bit                          : 10 bit
Bit/(pixel*frame)                       : 0.077
Dimensione della traccia                : 137MiB (74%)
Default                                 : Si
AlternateGroup/String                   : 1
Data codifica                           : UTC 2020-02-28 19:23:55
Data                                    : UTC 2020-02-28 19:23:55
Codec configuration box                 : hvcC

Video #2
ID                                      : 2
Formato                                 : HEVC
Formato/Informazioni                    : High Efficiency Video Coding
Profilo formato                         : Main 10@L4@Main
Dolby Vision                            : 1.0, dvhe.04.06, EL+RPU
ID codec                                : hev1
ID codec/Informazioni                   : High Efficiency Video Coding
Durata                                  : 1 min 14s
Bitrate                                 : 5.519 kb/s
Larghezza                               : 1.920 pixel
Altezza                                 : 1.080 pixel
Rapporto aspetto visualizzazione        : 16:9
Modalità frame rate                     : Costante
Frame rate                              : 23,976 (24000/1001) FPS
Spazio colore                           : YUV
Croma subsampling                       : 4:2:0
Profondità bit                          : 10 bit
Bit/(pixel*frame)                       : 0.111
Dimensione della traccia                : 49,0MiB (26%)
Default                                 : No
AlternateGroup/String                   : 1
Data codifica                           : UTC 2020-02-28 19:23:55
Data                                    : UTC 2020-02-28 19:23:55
Codec configuration box                 : hvcC+dvcC


ATD555 wrote:
Fri Feb 28, 2020 10:48 pm
I will be testing the SL DV files on my Hisense H8F when I get home and post the results. Also curious to know how to make them myself.
ATD555 wrote:
Sat Feb 29, 2020 9:42 am
How did you create the single layer DV 7.06 BL+EL+RPU file?
ATD555 wrote:
Sat Feb 29, 2020 6:36 pm
This information is great but I think we are all interested in knowing how you created the Single Track Double Layer MP4 files so we can recreate and test with our own videos?
if you repeat it a fourth time, in front of a mirror, I could appear behind you.

As you may have guessed, the tool is currently under construction.
It is not found under stones or in bushes but must be written from scratch in my free time.
In this month I will be able to devote little time to this project so it seems right to explain what you need to do (since you still want to know it).

Help yourself with the image I attach.
After demuxing a Double Track Double Layer file you will find yourself with a HEVC raw stream relating to the Base Layer (BL.hevc, on the left) and with a HEVC raw stream relating to the Enhancement Layer (EL.hevc, on the right).
Now you have to create a HEVC raw stream where the two previous streams are mixed.

The rules are simple:
Take the NAL AUD units of the two streams as a reference (red for the BL stream and green for the EL stream) and alternate in the BL_EL_RPU.hevc stream (the one in the middle) the remaining NAL units included between the first ones (blue and yellow blocks) .
The image helps you understand the trend that must be respected.
But be sure to change the header of the NAL units in the EL stream. Immediately after the start prefix code of the individual NAL units (0x00000001) you must enter two bytes with a value of 0x7E01.

Code: Select all

for example a hypothetical NAL AUD 
0x00000001460110 
will become
0x000000017e01460110
The RPU metadata NAL unit (in light blue) must be transported without modification. The same applies to NAL units belonging to the BL stream.

The changes in the size of the individual NAL units in the BL_EL_RPU.hevc stream are due both to the insertion of the value 0x7E01 and, in some cases, to the replacement of the starting prefix code 0x000001 with 0x00000001 (it seems to be more appreciated by Dolby's mp4muxer tool) .

Image



At the moment, given the lack of time, I don't know if other changes are needed.
Only by testing 10-second clips with the wrong colors will we be able to understand what adjustments to make. Bear in mind that at the moment I don't even have a display with Dolby Vision...

Now you have all the information you need to proceed!
You just have to repeat the same operation hundreds of thousands of times.
Happy movie night!
ragico
Posts: 258
Joined: Fri Feb 15, 2019 1:09 am

Re: Dolby Vision now possible through MP4 Mux.

Post by ragico »

bgalakazam wrote:
Sun Mar 01, 2020 3:01 pm
.ts file with DV and TrueHD Atmos playing back on X700 :shock:
Tested and works properly with PGS and fast forwarding. This is amazing. As far as I am concerned my DV needs are fully met.
your .tsDV files are single or double layer?
If they are double layer, have you tried to stop the vision of the movie for a couple of seconds, and then start it again?
Did it restart with none of the problems that myself and others have reported a few posts above?
RESET_9999
Posts: 2093
Joined: Mon Aug 05, 2019 7:12 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by RESET_9999 »

@ the x700 owners...

I watched a couple of DV TS movies and I'm glad to report that everything looked and sounded great, no problem at all (except when you stop or finish playback of course).
I watched Jumanji 2017, Deer Hunter(tsmuxer applied the 3000ms delay automatically) and Angel heart. No lipsync issue but if you guys still get some, you can just press option on the remote and set a delay.

I also tested some of the problematic titles and they all played without issue.

Angel Heart:

DV mp4 = video freeze with LPCM (fine with ac3)
DV TS = works with DTS-HD

Secret life of pets 2:
DV mp4 = playback is jumpy
DV TS = works with Atmos.

Gemini man:
DV mp4 = playback is jumpy with lpcm (fine with ac3)
DV ts = works with atmos.

plus the tsmuxer method is saving me tons of time.. it used to take like 20-30 min to make a DV MP4 with LPCM even with my fast NVME M2 drive ( a lot slower with HDD).
now one step, no cmd-line and it takes 2 minutes to create a DV TS with atmos lol .

Image
Post Reply