quietvoid / dovi_tool

dovi_tool is a CLI tool combining multiple utilities for working with Dolby Vision.
MIT License
623 stars 59 forks source link

Implement single pass RPU injection #113

Closed quietvoid closed 2 years ago

quietvoid commented 2 years ago

Currently, the injection process requires multiple steps:

Ideally, it would do it all on the fly. Implementing this would also make a BL+EL muxer implementation a lot simpler.

manuelrn commented 2 years ago

Implementing this would also make a BL+EL muxer implementation a lot simpler.

Do you mean to inject a HEVC file (instead of just an RPU)? I mean combining the 2 HEVC files that a UHD Blu-ray contains to generate a HEVC with DV (BL+EL+RPU), like MakeMKV does.

That would be interesting, some time ago I thought about opening an Issue to ask if this feature could be implemented.

Thanks a lot!

AVX22 commented 2 years ago

I mean combining the 2 HEVC files that a UHD Blu-ray contains to generate a HEVC with DV (BL+EL+RPU), like MakeMKV does.

I do not know if what @manuelrn l suggested is the same idea as yours @quietvoid but i think is a great idea. Having the ability to parse the RPU as an individual HEVC, will make the files fully compatible with Tsmuxer and will open the posibility to playback UHD Blu-ray in profile 8 DV, with all the menus and extras.

quietvoid commented 2 years ago

Yes that is what I meant, merging both HDR10 base layer HEVC and the enhancement layer HEVC.

manuelrn commented 2 years ago

Yes that is what I meant, merging both HDR10 base layer HEVC and the enhancement layer HEVC.

One thing to keep in mind: Would it be possible to do it exactly like yusesope's tool does?

I mention it because on several occasions I have seen reports from some users indicating that they have problems with the video generated by MakeMKV but with the video generated by yusesope's tool they have no problems.

Apparently MakeMKV doesn't add Access Unit Delimiters and yusesope's tool does it. And maybe there are other differences too...

AVX22 commented 2 years ago

@manuelrn do you mean that when making a backup of a profile 7 disc with makemkv some times it gives an error? Yes, that is correct. Some times the second layer is removed or ignored when it detects a delay or a problem.

Nico83500 commented 2 years ago

I hope it will be implemented too ! Thanks quietvoid !

Nico83500 commented 2 years ago

I think he talks about the issue with LG WebOS (and perhaps other device). Trigger to DoVi doesn't work with MakeMKV output but it works with yusesope's tool.

Nico83500 commented 2 years ago

@quietvoid If you are working on it and want someone to test it, I can do that ;)

AVX22 commented 2 years ago

Me too. I can test on multiple devices such as Oppo, Shield, Zidoo, Dune etc

quietvoid commented 2 years ago

I have not had the time to work on it.

Nico83500 commented 2 years ago

No problem, I use yusesope's tool but it would be easier to get one tool for all :)

AVX22 commented 2 years ago

I have not had the time to work on it.

Its ok! There is no rush ;)

quietvoid commented 2 years ago

I'm not going to implement this feature, because it's not feasible to be accurate for all files. The order of the frames is not always available at the moment the frame is parsed.

So injection will stay as a 2 pass process.

Nico83500 commented 2 years ago

Thanks for the info. So you will not implement BL + EL streams merging too ? Thanks !

quietvoid commented 2 years ago

That's not what I said.

Nico83500 commented 2 years ago

OK great, thanks, because it was one of the points in this issue too ;)