Dolby Vision now possible through MP4 Mux.

Please post here for issues related to UHD discs
cyperous
Posts: 15
Joined: Sat Dec 08, 2018 11:01 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by cyperous » Tue Feb 19, 2019 10:25 pm

Mouth_of_Sauron wrote:
Mon Feb 18, 2019 8:00 pm
powdeau wrote:
Mon Feb 18, 2019 6:12 pm
I accidentally put two different tracks from two different movies in makemkv and when I played the file in DV, I could see the second layer in the background with different picture. So I believe we get the metadata.
That's very interesting.

I didn't think the metadata would have visually appeared like that, I thought it just told the TV what adjustments to make to the base layer.

Can you actually make out the image of the different movie?

Thanks
You're partially correct however since dolby vision is a 12-bit video and the hdr10 track is only 10-bit I believe that dolby is merging both tracks to turn the 4K track from 10-bit to 12-bit using the dv layer track. The metadata is also there in that track. As for others finding that the dv track is very small I think there is still dv metadata in the track however it's missing any video data to translate the 10-bit video into 12-bit video. Which means for example The Last Jedi is only getting 10-bit dolby vision, it's still possible that the HDR data is still dynamic.

Mouth_of_Sauron
Posts: 15
Joined: Sun Feb 17, 2019 8:33 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by Mouth_of_Sauron » Tue Feb 19, 2019 10:42 pm

cyperous wrote:
Tue Feb 19, 2019 10:25 pm
You're partially correct however since dolby vision is a 12-bit video and the hdr10 track is only 10-bit I believe that dolby is merging both tracks to turn the 4K track from 10-bit to 12-bit using the dv layer track. The metadata is also there in that track. As for others finding that the dv track is very small I think there is still dv metadata in the track however it's missing any video data to translate the 10-bit video into 12-bit video. Which means for example The Last Jedi is only getting 10-bit dolby vision, it's still possible that the HDR data is still dynamic.
That makes sense, and would certainly explain why people anecdotally report that The Last Jedi looks better in DV despite it's small DV track (compared to others).

But if the track usually carries additional video data, and not just metadata, then why is the DV track only 1920x1080?

cyperous
Posts: 15
Joined: Sat Dec 08, 2018 11:01 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by cyperous » Tue Feb 19, 2019 11:24 pm

Mouth_of_Sauron wrote:
Tue Feb 19, 2019 10:42 pm
cyperous wrote:
Tue Feb 19, 2019 10:25 pm
You're partially correct however since dolby vision is a 12-bit video and the hdr10 track is only 10-bit I believe that dolby is merging both tracks to turn the 4K track from 10-bit to 12-bit using the dv layer track. The metadata is also there in that track. As for others finding that the dv track is very small I think there is still dv metadata in the track however it's missing any video data to translate the 10-bit video into 12-bit video. Which means for example The Last Jedi is only getting 10-bit dolby vision, it's still possible that the HDR data is still dynamic.
That makes sense, and would certainly explain why people anecdotally report that The Last Jedi looks better in DV despite it's small DV track (compared to others).

But if the track usually carries additional video data, and not just metadata, then why is the DV track only 1920x1080?
That I'm not sure about unless it has to do with only needing 1 pixel DV per 4 pixels HDR track. If that's true It's possible that it only need a partial construction. Also since the HDR track has all 10-bits it only need an additional 2-bits of information to complete the transition. If the dv track had all 12 bits of information then it would be larger than even the 4k track. It's possibly they only need a 1080p frame to hold all the pertinent 2-bits of info. This is all conjecture so I don't know for sure, only dolby really knows for sure what is really going on. But it kind of makes sense.

PSUHammer
Posts: 6
Joined: Sun Feb 17, 2019 6:46 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by PSUHammer » Wed Feb 20, 2019 12:05 am

Mouth_of_Sauron wrote:
Tue Feb 19, 2019 6:57 am

You're using Plex on the Roku connected to TV via HDMI correct?

Can you put the MP4 on a USB HDD or flash drive and plug it into the TV directly? Does the TCL have a Plex app you could try with to rule out an issue with the Roku?

Using the described method is working for me, but I use Emby directly on my LG C8 TV (Emby is a media server like Plex).

