From sRGB over P3 to ACEScg and how to visualize a bigger gamut that you cannot display.
I created three images in Affinity Photo. First is the one below created in sRGB-8Bit, using gradient tools and three layers of additive circles with the maximum saturation of each red, green and blue.
1. start with sRGB 8-Bit and the gamut of sRGB/rec.709
Example displays: old MBP, iPhone 6
In the Mac App Store I found a tool called ColorSpatioplotter by Keiji Ikuta that helps to visualize and compare gamuts.
2. moving into P3 still display referred
Now that there is more room to fill, I went back to Affinity Photo and converted the document from 8 to 16-Bit the ICC profile from sRGB to display P3 (Display P3 shares the same primaries as DCI P3, or digital cinema, but has a different gamma than DCI-P3).
At first glance, the image looks the same, but all the colors and gradients are not showing the maximum RGB values anymore. So I changed all the gradients and colors of the circles back to the maximum saturation to fill out the whole gamut of P3 (depending on the display it’s noticeable that the P3 colors are more intense on an a 2018 MBP-P3 display vs. a 2012 iMac-sRGB screen).
Example displays: newer MBP or iMac, from iPhone 7 to 11, workstation or professional grading monitors
3. ending up in acescg and scene referred
Up to here there are displays that can show these extreme saturated colors.
ACEScg is bigger than Rec.2020 or ProPhoto (RIMM-ROMM by Kodak). There is no such display that can show so saturated colors especially with a virtual green primary which lies outside the spectral locus.
Back in Affinity Photo, I converted the image again. This time to 32-Bit full float and the colorspace ACEScg. Now the scale of the color picker changes as well from a 8-Bit display with a maximum of 255 to 1.0 in floating point numbers. Then I adjusted again all pure colors to 1.0 in the respected color channels. As I cannot display this file it ACEScg which is a scene referred colorspace, I exported it with the ODT sRGB as a JPG file back into a display referred colorspace.
Imaginary device: there is no such display, a view transform used to map the colors to a target display.
ACEScg is working colorspace for flame, nuke, resolve (ok – ACEScct but with AP-1 or ACEScg primaries), Affinity Photo, Blender, Maya, etc., but its not a display colorspace.
I explored in the article/page Understanding Gamut with ACES and Blender what that means with some examples in Blender to work with a broader color palette but view it on a “reduced” canvas.
Now it’s clearly visible how much larger the gamut of ACEScg is in comparison the to small gamut of sRGB/Rec.709 is.
Finally I loaded all three image into Nuke, had to load them with different IDTs (ignoring the gamma of sRGB & P3). Now I can clearly pick the color values, starting with ACEScg full red at 1.0, 0.0, 0.0 and compare them to the same color patch in P3 and sRGB.
- Only in ACEScg in Nuke the values map to 1.0 – means 100%.
- In Display P3 this is about 74% red, 93% green and 96% blue.
- In sRGB this goes down to 61% red, 91% green and 87% blue.
Again, there is no ACEScg display, so the maximum colors seen above are actually maximum sRGB colors, and P3 and sRGB show the reduced possible saturation in relation to ACEScg.