Feature request: Support profile 7 Dolby Vision ('dual-layer DV') in MP4s

First of all (especially to the mods): please read this topic carefully befor closing it (as a similiar topic was closed by one mod without any reasonable reason). Thank you :slight_smile:

Second, for a better understanding, in the following, I will use terms like ‘single-’ vs. ‘dual-layer’ Dolby Vision (instead of the more uncommon tems profile 5 vs. profile 7 DV, respectively).

Some points before I start with some details about the present request
There is currently a discussion in another topic about the (new) Exoplayer (what also helps plex to support single-layer DV):

The person who started this thread argued that currently, Plex does not use the newest version of the Exoplayer. Comming from another topic, I found out that a newer version would also support dual-layer DV.

@anon18523487 argued that beside the fact that the (newer) Expoplayer supports DV, one cannot expect that Plex could play dual-layer DV (because of licensing). I was a bit confused about that.

So whats interesting/important to know about dual-layer Dolby Vision:
First of all, currently one get Dolby Vision only via Streaming Service (like Netflix) or from UHDs (or from UHDs ripps → MP4s with single- or dual-layer DV by using DVDFab).
Videos from streaming services with DV are single-layer DV streams. Videos from UHDs are usually dual-layer streams. There is a basic layer (HDR10) and an so-called enhencement layer which contains the important metadata for Dolby Vision. This is an important point hence it offers the highest compatibility with devices that do not support DV. In case of your setup does not support DV, the second (so-called enhencement layer) will be ignored and you will get HDR10 or HDR10+, respectively (a solely single-layer DV stream would lead to transcoding on your non-DV device due to the fact that there is no HDR10 base layer).

status quo:
To get Dolby Vision you will have to ripp your UHD. Currently, to my knowledge, only MP4 containers support DV (mkv does not support it) 
 there might be some other rather uncommon types. You will have to choose between single- and dual-layer DV at the beginning of the ripping procedure (e.g. using DVDFab).
Plex currently supports only single-layer DV.
@ChuckPa argued in a past topic that dual-layer Dolby Vision support in Plex is senseless because it would mean that we want to play physical media. Plex will not read Disks.
And here is a big misunderstanding. Unfortunatelly, I was not able to respond to this statement because Chuck instantly closed the topic.
To make it clear: Yes, usually dual-layer DV is only available on physical media (such as UHDs). However, you could also have dual-layer DV made from your ripps (mp4 files DV).
@TeknoJunky supports my suggestion that Chuck misunderstood my thoughts.
Taken from another topic:

So why not rely on sinlge-layer DV? Why should Plex also support dual-layer DV?
Here are some points

  1. Compatibility: Dual-Layer DV mp4s are high compatible with devices that do not support DV at all. In such a case, Plex currently ignores the enhencement layer and plays HDR10, instead.

  2. We do not really know how single-layer content is ripped by software like DVDFab: Interestingly, DVDFab, currently, seems to be the only way to get single-layer DV ripps from your media. Beside the fact that there is a great debate on how these guys got it work, there are some hints that DVDFab does not creat “real” single-layer DV. In the worst case, it only triggers the TV to show the Dolby Vision Sign on the screen. There is a guy who investigated the output of the single-layer DV stream comming from a ripp made by DVDFab and he argues that the enhencement layer has static metadata.Furhermore, single-layer DV from DVDFab is not in the correct colour space.
    Link (go to post by wesk05): Dolby Vision - Page 35 - MrMC

Accordingly, we should not rely on such an untransparent procedure what potentiallly generates not “real” single-layer DV.
Plex supports DV, yes, but only single-layer. But there is no benefit from that when there is only one tool what can generate single-layer DV ripps and, furthermore, it is totally not clear if the content is actually DV. Instead, Plex should support also dual-layer Dolby Vision hence it as the higher compatibility AND investigations showed that such content (mp4s generated from UHDs) is actually DV.

Great post, thanks for making such an elegant request.

1 Like

@ChuckPa did you delete your reply to this topic?
I just wanted to answer
 :man_shrugging:

