OpenEXR, the professional-grade, high-dynamic-range image storage format of the motion picture industry and a project at the Academy Software Foundation, has officially released version 3.1. This new version can be downloaded from https://github.com/AcademySoftwareFoundation/openexr/releases.
OpenEXR v3.1 includes significant new features, including a new library, OpenEXRCore.
This is the result of a significant re-thinking of how OpenEXR manages file I/O and provides access to image data. It begins to address long-standing scalability issues with multithreaded image reading and writing.
The OpenEXRCore library provides thread-safe, non-blocking access to files, which was not possible with the current API, where the framebuffer management is separate from read requests. It is written entirely in C and provides a new C-language API alongside the existing C++ API. This new low-level API allows applications to do custom unpacking of EXR data, such as on the GPU, while still benefiting from efficient I/O, file validation, and other semantics. It provides efficient direct access to EXR files in texturing applications. This C library also introduces an easier path to implementing OpenEXR bindings in other languages, such as Rust.
The OpenEXR v3.1 release represents a technology preview for upcoming releases. The initial release is incremental and the existing API and underlying behavior has not changed. The new API is available now for performance validation testing, and then in future OpenEXR releases, the C++ API will migrate to use the new core in stages. It is not the intention to entirely deprecate the C++ API, nor must all applications re-implement EXR I/O in terms of the C library. The C API does not, and will not, provide the rich set of utility classes that exist in the C++ layer. The 3.1 release of the OpenEXRCore library simply offers new functionality for specialty applications seeking the highest possible performance. In the future, the ABI will evolve, but the API will remain consistent, or only have additions.
See the release notes and the technical documentation for more details.
Also, learn more about OpenEXR on Wednesday, August 4 at 11:50 am PT at the upcoming Open Source Days. Open Source Days is the annual, free event hosted by the Academy Software Foundation where the broader ASWF community shares updates on popular open source projects establishing standards and best practices in visual effects, animation, and image creation.