TSC Meeting Notes 2024-07-11
Attendance:
Community:
Discussion:
Li: showed Benchmark Exercises presentation. Don’t need to edit any code so students can run benchmark exercises. Possibly could show this during OpenSource days?
Color spaces discussion
Li: another question. To summarize, trying to transform a color XYZ into sRGB, by definition has 2 steps - chromaticity and gamma. Needs more information on the steps. Joseph: when going from XYZ to sRGB primaries and whitepoint (same as rec709) depending on source white, are you going to do chromatic adaptation or not? If so, which tab (?) are you using. If not doing chromatic adaptation, it’s straightforward as long as you say you’re not going to do it.
Nick: everyone uses D65 whitepoint except ACES. So by definition you have to do adaptation for ACES.
Joseph: ICC profiles have D50 whitepoint.
Peter: related article, flowgraph at bottom https://openexr.com/en/latest/SceneLinear.html
Peter: exrmetrics tool: https://github.com/AcademySoftwareFoundation/openexr/pull/1769
Peter: useful to explain why we don’t support ICC profiles
Li shared LOC page on OpenEXR: https://www.loc.gov/preservation/digital/formats//fdd/fdd000583.shtml
Joseph: provisions in the ICC for dealing with scene referred geometry but they are shoehorned in.
Nick: impossible to support ICC spec because of things it grandfathers in.
Joseph: tessera processor used for many LED walls : https://www.bromptontech.com/wp-content/uploads/2022/11/Tessera-User-Manual-V3.4-Rev-B.pdf Terms are almost diametrically opposite from what we use. Trying to bring color management to device which increasingly more features to automatically modify color - every release, have to figure out more things to turn off.
Nick: similar to OpenPBR debate about Schlick model. All math baked into sRGB, pull on that thread, look through MaterialX some nodes (2) have implicit assumptions about it being sRGB. E.g. Blackbody node is hardcoded to sRGB.
Nick: Pixar does not use ACES. Lack of precision in saturated colors does not work well for their animated features.Use rec2020, gets us to a fairly good place, not a bad approximation if you are only concerned about perceptual. Getting to using spectral is a goal but considerable work to do.
Nick: ACESCg is not that much different than Rec2020, but the nonspectral primaries, and the oddball whitepoint don't work well for us
Joseph: Interesting work from ~25 years ago, that inspired me at ILM: https://www.google.com/books/edition/Acquisition_and_Reproduction_of_Color_Im/e2umTIdI2u4C?hl=en Argues that six-element spectral bases are enough for more real-world objects and illuminants
USD 24.08
Nick: shipped USD 24.08 which OpenEXR core updated with all bug fixes since last release, patched in 1-2 small fixes Kimball had on his branch.
Cary’s python binding PR
Li: doing code review. Any merit to have python binding direct to the core API so option to have a smaller library with python bindings.
Nick: if mitigated needing to have Imath DLL floating around… not an issue as it’s statically embedded. Is motivation just a smaller package?
Peter: C++ moving to being built on the core so presumably not that much more code.
Nick: if there was a wrapping on core library written in C, it would make bindings to other languages much easier.
Peter: that’s part of the point of the core.
Nick: if we built on top of such a shim instead of the C++, then everyone could use the same C shim on the core.
Peter: could have a prototype of what to do.
Nick: would be useful as part of a demonstration suite, similar to nano demo.