You was asking me to provide more details?!
Please correct me, but you also stated that your Nvidia Shield 2019 supports Dolby Vision dual-layer DV MP4s?
Does it play it or does it only ignores the enhancement layer (what Plex currently does) and plays regular HDR10?

I tested it this morning and a mp4 with dual-layer DV was played as regular HDR10.

I highly appreciate your thoughts on this topic. :slight_smile:

1 Like

Hi Toby thank you for your detailed request. I would also like this because videos with profile 7 are more compatible and can also be created with free tools. As you said, you are currently dependent on the expensive DVDFab. Profile 7 MP4s can be created with free tools like CloneBD or the mp4muxer. It is simply the better and cleaner way. If the Plex team found a way to integrate this on the shield it would be great!

1 Like

I did delete my reply.

In going through the previous posts

  1. I realized I had confused earlier Dolby Vision and Dolby Atmos.
  2. My reply was therefore invalid and would have been off-topic.

Regarding my prior misunderstanding, I do apologize.

In my now-deleted reply, knowing I was thinking of Dolby Atmos , which does passthrough just fine, that’s what I was seeking clarification on.

Please keep in mind I had “Dolby Atmos” in my head and not “Dolby Vision” as I replied.

There are a few points which are still valid.

  1. Anything Dolby requires licensing.
  2. In the additional details I was eluding to,
    a. Please help the product team and engineering team understand the need based on existing products (media or otherwise) availability.
    b. If multiple steps are required or make sense, please help draw an example path. (paint a road to a plausible solution).

That’s all I was hoping for.

Again, my apologies if my asserting DV / Physical Media and closed threads
Plex can’t deal with ISO files because of the licensing / copyright issues. That’s unfortunately a non-negotiable point. Product and Engineering won’t budge on that unless there is a really good justification with numbers to back it.

3 Likes

Okay! So, to get you right. We/I should provide a) arguments and reasons why Plex should support dual-layer DV (in the sense of why it could be financially interesting for the Plex team)? And b) a technical description of how dual-layer DV could be established in Plex?

Referring to a) I could provide some points
 however regarding point b) it will be difficult since I am not a programmer
 but I will do research on that topic :slight_smile:

@ChuckPa
Ok, I also like to help with the implementation and supply all the information I get.

First, here is an example so that we can define what we are talking about.

4K Dolby Vision Dual Layer MP4 with EAC3
https://drive.google.com/file/d/1W3D6JFq5wL1c063Bnb9_KcEjMY-fkQHF/view?usp=drive_open

Media Info of the video track:

Video #1
ID                                       : 1
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main 10@L5.1@High
HDR format                               : SMPTE ST 2086, HDR10 compatible
Codec ID                                 : hev1
Codec ID/Info                            : High Efficiency Video Coding
Duration                                 : 10 s 719 ms
Bit rate                                 : 696 kb/s
Width                                    : 3 840 pixels
Height                                   : 2 160 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 23.976 (24000/1001) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0 (Type 2)
Bit depth                                : 10 bits
Bits/(Pixel*Frame)                       : 0.003
Stream size                              : 910 KiB (23%)
Encoded date                             : UTC 2020-01-25 12:03:28
Tagged date                              : UTC 2020-01-25 12:03:28
Color range                              : Limited
Color primaries                          : BT.2020
Transfer characteristics                 : PQ
Matrix coefficients                      : BT.2020 non-constant
Mastering display color primaries        : Display P3
Mastering display luminance              : min: 0.0050 cd/m2, max: 4000 cd/m2
Maximum Content Light Level              : 1000 cd/m2
Maximum Frame-Average Light Level        : 471 cd/m2
Codec configuration box                  : hvcC

