Dolby Vision for Minix U22X-J (Max) and Ugoos AM6+

Interesting, I thought it was already doing this in tv-led mode. Can’t wait to try it out.

How would I go about trying this though?

Curious, I was under the impression that in true TV-led DV, the player doesn’t even need to worry about the min/max nits your TV can handle, because the TV is supposed to deal with that?

I wonder if this is somehow related to the fact that supposedly this SoC is always processing the RPU whether LLDV or TV-led. And yet, there’s a combination of logic that both pass/handles the min/max values and other parts in the driver that do not…

How does this all compare with player-led?

Though I don’t have these changes in place, I do want to say that TV-led DV seems a little less bright than player-led for my LG TV. So perhaps this is related to your findings.

@Kaan It would be similar to setting the wait delay. Though I can’t remember if you can pass decimal values for a param that’s set as hex or whether it has to be one or the other.

It needs a combination of parameter changes and code change as currently the OSD is always on (guess it probably needs to stay that way for subtitles - but would be interesting to see if any change when that plane is out of the loop in the picture processing) this is forcing the playback into graphics priority which is then ignoring the sink (tv) luminance values.

Should get some time at the weekend to upload a tar file somewhere with the changes - to try out - note can only say this is working/advisable for player led (kodi default) and on the Ugoos AM6B+.

Your experience is consistent with the reports in this thread on AVSforum:

CM2.9 Fake-TV Led External Players (i.e. Zidoo, Ugoos AMB6+):
TV-LED: Darker than True TV-Led. Colors similar to real TV-Led. No L2 Chroma Weight.
LLDV: Brightness comparable to True TV-LED. Colors not as good as True TV-Led. No L2 Chroma Weight.

Can someone explain me why in that thread there’s an info stating that the Minix will only play FEL if using Ugoos firmware? That’s just not true (I posted there now).

The U22X-J / AM6+ can now use CE-NG (rather than CE-NG-DV) with the discovery of a 64bit s905x2 dovi.ko module that appears to work on any Dolby Vision certified G12 device (maybe even SM1).

CE-NG-DV and CE-NG both have the same Dolby Vision code, so DV playback is no better or worse. It’s confirmed working on the Minix U22X-J and 2nd gen Cube.

I created a separate post here since this will involve switching build lines and dovi modules. Setup is very easy.

2 Likes

And this is the dovi.ko module from Fire TV Cube Gen3 with CMv4.0 support, might work with Homatics.
For 64 bit 5.4.125 kernel: [link]

1 Like

has anyone tried this on the homatics? Does it work with the same copy method as the one above for the am6b+? A homaticsbox with full fel dv playback and cm4.0 support would be really nice…

From what I have seen, the DV modules are only compatible by SOC families. The 3rd gen Cube use an A311D2 (T7), The Homatics R Box s905x4 (SC2). The amdolby_vision module has conditions for different SOC families, I doubt that the 3rd gen Cube module would work with the R Box.

There is also the possibility of Amazon specific modifications. That’s why I had to abandon the 2nd gen Cube (G12) dovi.ko for a more generic s905x2 (G12) dovi.ko

EDIT: but yes you can try different modules by placing them at /storage/dovi.ko and rebooting. I think that works on CE NG & NE

2 Likes

Unfortunately FEL does not work on Fire TV Cube 3rd Gen, but CMv4.0 would be an improvement.

Added some further parameters to play with and got some interesting results.

As usual I am using display led (aka tv-led)

Changing the luminance looks to only effect the video when in graphics priority mode (i.e. the mode for menus / HDMV etc. please see dolby doc in previous post for more info), in video priority mode it is not effecting the picture, only the OSD e.g. the kodi on screen controls etc.

Turns out it was putting the processing into video priority mode that is improving the image.
I imagine we are still in “fake tv-led” according to others findings, but as it is not changing the luminance in this mode I can still hold out hope it might yet be pushing the RPU to the tv for processing in video priority.


So to try it out for yourself:

I uploaded a tar here: 213.54 MB file on MEGA

I recommend doing a clean install of 20.4 ng dv and then applying this tar as an upgrade on your Ugoos AM6B+.

This build is for testing out mkv p7 mel and fel - not sure how it would behave with other material.

It gives three new parameters:

dolby_vision_hdmi_lum_min set to 50 by default
dolby_vision_hdmi_lum_max set to 4000 by default

These will override the HDMI luminance values being picked up in code from HDMI comms (e.g. the EDID)
I have set them high by default for simple comparisons to base.

dolby_vision_force_hdmi_lum set to 0 by default

Set this to 1 to use the new hdmi lum min and max values
Set this to 0 to keep the HDMI EDID values.