Does the TCL have a dynamic tone mapping function? I've been doing some eyeball comparisons and I'm not convinced that DV looks noticeably better than regular HDR10 with LG Dynamic Tone Mapping. Admittedly comparisons are very difficult without identical TVs side by side (which I don't have). If your TV has a similar function then you may find you're not missing much if you can't get DV to work.
The TCL r617 is a Roku native set and the app is part of the built in Roku interface. I am streaming right to it over my LAN. The set does indeed support Dolby Vision and will differentiate between HDR and DV on, say, Netflix.

I will try a USB as I haven't yet.

TCL is somewhat budget level and the options are limited. I have no option called dynamic tone mapping.

cyperous
Posts: 15
Joined: Sat Dec 08, 2018 11:01 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by cyperous » Wed Feb 20, 2019 12:09 am

PSUHammer wrote:
Wed Feb 20, 2019 12:05 am
Mouth_of_Sauron wrote:
Tue Feb 19, 2019 6:57 am

You're using Plex on the Roku connected to TV via HDMI correct?

Can you put the MP4 on a USB HDD or flash drive and plug it into the TV directly? Does the TCL have a Plex app you could try with to rule out an issue with the Roku?

Using the described method is working for me, but I use Emby directly on my LG C8 TV (Emby is a media server like Plex).

Does the TCL have a dynamic tone mapping function? I've been doing some eyeball comparisons and I'm not convinced that DV looks noticeably better than regular HDR10 with LG Dynamic Tone Mapping. Admittedly comparisons are very difficult without identical TVs side by side (which I don't have). If your TV has a similar function then you may find you're not missing much if you can't get DV to work.
The TCL r617 is a Roku native set and the app is part of the built in Roku interface. I am streaming right to it over my LAN. The set does indeed support Dolby Vision and will differentiate between HDR and DV on, say, Netflix.

I will try a USB as I haven't yet.

TCL is somewhat budget level and the options are limited. I have no option called dynamic tone mapping.
I have that TV but it's currently does not support the muxes created with mp4muxer or least I haven't been able to get it work over network or locally via USB.

Mouth_of_Sauron
Posts: 15
Joined: Sun Feb 17, 2019 8:33 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by Mouth_of_Sauron » Wed Feb 20, 2019 2:40 am

Mouth_of_Sauron wrote:
Mon Feb 18, 2019 8:07 pm
Like others, I'm hoping that in the future we might be able to get DV in MKVs.

For this reason I'd like to be able to demux the DV MP4s in the future, but when I try tsMuxer doesn't recognise the DV stream so only demuxes the base video and audio. How can I demux a DV MP4 back out into the 3 individual files (Base HEVC, DV HECV, and AC3) ready to be muxed into a different container?

Thanks
Does anyone have any ideas on the above?

Grencola
Posts: 96
Joined: Sun Jan 27, 2019 5:19 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by Grencola » Wed Feb 20, 2019 3:23 am

Mouth_of_Sauron wrote:
Tue Feb 19, 2019 9:05 pm
Grencola wrote:
Tue Feb 19, 2019 8:16 pm
fyi if you type eac3to.exe file_name.m2ts it will list all the tracks. hd-audio is always track 3 if there's dv, otherwise it's track 2..

you would just type:
eac3to.exe 00005.m2ts 1: base.hevc 2: dv.hevc 3: audio.ac3 -core
-core extracts the core audio, yes.. but naming it a .ac3 file means it will convert say the dts core to ac3. if you want the core dts track you need to name it *.dts but mp4 wants ac3 so just name it audio.ac3 and you're good. truehd has an ac3 core already so no converting there. and -640 takes the high bitrate and makes it 640kbps instead of the default 448kbps, so slightly better sound as ac3 maxes out at 640 so may as well get the most you can out of the hd-audio. eac3 can go to 1536kbps but you need XMedia Recode for that.
Thanks, the -640 switch makes sense when converting a DTS core to highest quality AC3.

One thing I'm still not clear on though. What's the point of re-encoding an 448kbps AC3 core to 640kbps? You can't add quality by upsampling. If anything wouldn't the process of decoding and re-encoding degrade the quality? Wouldn't you end up with an AC3 track with a higher bitrate, but potentially worse sound than the original lower bitrate core?

Maybe I'm missing something? Am I correct that "... 3: audio.ac3 - core" literally just pulls the core AC3 untouched (i.e. it doesn't decode the original 448kbps and then re-encode back to 448kbps)? Does that make sense?

I've also had a play with XMedia Recode to convert the TrueHD 7.1 to EAC3 5.1, but I'm not sure I like that solution as (unless I'm doing it wrong) you have to completely remove the two back channels rather than fold them into the 5.1 track. Surely this will result in an EAC3 track with better quality sound than the AC3 core, but it will have an inaccurate 5.1 mix.

Thanks again
yes -core pulls out the core audio, it's not just a catchy name :p

a lot of true-hd cores are 640kbps ac3 already, while dts cores are usually around 1503kbps. I don't believe changing a 448kbps ac3 to 640kbps using -640 degrades the quality at all from what I've read in eac3to forums, but you're right it's pointless to add it if you know what the audio is.

it's just that for my one-step program I made, I put -640 in there so that it always makes the best ac3 it can from cores with higher bitrates. it would be cool if I new enough code to only add it if needed, but like I said I don't think it hurts the audio file. and if I don't keep it in there and the core is a 1503kbps dts track then it defaults to a 448kbps ac3 when it could be 640kbps. and it also properly blends in the back surrounds.

I think for higher bitrate eac3's XMedia Recode has a - ex tag where it folds in rear backs? I have to look again I can't remember. I wonder if it too can all be done from a command line because I would definitely change my program to use higher bitrate eac3 instead of lower ac3 and have better sounding dd+. it was pretty much just meant for the masses who can't figure all out how to use all the different programs though, I actually don't even use it myself since I like dd+ eac3 :)

Mouth_of_Sauron
Posts: 15
Joined: Sun Feb 17, 2019 8:33 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by Mouth_of_Sauron » Wed Feb 20, 2019 7:21 am

Grencola wrote:
Wed Feb 20, 2019 3:23 am
I think for higher bitrate eac3's XMedia Recode has a - ex tag where it folds in rear backs? I have to look again I can't remember. I wonder if it too can all be done from a command line because I would definitely change my program to use higher bitrate eac3 instead of lower ac3 and have better sounding dd+. it was pretty much just meant for the masses who can't figure all out how to use all the different programs though, I actually don't even use it myself since I like dd+ eac3 :)
I can't see any option in Xmedia Recode to fold the back channels into the resulting 5.1 mix, but I haven't used the program much so am happy be proven wrong!