Video #2
ID                                       : 2
Format                                   : HEVC
Format/Info                              : High Efficiency Video Coding
Format profile                           : Main 10@L5.1@High
HDR format                               : Dolby Vision, Version 1.0, dvhe.07.06, EL+RPU / SMPTE ST 2086, HDR10 compatible
Codec ID                                 : dvhe
Codec ID/Info                            : High Efficiency Video Coding with Dolby Vision
Duration                                 : 10 s 719 ms
Bit rate                                 : 324 kb/s
Width                                    : 1 920 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 23.976 (24000/1001) FPS
Color space                              : YUV
Chroma subsampling                       : 4:2:0 (Type 2)
Bit depth                                : 10 bits
Bits/(Pixel*Frame)                       : 0.007
Stream size                              : 424 KiB (11%)
Encoded date                             : UTC 2020-01-25 12:03:28
Tagged date                              : UTC 2020-01-25 12:03:28
Color range                              : Limited
Color primaries                          : BT.2020
Transfer characteristics                 : PQ
Matrix coefficients                      : BT.2020 non-constant
Mastering display color primaries        : Display P3
Mastering display luminance              : min: 0.0050 cd/m2, max: 4000 cd/m2
Codec configuration box                  : hvcC+dvcC

We’re talking about the second video track that contains the Dolby Vision bitstream:

HDR format : Dolby Vision, Version 1.0, dvhe.07.06, EL+RPU / SMPTE ST 2086, HDR10 compatible

Definition according to Dolby (Page 14):

I am not a programmer so unfortunately I can not help to integrate this into the Exoplayer / Shield. But I can provide all possible DV examples and sound tracks.

Why should Plex do that? Why would that be useful?
As we already mentioned, you are currently dependent on a single fee-based program. Not everyone wants to buy DVDFab. More people could enjoy DV on the Shield or with Plex. The compatibility on other devices that cannot play DV is given because it is backwards compatible. It would currently be a unique selling point. The feature could also be reserved for Plex Pass owners (to possibly get the costs in through new members :grin:). In addition, the competitors does not sleep (emby)
 If the exoplayer and the shield can do it, it should be added and intigirated. That would add another great feature to Plex :sunglasses:

The Plex Community will thank you!
KCX

2 Likes

Here is the simple justification;

Plex purports to be the premier media platform, people expect things to “just work”, plex has taken great effort and care to see that is, for the most part true.

Per the op, it appears that this functionality has already been implemented into the source player, to what extent I know not, but if the ground works have already been implemented, then it should be fairly straight forward for the appropriate team, who is already working with the exoplayer source, to pull forward and integrate whatever is needed into the plex tree.

Dolby vision playback would obviously only be able to work on hardware/devices where it is already supported outside of plex, so licensing issues should be minimal.

Doing so will further reduce the instances where plex doesn’t “just work”, no doubt pleasing all involved.

1 Like

Question: Hypothetical:

If there is additional licensing requirement for right-to-use the decoder, what should Plex do?

Following your thoughts about additional licensing, may I also ask you something before?
Plex is currently supporting single-layer DV content. Did Plex pay for offering it in the past? (Maybe dual-layer DV is only an ‘upgrade’ or so)

Coming to your question, you wanted to know whether Plex should pay for the license in order to use dual-layer Dolby Vision?
My answer is ‘yes’! Don’t get me wrong, The Plex team is doing a great job 
 however, as we all stated dual-layer DV has huge advantages over single-layer: for example

  1. compatibility,

  2. it is ‘real’ DV (we are currently not sure what DVDFab is doing and there is some evidence that this what they call single-layer DV is somehow manipulated), and there is only one tool on the market what can make single-layer DV content from UHDs,

  3. this software is quite expensive and currently I see no convincing advantage in offering single-layer DV compatibility because - as I said - all Plex costumers must rely on a single tool to get their Dolby Vision content from their UHDs. I would not expect that this is your goal? @KCX futher stated that there are a lot of free tools out there which can do dual-layer Dolby Vision ripps from your UHDs.

Last but not least:
4. offering dual-layer DV on a media player would be so-called unique selling proposition. currently there is no external media player out there what can play dual-layer Dolby Vision MP4s. There is only a odd Chinese clone version of an Oppo player what can do that and I certainly would not expect that licensing was considered. Only some internal players of TVs can play dual-layer DV MP4s and I am not aware of the names and whether it is rather an urban legend than the truth.

So, please let us know whether you need more convincing arguments :slight_smile:

