View Issue Details

IDProjectCategoryView StatusLast Update
0000638madVRbugpublic2020-05-29 05:36
Reporterzeus0r Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
PlatformPCOSWin 10OS Versionlatest
Summary0000638: wrong black levels SDR/HDR
Descriptioni'm not 100% sure but i think it started with the latest nvidia driver update. i've been using this setup for quite some time without any problems but i recently noticed wrong black levels for HDR content while SDR content is fine. (madvr hdr passthrough enabled)

rgb full range (0-255) is enabled in madvr settings and it currently gives me correct black levels for SDR content but i need to change it to 16-235 in order to get correct black levels for HDR content. (otherwise blacks are grey)

i checked this with some black level test files where 0-16 should be black and 17-25 flash.

0-255: correct SDR black levels but greyish blacks for HDR content
16-235: correct HDR black levels but bad black crush for SDR content

could this be a nvidia bug? or is there someting i am missing here? would it be possible to add another black level setting for HDR content so i don't need to switch?
TagsNo tags attached.
madVR Versionv0.92.17
Media Player (with version info)MPC-HC
Splitter (with version info)1.7.13 (64-bit)
Decoder (with version info) LAV Filters 0.74.1
DecodingDXVA2 Copyback
Deinterlacingnone (progressive)
DXVA2 Scaling Activeno
Aero / Desktop CompositionOff
Problem occurs with modefullscreen exclusive mode
GPU ManufacturerNVidia
GPU ModelGeforce GTX 980
GPU Driver Version442.19 - WHQL (latest)

Activities

madshi

2020-02-20 17:10

administrator   ~0002667

Have you forced the Nvidia GPU to RGB Full Range output? That's the recommended configuration.

zeus0r

2020-02-21 11:22

reporter   ~0002673

okay, now i'm even more confused.

i'm pretty sure i actually chose "RGB/full range/12 bit" in nvidia settings but when i just checked "YCbCr/limited/8 bit" was active. and even weirder: i can't change it to RGB, it's just not there.

so i changed the resolution to 1080p/60 (2160p/60 before) and then i can pick RGB/full/12bit. so i checked black levels again but the problem was still there:

0-255: correct SDR black levels but greyish blacks for HDR content
16-235: correct HDR black levels but bad black crush for SDR content

then i tried pretty much every combination possible and with RGB/limited/12bit: correct black levels for SDR and HDR.

wtf?! why can't i choose RGB with 2160p anymore? and why is limited the correct choice now when it was full range before?!

madshi

2020-02-21 13:09

administrator   ~0002674

Not being able to choose RGB for 2160p60 means that whatever device your HTPC is connected to (display or AVR or whatever) seems to report that this device's HDMI port doesn't have enough bandwidth for 2160p60 RGB. The HDMI input port of the display/AVR needs to be 18Gbps for that to work. Seemingly it's only being reported as 10Gbps instead.

I don't know why RGB Full doesn't work for you. It works for most other users, including myself. Not sure how to fix it. It's probably some sort of Nvidia driver issue. Try reinstalling the Nvidia drivers in "cleanup" mode, maybe?

zeus0r

2020-02-21 13:40

reporter   ~0002675

okay, interesting. i'll try that, thank you!

huhn

2020-02-21 15:51

reporter   ~0002676

there are more than one report of user needing or getting different level between HDR and SDR in the past days.

if listed they where Phillips Tvs.

Deam

2020-05-28 04:49

reporter   ~0002702

Last edited: 2020-05-28 04:50

I would just add to this, and it may very well be an Nvidia bug. I am using MadVR with Kodi DS player (for HDR passthrough). Win 10, GTX 1050ti, Vizio P659-G1 Tried latest drivers and reverted to older ones.

Specifically, if I leave it as a "full" color space path (i.e. MadVR, Kodi DS Player, Nvidia CP and TV), SDR works fine, as confirmed with test clips for black level clipping. However, once I try HDR, the black levels get blown out (such that the entire black level clipping video turns grey and I can see all the bars whether or not they are flashing).

If I then set the TV to limited range (or set Nvidia control panel to limited and leave TV to auto), HDR works. However, unlike the issue noted, my SDR is also displayed correctly verified with clipping test videos.