Under conversion options the two 5.1 output types are:
Left + Right + Front Center + Left Side + Right Side + LFE
or
Left + Right + Front Center + Left Back + Right Back + LFE

To me this implies that it's doing straight channel mapping where you have to choose to drop either the side or back channels when converting to 5.1.

Again, if there is an option I can't see I'd be happy to be corrected - but my (brief) research indicates that a proper fold down is rather complicated and not nearly as simple as just merging the channels.

I stumbled upon an old forum where someone claimed to know an official formula from Dolby to fold them down. They said this is the "Dolby plus" method, which I guess might mean Dolby Digital Plus (or EAC3) but that's just a guess on my part.
https://www.gearslutz.com/board/post-pr ... -down.html

Left Surround = Left Side + (Left Back - 1.2dB) + (Right Back - 6.2dB)
Right Surround = Right Side + (Left Back - 6.2dB) + (Right Back - 1.2dB)

It all seems rather complicated, so unless Xmedia Recode (or another program) can do this automatically I'll probably just stick to regular AC3. There are probably command line tools that could be scripted, but it's above my pay grade!

Fuso90
Posts: 3
Joined: Wed Jan 30, 2019 4:15 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by Fuso90 » Wed Feb 20, 2019 3:58 pm

When the core is lower than 640 kbps, the encoding is done from the uncompressed track - truehd/atmos, not from the core. So -core is not needed, only -640. Because if the core is already 640 kbps it will be extracted, but if it's lower e.g. 448 or even 224 (Hunter Killer) the output will be encoded from the TrueHD audio.

