Dolby Vision - VS10 Engine on Ugoos AM6+

Your work is amazing! I’m extremely impressed with it. Thank you for such a detailed explanation. It helps me to understand the process much better. It seems to me that the most correct option would be make the default option dovi_tv_led_no_colorimetry and then allow the user to select bt.709 (the current default), or dovi_tv_led_bt2020.

BTW, I think the current behavior for the colorimetry flag is actually a bug introduced about a month ago. As I remember, the discussion went that the BT.2020 was incorrect and should be removed, so it was disabled, but then it defaulted to BT.709. Because attention was focused on ironing out the bugs with FEL, the issue with the incorrect flag got put aside. So, the dovi_tv_led_no_colorimetry really should be the correct one for this commit.

Bravo. Congrats and thanks

Amazing work !
If only someone could figure out now how to play uhd.iso ( with full dv) , this box will be the ”GOAT” second option maybe some on the fly conversion to p7 fel mkv ? Or a addon to do the conversion on the box ? But maybe the box is not powerfull enough ? Anyway i think vs10 lldv from uhd. looked awesome on my ls12000 projector
Just ordered a second unit for my livingroom tv. :innocent::clap::ok_hand:

Will try not to steal others thunder, but will say keep your eyes peeled for something special in this UHD space :slight_smile:


:thinking::roll_eyes::scream::scream::scream::scream: Please tell us what your cooking :raised_hands::raised_hands::raised_hands:

That was fast… and with an updated nightly too!

Hopefully with all the testers on this thread we can iron any bugs quickly, and get this into the main build soon.

I forgot to mention, haven’t done extensive tests but if vc1 is in software mode video playback doesn’t start. May have issues with vp9 too.

I’ll have to test it properly.

Agree, this should be the default option out of the box for mainline and should just replace the existing code. The existing behavior of falling back to HDMI standard of 709 seems flat out unintended considering what it was trying to solve - no other disk player or streaming box does that.

I think bt.709 should just be removed as an option precisely because of that - it’s not seen on other devices. A bit confusing to the end-user because there isn’t a use case for it.

Bt.2020 makes sense if users want to match the behavior of players that do send that flag.

So either have a true “blank” flag as what’s seen in dovi_tv_led_no_colorimetry, or a bt2020 flag. But it seems behavior of current code is not intended considering the goal, or ‘problem’ it was trying to solve.

Well, I also own the Firestick Max latest gen and in Kodi 21 omega, DV is shown as
BT709 on my Panasonic TV

My mistake then, there are some streaming devices that do that.

But to my knowledge, no disk player sends that. Oppo, X800M2, UB820, UB9000, etc. Either blank or bt2020.

I would vote to keep BT.709 in because it gives users the greatest amount of choice and flexibility.

Just tried the new build, very cool - VS10 looks great on the SDR/HDR10 content I tried. Nice work! :slight_smile:

I think someone mentioned this above already, but VS10 doesn’t seem to disengage properly when stopping playback (or it does but intermittently); often leaving me with distorted GUI colours.

I’ve learned that’s called dv tunneling? with TV led the Zidoo z9x pro (and the shield) are sending that flag with 8bit and my oled turns in dv mode? at least I think I saw that

but, the whole post here is 100% Latin for me I have absolutely no clue about the technical details.

what I can say ist, THANKS!! unbelievable work you are doing! as soon as I’m getting my am6b+ and I’m understanding how to install your test version without destroying anything (need to organize a 2nd SD card) I will def help with tests!
I have time and I’ve seen vs10 with sdr movies (don’t like it) and dv content (mkvs without fel but looked great)

happy programming!!

Thank you @cpm not only did you discover the golden breakthrough of true tv-led dv but now give us vs10, you’re incredible indeed thank you👏

Can someone explain what VS10 adds to the Ugoos AM6B+ are there noticeable improvements to pq? If so, under which circumstances? - Thanks.

You have to give it a try. Copy your current installation to SD if you have one, that’s what I did.
People like it’s conversion of SDR to DV but I didn’t like it, so it’s subjective.

Unfortunately, the current HDR->SDR conversion does not use VS10 because of its very poor quality.


  • HDR10+ now correctly detected, can differentiate between HDR10 and HDR10+ for application of VS10, note HDR10+ is downgraded to HDR10 if playing with VS10
  • Default tv-led colorimetry is now: disable i.e. no colorimetry
  • Slightly better mode switching (seeing less wrong colours for UI)
  • Other minor fixes

Edit: Version removed - please see new version in later post.

Unresolved issues / annoyances (tv-led testing):

  • Colours can go wrong still (stuck in ITP for UI) - probably need more dev eyes on this to see if can resolve - similar timing type issues to the 12bit problems.
  • Still sometimes stuck in DV coming back to the UI - looks like if video same VIC as GUI then will happen more often.
  • VC-1 Software decode not enabling for VS10 flow - not sure will be able to work around that as VS10 tied heavily to the AMLogic decoding / cores. Likely the same for other if not HW decoding.
  • Player Led needs testing more - previously had issues with wrong colours.

Can work around the wrong colours in the UI by switching into and out of DV enabled from the command line (cannot though make this work from code yet) - again something around timing:

echo Y > /sys/module/amdolby_vision/parameters/dolby_vision_enable
echo N > /sys/module/amdolby_vision/parameters/dolby_vision_enable

I think overall though I will submit this one for PR to get into the mainline for the nightly after talked though any changes the CoreELEC team may want, so can get a baseline and build form there.

Let me know if you see any showstoppers, particularly around with no VS10 enabled - do not want to introduce any regression.

Also keen to check if HDR10+ is working correctly (VS10 disabled) - I don’t have an HDR10+ Display to check on myself.


As @Kaan said this is subjective - it is there to try in your circumstances - if useful great, if not your cup of tea leave it off :slight_smile: