Thank you for your in-depth reply!
First, a quick note on terminology: in my reply I will use the term “Image Formation” instead of “ODT”, “Output Profile”, “DRT”, “Display Rendering Transform”, “View Transform”, Etc. I think this term better represents what the transform is doing. And I’ll continue use the term “Display Encoding” to refer to the inverse of the display device’s transfer function or EOTF. Note I’m not including the gamut conversion component of this in this term, because this is usually handled in creative and custom ways by the Image Formation process, and is not as simple as a 3x3 matrix to convert the gamut using CIE Colorimetry.
Ahh, I think this explains some of my confusion. For my custom-compiled version of ART on linux (compiled from the main branch yesterday), the dropdown for the display profile is empty:
Are there icc profiles that I’m missing in some location that I might need to add somewhere? Would love to get this working so that I can properly test it.
Yes. OpenDRT is designed with digital cinema workflows in mind, and follows the convention in that domain to map “scene-linear” middle grey 0.18 to “display-linear” ~0.11, placing middle grey at around 11% of the overall range or at about 11 nits on a 100 nits Rec.1886 SDR display. This is the convention used by pretty much all camera manufacturer image formation LUTs (except RED), and Resolve and Baselight, and follows the placement of middle grey of the original Rec.709 OETF.
This is a creative adjustment however, as you can tell with the Umbra tonescale preset, which places middle grey about 1 stop lower at 6 nits (This is an increasingly common trend among high end feature films and episodics and shows the influence of HDR image formation bleeding over into SDR). The choice of where to place middle grey through the image formation is arbitrary, because at the end of the day it is just a pivot point for creative decision making about exposure. I see how it could be surprising in this context however, as it seems to normal approach is to start from a blank slate with just the display encoding and build up an “Image Formation” with various adjustments for every picture or preset (And obviously the display encoding roughly maps all pixel values between 0-1 from scene pixel intensity to display light with no transformation (ignoring colorimetry here)).
In OpenDRT’s tonescale parameters, one would adjust this with tn_Lg
or Grey Luminance
. This adjustment is pretty much equivalent to an exposure adjustment in linear. I did find it kindof annoying constantly having to jump between the special effects tab and the exposure tab just to adjust exposure (which pretty much always needs to be creatively adjusted per picture anyways), so maybe it would be useful in the context of ART to expose this parameter for the user and remove it from the tonescale presets.
This makes sense, thanks for explaining! Is there a default folder for ctl scripts of this type, or is it purely the CLUT Directory path that is set in the preferences? (Sorry if this is obvious and I just missed something! I’m doing quite a bit of learning here…)
Thanks again for your patience and your help!