sRGB emulation for Nvidia gpus with wide-gamut displays (novideo_srgb)

Discussion in 'PC Hardware, Software and Displays' started by Scott_Arm, Dec 5, 2021.

  1. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    Windows is pure shit at colour management. If you have a wide gamut display most of the time everything on your pc is going to look wrong, because Windows assumes the srgb colour space, but doesn't colour manageme everything correctly. With AMD drivers there is a way to limit the colour gamut of your monitor to the srgb space. Now someone has made a tool to do the same for Nvidia drivers using an undocumented nvidia api. You just turn it on and it works. Nvidia really needs to get their shit together and make it part of the driver.

    Anyway, if you don't actually use the wide gamut of your display, you can use these options to fix saturation. It works for all apps, even exclusive fullscreen.

    Good article about the issue and the solutions:
    https://pcmonitors.info/articles/taming-the-wide-gamut-using-srgb-emulation/

    The tool for Nvidia
    https://github.com/ledoge/novideo_srgb
     
    Clukos, Bludd and BRiT like this.
  2. Bludd

    Bludd Experiencing A Significant Gravitas Shortfall
    Veteran

    Joined:
    Oct 26, 2003
    Messages:
    3,699
    Likes Received:
    1,314
    Location:
    Funny, It Worked Last Time...
    i think the reason is that for most people "more vibrant and saturated" = "better"

    its like the loudness wars in music: compress the dynamic range for "better sound"
     
    #2 Bludd, Dec 5, 2021
    Last edited: Dec 5, 2021
  3. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    At this point I don’t understand how windows is so far behind Mac OS for colour management. On Mac it’s fully managed and they even have display p3 as a colour format for wide gamut.
     
  4. Bludd

    Bludd Experiencing A Significant Gravitas Shortfall
    Veteran

    Joined:
    Oct 26, 2003
    Messages:
    3,699
    Likes Received:
    1,314
    Location:
    Funny, It Worked Last Time...
    more professionals who demand these kinds of features? more people inside apple than ms that care about this?
     
  5. orangpelupa

    orangpelupa Elite Bug Hunter
    Legend Veteran

    Joined:
    Oct 14, 2008
    Messages:
    10,109
    Likes Received:
    2,989
    So that's why colors looks weird with wide gamut enabled. Why can't windows simply sync with the wide gamut enabled, I wonder.
     
  6. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    Normally you'd do that with an icc profile. The icc basically stores the information about the colour space of the display, and then a colour managed application can use the icc to correct colours for your particular display. Most monitors will have a driver that includes an icc which may or may not be close to the true colour space of your monitor. Or you can buy a profiling tool like a colorimeter and profile your own display to generate your own unique icc. The problem is in windows exclusive fullscreen apps do not your icc. Most windowed applications don't either. Some pro apps like adobe stuff would be correctly colour managed. Web browsers are, but I'm a little confused about the details in terms of what is default on/off and which browsers have issues.

    In comparison in Mac OS everything is colour managed always. If you make an icc, it works for every single application as far as I'm aware. It's also been that way for a very long time.

    Windows desktop expects everything to be srgb colour space, and if your monitor is not srgb, basically everything will be displayed wrong. Displaycal is a nice tool to help, if you get a colorimeter, but it doesn't help with games etc. I was down the reshade rabbit hole, but it's a huge pain in the ass, and doesn't work with microsoft store apps/games, and it also can be detected as cheat software. So basically I've been stuck with over saturated colours in all of my games. This little free tool finally fixed it.
     
    orangpelupa and BRiT like this.
  7. Pressure

    Veteran Regular

    Joined:
    Mar 30, 2004
    Messages:
    1,570
    Likes Received:
    503
    It has just always been in the DNA of Apple. Graphic design and preparing printed material for offset printing was revolutionised overnight by Apple in the 1980s before Windows existed with a GUI. Preparing news papers were a manual work process fully controlled by typography unions. They decided when they could prepare your print material and "they didn't like working" when you needed work done. They sucked.

    [​IMG]
    [​IMG]

    Suddenly it was possible to do typesetting on a computer. The typography unions were basically made obsolete in less than a year. Now advertising agencies and other graphic design outlets could prepare printed material themselves.

    I know this is an old video but it really underlines the changes happening back then.



    I still have mine in the fancy carrying case.
     
    #7 Pressure, Dec 6, 2021
    Last edited: Dec 6, 2021
    Bludd likes this.
  8. Osamar

    Newcomer

    Joined:
    Sep 19, 2006
    Messages:
    228
    Likes Received:
    42
    Location:
    40,00ºN - 00,00ºE
    The good old times of Calamus and an Atari ST.
     
  9. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    @Pressure I get that apple has more of a history, and a lot of its popularity was built through creative industries and publishing. Windows has had a long time to catch up, and seems to have made very little effort. It's kind of crazy to me that I can go out and buy a $1000 monitor with a wide gamut and I'll have to worry about whether windows will actually display half the stuff I'm looking at correctly.
     
    Rodéric likes this.
  10. hoom

    Veteran

    Joined:
    Sep 23, 2003
    Messages:
    3,231
    Likes Received:
    776
    MS would need to stop replacing the stuff that was OK/good with shit that everyone immediately turns off/uninstalls/never uses.
     
  11. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    This tool has now been updated to read an icc profile and create a LUT to calibrate to accurate srgb instead of just clamping gamut. AMAZING. Trying to figure out the workflow though. I'm assuming you create an icc, use the advanced settings in the tool to load the icc info and create the LUT and then disable the icc in windows?

    https://github.com/ledoge/novideo_srgb/releases/tag/v1.3

    You can even choose srgb, bt1886, absolute or relative gammas. This is amazing. The tool I've been waiting for.
     
    pharma, BRiT and Bludd like this.
  12. Davros

    Legend

    Joined:
    Jun 7, 2004
    Messages:
    17,658
    Likes Received:
    5,074
    I'm assuming you download it from your monitors website
    [​IMG]
     
  13. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    Yah, you can do that, but I have a colorimeter so I can actually profile mine in case there's some display variance.
     
  14. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    What I ended up doing to get really nice results with my wide-gamut monitor. Monitor has never looked better. This probably wouldn't be the best for a professional that's working with colour critical applications, but I verified the results with HCFR and they're very good. I checked primaries, secondaries including saturations, greyscale, gamma, near black, near white and the color checker for skin tones etc. Worst delta E was 1.9, and many of them were under 1.0 with quite a few under 0.5.

    1) set monitor to defaults
    2) used displaycal to adjust brightness on monitor to 120 nits, and RGB on monitor to D65 white point
    3) used displaycal to calibrate and profile (whitepoint, white level, black level, tone curve all set to "As measured"), profile settings at defaults except patches increased to 1100
    4) use novideo_srgb to clamp gamut and use the advanced option to select the icc profile I created in displaycal with the calibrate gamma option checked and set to sRGB
    5) use displaycal to calibrate and profile again with all of the same settings except I only did 175 patches
    6) install and use the second displaycal profile

    So now I have a perceptual match to sRGB for all of my games, including exclusive fullscreen, and a working icc for any colour managed applications that's expecting one.

    It kind of pisses me off that I have to do something this stupid to get display accuracy in Windows.
     
    BRiT likes this.
  15. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    I got a response from the creator which leads me to think I pretty much got it right.

    https://hub.displaycal.net/forums/t...uts-to-the-windows-desktop/page/6/#post-33333

    Alternatively, you could use the manufacturer's icc with novideo_srgb to clamp your gamut, maybe even try using the calibrate feature, and then use the default srgb icc that windows provides as your default icc for colour managed applications. It wouldn't be perfect, but it might not be terrible. I do think the novideo_srgb expects your monitor to have D65 as a whitepoint, so you might need to change your monitors colour temperature to a 6500K setting. Not sure.
     
    Albuquerque, pharma and BRiT like this.
  16. Albuquerque

    Albuquerque Red-headed step child
    Veteran

    Joined:
    Jun 17, 2004
    Messages:
    4,124
    Likes Received:
    757
    Location:
    35.1415,-90.056
    Some day I'm going to buy an obscenely expensive, high refresh, high dynamic range, stupidly-wide monitor and I'm going to want to remember all of this. Thus, I'm posting in here for my own posterity :D
     
    Scott_Arm likes this.
  17. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    Honestly, I hope they start coming out with 240Hz tvs, then I can just buy a tv and calibrate it and never have to worry about messing with windows software etc. Computer monitors are pretty much 100% reliant on having the operating system colour manage correctly, unless you buy a monitor that supports hardware calibration which are rare.
     
  18. milk

    milk Like Verified
    Veteran Regular

    Joined:
    Jun 6, 2012
    Messages:
    3,902
    Likes Received:
    4,022
    Windows does have a colour management tool of its own. But its broken. Aplications that care are free to overwright it, I know photoshop does, and tou can have different apps in windowed mode managing colours differently simultaneously on the same screen. I don't know how that works internally, but if you take a print-screen at those points the colours in the snapshot will look different there than they do nativelly on-screen.
    The problem, or one of them, is often this will bug out and some apps will end up using the profile of another and their colours will look more saturated or washed out than they are supposed to. I must see this happen at least every other week during work... It does not inspire trust...
     
  19. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    @milk DisplayCal profile loader may be able to force a particular occ when an app is active. Not sure. I’ll have to look at it. I know profile loader is a lot more reliable than the windows icc loader.
     
  20. Scott_Arm

    Legend

    Joined:
    Jun 16, 2004
    Messages:
    15,051
    Likes Received:
    7,512
    An update:

    I'm still playing around with this. They added new features and I see there are some different instructions up on the github page. Basically if you're calibrating and profiling with displaycal you should set a whitepoint target and a tone curve on the calibration screen. On the profiling screen you need to set the profile type to curves + matrix, which will limit the number of patches, and black point compensation must be turned off. I seemed to get good results again this way. In displaycal profile loader I just associated the standard srgb icc/icm with my display. So novideo_srgb does the calibration and displaycal just gives me a working icc/icm that doesn't change anything for all of the applications that are looking for colour management. I can profile the display with novideo_srgb applied to probably get something even more accurate, but honestly this is close enough.

    On top of that, the new version has some new features. You can now clamp to adobergb or display-P3, but they don't have calibration options for those colour spaces (yet?).

    You can actually enable dithering! One of the issues with nvidia's consumer drivers is they do not support dithering, so if you do a normal display calibration that alters the video card gamma table, you can end up with colour banding. Absolutely stupid. AMD supports dithering so calibrations work much nicer. The nice with with novideo_srgb is I can enable dithering and get a good srgb calibration and it works absolutely everywhere, instead of having to worry about applications ignoring the icc or overriding the vcgt. So it fixes some Nvidia problems and it fixes some Windows problems.

    Verified my results with novideo_srgb applied using HCFR and they were very good.

    upload_2022-1-17_0-36-2.png

    upload_2022-1-17_0-36-26.png

    From novideo_srgb
    upload_2022-1-17_0-37-39.png
     
    BRiT likes this.
Loading...

Share This Page

  • About Us

    Beyond3D has been around for over a decade and prides itself on being the best place on the web for in-depth, technically-driven discussion and analysis of 3D graphics hardware. If you love pixels and transistors, you've come to the right place!

    Beyond3D is proudly published by GPU Tools Ltd.
Loading...