colour-science/OpenColorIO-Configs

Nuke ProRes Gamma 1.8 ColorSpace

Closed this issue · 3 comments

exavi commented

Thanks @KelSolaar for opening this!

On occasion we receive the odd ProRes footage with Gamma 1.8 and we must keep it as is, or at the very least, view it as the DP intended.

The default OCIO ACES v1.0.3 does not seem to cover this case so I hacked together a bit of config that seems to do the trick.

  - !<ColorSpace>
    name: Input - Linear - sRGB - Gamma 1.8
    family: Input/Generic
    equalitygroup: ""
    bitdepth: 32f
    description: |
      The colorspace to use to display ProRes shot with Gamma1.8 as is.
    isdata: false
    allocation: uniform
    allocationvars: [0, 1]
    to_reference: !<GroupTransform>
      children:
        - !<ExponentTransform> {value: [1.8, 1.8, 1.8, 1]}
        - !<FileTransform> {src: srgbf.spi1d, interpolation: linear, direction: inverse}
        - !<ColorSpaceTransform> {src: Output - sRGB, dst: ACES - ACES2065-1}

Where the "srgbf.sp1d" is the lut that ships with the nuke-default OCIO config.

After this one was added some old campaigns came back and artists wanted to be able to view/use old (non-ACES) renders under the default view/display (ACES/sRGB) as they were used to seeing them in the old config, in many cases this is merely to do a tiny bit of comp, not even touch-ups, most of the time it might be a client logo update or something similar, so we can't justify breaking it apart, re-rendering, re-comping and re-sending for external grade touch-ups.

  - !<ColorSpace>
    name: Input - Linear - sRGB
    family: Input/Generic
    equalitygroup: ""
    bitdepth: 32f
    description: |
      The colorspace to use to display legacy Linear/sRGB renders as they were.
    isdata: false
    allocation: uniform
    allocationvars: [0, 1]
    to_reference: !<GroupTransform>
      children:
        - !<FileTransform> {src: srgbf.spi1d, interpolation: linear, direction: inverse}
        - !<ColorSpaceTransform> {src: Output - sRGB, dst: ACES - ACES2065-1}

Both with their relevant aliases (e.g: Gamma1.8 for prores, which seems to be a hardcoded nuke colorspace).

I was wondering if this would be worth adding to the public ACES configs, in film it would be rare to reuse renders/comps or get ProRes rather than AlexaV3LogC, but in commercials we've seen this happen often at @passionpics

I'd like to use the default configs as much as possible because we often send them to the grade and/or work with other commercials/film houses and the more generic our OCIO configs stay, the better for everyone.

Obviously the descriptions and or colorspace names are far from ideal so please feel free to change them in any way if you think they may be worth including.

Hi @exavi,

So this is an interesting one because as part of the Config for ACES 1.2 we added a new Utility - Gamma 1.8 - Rec.709 - Texture ColorSpace for MaterialX support:

  - !<ColorSpace>
    name: Utility - Gamma 1.8 - Rec.709 - Texture
    family: Utility
    equalitygroup: Gamma 1.8 - Rec.709 - Texture
    bitdepth: 32f
    description: |
      The Gamma 1.8 - Rec.709 color space for importing certain textures.
    isdata: false
    allocation: uniform
    allocationvars: [0, 1]
    from_reference: !<GroupTransform>
      children:
        - !<MatrixTransform> {matrix: [0.952552, 0, 9.36786e-05, 0, 0.343966, 0.728166, -0.0721325, 0, 0, 0, 1.00883, 0, 0, 0, 0, 1]}
        - !<MatrixTransform> {matrix: [3.2096, -1.55743, -0.495805, 0, -0.970989, 1.88517, 0.0394894, 0, 0.0597193, -0.210104, 1.14312, 0, 0, 0, 0, 1]}
        - !<ExponentTransform> {value: [0.555556, 0.555556, 0.555556, 1]}

This would not solve your current problem but I gave that example to highlight the fact that we can add stuff if people have need for it and legitimate use cases that will smooth their workflows. You should get on the OpenColorIO Slack channel btw! I will mention the issue there.

exavi commented

Great to hear it's open to receive contributions, I think that specially smaller shops could benefit from having these.

Yeah I'd be happy to join the OCIO slack channel! ;) Is it invite-based?

Closing this one, for now, feel free to re-open!