To summarize:
the current single-layer DV support is quite nice. However, there is no big advantage because we have to use one single tool to get single-layer DV content from UHDs. This software is expensive and currently there is some evidence that the generated content is somehow manipulated so that it triggers the TV to show the DV sign on the screen. Furthermore there are some inconsistencies relating to the colour space
 so: there might be something wrong. Accordingly, offering support for dual-layer Dolby Vision MP4s would be a huge step.

one last important note:
Just to get me right. We are asking for supporting dual-layer Dolby Vision in MP4s not the typical usage of dual-layer DV what is often used on physical media. We understand that the Plex team will not put this on their roadmap. @ChuckPa provided convincing arguments for that :slight_smile:

2 Likes

just one reason is enough, and that reason is that Dolby Vision feature on Plex is completely useless if it supports only single-layer (profile 5), since there is no source material in that format.

  1. A lot of what Plex uses (the transcoder) comes from upstream
  2. Licensing costs money and, forgive me please, – free users are in no position to try and influence product offerings. If Plex gave it all away for free, Plex wouldn’t be in business very long would it?

Let’s allow this feature request to collect votes. Votes are reviewed by the product team regularly. They will quickly see if a feature is wanted and then decide how best to proceed.

If you’ll forgive me, I’ll venture back to my side of the forum – supporting Linux & NAS boxes :wink:

Sure! Thank you for paying your attention toward this request.

Why is Xplay (LG TV third party plex client) able to reproduce them? I assume it leverages on TV player that has Dolby Vision licensing to do it.

Yep. That’s what I expect. However, there should be a higher compatibility on other devices. Especially Android

I also found a request in the Nvidia forum and left the latest information there. Maybe we should push the topic at Nvida too.

https://www.nvidia.com/en-us/geforce/forums/shield-tv/9/331104/dual-layer-dolby-vision-support/

1 Like

I have talked too nvidia so many times at this point,they always give me a standard email reply because the chat barely knows anything about this,from what i’m thinking is that the nvidia shield TV pro is based of the chromecast ultra,and has the same issue as that one,too only play Single layer,
on the forums of MakeMKV, i saw a post of someone suggesting the idea that maybe they don’t wish to make dual layer compatible for the reason that it gives a higher chance for pirates too actually pirate content and get their hands on Dolby Vision.

as previous people have stated if Plex hands out all their content for free it would not stay a business for long,i myself tbh would gladly pay for a Plex Pass just to get dolby vision working,i have a expensive TV, i wouldn’t mind sacrificing a small fee for being able to use the content,thats like buying a 1000€ phone and not grab a screenprotector

3 Likes

even before exoplayer, what this is going to come down to is whether or not shield is a dolby certified device for dvhe.07.06 (ie 4k uhd bluray with dolby vision)

most likely, the only people who can answer that are the shield engineers/product development team.

if it is, then it should be a fairly straightforward manner to have a software player use the applicable API/hardware to decode/combine the HDR+DV metadata, output that to HDMI with the proper signalling required so that the display device can detect and display the DV logo and signal.

secondary to that, is whether or not the shield can still output DV dvhe.07.06 even if it isn’t certified.

if the shield is NOT certified for dvhe.07.06, then it becomes a lot less likely that it even includes the proper hardware/API for a software player to even make use of.

I wish I’ve studied informatics instead of psychology :rofl: maybe there is a way to reverse engineer this
 lol

1 Like

to me it looks like the product team has no foresight into the field. Dolby Vision is basically next-gen HDR and de facto gold standard in HDR right now. the same logic applies to DV as to why they would even create a player that plays video in almost all possible formats: because users need it. I would ask product team what can we actually do with single layer DV feature? it’s useless and false propaganda, since it’s basically a non-feature. please don’t mention DVDFab anymore at all, it’s a fake program that outputs fake DV and not worth the space it’s mentioned on.

if there are licencing fees involved I’m sure that every user would be more than happy to pay for them. keep in mind, we spent way more money on DV capable TVs, DV capable receivers (I had to replace mine) and upgrade the Shield just for DV alone. licencing fees for DV support would be a joke in comparison to that. and understand also that a lot of people are also severely disappointed when they learn that their brand new DV capable setup is basically useless in that regard.

all in all, I would just like to know one thing from Plex: why no Dolby Vision support?

1 Like