TSC Meeting Notes 2023-05-04

Attendance:

Cary Phillips
Christina Tempelaar-Leitz
John Mertic
Joseph Goldstone
Kimball Thurston
Larry Gritz
Nick Porcino
Peter Hillman
Rod Bogart

Guests:

  • Mark Leone (NVIDIA)

Discussion:

  • New libdeflate compression:

    • Kimball: Deflate change starts the beginning of the dependency of the OpenEXR C++ library on the Core, so not for 3.1

    • Mark: this sets us up to introduce gdeflate, the GPU-based decoder

    • Kimball: It needs to be a different compression type.

    • Mark: There is an Open Source CPU implementation, both compressor and decompressor. But the GPU version is closed source.

    • Kimball: you can specify to use the system one, 

    • Mark: Same for gdeflate https://github.com/NVIDIA/libdeflate

    • Cary: if a pkg manager does not ingest the library, it will be a dependency.

    • Kimball: but it would be built with the dependency, so it should all be fine.

    • Mark: You’d like to use DMA 

    • Larry: People ship software that runs on CPU or GPU, so both implementations have to be available. 

  • Nick: I’m working on a project that involves a lot of namespacing issues.

  • Nick: Did you add DWAA/DWAB to Core?

    • Kimball: Not done yet. I realize why I didn’t push it. It could be way more efficient. A rabbit hole. I’ve redone the port.

    • Larry: As soon as the DWA port is done, I’d like a 3.1 release.

    • Nick: openexr.h file, but we stage the config file in a different area than everything else. I put the version into Core so that it wouldn’t have to include the giant config.

    • Kimball: there is such a thing as multithreaded tile writing, but it requires random tile order.

  • Cary: What else for 3.2/4.0?

    • Kimball: I was going to start swapping out compression routines, and utility code. So there’s one implementation.

    • Kimball: I’ve discovered a lot about symbol versioning in the last year. Comes with pain.

    • OpenAssetIO people were asking questions about how dynamic loading works, I wrote it all down.

  • Joseph: MacPorts, what broke the logjam was updating the documentation to state we’re advising that we recommend homebrew over macports

  • Attribute definitions:

    • Joseph: Did you connect with Florian about what xdensity means?

    • Nick: I’m meeting with him tomorrow.

    • Joseph: Also want to know what screenWindow is for. 

    • Joseph: There’s the question of how far we carry this stuff?

    • Larry: We’ve added a lot of metadata names, with namespaces

    • Joseph: through the code that I wrote, the unqualified names have been written to exr files for years.

    • Nick: could do what Khronos does, KVR_*

    • Larry: OIIO is used to convert from one file format to another. Going to exr is easy, we support arbitrary metadata. If you’re reading a file format that supports exif data, that gets converted.  If I’m reading a file that has exif data, do I convert the name in and out?