Blender AgX in darktable (proof of concept)

If this is what a particular user want I don’t see a huge problem with it, but I still feel a bit weird having it turned on by default.

The thing is, why are we able to “linearize” it by using a power curve? Isn’t this amazing?

We start with linear data, then we apply a log curve, and then the sigmoid. If we want to “linearize” it, why not apply the inverse sigmoid, and then inverse log curve? In actual practice, we apply an additional power curve, and we say that we “linearized” it.

My personal answer is that, the picture is formed at this state by us “pretending” the picture is designed for a particular display. Under this assumption, we are able to call the power curve an EOTF. It doesn’t have to be a power curve, if we pretend it’s for sRGB piecewise transfer function, we can apply the piecewise EOTF, it’s completely fine.

Troy even has an idea that we can just “pretend” the result is in HLG, and straight up apply HLG EOTF to “linearize” it to be a Rec.2100 “HDR” picture.

If you completely throw away the “target display” meaning of it, then it just doesn’t make sense anymore why we can “linearize” the picture with a power curve.

If we enforce the meaning behind the “linearization”, the “keep pivot on identity line” feature really is dynamically changing the native state that the picture is formed in.

Again, I don’t think it’s “wrong”, I just think it’s weird to be set as default.

I think it’s reasonable to say that the parameters work together, so parameters would influence each other’s results. I don’t think this would really be an issue.

Also, I don’t think people should touch the exposure range too often, at some corner cases people might need to turn the max exposure down because the RAW footage has hardware sensor clipping issue below the default +6.5 stop max. For other cases I really don’t think people should use the picker to do the auto exposure range thing. Like what Troy posted in the comment you linked to, perceptual “whiteness” can occur at any code value, you don’t need to put the max of the original data to the max of the picture code value to make it “white”.

That’s exactly why I think “keeping the curve an S shape” is a weird requirement.

1 Like