HDR Problems on S912 and S905

Improved picture quality for some HDR content. After some discussion , we’ve found some scenarios where HDR content will appear to be too dark on OLED TVs. This seems to occur when the video is muxed in a way that prevents the mastering data from being stored properly. We now use a more sane fallback and inject static metadata in such a scenario.

This is actually the whole reason I started this thread 4 months ago.

Coco, Thor Ragnork and Terminator 2 seem to be three movies that defiantly have a problem and get mentioned a lot in the above link.

The team is very hesitant to add new changes to both the kernel and the video player code, given that CoreELEC now has over 3000 users with most of them using auto update, we have to think of the wider implications on users for every change we make.

Last time we used the OSMC kernel it caused major issues for a group of users being unable to boot.

As far as I am aware the auto switching for HDR needs more work as there is issues if the VIC is the same.

It’s not a subject we have forgotten about or are neglecting.

1 Like

In regards to luminance issues with HDR on 2017 LG OLEDs, simply enable LGs tone mapping by settings Dynamic Contrast to Low. I have a B7, and never had any problems with it in that regard.
Read here about Active HDR: https://www.rtings.com/tv/reviews/lg/b7-b7a-oled/settings

Thanks for the reply @anon88919003
I appreciate what your saying but is there no way for some of us who are willing to risk it to add the fixes manually then ?
Even just the fallback to 1000 nits instead of 5000 would solve the problem i reported 4 months ago at the start of this thread.

Thanks

@TheCoolest

Tone mapping does not fix the problem for titles that have no mastering display metadata and content light level like terminator 2.

Yes it seems that this is only a few titles, atleast that we know about but those few look terrible.

It should fix it because the TV ignores the mastering data and uses the brightest point on the screen as reference for its tone mapping algorithm.

@TheCoolest

Not to be rude but did you actually read the thread ?

It explains in great detail exactly what the problem is and how to fix it.

And just to clarify it is a problem on absolutely all tvs not just oled.

I saw the change they did in the code, IIRC they changed max luminosity from 5000 nits to 1000 nits. Which would be the correct ‘generic’ value to go for. None of the movies I’ve heard of so far are mastered at 5000 nits, some are mastered at 1000 nits and some are mastered at 4000 nits. So if mastering data is missing, generally 1000 nits is going to be a good enough compromise.
I’ve tested some of the HDR content I have and I have not seen any difference in luminance levels between CE and the internal player. I have the box connected directly to the TV, so perhaps there are other factors in play here.
In any case, I think that he fix Sam implemented should be implemented in CE as well, as it’s a very small change that shouldn’t affect anything else.

I just pushed a fix for this. So it should be in today’s\tomorrow’s nightly build.

Thanks.
I’ve tested internally the patches posted by @samnazarko in vero3 kernel (from commeit 2d3ef297fda17d87dcd13d49d0b570fa4bedf358 until last one) and the first tests are very promising.
I’ve tested some HDR 10bit, 2160p samples, and automatically changed to the correct bit depth and color. I have to test a real movie but sound very good. As I my knowledge in git and programming is very very limiting I only made .patches to apply over current kernel.

Kindly share the devel version of latest patches which you applied. I also want to test?

As far as I understood from the thread the issue is not only the default max luminosity. It is also that sometime the correct metadata info are not sent to the display.
I can confirm that, exactly as written in OMSC thread, Cars 3 mastered at 5000 looks ok on my VPR, while other movies, such The Martian, Avenger infinity Wars, etc… look too dark

You need to install from here.

Dear @anon88919003 and @TheCoolest
I’ve tested the following commits authored by [graham8] and [samnazarko] into CoreELEC linux-amlogic and they are working as expected.
As i don’t know how make request or merge different repositories i made a brute patch between directories.

Do you think that is possible merge this commits into CoreELEC branch?
Thanks.

Commits:

  • c5bf3dceb941f8b1347ddfe10758c4c11e0ac817
  • e5734c08225b47f75b2f6076c18f2110ab37c832
  • ac12bea70dc065b866f74792c1de23c40c906d2a
  • 496d526262d96d4f5e6351b867b5f5d74278bee2
  • a585e3fba840e80fea8ce1ecfa649ac733380352
  • d58165d11a869501b28963c6e798e466c612b440
  • 8e1a123dd37a8be38a55d296858a9850439ffe28
  • 147dd5d591cf9f6c4c4ed9138c580852358e8d7d
  • 52640f8d62a48a3573761b311c7420ab1029b681

These commits send correct peak nits read from metadata or just set 1000 instead of 5000?

Did you try to install the latest nightly as suggested by @TheCoolest?
He already added these commits to the CE repository, so no need to re-merge them again.

Sam has mentioned that the code still needs work. I still don’t know whether the OSMC team will handle it, or we’ll have try to do something about the extra fixes that are required.
Currently I’m busy with a side-project and family, so i don’t really have time to test it out properly.
I know that it should mostly work, but there are still some issues with that code.

@relkai I only committed the fix for the 5000 nits issue. CoreELEC nightlies will now set 1000 nits peak instead of 5000.

@Menion The latest nightly build contain the fix you’re after.

@relkai I only committed the fix for the 5000 nits issue. CoreELEC nightlies will now set 1000 nits peak instead of 5000.

mmmm it does not looks so good, anyhow I will try to test it with 1000 and 5000 movies

Aah, okay…excuse me, I thought this was already the all-inclusive-HDR-package.
If I remember correctly, Sam doesn’t have the time to work on this patch at the moment, though it needs some rework.
But he had very specific ideas, what needs to be done, so it shouldn’t take too long hopefully.
I think, it doesn’t make sense to merge the available commits, if they are being reworked during the next weeks.

Hi
Is his patch (1000nits for HDR fallback) included in 8.95.3?