adamg - I know this could be maybe nitpicking here (if we take out projector inability to automatic setup YUV color range), but I just try to set up video levels… I agree that most importantly is correct video level, it just there are different methods, how to get it (colorspace transformations, no scaling/one scaling/two scaling), and for possible best results it would be good to have this process controled (on Rpi for example, no controll level on Kodi, but at least GPU can be controlled). Or at least, if its automated somehow, would be good to have ability to check, which option we using.
Thanks for the full tip.
I could see
[150857.907303@0] hdmitx: video: Bit depth: 10-bit, Colour range RGB: full, YCC: full, Colourspace: RGB
However, when I do quickly test (just on Kodi home screen), TV recognized Full, but the picture results are actually as the signal was Limited . To confirm this, I tried switch TV to Limited, and colors goes from “washed out” to normal. So the same acting the TV gets limited signal, and the same result as with
[113373.481351@0] hdmitx: video: Bit depth: 10-bit, Colour range RGB: limited, YCC: limited, Colourspace: RGB
So, I am not sure how much I can trust actual hdmitx information (and what really means). I know, the same TV detects Rpi Full/Limited accordingly (switching TV to not-corresponding range with Rpi hdmi pixel settins results washed out colours or darkens black).
Therefore I think, there is something strange on Amlogic platform, as smf007 mentions and I am not sure, if this relies more on source (kodi) side, od GPU (amlogic driver) side.
I thought about option, that hdmitx value shows actual GPU output, and in fact Kodi doesnt send signal converted to Full, but Limited. But then, when hdmitx shows Limited, and TV shows limited (my previous test without full,rgb), result should be:
Limited, Limited, Limited – Video Level WRONG : Washed Out Colors, Present colours blacker than black (0-15) as reference black and whites whiter than white accordingly.
and I dont feel that way actually (at least on the first sight, I didnt do proper full test with greyscale patterns etc. which I will do when I got back from work).
And this concludes, if we trust hdmitx value actually shows actual GPU output, then
"full,rgb,8bit"
would be Full, Full, Limited – Video Level WRONG : Crushed Blacks
"rgb,8bit"
would be Full, Limited, Limited – Video Level CORRECT : WtW & BtW Clipped, Double scaling
and again, I dont see crushed blacks on first case. Contrary, I see washed out colour when I try switching to hyphotetical Full, Full, Full.
smf007 - good finding, thanks for information. It kinda concurs with my observations.
Long story short:
I believe video range which goes to the TV is limited, whatever color range hdmitx shows. The YUV / RGB hdmitx switch works correctly. Until now I am not 100%, what combination we get on Amlogic
1. Full, Full, Limited -- Video Level WRONG : Crushed Blacks
2. Full, Limited, Limited -- Video Level CORRECT : WtW & BtW Clipped, Double scaling
3. Limited, Full, Limited -- Video Level CORRECT : WtW & BtB preserved, Zero scaling
4. Limited, Limited, Limited -- Video Level WRONG : Washed Out Colors
but from tests I did so far, i am thinking that its 2., and color range hdmitx switch doesnt actually switch GPU output range (will test more thoroughly later), on the other hand its not obvious, what part of signal chain this option affects (if any).
P.S.: I updated my previous post to contain all otions, which could be affected by user and their outcomes.