I'm just noting this here, as it may not necessarily be a MadVR issue as this issue occurs for me when using other Kodi HDR forks that rely on Windows HDR API and not MadVR. I am forced to have the GPU set to limited as I use the PC for other purposes and thus can't have the color clipping using the other options.

madshi

2020-05-28 11:09

administrator   ~0002703

If you can, it's always a good idea to force your display to treat the HTPC input as having specific levels instead of using "Auto", for the simple reason that the HTPC doesn't always inform the display about the correct levels. Nvidia sometimes reports the levels to the display which you set in the Nvidia GPU control panel, and sometimes Nvidia doesn't report any levels at all, so the display has to guess.

However, if you're talking about HDR passthrough using Nvidia's private API (= *not* turning the OS HDR mode on), then I think it's more likely that Kodi might be doing something wrong, like e.g. rendering TV levels although Kodi is set to PC levels. But I can't say for sure. Just guessing here. My personal experience with madVR is that HDR passthrough works fine and doesn't screw up levels, but maybe it depends on the circumstances, driver version or whatever.

Deam

2020-05-28 17:46

reporter   ~0002705

Thank you, Madshi. Yes, I have just set the TV to accept YCBCR (limited range) for the time being - the issue being this combination of factors requires the less optimal setting of the GPU doing a color space conversion.
 
It's a Vizio television, and you are correct, it could be a Kodi/DS Player issue, or possibly an issue with the TV receiving a full range signal with HDR metadata. I've read it can be "resolved" by lowering the brightness from 50 to 32 (though I also understand you shouldn't really fiddle with the brightness slider in HDR mode as this doesn't so what it normally does).

I have a ps4 pro and may test forcing it to use rgb full range and engaging hdr to see what happens with the tv. I’ll have to wait until evening as it’s too bright to really see anything.

Thanks for the feedback (and recognize this may not be a Madvr bug at all, so am appreciative of that)

madshi

2020-05-28 23:24

administrator   ~0002706

FWIW, HTPCs are inherently bad at outputting YCbCr. Usually it's recommended to set the GPU control panel to RGB with PC levels.

Deam

2020-05-29 05:25

reporter   ~0002707

Last edited: 2020-05-29 05:36

It appears for this combination of equipment that I am using I won't have a choice. For posterity (as this is nothing to do with MadVR), I tested the combination with the PS4 Pro running in HDR. I set it to RGB/Full. However, it sends HDR in YCBCR regardless of that setting (so limited color space). This was confirmed by checking the receiver signal, which shows Bt2020 YCBCR vs. BT2020 RGB that the PC sends if left in RGB full. And setting the TV's color space to auto worked as expected. I'm not sure if keeping it at least in RGB format going into the TV, albeit at limited range, is better or worse than having the GPU convert to YCBCR as you've noted.

I'm left to conclude that it may be something with the TV, or the receiver and TV, in which an HDR signal being sent through RGB (full) causes problems requiring a change in the brightness setting in the HDR picture mode. This wouldn't necessarily be a problem, except given the receiver there is only one input being used in the TV and so it would required changing the picture mode/settings going between the PS4 Pro and the PC.

One solution I will look at is whether I can change, in Nvidia Control Panel, the color range for different resolutions, such that when it switches to 23hz it goes to limited RGB, but reverts to RGB full at 60hz.

Issue History

Date Modified Username Field Change
2020-02-19 12:43 zeus0r New Issue
2020-02-20 17:10 madshi Note Added: 0002667
2020-02-21 11:22 zeus0r Note Added: 0002673
2020-02-21 13:09 madshi Note Added: 0002674
2020-02-21 13:40 zeus0r Note Added: 0002675
2020-02-21 15:51 huhn Note Added: 0002676
2020-05-28 04:49 Deam Note Added: 0002702
2020-05-28 04:50 Deam Note Edited: 0002702
2020-05-28 11:09 madshi Note Added: 0002703
2020-05-28 17:46 Deam Note Added: 0002705
2020-05-28 23:24 madshi Note Added: 0002706
2020-05-29 05:25 Deam Note Added: 0002707
2020-05-29 05:36 Deam Note Edited: 0002707