For smoothness reasons we would prefer to not have ‘if’ style adjustments as this can lead to problems with gradients and other transitions from one colour to the next. Ideally we will want to reformulate the compression to not need this.
I don’t know if this is already known. The out of gamut compression seems to add a tint to the image. Also the perceived brightness is impacted. I created a comparison image for all six limiting primaries and increased the vibrance in Photoshop to make the differences better visible:
I’m using Nuke Non-commercial which has some limitations. Maybe that’s relevant.
EDIT: I looked into the blink code and now I see that I need to choose limiting primaries with the same white point as the output color space. Then the output seems fine.
Both DCTLs are expecting Linear as input and the output encoding is ST2084 (HDR).
In Davini Resolve I’m using the Color Space Transform for the conversion from Canon Log 3 / Rec.2020 to Linear / AP0 and Linear / Rec.2020. Tone Mapping is disabled.
Now I get two different results. Variant 1 (AP0 input primaries) has a tiny bit more magenta in the sky, which I don’t like.
Can I assume that input color space = output color space (and input white point = output white point) in the Nuke script is the most accurate?
It’s for sure not related to what you demonstrate, but still:
If I recall it right (at least including version 17, last time I checked it), Canon logs in Color Space Transform aren’t correct. Worth comparing to ACES IDTs.
This is diagnostic output of tonemappedJMh with M channel scaled down a little bit:
Eccentricity factor = Custom:
Eccentricity factor = None:
The eccentricity factor seems to result in some sort of misalignment in the chromaCompression() function. In this extreme example, it looks much better without it.
Re-rendered with more samples so there will be a lot less noise and I also did a variant with a Grasshopper 2 sensitivities, always interesting how those extremely saturated colours are not mapped properly with a 3x3 matrix.
I have been checking some testing with the hellwig model from this repo, I am not sure if this is the lastest version, so the results may vary.
At first glance it looks like the model itself is not invertible back to rgb, not even rec709, and even worse for larger gamuts . I think this model expects XYZ d65 right?
If you made a rendering though those spectral sensitivities, and then applied the appropriate matrix from this file it might not exactly match a current ALEXA, but should give a pretty reasonable approximation of the result of shooting a physical Cornell box lit with those LEDs with an original ALEXA Studio. That might be a more suitable cinema camera test image than the Grasshopper one.
similar to the blender/cycles RGB balls example that I posted a while back, I took the two EXR files and passed them though the same „pipeline“ to see them in SDR & HDR:
The EXR files were loaded into Nuke as ACES 2065-1
The left/center box N5 grey patch was exposure balanced to the ACEScg reference chart and overlaid with it as well as round circles.
I raised the exposure 2/3 of a stop to end up with kind of a middle grey in the nuke viewer for that patch with the Mac/Digital Color Meter.
The ProRes 4444 files were exported as SDR and HDR with the following OCIO-configs
ACES 1.3 OCIOv2 SDR&HDR (as well for the ARRI REVEAL output via the ARRI LUTs)
ACES 2.0 rev035 OCIOv1 SDR&HDR (no HLG available)
TCAM OCIOv1 SDR & HDR
For AgX I took a slight different route:
Read the EXR files as RAW
Apply a Nuke Colorspace node to convert the primaries from ACES to sRGB/Rec.709
The ProRes 4444 files were exported as SDR and HLG.
For this rendering I could leave out the exposure raise of 2/3 of a stop, because the image already shows the N5 patch of the left/center box as middle grey on the display.
The AgX HLG versions are still a bit experimental, because I am not really sure yet if I did everything okay. I am still figuring out how to render a PQ version as well.