# How does color management work, fundamentally?

I have watched hours of videos on the subject, but I just can't understand it without a slightly deeper explanation. If it helps you to explain, my production software of choice is DaVinci Resolve.

I understand the need for reference color spaces, but not at all their application. Unless you are on a display using Y'CbCr, it is fundamentally RGB. It's also likely quantized to an integer between 0-255. With that in mind, what are ICC profiles and monitor settings doing to the output signal? For example, you can set the gamma value and relative RGB strengths within most monitors' menus. But with their digital processors, wouldn't messing with these on a 24-bit signal cause significant color degradation? The same question applies to ICC profiles, especially since I watched Taran Van Hemert's video on color calibration, wherein he found that desktop recording software did capture the differences in color brought on by ICC profiles, and some software bypasses color management altogether.

(Bonus question! Online video is typically in limited-range rec.709. Does this mean consumer NLEs are outputting the wrong colors since most computer displays are in full-range sRGB?)

Not a colour expert, but I think:

YCbCr is just a mathematically different way of representing RGB.

Y is luminance, Cb and Cr are mathematically derived ways of representing the other colours.

It is possible to reduce the bandwidth used to send Cb and Cr in order to reduce the overall bandwidth, because your eyes see luminance more precisely than they do colour.

It isn't necessarily true that everything is quantised to 0-255, if you're working with footage that is greater than 8 bit, or in software that allows you to process footage at colour depths greater than 8 bit.

I think Rec.709 more or less fits within the colour space of sRGB?

When you calibrate a monitor, you're trying as best you can to match a desired gamma curve based on the profile your computer thinks it should be displaying to you. Assigning where black white and mid-grey are along that curve.

I've no idea about where within the chain desktop recording software records video. It's quite possible some more diddling about happens in some monitors after the calibration, and I think that's one of the reasons people use broadcast monitors - because they can trust that there's no additional smoothing, noise reduction, or pumping up of colour just to make things look punchy.

• Thanks for the reply! sRGB and Rec.709 share the same chroma gamut but generally has a different gamma curve. Per the Rec. 709 Wikipedia entry: "Rec. 709 and sRGB share the same primary chromaticities and white point chromaticity; however, sRGB is explicitly output (display) referred with an equivalent gamma of 2.2" Also, Y'CbCr isn't perfectly reversible to RGB which was a massive shock to me too, seeing as it's literally defined with RGB values. There is a color format called Y'CoCg that solves this issue. Jan 10 at 23:05

After months of confusion, I make a post on a forum and hours later find an article that answers (most) of my questions.

The parts I'm most concerned with are in sections 2 and 7. Per the article:

This is where color management comes into play: if applications know the actual gamut of that monitor, they can translate this “0,255,0” sRGB value to another set of RGB values that represent the same color (or fairly close) in a bigger color space: sRGB 0,255,0 (green) -> 144,255,60 AdobeRGB (same sRGB green color)

Since we output discrete RGB numbers to a monitor, usually from 0 to 255 for each channel, and since a monitor accepts a discrete RGB number as input, usually from 0 to 255, then if we modify this one-to-one translation with a calibration curve, we may be introducing “gaps” or “jumps” in that 256 step stair. Such gaps may result in visible jumps between neighbor grey values and even coloration of some grays (red, green or blue tint in them).

So yes, ICC profiles can cause color degradation since they act on 24-bit color most of the time. This also explains why ICC profiles would show up in screen recordings and why you're able to activate color management on a per-app basis since they're just modifying the RGB values to match the standardized color definition with respect to the monitor's gamut/gamma.

TL;DR: ICC profiles are more or less just LUTs that transform RGB values with respect to your monitor's gamut so that the values match the physical scientific definition of each color in the real world. They aren't magic voodoo and are still constrained to the precision of the output signal to your monitor. (but also according to the same article and this Reddit post, some graphics cards have a dithering option that helps)

This doesn't address my questions about monitor settings, but it eliminates the most confusing part for me. If any part of this is wrong, I'd love more information! Until then, I'm marking this as the answer.

Edit: For those wondering how this applies to DaVinci Resolve or Blackmagic Fusion, it kinda doesn't. See this post.