When the core is lower than 640 kbps

Code: Select all

eac3to v3.34
command line: eac3to  TEST.ac3 TEST_output.ac3 -640
------------------------------------------------------------------------------
TrueHD/AC3 (Atmos), 7.1 channels, 48kHz, dialnorm: -27dB
(embedded: AC3 EX, 5.1 channels, 224kbps, 48kHz, dialnorm: -27dB)
AC3 encoding doesn't support back channels. Will mix them into the surround.
Extracting TrueHD stream...
Removing TrueHD dialog normalization...
Decoding with libav/ffmpeg...
Mixing surround channels...
Remapping channels...
Encoding AC3 <640kbps> with libAften...
Creating file "TEST_output.ac3"...
Original audio track, L+R+C+BL+BR+SL+SR: max 24 bits, average 18 bits.
Original audio track, LFE: constant bit depth of 16 bits.
Processed audio track, L+R+C+SL+SR: max 24 bits, average 19 bits.
Processed audio track, LFE: constant bit depth of 16 bits.
eac3to processing took 5 seconds.
Done.
When the core is 640 kbps

Code: Select all

eac3to v3.34
command line: eac3to  TEST.ac3 TEST_output.ac3 -640
------------------------------------------------------------------------------
TrueHD/AC3 (Atmos), 7.1 channels, 48kHz
(embedded: AC3 EX, 5.1 channels, 640kbps, 48kHz, dialnorm: -27dB)
Extracting AC3 stream...
Removing AC3 dialog normalization...
Creating file "TEST_output.ac3"...
eac3to processing took 1 second.
Done.

olevelo
Posts: 43
Joined: Thu Dec 20, 2018 11:59 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by olevelo » Thu Feb 21, 2019 12:28 am

Mouth_of_Sauron wrote:
Wed Feb 20, 2019 7:21 am
I can't see any option in Xmedia Recode to fold the back channels into the resulting 5.1 mix, but I haven't used the program much so am happy be proven wrong!
automatically I'll probably just stick to regular AC3. There are probably command line tools that could be scripted, but it's above my pay grade!
I never could even get Xmedia Recode to convert a TrueHD soundtrack to eac3. DTS to eac3 works fine.

olevelo
Posts: 43
Joined: Thu Dec 20, 2018 11:59 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by olevelo » Thu Feb 21, 2019 12:30 am

cyperous wrote:
Sun Feb 17, 2019 12:01 am
Haven't played alot of dolby vision files on my sony X700 but I did play transformers last knight mostly through the whole file using DLNA server provided through Plex.

My current work flow for making a dolby vision video files.
Words
Why are you doing so much work, instead of just using the workflow described earlier in the thread? It's like 3 steps instead 20. Plus you're probably losing some quality with all of that Handbrake mess.

Mouth_of_Sauron
Posts: 15
Joined: Sun Feb 17, 2019 8:33 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by Mouth_of_Sauron » Thu Feb 21, 2019 12:35 am

Fuso90 wrote:
Wed Feb 20, 2019 3:58 pm
When the core is lower than 640 kbps, the encoding is done from the uncompressed track - truehd/atmos, not from the core. So -core is not needed, only -640. Because if the core is already 640 kbps it will be extracted, but if it's lower e.g. 448 or even 224 (Hunter Killer) the output will be encoded from the TrueHD audio.

When the core is lower than 640 kbps

Code: Select all

eac3to v3.34
command line: eac3to  TEST.ac3 TEST_output.ac3 -640
------------------------------------------------------------------------------
TrueHD/AC3 (Atmos), 7.1 channels, 48kHz, dialnorm: -27dB
(embedded: AC3 EX, 5.1 channels, 224kbps, 48kHz, dialnorm: -27dB)
AC3 encoding doesn't support back channels. Will mix them into the surround.
Extracting TrueHD stream...
Removing TrueHD dialog normalization...
Decoding with libav/ffmpeg...
Mixing surround channels...
Remapping channels...
Encoding AC3 <640kbps> with libAften...
Creating file "TEST_output.ac3"...
Original audio track, L+R+C+BL+BR+SL+SR: max 24 bits, average 18 bits.
Original audio track, LFE: constant bit depth of 16 bits.
Processed audio track, L+R+C+SL+SR: max 24 bits, average 19 bits.
Processed audio track, LFE: constant bit depth of 16 bits.
eac3to processing took 5 seconds.
Done.
When the core is 640 kbps