The code will now by default run in video priority mode (when a video is playing)
note: setting /sys/module/amdolby_vision/parameters/dolby_vision_graphics_priority to 1 will be reverted back to 0 during playback.

In order to set graphics priority you will need to use the force flag: FLAG_PRIORITY_GRAPHIC i.e.:

echo 0x20000D > /sys/module/amdolby_vision/parameters/dolby_vision_flags to set graphics priority
echo 0x0D > /sys/module/amdolby_vision/parameters/dolby_vision_flags to revert back to video priority


Things to try:

  • echo 1 > /sys/module/amdolby_vision/parameters/dolby_vision_force_hdmi_lum
  • Play a video and switch between graphics and video priority i.e.
  • echo 0x20000D > /sys/module/amdolby_vision/parameters/dolby_vision_flags
  • echo 0x0D > /sys/module/amdolby_vision/parameters/dolby_vision_flags

You should see a large difference in the picture, in both settings the video should respond to RPU.

  • In video priority mode switch on and off dolby_vision_force_hdmi_lum
  • echo 1 > /sys/module/amdolby_vision/parameters/dolby_vision_force_hdmi_lum
  • echo 0 > /sys/module/amdolby_vision/parameters/dolby_vision_force_hdmi_lum

You should see a difference in the kodi on screen controls, but the video will stay the same, again video should be responding to the RPU.

When in graphics priority mode with dolby_vision_force_hdmi_lum on, you can then play with the min and max lum and it should effect everything including the video.


The default settings on this build (combined with code change) are set to what I think is best so far:

video priority
dolby_vision_wait_delay set to 16 for mel detection


You can check the log to see the change in graphics / video priority as detailed in previous posts, using:

journalctl -kf


Hope I explained everything right, let me know what you find.

4 Likes

Wow lots of activity in the past day.

So to summarize, first we have cpm’s build that workaround some fake TV-led quirks and improves the PQ by preventing “graphics priority” everywhere and switch to “video priority” during playback.

We also can use a new 64bit s905x2 dovi.ko module to put the Am6b+ back on the main CE-NG line.

Moreover, that same dovi.ko module could extend FEL support to all Amlogic G12 family devices including the Fire Cube?

Did I capture all this correctly?

If this becomes true and confirmed on Ugoos AM6 as well we will cancel NG-DV builds in future.

Assuming CE is still not going to distribute the module, so we should download the s905x2 file for if that happens and in case @YadaYada’s upload taken down for some reason.

It’s online, anyone can download and keep it safe.

1 Like

Doesn’t hurt to download it, but I doubt it will vanish. I know of at least 3 DV certified s905x2 devices, and I’m sure there are many more. There are so many Android firmwares floating around online, and companies seem to ignore them.

@liquidion Not sure that other SOCs besides the s922x will do DV FEL, that needs to be checked. But I think any DV certified g12 device that can boot CE should have basic DV playback abilities.

The module can be jimmied to mostly work with the s905x4 on CE-NG, however there’s still no DV FEL.

1 Like

Hate to be a PITA, but I’ve already upgraded to 20.5.

Can I still use your tar?

Could I trouble you to create a 20.5 version if not? Would love to see the PQ difference.

Probably not any time soon, as not the quickest process to do, the code is in my fork if anyone else wants to have a go.

Looks like CE maybe also moving on from this branch so will see were that goes, and stick to the 20.4 base for now for my testing.

At present I want to just watch some films and check it out. :grinning:

Some more interesting observations.

On my LG E8 OLED (along with many other LG OLED from what I read) the Cinema and Cinema Home modes in Dolby Vision behave differently to chroma weighting in the RPU data, it is like the Cinema Home just does not process it.

Taking the “famous” Spears & Munsil UHD - Eagle’s Beak example this will show very different without the chroma weighting (from what I understand).

In graphics priority mode - the beak is much more in the darker yellow / green and flattered in both the Cinema and Cinema Home modes on the TV.

In video priority mode in Cinema Home it is still in the darker yellow / green.
In video priority mode in Cinema it now shows in bright yellow - looking like the tv led example from Vincent’s HDTV Test youtube from 2020.

Changing the TV settings Cinema Home to Cinema is on the TV side - so looking like more evidence at least some of the RPU is now passing to the TV in “proper” tv-led fashion.

Does anyone else get crashes on resume or seek, especially when it’s been a quarter or more through the film?

I tried resuming a HDR film today about 1/3rd of the way in, and kept crashing everytime. Tried to restart, and use chapters to seek forward, would crash about 1/3rd to 1/2 of the way in. Had to switch to my Zidoo to finish it.

Captured a log above for a different film, but same behavior. Will do so again if it’s helpful.

It crashes so many times it sends CE into safe mode.