Dolby Vision and 1.15.1

Please post here for issues related to UHD discs
siriusbox
Posts: 31
Joined: Thu Mar 12, 2020 3:07 pm

Re: Dolby Vision and 1.15.1

Post by siriusbox »

yusesope wrote:
Thu May 21, 2020 5:59 pm
shawnc22 wrote:
Thu May 21, 2020 4:36 pm
Agreed with github! happy to do the compile/demo testing and review, but yusecope should get the ultimate pull-request credit from his repo :)
steffenmanden wrote:
Thu May 21, 2020 4:03 pm
Why dont you get it on github anyway ? :-)
Ok, Ok...I will make my first pull request on GitHub :D
Sunday I should have some free time.

But first we need to "find" an "old" mkv file with the blocks inside to configure DV.
Surely the ExoPlayer devs will want a test file.

I have temporarily implemented the "new" way to allow you to test everything.

I also wanted to try to edit the DolbyVisionConfig.java class and try to start the video stream with a different codec than the current one with the aim of using the hvcE block.

in short, there is still something to do.

Thank you both for the feedback and for reviewing the code.
Image
steffenmanden
Posts: 75
Joined: Sat Aug 31, 2019 8:49 pm

Re: Dolby Vision and 1.15.1

Post by steffenmanden »

shawnc22 wrote:
Thu May 21, 2020 4:36 pm
steffenmanden wrote:
Thu May 21, 2020 4:03 pm
Why dont you get it on github anyway ? :-) better for all of us to help!

Ill review the code tonight (Maybe throw it in github if you want, but you should get it in your own)

Ill see if i have the time to quickly add the h264 implementation for mvc :-)
Agreed with github! happy to do the compile/demo testing and review, but yusecope should get the ultimate pull-request credit from his repo :)
I agree!

Beware that the extractor is located at
ExoPlayer/library/extractor/src/main/java/com/google/android/exoplayer2/extractor/mkv/
within the dev-v2 branch. Just so you dont get surprised like me about it not being there :)

However yusesope the code looks really good and is super readable with the good naming convention (i personally love when stuff actually is named according to their usage). As i played with it i can see that Exoplayer has no MVC playback implemented as far as i can see, so i think the easy solution is to just ignore the type in HEVC, but just let it exist in the ExtentionBlock.java untill someone wants to pick up that functionality (like you said i doubt anyone actually will shout out for 3D playback)

Only few comments i could have is the minor lack of comments for new functionality as well as the "lack" of readiness for the same functionality in AVC (just to avoid them complaining). Here i would say that we pretty much just should add the ability to get the csdEndPosition in AvcConfig.java (just like you did in the HEVC equivilent) and add a placeholder for block TYPE_mvcC in the h264 codec (empty switch that just breaks, but leaves easy access to continue).

Hope you get the enchanced hevc config loaded in - then its there!
A small question, is the hvcE block always loaded first ? if so shouldnt it be quite easy to reload the DolbyVisionConfig and get the new codecs from the hvcE ?

Alternatively, could we always expect it to be there ? if so cant we just wait with setting the codecs untill we reach the hvcE block?

So to sum it up:
1. Add a few comments (in the same way they do already) for new functionality
2. Implement placeholder for h264 format (almost copy paste)
3. We have to make sure logging reports the appropriate unexpected values and more - and unfortunately also that "yusesope" has nothing to say :D
4. Get this damn thing on Github as i could have done these things fast, through that - however it should be 5 min's work to update :) Else make the fork and i can do my change suggestions there :)

Really good work on this and like shawn wrote, we need you to end up doing the pull for this for the credit :)

Now we just need mike to come out with a new version of makemkv for the final test
SamuriHL
Posts: 2346
Joined: Mon Jun 14, 2010 5:32 pm

Re: Dolby Vision and 1.15.1

Post by SamuriHL »

Exoplayer will never support MVC because 3D support doesn't exist on the SHIELD. It's why there's no 3D players on it. So ignoring it should be fine.
Kolci
Posts: 10
Joined: Fri May 08, 2020 11:35 am

Re: Dolby Vision and 1.15.1

Post by Kolci »

Hey guys, is there a version of tsMuxer, that does dvhe.05.06? Where can you get tsMuxeR which does dvhe.05.06?
steffenmanden
Posts: 75
Joined: Sat Aug 31, 2019 8:49 pm

Re: Dolby Vision and 1.15.1

Post by steffenmanden »

SamuriHL wrote:
Thu May 21, 2020 8:13 pm
Exoplayer will never support MVC because 3D support doesn't exist on the SHIELD. It's why there's no 3D players on it. So ignoring it should be fine.
Still think we should have the base there - future hardware might be able to.

So we still should leave a base implementation for reading the blocks ready

Could also be some other type we havent thought of yet :-)
SamuriHL
Posts: 2346
Joined: Mon Jun 14, 2010 5:32 pm

Re: Dolby Vision and 1.15.1

Post by SamuriHL »

steffenmanden wrote:
Thu May 21, 2020 8:31 pm
Still think we should have the base there - future hardware might be able to.

So we still should leave a base implementation for reading the blocks ready

Could also be some other type we havent thought of yet :-)
Yea totally agree with that. I just meant don't spend any real time and effort worrying about MVC because sadly 3D is a dead format. (And yes, I care...I own MANY of them and still have my 65" Panny plasma around to watch them on). We've moved on to the glorious world of Dolby Vision which is where I think the focus should be.

This is tremendous work in a very short period of time. I truly hope they accept the PR and add this support. Dolby Vision MKV support in Plex has me drooling. That would be truly amazing.
shawnc22
Posts: 637
Joined: Tue Jan 21, 2020 7:40 am

Re: Dolby Vision and 1.15.1

Post by shawnc22 »

Kolci wrote:
Thu May 21, 2020 8:23 pm
Hey guys, is there a version of tsMuxer, that does dvhe.05.06? Where can you get tsMuxeR which does dvhe.05.06?
viewtopic.php?f=12&t=18602&p=89589#p89589
SamuriHL wrote:
Thu May 21, 2020 8:39 pm
steffenmanden wrote:
Thu May 21, 2020 8:31 pm
Still think we should have the base there - future hardware might be able to.

So we still should leave a base implementation for reading the blocks ready

Could also be some other type we havent thought of yet :-)
Yea totally agree with that. I just meant don't spend any real time and effort worrying about MVC because sadly 3D is a dead format. (And yes, I care...I own MANY of them and still have my 65" Panny plasma around to watch them on). We've moved on to the glorious world of Dolby Vision which is where I think the focus should be.

This is tremendous work in a very short period of time. I truly hope they accept the PR and add this support. Dolby Vision MKV support in Plex has me drooling. That would be truly amazing.
Not sure if anyone looked into it, but I also wonder how closely related plex development is with exoplayer developments. Hopefully they haven't branched off from too early of a build and have been off doing their own thing. Otherwise it may be another hurdle to overcome.
steffenmanden
Posts: 75
Joined: Sat Aug 31, 2019 8:49 pm

Re: Dolby Vision and 1.15.1

Post by steffenmanden »

They are on an exoplayer 2 version. Should be able to merge this in without major issues or refactor it to their code!

They also say so here:

https://forums.plex.tv/t/latest-exoplay ... ?u=mandrup

The big question is IF they will do it
SamuriHL
Posts: 2346
Joined: Mon Jun 14, 2010 5:32 pm

Re: Dolby Vision and 1.15.1

Post by SamuriHL »

Right it's a big IF on whether Exoplayer will accept the PR and then whether Plex will implement it. One hurdle at a time. :) 6 months ago MKV playback of DV was a pipedream not even on the radar. You guys have come a *LONG* way in a short time with all of this. So, keep your eye on the prize while solving one impossible problem at a time. :)
steffenmanden
Posts: 75
Joined: Sat Aug 31, 2019 8:49 pm

Re: Dolby Vision and 1.15.1

Post by steffenmanden »