Code: Select all

eac3to v3.34
command line: eac3to  TEST.ac3 TEST_output.ac3 -640
------------------------------------------------------------------------------
TrueHD/AC3 (Atmos), 7.1 channels, 48kHz
(embedded: AC3 EX, 5.1 channels, 640kbps, 48kHz, dialnorm: -27dB)
Extracting AC3 stream...
Removing AC3 dialog normalization...
Creating file "TEST_output.ac3"...
eac3to processing took 1 second.
Done.
Thanks, that's good to know.

Is there any way to use eac3to to create a 1536kbps 5.1 EAC3 track from the TrueHD stream? I tired eac3to TEST.ac3 TEST_output.ac3 -640
but it says "This audio conversion is not supported".

PSUHammer
Posts: 6
Joined: Sun Feb 17, 2019 6:46 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by PSUHammer » Thu Feb 21, 2019 12:38 am

cyperous wrote:
Wed Feb 20, 2019 12:09 am

I have that TV but it's currently does not support the muxes created with mp4muxer or least I haven't been able to get it work over network or locally via USB.
Thank you for confirming. This will keep me from wasting time running down the rabbit hole!

Mouth_of_Sauron
Posts: 15
Joined: Sun Feb 17, 2019 8:33 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by Mouth_of_Sauron » Thu Feb 21, 2019 1:35 am

OK, from what I can tell the following applies (correct me if I am wrong):
  • eac3to will mix the back channels into the surrounds when creating a 5.1 track from a 7.1 original, however it doesn't appear to be able to encode to EAC3. So the best you can get is 640kbps AC3.
  • Xmedia Recode can encode to 1536kbps 5.1 EAC3, but doesn't mix the back channels into the surround channels when converting from 7.1. As a result you lose the back channels.
I'm new to this stuff but I believe the following will work to create a proper 1563kbps 5.1 track from a 7.1 TrueHD original:

Use eac3to to create a 5.1 lossless FLAC file with the -down6 switch which appears to mix the back channels into the surrounds, you can then convert the 5.1 FLAC to 1536kbps 5.1 EAC3 using Xmedia Recode with direct channel mapping.

Obviously you still lose Atmos, but it at least gives you high bitrate EAC3 with a proper mix down of the side and back channels.

Presumably this would work the same with a 7.1 DTS-HD MA original too.

Does this sound like a good solution?

Grencola
Posts: 96
Joined: Sun Jan 27, 2019 5:19 pm

Re: Dolby Vision now possible through MP4 Mux.

Post by Grencola » Thu Feb 21, 2019 4:59 am

Mouth_of_Sauron wrote:
Thu Feb 21, 2019 1:35 am
OK, from what I can tell the following applies (correct me if I am wrong):
  • eac3to will mix the back channels into the surrounds when creating a 5.1 track from a 7.1 original, however it doesn't appear to be able to encode to EAC3. So the best you can get is 640kbps AC3.
  • Xmedia Recode can encode to 1536kbps 5.1 EAC3, but doesn't mix the back channels into the surround channels when converting from 7.1. As a result you lose the back channels.
I'm new to this stuff but I believe the following will work to create a proper 1563kbps 5.1 track from a 7.1 TrueHD original:

Use eac3to to create a 5.1 lossless FLAC file with the -down6 switch which appears to mix the back channels into the surrounds, you can then convert the 5.1 FLAC to 1536kbps 5.1 EAC3 using Xmedia Recode with direct channel mapping.

Obviously you still lose Atmos, but it at least gives you high bitrate EAC3 with a proper mix down of the side and back channels.

Presumably this would work the same with a 7.1 DTS-HD MA original too.

Does this sound like a good solution?
seems like it should work as it remains lossless right up until eac3. I can already make eac3's in XMedia recode but I can't seem to find that surround blending I thought I saw. so your flac trick might be the ticket. and I can do it all from command line so I'd upgrade my code, and make it the ultimate program :)

Post Reply