#! | 657 lines | 629 code | 28 blank | 0 comment | 0 complexity | f6a0d226648b001e878a2995bf3110d9 MD5 | raw file
1 * Added new atttribute types: 2 M33dAttribute 3x3 double-precision matrix 3 M44dAttribute 4x4 double-precision matrix 4 V2d 2D double-precision vector 5 V3d 3D double-precision vector 6 (Florian Kainz) 7 * Bug fix: crash when reading a damaged image file (found 8 by Apple). An exception thrown inside the PIZ Huffman 9 decoder bypasses initialization of an array of pointers. 10 The uninitialized pointers are later passed to operator 11 delete. 12 (Florian Kainz) 13 * Bug fix: crash when reading a damaged image file (found by 14 Apple). Computing the size of input certain buffers may 15 overflow and wrap around to a small number, later causing 16 writes beyond the end of the buffer. 17 (Florian Kainz) 18 * In the "Technical Introduction" document, added 19 Premultiplied vs. Un-Premulitiplied Color section: 20 states explicitly that pixels with zero alpha and non-zero 21 RGB are allowed, points out that preserving such a pixel can 22 be a problem in application programs with un-premultiplied 23 internal image representations. 24 (Florian Kainz) 25 * exrenvmap improvements: 26 - New command line flags set the type of the input image to 27 latitude-longitude map or cube-face map, overriding the 28 envmap attribute in the input file header. 29 - Cube-face maps can now be assembled from or split into six 30 square sub-images. 31 - Converting a cube-face map into a new cube-face map with 32 the same face size copies the image instead of resampling 33 it. This avoids blurring when a cube-face map is assembled 34 from or split into sub-images. 35 (Florian Kainz) 36 * Updated standard chromaticities in ImfAcesFile.cpp to match 37 final ACES (Academy Color Encoding Specification) document. 38 (Florian Kainz) 39 * Added worldToCamera and worldToNDC matrices to 40 ImfStandardAttributes.h (Florian Kainz) 41 * Increased the maximum length of attribute and channel names 42 from 31 to 255 characters. For files that do contain names 43 longer than 31 characters, a new LONG_NAMES_FLAG in the fil 44 version number is set. This flag causes older versions of 45 the IlmImf library (1.6.1 and earlier) to reject files with 46 long names. Without the flag, older library versions would 47 mis-interpret files with long names as broken. 48 (Florian Kainz) 49 * Reading luminance/chroma-encoded files via the RGBA 50 interface is faster: buffer padding avoids cache thrashing 51 for certain image sizes, redundant calls to saturation() 52 have been eliminated. 53 (Mike Wall) 54 * Added "hemispherical blur" option to exrenvmap. 55 (Florian Kainz) 56 * Added experimental version of I/O classes for ACES file 57 format (restricted OpenEXR format with special primaries 58 and white point); added exr2aces file converter. 59 (Florian Kainz) 60 * Added new constructors to classes Imf::RgbaInputFile and 61 Imf::TiledRgbaInputFile. The new constructors have a 62 layerName parameter, which allows the caller to specify 63 which layer of a multi-layer or multi-view image will 64 be read. 65 (Florian Kainz) 66 * A number of member functions in classes Imf::Header, 67 Imf::ChannelList and Imf::FrameBuffer have parameters 68 of type "const char *". Added equivalent functions that 69 take "const std::string &" parameters. 70 (Florian Kainz) 71 * Added library support for Weta Digital multi-view images: 72 StringVector attribute type, multiView standard attribute 73 of type StringVector, utility functions related to grouping 74 channels into separate views. 75 (Peter Hillman, Florian Kainz) 76 77Version 1.6.1: 78 * Removed Windows .suo files from distribution. 79 (Eric Wimmer) 80 * Bug fix: crashes, memory leaks and file descriptor leaks 81 when reading damaged image files (some reported by Apple, 82 others found by running IlmImfFuzzTest). 83 (Florian Kainz) 84 * Added new IlmImfFuzzTest program to test how resilient the 85 IlmImf library is with respect broken input files: the program 86 first damages OpenEXR files by partially overwriting them with 87 random data; then it tries to read the damaged files. If all 88 goes well, the program doesn't crash. 89 (Florian Kainz) 90 91Version 1.6.0: 92 * Bumped DSO version number to 6.0 93 (Florian Kainz) 94 * Added new standard attributes related to color rendering with 95 CTL (Color Transformation Language): renderingTransform, 96 lookModTransform and adoptedNeutral. 97 (Florian Kainz) 98 * Bug fix: for pixels with luminance near HALF_MIN, conversion 99 from RGB to luminance/chroma produces NaNs and infinities 100 (Florian Kainz) 101 * Bug fix: excessive desaturation of small details with certain 102 colors after repeatedly loading and saving luminance/chroma 103 encoded images with B44 compression. 104 (Florian Kainz) 105 * Added B44A compression, a minor variation of B44: in most cases, 106 the compression ratio is 2.28:1, the same as with B44, but in 107 uniform image areas where all pixels have the same value, the 108 compression ratio increases to 10.66:1. Uniform areas occur, for 109 example, in an image's alpha channel, which typically contains 110 large patches that are solid black or white, or in computer- 111 generated images with a black background. 112 (Florian Kainz) 113 * Added flag to configure.ac to enable or disable use of large 114 auto arrays in the IlmImf library. Default is "enable" for 115 Linux, "disable" for everything else. 116 (Darby Johnston, Florian Kainz) 117 * corrected version number on dso's (libtool) - now 5.0 118 * Separated ILMBASE_LDFLAGS and ILMBASE_LIBS so that test programs 119 can link with static libraries properly 120 * eliminated some warning messages during install 121 (Andrew Kunz) 122 123Version 1.5.0: 124 * reorganized packaging of OpenEXR libraries to facilitate 125 integration with CTL. Now this library depends on the library 126 IlmBase. Some functionality has been moved into OpenEXR_Viewers, 127 which depends on two other libraries, CTL and OpenEXR_CTL. 128 Note: previously there were separate releases of 129 OpenEXR-related plugins for Renderman, Shake and Photoshop. 130 OpenEXR is supported natively by Rendermand and Photoshop, so 131 these plugins will not be supported for this or future 132 versions of OpenEXR. 133 (Andrew Kunz) 134 * New build scripts for Linux/Unix 135 (Andrew Kunz) 136 * New Windows project files and build scripts 137 (Kimball Thurston) 138 * float-to-half conversion now preserves the sign of float zeroes 139 and of floats that are so small that they become half zeroes. 140 (Florian Kainz) 141 * Bug fix: Imath::Frustum<T>::planes() returns incorrect planes 142 if the frustum is orthogonal. 143 (Philip Hubbard) 144 * added new framesPerSecond optional standard attribute 145 (Florian Kainz) 146 * Imath cleanup: 147 - Rewrote function Imath::Quat<T>::setRotation() to make it 148 numerically more accurate, added confidence tests 149 - Rewrote function Imath::Quat<T>::slerp() using Don Hatch's 150 method, which is numerically more accurate, added confidence 151 tests. 152 - Rewrote functions Imath::closestPoints(), Imath::intersect(), 153 added confidence tests. 154 - Removed broken function Imath::nearestPointOnTriangle(). 155 - Rewrote Imath::drand48(), Imath::lrand48(), etc. to make 156 them functionally identical with the Unix/Linux versions 157 of drand48(), lrand48() and friends. 158 - Replaced redundant definitions of Int64 in Imath and IlmImf 159 with a single definition in ImathInt64.h. 160 (Florian Kainz) 161 * exrdisplay: if the file's and the display's RGB chromaticities 162 differ, the pixels RGB values are transformed from the file's 163 to the display's RGB space. 164 (Florian Kainz) 165 * Added new lossy B44 compression method. HALF channels are 166 compressed with a fixed ratio of 2.28:1. UINT and FLOAT 167 channels are stored verbatim, without compression. 168 (Florian Kainz) 169 170Version 1.4.0a: 171 * Fixed the ReleaseDLL targets for Visual Studio 2003. 172 (Barnaby Robson) 173 174Version 1.4.0: 175 * Production release. 176 * Bug Fix: calling setFrameBuffer() for every scan line 177 while reading a tiled file through the scan line API 178 returns bad pixel data. (Paul Schneider, Florian Kainz) 179 180Version 1.3.1: 181 * Fixed the ReleaseDLL targets for Visual Studio 2005. 182 (Nick Porcino, Drew Hess) 183 * Fixes/enhancements for createDLL. 184 (Nick Porcino) 185 186Version 1.3.0: 187 * Removed openexr.spec file, it's out of date and broken to 188 boot. 189 (Drew Hess) 190 * Support for Visual Studio 2005. 191 (Drew Hess, Nick Porcino) 192 * When compiling against OpenEXR headers on Windows, you 193 no longer need to define any HAVE_* or PLATFORM_* 194 macros in your projects. If you are using any OpenEXR 195 DLLs, however, you must define OPENEXR_DLL in your 196 project's preprocessor directives. 197 (Drew Hess) 198 * Many fixes to the Windows VC7 build system. 199 (Drew Hess, Nick Porcino) 200 * Support for building universal binaries on OS X 10.4. 201 (Drew Hess, Paul Schneider) 202 * Minor configure.ac fix to accomodate OS X's automake. 203 (Drew Hess) 204 * Removed CPU-specific optimizations from configure.ac, 205 autoconf's guess at the CPU type isn't very useful, 206 anyway. Closes #13429. 207 (Drew Hess) 208 * Fixed quoting for tests in configure.ac. Closes #13428. 209 (Drew Hess) 210 * Use host specification instead of target in configure.ac. 211 Closes #13427. 212 (Drew Hess) 213 * Fix use of AC_ARG_ENABLE in configure.ac. Closes 214 #13426. 215 (Drew Hess) 216 * Removed workaround for OS X istream::read bug. 217 (Drew Hess) 218 * Added pthread support to OpenEXR pkg-config file. 219 (Drew Hess) 220 * Added -no-undefined to LDFLAGS and required libs to LIBADD 221 for library projects with other library dependencies, per 222 Rex Dieter's patch. 223 (Drew Hess) 224 * HAVE_* macros are now defined in the OpenEXRConfig.h header 225 file instead of via compiler flags. There are a handful of 226 public headers which rely on the value of these macros, 227 and projects including these headers have previously needed 228 to define the same macros and values as used by OpenEXR's 229 'configure', which is bad form. Now 'configure' writes these 230 values to the OpenEXRConfig.h header file, which is included 231 by any OpenEXR source files that need these macros. This 232 method of specifying HAVE_* macros guarantees that projects 233 will get the proper settings without needing to add compile- 234 time flags to accomodate OpenEXR. Note that this isn't 235 implemented properly for Windows yet. 236 (Drew Hess) 237 * Platform cleanups: 238 - No more support for IRIX or OSF1. 239 - No more explicit support for SunOS, because we have no way to 240 verify that it's working. I suspect that newish versions of 241 SunOS will just work out of the box, but let me know if not. 242 - No more PLATFORM_* macros (vestiges of the ILM internal build 243 system). PLATFORM_DARWIN_PPC is replaced by HAVE_DARWIN. 244 PLATFORM_REDHAT_IA32 (which was only used in IlmImfTest) is 245 replaced by HAVE_LINUX_PROCFS. 246 - OS X 10.4, which is the minimum version we're going to support 247 with this version, appears to have support for nrand48 and friends, 248 so no need to use the Imath-supplied version of them anymore. 249 (Drew Hess) 250 * No more PLATFORM_WINDOWS or PLATFORM_WIN32, replace with 251 proper standard Windows macros. (Drew Hess) 252 * Remove support for gcc 2.95, no longer supported. (Drew Hess) 253 * Eliminate HAVE_IOS_BASE macro, OpenEXR now requires support for 254 ios_base. (Drew Hess) 255 * Eliminate HAVE_STL_LIMITS macro, OpenEXR now requires the ISO C++ 256 <limits> header. (Drew Hess) 257 * Use double quote-style include dirctives for OpenEXR 258 includes. (Drew Hess) 259 * Added a document that gives an overview of the on-disk 260 layout of OpenEXR files (Florian Kainz) 261 * Added sections on layers and on memory-mapped file input 262 to the documentation. (Florian Kainz) 263 * Bug fix: reading an incomplete file causes a deadlock while 264 waiting on a semaphore. (Florian Kainz) 265 * Updated documentation (ReadingAndWritingImageFiles.sxw) and 266 sample code (IlmImfExamples): 267 Added a section about multi-threading, updated section on 268 thread-safety, changed documentation and sample code to use 269 readTiles()/writeTiles() instead of readTile()/writeTile() 270 where possible, mentioned that environment maps contain 271 redundant pixels, updated section on testing if a file is 272 an OpenEXR file. 273 (Florian Kainz) 274 * Multi-threading bug fixes (exceptions could be thrown 275 multiple times, some operations were not thread safe), 276 updated some comments, added comments, more multithreaded 277 testing. 278 (Florian Kainz) 279 * Added multi-threading support: multiple threads 280 cooperate to read or write a single OpenEXR file. 281 (Wojciech Jarosz) 282 * Added operator== and operator!= to Imath::Frustum. 283 (Andre Mazzone) 284 * Bug fix: Reading a PIZ-compressed file with an invalid 285 Huffman code table caused crashes by indexing off the 286 end of an array. 287 (Florian Kainz) 288 289Version 1.2.2: 290 * Updated README to remove option for building with Visual C++ 6.0. 291 (Drew Hess) 292 * Some older versions of gcc don't support a full iomanip 293 implemenation; check for this during configuration. 294 (Drew Hess) 295 * Install PDF versions of documentation, remove old/out-of-date 296 HTML documentation. (Florian Kainz) 297 * Removed vc/vc6 directory; Visual C++ 6.0 is no longer 298 supported. (Drew Hess) 299 * Updated README.win32 with details of new build system. 300 (Florian Kainz, Drew Hess) 301 * New build system for Windows / Visual C++ 7 builds both 302 static libraries and DLLs. 303 (Nick Porcino) 304 * Removed Imath::TMatrix<T> and related classes, which are not 305 used anywhere in OpenEXR. 306 (Florian Kainz) 307 * Added minimal support for "image layers" to class Imf::ChannelList 308 (Florian Kainz) 309 * Added new isComplete() method to InputFile, TiledInputFile 310 etc., that checks if a file is complete or if any pixels 311 are missing (for example, because writing the file was 312 aborted prematurely). 313 (Florian Kainz) 314 * Exposed staticInitialize() function in ImfHeader.h in order 315 to allow thread-safe library initialization in multithreaded 316 programs. 317 (Florian Kainz) 318 * Added a new "time code" attribute 319 (Florian Kainz) 320 * exrmaketiled: when a MIPMAP_LEVELS or RIPMAP_LEVELS image 321 is produced, low-pass filtering takes samples outside the 322 image's data window. This requires extrapolating the image. 323 The user can now specify how the image is extrapolated 324 horizontally and vertically (image is surrounded by black / 325 outermost row of pixels repeats / entire image repeats / 326 entire image repeats, every other copy is a mirror image). 327 exrdisplay: added option to swap the top and botton half, 328 and the left and right half of an image, so that the image's 329 four corners end up in the center. This is useful for checking 330 the seams of wrap-around texture map images. 331 IlmImf library: Added new "wrapmodes" standard attribute 332 to indicate the extrapolation mode for MIPMAP_LEVELS and 333 RIPMAP_LEVELS images. 334 (Florian Kainz) 335 * Added a new "key code" attribute to identify motion picture 336 film frames. 337 (Florian Kainz) 338 * Removed #include <Iex.h> from ImfAttribute.h, ImfHeader.h 339 and ImfXdr.h so that including header files such as 340 ImfInputFile.h no longer defines ASSERT and THROW macros, 341 which may conflict with similar macros defined by 342 application programs. 343 (Florian Kainz) 344 * Converted HTML documentation to OpenOffice format to 345 make maintaining the documents easier: 346 api.html -> ReadingAndWritingImageFiles.sxw 347 details.html -> TechnicalIntroduction.sxw 348 (Florian Kainz) 349 350Version 1.2.1: 351 * exrenvmap and exrmaketiled use slightly less memory 352 (Florian Kainz) 353 * Added functions to IlmImf for quickly testing if a file 354 is an OpenEXR file, and whether the file is scan-line 355 based or tiled. (Florian Kainz) 356 * Added preview image examples to IlmImfExamples. Added 357 description of preview images and environment maps to 358 docs/api.html (Florian Kainz) 359 * Bug fix: PXR24 compression did not work properly for channels 360 with ySampling != 1. 361 (Florian Kainz) 362 * Made template <class T> become template <class S, class T> for 363 the transform(ObjectS, ObjectT) methods. This was done to allow 364 for differing templated objects to be passed in e.g. say a 365 Box<Vec3<S>> and a Matrix44<T>, where S=float and T=double. 366 (Jeff Yost, Arkell Rasiah) 367 * New method Matrix44::setTheMatrix(). Used for assigning a 368 M44f to a M44d. (Jeff Yost, Arkell Rasiah) 369 * Added convenience Color typedefs for half versions of Color3 370 and Color4. Note the Makefile.am for both Imath and ImathTest 371 have been updated with -I and/or -L pathing to Half. 372 (Max Chen, Arkell Rasiah) 373 * Methods equalWithAbsError() and equalWithRelError() are now 374 declared as const. (Colette Mullenhoff, Arkell Rasiah) 375 * Fixes for gcc34. Mainly typename/template/using/this syntax 376 correctness changes. (Nick Ramussen, Arkell Rasiah) 377 * Added Custom low-level file I/O examples to IlmImfExamples 378 and to the docs/api.html document. (Florian Kainz) 379 * Eliminated most warnings messages when OpenEXR is compiled 380 with Visual C++. The OpenEXR code uses lots of (intentional 381 and unintended) implicit type conversions. By default, Visual 382 C++ warns about almost all of them. Most implicit conversions 383 have been removed from the .h files, so that including them 384 should not generate warnings even at warning level 3. Most 385 .cpp files are now compiled with warning level 1. 386 (Florian Kainz) 387 388Version 1.2.0: 389 * Production-ready release. 390 * Disable long double warnings on OS X. (Drew Hess) 391 * Add new source files to VC7 IlmImfDll target. (Drew Hess) 392 * Iex: change the way that APPEND_EXC and REPLACE_EXC modify 393 their what() string to work around an issue with Visual C++ 394 7.1. (Florian Kainz, Nick Porcino) 395 * Bumped OpenEXR version to 1.2 and .so versions to 2.0.0 in 396 preparation for the release. (Drew Hess) 397 * Imath: fixed ImathTMatrix.h to work with gcc 3.4. (Drew Hess) 398 * Another quoting fix in openexr.m4. (Drew Hess) 399 * Quoting fix in acinclude.m4 for automake 1.8. (Brad Hards) 400 * Imath: put inline at beginning of declaration in ImathMatrix.h 401 to fix a warning. (Ken McGaugh) 402 * Imath: made Vec equalWith*Error () methods const. 403 * Cleaned up compile-time Win32 support. (Florian Kainz) 404 * Bug fix: Reading a particular broken PIZ-compressed file 405 caused crashes by indexing off the end of an array. 406 (Florian Kainz) 407 408Version 1.1.1: 409 * Half: operator= and variants now return by reference rather 410 than by value. This brings half into conformance with 411 built-in types. (Drew Hess) 412 * Half: remove copy constructor, let compiler supply its 413 own. This improves performance up to 25% on some 414 expressions using half. (Drew Hess) 415 * configure: don't try to be fancy with CXXFLAGS, just use 416 what the user supplies or let configure choose a sensible 417 default if CXXFLAGS is not defined. 418 * IlmImf: fixed a bug in reading scanline files on big-endian 419 architectures. (Drew Hess) 420 * exrmaketiled: Added an option to select compression type. 421 (Florian Kainz) 422 * exrenvmap: Added an option to select compression type. 423 (Florian Kainz) 424 * exrdisplay: Added some new command-line options. (Florian Kainz) 425 * IlmImf: Added Pixar's new "slightly lossy" image compression 426 method. The new method, named PXR24, preserves HALF and 427 UINT data without loss, but FLOAT pixels are converted to 428 a 24-bit representation. PXR24 appears to compress 429 FLOAT depth buffers very well without losing much accuracy. 430 (Loren Carpenter, Florian Kainz) 431 * Changed top-level LICENSE file to allow for other copyright 432 holders for individual files. 433 * IlmImf: TILED FILE FORMAT CHANGE. TiledOutputFile was 434 incorrectly interleaving channels and scanlines before 435 passing pixel data to a compressor. The lossless compressors 436 still work, but lossy compressors do not. Fix the bug by 437 interleaving channels and scanlines in tiled files in the 438 same way as ScanLineOutputFile does. Programs compiled with 439 the new version of IlmImf cannot read tiled images produced 440 with version 1.1.0. (Florian Kainz) 441 * IlmImf: ImfXdr.h fix for 64-bit architectures. (Florian Kainz) 442 * IlmImf: OpenEXR now supports YCA (luminance/chroma/alpha) 443 images with subsampled chroma channels. When an image 444 is written with the RGBA convenience interface, selecting 445 WRITE_YCA instead of WRITE_RGBA causes the library to 446 convert the pixels to YCA format. If WRITE_Y is selected, 447 only luminance is stored in the file (for black and white 448 images). When an image file is read with the RGBA convenience 449 interface, YCA data are automatically converted back to RGBA. 450 (Florian Kainz) 451 * IlmImf: speed up reading tiled files as scan lines. 452 (Florian Kainz) 453 * Half: Fixed subtle bug in Half where signaling float NaNs 454 were being converted to inf in half. (Florian Kainz) 455 * gcc 3.3 compiler warning cleanups. (various) 456 * Imath: ImathEuler.h fixes for gcc 3.4. (Garrick Meeker) 457 458Version 1.1.0: 459 * Added new targets to Visual C++ .NET 2003 project 460 for exrmaketiled, exrenvmap, exrmakepreview, and exrstdattr. 461 (Drew Hess) 462 * A few assorted Win32 fixes for Imath. (Drew Hess) 463 * GNU autoconf builds now produce versioned libraries. 464 This release is 1:0:0. (Drew Hess) 465 * Fixes for Visual C++ .NET 2003. (Paul Schneider) 466 * Updated Visual C++ zlib project file to zlib 1.2.1. 467 (Drew Hess) 468 * exrdisplay: Fixed fragment shader version. (Drew Hess) 469 * *Test: Fixed some compiler issues. (Drew Hess) 470 * Imath: Handle "restrict" keyword properly. (Drew Hess) 471 * IlmImfExamples: Updated to latest versions of example 472 source code, includes tiling and multi-res images. 473 (Florian Kainz) 474 * exrmakepreview: A new utility to create preview images. 475 (Florian Kainz) 476 * exrenvmap: A new utility to create OpenEXR environment 477 maps. (Florian Kainz) 478 * exrstdattr: A new utility to modify standard 479 attributes. (Florian Kainz) 480 * Updated exrheader to print level rounding mode and 481 preview image size. (Florian Kainz) 482 * Updated exrmaketiled to use level rounding mode. 483 (Florian Kainz) 484 * IlmImf: Changed the orientation of lat-long envmaps to 485 match typical panoramic camera setups. (Florian Kainz) 486 * IlmImf: Fixed a bug where partially-completed files with 487 DECREASING_Y could not be read. (Florian Kainz) 488 * IlmImf: Added support for selectable rounding mode (up/down) 489 when generating multiresolution files. (Florian Kainz) 490 * exrdisplay: Support for tiled images, mip/ripmaps, preview 491 images, and display windows. (Florian Kainz, Drew Hess) 492 * exrmaketiled: A new utility which generates tiled 493 versions of OpenEXR images. (Florian Kainz) 494 * IlmImf: Changed Imf::VERSION to Imf::EXR_VERSION to 495 work around problems with autoconf VERSION macro 496 conflict. (Drew Hess) 497 * exrheader: Support for tiles, mipmaps, environment 498 maps. (Florian Kainz) 499 * IlmImf: Environment map support. (Florian Kainz) 500 * IlmImf: Abstracted stream I/O support. (Florian Kainz) 501 * IlmImf: Support for tiled and mip/ripmapped files; 502 requires new file format. (Wojciech Jarosz, Florian Kainz) 503 * Imath: TMatrix*, generic 2D matricies and algorithms. 504 (Francesco Callari) 505 * Imath: major quaternions cleanup. (Cary Phillips) 506 * Imath: added GLBegin, GLPushAttrib, GLPushMatrix objects 507 for automatic cleanup on exceptions. (Cary Phillips) 508 * Imath: removed implicit scalar->vector promotions and vector 509 comparisons. (Nick Rasmussen) 510 511Version 1.0.7: 512 * Fixed a typo in one of the IlmImfTest tests. (Paul Schneider) 513 * Fixed a bug in exrdisplay that causes the image to display 514 as all black if there's a NaN or infinity in an OpenEXR 515 image. (Florian Kainz) 516 * Updated exrheader per recent changes to IlmImf library. 517 (Florian Kainz) 518 * Changed an errant float to a T in ImathFrame.h nextFrame(). 519 (Cary Phillips) 520 * Support for new "optional standard" attributes 521 (chromaticities, luminance, comments, etc.). 522 (Florian Kainz, Greg Ward, Joseph Goldstone) 523 * Fixed a buffer overrun in ImfOpaqueAttribute. (Paul Schneider) 524 * Added new function, isImfMagic (). (Florian Kainz) 525 526Version 1.0.6: 527 * Added README.win32 to disted files. 528 * Fixed OpenEXR.pc.in pkg-config file, OpenEXR now works 529 with pkg-config. 530 * Random fixes to readme files for new release. 531 * Fixed openexr.m4, now looks in /usr by default. 532 * Added Visual Studio .NET 2003 "solution." 533 * Fixes for Visual Studio .NET 2003 w/ Microsoft C++ compiler. 534 (Various) 535 * Random Imath fixes and enhancements. Note that 536 extractSHRT now takes an additional optional 537 argument, see ImathMatrixAlgo.h for details. (Various) 538 * Added Wojciech Jarosz to AUTHORS file. 539 * Added test cases for uncompressed case, preview images, 540 frame buffer type conversion. (Wojciech Jarosz, 541 Florian Kainz) 542 * Fix a bug in IlmImf where uncompressed data doesn't get 543 read/written correctly. (Wojciech Jarosz) 544 * Added support for preview images and preview image 545 attributes (thumbnail images) in IlmImf. (Florian Kainz) 546 * Added support for automatic frame buffer type conversion 547 in IlmImf. (Florian Kainz) 548 * Cleaned up some compile-time checks. 549 * Added HalfTest unit tests. 550 * [exrdisplay] Download half framebuffer to texture memory 551 instead of converting to float first. Requires latest 552 Nvidia drivers. 553 554Version 1.0.5: 555 * Fixed IlmImf.dll to use static runtime libs (Andreas). 556 * Added exrheader project to Visual Studio 6.0 workspace. 557 * Added some example code showing how to use the IlmImf library. 558 (Florian) 559 * Use DLL runtime libs for Win32 libraries rather than static 560 runtime libs. 561 * Add an exrdisplay_fragshader project to the Visual Studio 6.0 562 workspace to enable fragment shaders in Win32. 563 * Add an IlmImfDll project to the Visual Studio 6.0 workspace. 564 * In Win32, export the ImfCRgbaFile C interface via a DLL so 565 that Visual C++ 6.0 users can link against an Intel-compiled 566 IlmImf. (Andreas Kahler) 567 * Use auto_ptr in ImfAutoArray on Win32, it doesn't like large 568 automatic stacks. 569 * Performance improvements in PIZ decoding, between 570 20 and 60% speedup on Athlon and Pentium 4 systems. 571 (Florian) 572 * Updated the README with various information, made 573 some cosmetic changes for readability. 574 * Added fragment shader support to exrdisplay. 575 * Bumped the version to 1.0.5 in prep for release. 576 * Updated README and README.OSX to talk about CodeWarrior 577 project files. 578 * Incorporated Rodrigo Damazio's patch for an openexr.m4 579 macro file and an openexr.spec file for building RPMs. 580 * Small change in ImfAttribute.h to make IlmImf compile with gcc 2.95. 581 * Updated ImfDoubleAttribute.h for Codewarrior on MacOS. 582 * Added exrheader utility. 583 * Update to AUTHORS file. 584 * Added a README.win32 file. 585 * Added project files for Visual Studio 6.0. 586 * Initial Win32 port. Requires Visual Studio 6.0 and Intel C++ 587 compiler version 7.0. 588 * Added new intersectT method in ImathSphere.h 589 * Fixed some bugs in ImathQuat.h 590 * Proper use of fltk-config to get platform-specific FLTK 591 compile- and link-time flags. 592 * exrdisplay uses Imath::Math<T>::pow instead of powf now. 593 powf is not availble on all platforms. 594 * Roll OS X "hack" into the source until Apple fixes their 595 istream implementation. 596 597Version 1.0.4: 598 * OpenEXR is now covered by a modified BSD license. See LICENSE 599 for the new terms. 600 601Version 1.0.3: 602 603 * OpenEXR is now in sf.net CVS. 604 * Imf::Xdr namespace cleanups. 605 * Some IlmImfTest cleanups for OS X. 606 * Use .cpp extension in exrdisplay sources. 607 * Iex cleanups. 608 * Make IlmImf compile with Metrowerks Codewarrior. 609 * Change large automatic stacks in ImfHuf.C to auto_ptrs allocated 610 off the heap. MacOS X default stack size isn't large enough. 611 * std::ios fix for MacOS X in ImfInputFile.C. 612 * Added new FP predecessor/successor functions to Imath, added 613 tests to ImathTest 614 * Fixed a bug in Imath::extractSHRT for 3x3 matricies when 615 exactly one of the original scaling factors is negative, updated 616 ImathTest to check this case. 617 * Install include files when 'make install' is run. 618 * exrdisplay requires fltk 1.1+ now in an effort to support 619 a MacOS X display program (fltk 1.1 runs on OS X), though this 620 is untested. 621 * renamed configure.in to configure.ac 622 * Removed some tests from IexTest that are no longer used. 623 * Removed ImfHalfXdr.h, it's not used anymore. 624 * Revamped the autoconf system, added some compile-time 625 optimizations, a pkgconfig target, and some maintainer-specific 626 stuff. 627 628Version 1.0.2: 629 630 * More OS X fixes in Imath, IlmImf and IlmImfTest. 631 * Imath updates. 632 * Fixed a rotation bug in Imath 633 634Version 1.0.1: 635 636 * Used autoconf 2.53 and automake 1.6 to generate build environment. 637 * Makefile.am cleanups. 638 * OS X fixes. 639 * removed images directory (now distributed separately). 640 641Version 1.0: 642 643 * first official release. 644 * added some high-level documentation, removed the old OpenEXR.html 645 documentation. 646 * fixed a few nagging build problems. 647 * bumped IMV_VERSION_NUMBER to 2 648 649Version 0.9: 650 651 * added exrdisplay viewer application. 652 * cleanup _data in Imf::InputFile and Imf::OutputFile constructors. 653 * removed old ILM copyright notices. 654 655Version 0.8: 656 657 * Initial release.