Skip to content

Commit

Permalink
Added basic colourspaces instead of roles
Browse files Browse the repository at this point in the history
Basic colour management mode no longer refers to roles and instead uses a small set of OFX-specific colourspace names which should cover most scenarios. These are defined in OCIO using roles for compatibility purposes, but in OFX, the expectation is that these might correspond to any colourspace that has the same encoding.

Signed-off-by: John-Paul Smith <jps@borisfx.com>
  • Loading branch information
john-paulsmith committed Jul 1, 2024
1 parent a768098 commit 01a3ca8
Show file tree
Hide file tree
Showing 5 changed files with 258 additions and 80 deletions.
20 changes: 10 additions & 10 deletions include/ofxColour.h
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@ Contains the API for colourspace data exchange.
- Default - kOfxImageEffectPropColourManagementStyleNone
- Valid Values - This must be one of
- ::kOfxImageEffectPropColourManagementNone - no colour management
- ::kOfxImageEffectPropColourManagementBasic - only roles from ofxColourspaceList.h may be used
- ::kOfxImageEffectPropColourManagementCore - only roles and core colourspaces from ofxColourspaceList.h may be used
- ::kOfxImageEffectPropColourManagementFull - any role or colourspace from ofxColourspaceList.h may be used
- ::kOfxImageEffectPropColourManagementBasic - only basic colourspaces from ofxColourspaceList.h may be used
- ::kOfxImageEffectPropColourManagementCore - only core colourspaces from ofxColourspaceList.h may be used
- ::kOfxImageEffectPropColourManagementFull - any colourspace from ofxColourspaceList.h may be used
- ::kOfxImageEffectPropColourManagementOCIO - any OCIO config may be used (implies use of the OCIO library)
Hosts should set this property if they will provide colourspace information
Expand Down Expand Up @@ -103,20 +103,20 @@ must be unset.
- Type - string X N
- Property Set - clip instance (read only) and ::kOfxImageEffectActionGetClipPreferences action out args property (read/write)
- Valid Values - colourspace that is permitted under the style in use.
For Basic, any role from ofxColourspaceList.h.
For Core, any role, or any colourspace from ofxColourspaceList.h where IsCore is true.
For Full, any colourspace or role from ofxColourspaceList.h.
For Basic, any colourspace from ofxColourspaceList.h where IsBasic is true.
For Core, any colourspace from ofxColourspaceList.h where IsCore is true.
For Full, any colourspace from ofxColourspaceList.h.
For OCIO, any string acceptable to Config::getColorSpace().
Plug-ins may set this property during kOfxImageEffectActionGetClipPreferences
to request images in a colourspace which is convenient for them. The
property is an ordered set of colourspace identifiers, which may be any of the
names or aliases supported by the colour management style in use. If plug-ins
prefer more esoteric colourspaces, they are encouraged to also include generic
roles as a fallback. For example a colour grading plug-in which supports a
specific camera and expects a log colourspace might list:
prefer more esoteric colourspaces, they are encouraged to also include basic
colourspacesas a fallback. For example a colour grading plug-in which supports
a specific camera and expects a log colourspace might list:
"arri_logc4", "arri_logc3_ei800", "ACEScct", "color_timing"
"arri_logc4", "arri_logc3_ei800", "ACEScct", "ofx_log"
The host is free to choose any colourspace from this list, but should favour
the first mutually agreeable colourspace, and set kOfxImageClipPropColourspace
Expand Down
Loading

0 comments on commit 01a3ca8

Please sign in to comment.