Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Roadmap goal: Clean up color management for OIIO 3.0 #4164

Open
lgritz opened this issue Feb 26, 2024 · 3 comments
Open

Roadmap goal: Clean up color management for OIIO 3.0 #4164

lgritz opened this issue Feb 26, 2024 · 3 comments
Labels
file formats Image file formats, ImageInput, ImageOutput help wanted A task that is desired, but needs somebody to commit the effort to implement it. image processing Related to ImageBufAlgo or other image processing topic. mackerel 🎣 Medium sized project that somebody should take on to dive deeper into being an OIIO developer.

Comments

@lgritz
Copy link
Collaborator

lgritz commented Feb 26, 2024

I think we should make sure that for OIIO 3.0 (i.e. this fall's release), we should fully align to the core color space nomenclature that OpenColorIO, MaterialX, and OpenUSD are gravitating toward, which is documented here: https://github.com/AcademySoftwareFoundation/MaterialX/blob/main/documents/Specification/MaterialX.Specification.md#color-spaces-and-color-management-systems

This means a few things, at least:

  1. We should decide once and for all if OCIO should be a required dependency of OIIO -- in particular, a new enough version to support the "built-in configs" -- so it can do most of the heavy lifting for us and 100% be confident we don't implement any color transforms differently than they do (because we'd always be using their code).
  2. We should support all of those names, both in implementation and documentation, for the color spaces they describe and be sure we're talking about them and behaving consistently with those other projects.
  3. If in (1) above we choose not to require OCIO, we should ensure we have fallbacks that let us properly transform between them. (We currently do a few special cases.)
@lgritz lgritz added file formats Image file formats, ImageInput, ImageOutput image processing Related to ImageBufAlgo or other image processing topic. help wanted A task that is desired, but needs somebody to commit the effort to implement it. labels Feb 26, 2024
@lgritz
Copy link
Collaborator Author

lgritz commented Feb 26, 2024

🎣 Mackerel! This would be a great task for somebody to take on who cares about this topic and being consistent in our treatment of color space names. It's not really rocket science in terms of requiring especially advanced programming skills, nor extensive knowledge of deep OIIO internals. The surface area of the code base that it needs to touch is not very large, but getting it right would have a big impact on user experience. Adding OIIO to the alliance of {OCIO, MaterialX, USD} all using these names consistently would be a good thing.

@lgritz lgritz added the mackerel 🎣 Medium sized project that somebody should take on to dive deeper into being an OIIO developer. label Feb 26, 2024
@BrianHanke
Copy link

I might be able to help with this! I'm knowledgeable about OCIO and I'm interested in making it more accessible and user friendly. I get by in C++ and Python but I'm not a pro developer by any means.

@JGoldstone
Copy link
Contributor

Thanks for stating the problem; I think this came up earlier when I was in a four-day fugue going after a multithreading/multihost caching bug, and never went back, so now ... I can.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
file formats Image file formats, ImageInput, ImageOutput help wanted A task that is desired, but needs somebody to commit the effort to implement it. image processing Related to ImageBufAlgo or other image processing topic. mackerel 🎣 Medium sized project that somebody should take on to dive deeper into being an OIIO developer.
Projects
None yet
Development

No branches or pull requests

3 participants