openfx
openfx copied to clipboard
OpenColorIO Properties
Open Effects Proposal for Standard Change
Please read the contribution guidelines first.
Standard Change Workflow
- [x] Create proposal as issue (you're doing this now!)
- [x] Tag this issue with
standard changetag - [ ] Identify subcommittee: at least one plug-in vendor, and at least one host
- [ ] Discuss the idea in this issue
- [ ] Write new or updated code and doc
- [ ] Publish updates as a pull request (ideally on a
feature/PROPOSAL-NAMEbranch)- [ ] Make sure that PR references this issue number to keep them in sync
- [ ] Discuss and review code in the PR
- [ ] Meet all requirements below for accepting PR
- [ ] When subcommittee signs off and other members don't have any further review comments, maintainer merges PR to master which closes PR and issue
Requirements for accepting a standard change:
- [ ] Header files updated
- [ ] Documentation updated
- [ ] Release notes added
- [ ] Compatibility review completed
- [ ] Working code demonstrated with at least one host and one plugin
- [ ] At least two members sign off
- [ ] No further changes requested from membership
Summary
These properties allow a host to pass information about the OCIO config, display settings and clip colourspace to a plug-in.
Motivation
Various hosts use OCIO to manage colour. This is useful in two scenarios:
- If a plug-in draws input images in its own user interface, if the OCIO settings are know, the plug-in can ensure the appearance of the image matches how they look in the host.
- If a plug-in performs processing which is sensitive to the working colourspace, knowing the OCIO settings allow the plug-in to ensure its parameters behave in a consistent way irrespective of the host's working colourspace.
Problem
- A plug-in which draws its own UI window needs to make assumptions about the colourspace of the input images, or ask the user to manually choose a colourspace.
- A plug-in which applies colour grading presets will look different in a host that supplies scene linear images than one which supplies gamma-corrected images. This requires the user to either manually select the colourspace in the plug-in, or apply conversion in the host.
Impact
New optional feature. If the properties are not set by the host, plug-ins can apply sensible defaults as they do now.
Documentation Impact
The properties require simple documentation and an example would be beneficial
Stakeholders
Plug-ins are the main beneficiary as they will work more predictably in a host that supports OCIO.
Discussion
I've commented on the PR #103 rather than here, hope that's OK