Openexr

Latest version: v3.3.2

Safety actively analyzes 701475 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 15 of 19

1.9.0

* [1763](https://github.com/AcademySoftwareFoundation/openexr/pull/1763)
Fix duplicate `uninstall` targets
* [1757](https://github.com/AcademySoftwareFoundation/openexr/pull/1757)

1.7.1

This release includes the following components:

* OpenEXR: v1.7.1
* IlmBase: v1.0.3
* PyIlmBase: v1.0.0 (introduces a Boost dependency)
* OpenEXR_Viewers: v1.0.2

Of particular note is the introduction of PyIlmBase. This module forms
a comprehensive set of python bindings to the IlmBase module.

In addition, contained in this release is a number of additions to
Imath as well as a minor tweak to Imath::Frustrum (for better support
for Windows platforms) as well as other minor fixes, including
correction for soname version of IlmImf.

1.7.0

This release includes support for stereoscopic images, please see the
adjoining documentation in the ``MultiViewOpenEXR.pdf``. (Many thanks
to Weta Digital for their contribution.) In addition, we added support
for targeting 64 bit Windows, fixes for buffer overruns and a number
of other minor fixes, additions and optimisations. Please see the
Changelog files for more detailed information.

Bugs

This release addresses the following security vulnerabilities:

* [CVE-2009-1720](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-1720)
* [CVE-2009-1721](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-1721)
* [CVE-2009-1722](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2009-1722)

Detailed Changes:

* Added support for targeting builds on 64bit Windows and minimising
number of compiler warnings on Windows. Thanks to Ger Hobbelt for
his contributions to CreateDLL. (Ji Hun Yu)

* Added new attribute types (Florian Kainz):
* **M33dAttribute** 3x3 double-precision matrix
* **M44dAttribute** 4x4 double-precision matrix
* **V2d** 2D double-precision vector
* **V3d** 3D double-precision vector

* Bug fix: crash when reading a damaged image file (found by Apple).
An exception thrown inside the PIZ Huffman decoder bypasses
initialization of an array of pointers. The uninitialized pointers
are later passed to operator delete. (Florian Kainz)

* Bug fix: crash when reading a damaged image file (found by Apple).
Computing the size of input certain buffers may overflow and wrap
around to a small number, later causing writes beyond the end of the
buffer. (Florian Kainz)

* In the "Technical Introduction" document, added Premultiplied
vs. Un-Premulitiplied Color section: states explicitly that pixels
with zero alpha and non-zero RGB are allowed, points out that
preserving such a pixel can be a problem in application programs
with un-premultiplied internal image representations. (Florian
Kainz)

* exrenvmap improvements:

- New command line flags set the type of the input image to
latitude-longitude map or cube-face map, overriding the envmap
attribute in the input file header.

- Cube-face maps can now be assembled from or split into six
square sub-images.

- Converting a cube-face map into a new cube-face map with the same
face size copies the image instead of resampling it. This avoids
blurring when a cube-face map is assembled from or split into
sub-images. (Florian Kainz)

* Updated standard chromaticities in ImfAcesFile.cpp to match final
ACES (Academy Color Encoding Specification) document. (Florian
Kainz)

* Added worldToCamera and worldToNDC matrices to
ImfStandardAttributes.h (Florian Kainz)

* Increased the maximum length of attribute and channel names from 31
to 255 characters. For files that do contain names longer than 31
characters, a new LONG_NAMES_FLAG in the fil version number is set.
This flag causes older versions of the IlmImf library (1.6.1 and
earlier) to reject files with long names. Without the flag, older
library versions would mis-interpret files with long names as
broken. (Florian Kainz)

* Reading luminance/chroma-encoded files via the RGBA interface is
faster: buffer padding avoids cache thrashing for certain image
sizes, redundant calls to saturation() have been eliminated. (Mike
Wall)

* Added "hemispherical blur" option to exrenvmap. (Florian Kainz)

* Added experimental version of I/O classes for ACES file format
(restricted OpenEXR format with special primaries and white point);
added exr2aces file converter. (Florian Kainz)

* Added new constructors to classes Imf::RgbaInputFile and
Imf::TiledRgbaInputFile. The new constructors have a layerName
parameter, which allows the caller to specify which layer of a
multi-layer or multi-view image will be read. (Florian Kainz)

* A number of member functions in classes Imf::Header,
Imf::ChannelList and Imf::FrameBuffer have parameters of type "const
char *". Added equivalent functions that take "const std::string &"
parameters. (Florian Kainz)

* Added library support for Weta Digital multi-view images:
StringVector attribute type, multiView standard attribute of type
StringVector, utility functions related to grouping channels into
separate views. (Peter Hillman, Florian Kainz)

1.6.1

This release fixes a buffer overrun in OpenEXR and a Windows build
problem in CTL, and it removes a few unnecessary files from the
.tar.gz packages.

Detailed Changes:

* Removed Windows .suo files from distribution. (Eric Wimmer)

* Bug fix: crashes, memory leaks and file descriptor leaks when
reading damaged image files (some reported by Apple, others found by
running IlmImfFuzzTest). (Florian Kainz)

* Added new IlmImfFuzzTest program to test how resilient the IlmImf
library is with respect broken input files: the program first
damages OpenEXR files by partially overwriting them with random
data; then it tries to read the damaged files. If all goes well,
the program doesn't crash. (Florian Kainz)

1.6.0

* Reduced generational loss in B44- and B44A-compressed images.

* Added B44A compression. This is a variation of B44, but with a
better compression ratio for images with large uniform areas, such
as in an alpha channel.

* Bug fixes.

1.5.0

The new version includes several significant changes:

* OpenEXR supports a new image compression method, called B44. It has
a fixed compression rate of 2.28:1, or 4.57:1 if used in combination
with luminance/chroma encoding. B44-compressed images can be
uncompressed fast enough to support real-time playback of image
sequences.

* The new playexr program plays back moving image sequences. Playexr
is multi-threaded and utilizes the threading capabilities of the
IlmImf library that were introduced in OpenEXR 1.3.0. The program
plays back B44-compressed images with fairly high-resolution in real
time on commodity hardware.

* The playexr program and a new version of the existing exrdisplay
image viewer both support color rendering via color transforms
written in the new Color Transformation Language or CTL. CTL is not
part of OpenEXR; it will be released separately. CTL support in
playexr and exrdisplay is optional; the programs can be built and
will run without CTL.

* In preparation for the release of CTL, OpenEXR has been split into
three separate packages:

* IlmBase 0.9.0 includes the Half, Iex, Imath and IlmThread libraries

* OpenEXR 1.5.0 includes the IlmImf library, programming examples and utility programs such as exrheader or exrenvmap

* OpenEXRViewers 0.9.0 includes the playexr and exrdisplay programs

* The "Technical Introduction to OpenEXR" document now includes a
recommendation for storing CIE XYZ pixel data in OpenEXR files.

* A new "OpenEXR Image Viewing Software" document describes the
playexr and exrdisplay programs. It briefly explains real-time
playback and color rendering, and includes recommendations for
testing if other image viewing software displays OpenEXR images
correctly.

* The OpenEXR sample image set now includes B44-compressed files and
files with CIE XYZ pixel data.

Detailed Changes:

* reorganized packaging of OpenEXR libraries to facilitate integration
with CTL. Now this library depends on the library IlmBase. Some
functionality has been moved into OpenEXR_Viewers, which depends on
two other libraries, CTL and OpenEXR_CTL. Note: previously there
were separate releases of OpenEXR-related plugins for Renderman,
Shake and Photoshop. OpenEXR is supported natively by Rendermand
and Photoshop, so these plugins will not be supported for this or
future versions of OpenEXR. (Andrew Kunz)

* New build scripts for Linux/Unix (Andrew Kunz)

* New Windows project files and build scripts (Kimball Thurston)

* float-to-half conversion now preserves the sign of float zeroes and
of floats that are so small that they become half zeroes. (Florian
Kainz)

* Bug fix: Imath::Frustum<T>::planes() returns incorrect planes if the
frustum is orthogonal. (Philip Hubbard)

* added new framesPerSecond optional standard attribute (Florian
Kainz)

* Imath cleanup:

- Rewrote function Imath::Quat<T>::setRotation() to make it
numerically more accurate, added confidence tests

- Rewrote function Imath::Quat<T>::slerp() using Don Hatch's method,
which is numerically more accurate, added confidence tests.

- Rewrote functions Imath::closestPoints(), Imath::intersect(),
added confidence tests.

- Removed broken function Imath::nearestPointOnTriangle().

- Rewrote Imath::drand48(), Imath::lrand48(), etc. to make them
functionally identical with the Unix/Linux versions of drand48(),
lrand48() and friends.

- Replaced redundant definitions of Int64 in Imath and IlmImf with a
single definition in ImathInt64.h. (Florian Kainz)

* exrdisplay: if the file's and the display's RGB chromaticities
differ, the pixels RGB values are transformed from the file's to the
display's RGB space. (Florian Kainz)

* Added new lossy B44 compression method. HALF channels are
compressed with a fixed ratio of 2.28:1. UINT and FLOAT channels
are stored verbatim, without compression. (Florian Kainz)

Page 15 of 19

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.