Dolby Vision - VS10 Engine on Ugoos AM6+

FYI, when I did a make clean and then make, I did not time it, but would say it was somewhere in the 15-20min mark to build - maybe internet speed difference!

From my VC-1 experience decoding in SW (ffmpeg) it did not then go through VS10 (which looks tied in with the HW decoding side - different pipeline which also ties in with doppingkoala’s observations about SW using the UI osd plane), so guess SW AV1 would have similar - would still be very welcome, just FYI, and maybe other changes can make it work with VS10.


https://www.kernel.org/doc/Documentation/devicetree/bindings/display/amlogic%2Cmeson-vpu.txt

1 Like

The fix for the ATEME bug has been merged into the mainline.

6 Likes

Hey that’s big news!

@cpm Hopefully, this is more helpful rather than annoying. I was thinking a good next patch to submit might be to fix Dolby Vision after hotplugging.

In 5.4, they renamed the flag to amdv_set_toggle_flag. In hdmi_tx_main.c, it seems as the corresponding line to insert after would be 6679.

This would fix the lack of Dolby Vision when users unplug and plug in their HDMI cable while the display is on and is only two lines long.

I do not see the use without the corresponding elements on the Kodi side, that commit was developed for an issue with Mode: On and hot plugging, but feel free to fork, test and PR if you have another use case it maybe good for.

If you would like to be helpful then breaking out the associated Kodi side elements would be a start so can submit something useful - I guess you are not currently a dev but could be a good opportunity to start learning.


The Mode: On - is/was my preferred way to have DV on in the Kodi Menu - there is one caveat which I have talked about before so will not repeat here - as apposed to having always on DV from boot time in the kernel, as this way I felt had more control over the DV element and can still switch it off as needed for the scenario (not sure on the DV in kernel from boot - never looked at it) and not have “fake” DV for non-DV content, e.g. where VS10 not doing a good job and did not want it on e.g. HDR HLG, or just want the original displayed, for SDR or HDR10 etc.


Edit: Actually ideally would not change the linux-amlogic side at all and on hot plug set the toggle flag from Kodi side, but never could find the correct place to do it from.

1 Like

Oh, I didn’t realize that it was tied into the VS10 changes. I guess I was wondering if there were any other Dolby Vision fixes that are not tied into VS10, HDR10+ to Dolby Vision, or LL (HDR) that can be spun out to chip away at the size of this PR.

Unfortunately, I don’t have the time or expertise right now to begin pulling this apart, but it would be nice to have some of the more general fixes to Dolby Vision playback merged into the mainline.

Yeah all the changes leverage each other better to think of it as a single DV implementation rather than thinking can seperate, in order to have just one element you need 80% in place, really all the kodi side is doing for VS10 is orchestrating the kernel.

The item that is more independent is HDR10+ > DV P8.1 but last developed so again not really straight forward to pull out - plus it is just a first cut so probably could do with more work to refine the code.

Could pull out the colorimetry as independent but then what does the UI look like in that case, more work to pull out for no real gain, the UI side has a unique numbering system for all strings across all of the kodi system which also makes keeping them separate awkward as need to keep independent numbers so indirectly have to know about each others usage anyway.

3 Likes

There are a lot of check In on xbmc

They can be squashed somewhat.

It is mainly due to the way I developed

  1. basically only could do a lot over my lunchtimes and checked in directly on GitHub - which obviously then had defects which I then corrected when I got home and complied it.

  2. Developing new features would share with existing and refine them, at same time correct for issues.

Have all along said this was for testing and trying out - now needs to go through a clean up phase.

4 Likes

I just got a Ugoos AM6+, installed CoreELEC then updated to the CPM build, I have played some files that are DV and HDR and it just plays as HDR according to the TV popup.

How do I even test its working?

EDIT: ok found a DV only file and it didnt work, people had purple skin etc.

have you set it up correctly in settings?

1 Like

Didn’t know there was settings? Can you please point me in the right direction as the install guide said nothing.

go to settings, system and coreelec, there you have the DV settings, depending on what TV you have you set it up.

1 Like

Awesome its working! no idea about all the settings do though haha

Is there a guide somewhere to what they all mean?

Have an LG OLED

With regards to updates will I need to track this thread and download each CPM update as I see them?

use TV-LED setting then the max nits your TV have, I don’t know exactly what else to change but put HDR10 to Dolby Vision, maybe SDR8/SDR10 to SDR or DV, rest off, I use Samsung TV so it’s different settings for me.

yes, you need to use CPM update only as normal CE will overwrite CPM one, turn off auto updates in Coreelec settings.

1 Like

Wow, that’s some amazing commitment.

I have no idea where to set max nits.

Is there a wiki for DV setting of this CPM version?

Or can someone suggest the best setting for an LG OLED?

The couple of TV shows and Movies I tested it didn’t look or feel very cinematic. i.e. had that shiny bright look and maybe a bit juddery or fast at times? frame pacing off?

I would recommend you use the latest stable build rather than this one, that should work with the DV content you have.

No need to set max nits with TV-led and a DV enabled panel. VSVDB injection is send DV to non-DV displays, projectors or HDR only panels.

is there working link for T6A update tar ?

1 Like