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

You guys have been doing amazing work. I’m super excited for that build when it’s ready.

Am6b+ with 21-omega-rc2 ;), p7 fel, full tv led, cm4.0, patched mel, and Plex. Doesn’t get much better than that.

These samples are Dolby Vision - Profile 4. It’s identical to Profile 7, only it doesn’t have HDR fallback. Similar to how P5 is to P8.
I will fix this for Lossless playback. From some preliminary testing, using libdovi P8.1 conversion results in wrong colors. I’ll ping the author, maybe this can be fixed (for proper playback on NE)
Profile 4 is not supported by libdovi.

Can the TV-LED fixes be applied to the 5.4 kernel?

I think so, this part of the code seems to be pretty similar.

2 Likes

Here are some of the settings I have attempted to determine the meaning:

  • dolby_vision_flags
FLAG_FORCE_CVM				0x01	Force CVM (RPU Processing - for LLDV, or TV-LED (Graphic Priority) modes in Dolby (Core1))
FLAG_BYPASS_CVM				0x02	Bypass the CVM (RPU Processing for LLDV, or TV-LED (Graphic Priority) modes in Dolby (Core1))		
FLAG_BYPASS_VPP				0x04	Bypass Video Post Processor
FLAG_USE_SINK_MIN_MAX		0x08	Follow the lum of Dolby VSVDB for not tv-led
FLAG_SINGLE_STEP			0x20	? 
FLAG_CERTIFICAION			0x40	(IDK) Industrial Tool Kit Certification Mode?
FLAG_CHANGE_SEQ_HEAD		0x80	?
FLAG_DISABLE_COMPOSER		0x100	Disable BL and EL composition
FLAG_BYPASS_CSC				0x200	Bypass the Colour Space Converter in Dolby (Core1) */
FLAG_CHECK_ES_PTS			0x400	Check the EL layer Elementary Stream - Presentation Time Stamp 
FLAG_DISABE_CORE_SETTING	0x800	?
FLAG_DISABLE_DMA_UPDATE		0x1000	?
FLAG_DISABLE_DOVI_OUT		0x2000	Foce DoVi Sink (TV) to behave as not support DoVi 
FLAG_FORCE_DOVI_LL			0x4000	Force into LLDV
FLAG_FORCE_RGB_OUTPUT		0x8000	Force RGB Output - LLDV Specific
FLAG_DOVI2HDR10_NOMAPPING	0x100000	For HDR10 don't do any tone mapping? */
FLAG_PRIORITY_GRAPHIC		0x200000	Force Graphic Priority 
FLAG_DISABLE_LOAD_VSVDB		0x400000	Disable loading from Dolby VSVDB 
FLAG_DISABLE_CRC			0x800000	?
FLAG_MUTE					0x4000000	?
FLAG_FORCE_HDMI_PKT			0x8000000	?
FLAG_TOGGLE_FRAME			0x80000000	?
  • dolby_vision_mask

I found the Mask typically needs to be set to all bits (7) and then adjusted once playing to see the effect. (May have also been forcing reset on another parameter for some of them)

Some other parameters are more self explanatory like force_mel

2 Likes

I think I found a fix for the 12-bit RGB TV-led DV issue. I tried several DV movies running in TV-led (several dozen MEL/FEL mkv) and I have yet to be able to trigger anything but 8-bit RGB. What I discovered was that the refresh rate switching logic triggered a second invocation of the HDMI mode setting code, and on the second run–the code wasn’t able to detect whether or not the signal was actually DV, so it treated all signals/formats as the same. So basically it was switching it from 12-bit (which is default at least for being in the UI, not playing anything), to 8-bit, and back to 12-bit on the refresh rate switch. The fix basically triggers a partial HDMI mode setting on the refresh rate switch that doesn’t set color depth or sub-samplling.

The BL_EL.mkv is still triggering FEL, with lossless set. :slightly_smiling_face:

Here’s the build:

This includes the potential DV 8-bit RGB fix, @cpm fix for true TV-led/CMV4.0, DV delay of 16, and running on amlogic-ng-dv 20.4, for now at least. Hopefully the transition to amlogic-ng will be smooth. From what I can tell this fix would carry over to hopefully all amlogic-ng devices.

Some caveats:
Oddly enough this test build is way more consistent with Adjust display refresh rate set to On start/stop. With refreshing rate switching off, I kept getting blue-tinted screens. Also, in order to run player-led DV, I had to set forced 4:2:2, 12-bit. Though this setting should actually be correct for that, and should actually be compatible with any other media type (e.g. HDR10, all SDR content).

Feel free to test it out.

1 Like

Can you post your dispinfo? And try to set GUI resolution to 1080P with a normal build?
I have a soundbar that’s only 450MHz capable, and this was the reason for 12-bit RGB in my case. Changing the res to 1080P fixed it for me, consistently.

I will try that build later today. Hope it fixes the dependecy problems with the pkc addon that I had with cpm’s posted build.

Dependency issues are not related to any particular build.

I always set 1080P, and the box direct conect to my tv, also goes 12bit, about half of my DV REMUX movies

With TV-LED?

yes, official bulid

We reverted a change made yesterday, hopefully it’ll fix it in tomorrow’s build.

1 Like

Hi there. Excited to only just hear about DV P7 + FEL, ordered a Ugoos, but a AM6B+ (vs. just a 6+). I assume this also works with 6B+? Thanks.

Post debug log!
https://wiki.coreelec.org/coreelec:debuglogs

Yes the b+ has the S922XJ which has DV support.

1 Like

I’m already done before,maybe you dev don’t seen?
https://paste.coreelec.org/vGc8YJ

CE updated to Amlogic-ng.arm-21.0-Omega_nightly_20240315 this morning and the colors are very unnatural now. This a very obvious one…

Omega_nightly_20240315

VS. v9.2.8

As far as I remember you have an AVR in-between the device and the TV. HDMI is handled differently in newer devices. The first step is to try a direct connection to see if the AVR is interfering in the edid exchange. From there we can move on.

Wouldn’t that effect the Home/UI screen as well, or just when playing videos? I’m running this new device since Tuesday but started seeing this now.
Connecting directly to TV is not gonna be a easy job but I’ll give it a try to be sure.