AcademySoftwareFoundation / OpenColorIO

A color management framework for visual effects and animation.
https://opencolorio.org
BSD 3-Clause "New" or "Revised" License
1.76k stars 434 forks source link

Add code examples for using color space heuristics #1870

Open doug-walker opened 11 months ago

doug-walker commented 11 months ago

A common OCIO question is how to convert between some known external color space (e.g., sRGB, linear sRGB, CIE XYZ) and a color space in a user's config.

OCIO 2.0 added the notion of interchange roles that allow config authors to identify the color space name used in their config for certain standard color spaces. However these are not present in all configs (particularly OCIO v1 configs). OCIO 2.2 added heuristics that will search a config (that is missing the interchange roles) for color spaces that mathematically match a transform between well-known color spaces. This API was extended in the 2.3 release. However, there is a need for some example code that explains how to use these new features.

This issue is to add example code for the new methods on the Config class such as IdentifyBuiltinColorSpace, isColorSpaceLinear, IdentifyInterchangeSpace, and GetProcessorToBuiltinColorSpace.