SamuriHL wrote:
Thu May 21, 2020 9:27 pm
Right it's a big IF on whether Exoplayer will accept the PR and then whether Plex will implement it. One hurdle at a time. :) 6 months ago MKV playback of DV was a pipedream not even on the radar. You guys have come a *LONG* way in a short time with all of this. So, keep your eye on the prize while solving one impossible problem at a time. :)
I have no doubts that exoplayer will take it in as long as the implementation is done right :-) i only doubt plex and could see it taking month or years for them - unless everybody yells at their forum
SamuriHL
Posts: 2346
Joined: Mon Jun 14, 2010 5:32 pm

Re: Dolby Vision and 1.15.1

Post by SamuriHL »

Well exoplayer by itself doesn't exactly get us anywhere so someone needs to use it. And I would VERY MUCH prefer that to be Plex. It's not like we're asking them to write the code from scratch so maybe they'll consider it.
olevelo
Posts: 119
Joined: Thu Dec 20, 2018 11:59 pm

Re: Dolby Vision and 1.15.1

Post by olevelo »

Well I finally got my new Shield, but first test didn't work. Got a black screen for video, and although Plex reported its True HD Atmos, my receiver is only getting DD+. Guess I need to try different versions of tsmuxer. No idea which one I used at this point!

On a different note, with this discussion of Plex and Exoplayer, personally I could care less if Plex implements this support. I want Kodi DV support. That's what I use and I don't want to use Plex at all! (and yes I understand others feel complete opposite. Just saying!)
olevelo
Posts: 119
Joined: Thu Dec 20, 2018 11:59 pm

Re: Dolby Vision and 1.15.1

Post by olevelo »

SamuriHL wrote:
Thu May 21, 2020 11:22 pm
Well exoplayer by itself doesn't exactly get us anywhere so someone needs to use it. And I would VERY MUCH prefer that to be Plex. It's not like we're asking them to write the code from scratch so maybe they'll consider it.
I don't know too much about the ins and outs of Exoplayer... But if its been modded as above, why can't we download and compile ourselves and load it up? I know that doesn't help the technically illiterate, but as long as we have a way to use it while everyone else handles the political battles that should be good enough?
dawsmith
Posts: 2
Joined: Fri May 22, 2020 12:53 am

Re: Dolby Vision and 1.15.1

Post by dawsmith »

olevelo wrote:
Fri May 22, 2020 12:25 am
Well I finally got my new Shield, but first test didn't work. Got a black screen for video, and although Plex reported its True HD Atmos, my receiver is only getting DD+. Guess I need to try different versions of tsmuxer. No idea which one I used at this point!

On a different note, with this discussion of Plex and Exoplayer, personally I could care less if Plex implements this support. I want Kodi DV support. That's what I use and I don't want to use Plex at all! (and yes I understand others feel complete opposite. Just saying!)
I had exactly the same issue with tsmuxer and I used the latest nightly build (9 May version - git-7b159f6). Does anyone have a link a version of tsmuxer where they have been able to get the Dolby Vision with Atmos? Many thanks!
shawnc22
Posts: 637
Joined: Tue Jan 21, 2020 7:40 am

Re: Dolby Vision and 1.15.1

Post by shawnc22 »

yusesope wrote:
Thu May 21, 2020 5:59 pm
shawnc22 wrote:
Thu May 21, 2020 4:36 pm
Agreed with github! happy to do the compile/demo testing and review, but yusecope should get the ultimate pull-request credit from his repo :)
steffenmanden wrote:
Thu May 21, 2020 4:03 pm
Why dont you get it on github anyway ? :-)
Ok, Ok...I will make my first pull request on GitHub :D
Sunday I should have some free time.

But first we need to "find" an "old" mkv file with the blocks inside to configure DV.
Surely the ExoPlayer devs will want a test file.

I have temporarily implemented the "new" way to allow you to test everything.

I also wanted to try to edit the DolbyVisionConfig.java class and try to start the video stream with a different codec than the current one with the aim of using the hvcE block.

in short, there is still something to do.

Thank you both for the feedback and for reviewing the code.
changes look good! recompiled and everything still working as expected
Post Reply