forked from AcademySoftwareFoundation/OpenImageIO
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCHANGES
516 lines (451 loc) · 24.8 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
Changes:
Release 0.9 (Dec 9 2010)
-------------------------
Major new features:
* New format plugin: DPX
* New format plugin: Cineon (currently read only) (r1599,1600,1601,1617)
* New format plugin: Ptex (currently read only) (r1655,1664).
* New format plugin: Field3D (currently read only) (r1659,1666,1669)
* Support for files that are simultaneously multi-image and where each
subimage may also be mipmapped (these concepts were previously
comingled). This mainly effects ImageInput::seek_subimage and
ImageOutput::open, as well as some minor methods of ImageCache and
ImageBuf. (r1655,1656,1664,1671)
* Support for per-channel data formats via the new ImageSpec::channelformats
vector and interpreting read_foo/write_foo format parameter of UKNOWN
as a request for the true native format. (r1674)
API changes:
* Single-point texture lookup struct (TextureOpt) and additional
single-point texture lookup entry points. (r1679)
* Filter{1D,2D} class now has a destroy() method to match its create(),
and create() accepts "bspline" and "catrom" as synonyms for the
existing "b-spline" and "catmull-rom" fileters. (r1542)
* Add methods to ImageSpec to read/write an XML representation of the
ImageSpec (r1574).
* Finally put all the helper classes (ustring, TypeDesc, etc.) that were
in the main OpenImageIO namespace, as well as centralized version numbering
and custom namespace control.
Fixes, minor enhancements, and performance improvements:
* OpenEXR: Allow read/write with different data formats per channel (r1674).
* SGI: add support for files with any number of channels (r1630).
* PNG: improve PNG write speed by 4x by adjusting compression tradeoffs
(r1677)
* JPEG: assume sRGB unles EXIF says otherwise (r1693); fix broken JPEG
4-channel to 3-channel conversion (r1696).
* PNM: monochrome data was output incorrectly in both binary & ascii forms;
adopt the Netbpm convention for endianness in the 16 bit case; open binary
image files in binary mode to avoid newline mangling (r1709).
* iinfo: add --stats option (r1618)
* iv: Now can sort the image list by file date, metadata date, name, or
file path (r1514).
* ImageCache: fixed bug that allowed the max_open_files limit to be
exceeded (r1657); raise the default IC cache size to 256 MB (r1663);
automip unmipped files even if they are tiled (r1670); fix bug wherein
an invalidated and modified file would continue to flush in subsequent
invalidations, even if the file was not modified again (r1712/0.8.8).
* New ImageBuf algorithm: computePixelStats (r1618)
* Fixes in ImageCache and ImageBuf to allow correct handling of
3D (volumetric) files. (r1659,1660)
* Properly append error messages; ASSERT if the error message buffer
exceeds 16 MB (which means somebody is failing to call geterror) (1672)
* Fix subtle Strutil::format and ustring::format crasher bugs with long
strings (r1654 - 0.8.8).
* Print the OIIO version in the ImageCache stats so we don't guess
when somebody sends us a log file with complaints.
* ImageCache::getattribute can retrieve its interesting internal
statistics individually by name. (r1721)
* idiff and iv increased their IC cache size. (r1722)
* idiff bug fixes: (1) files with different number of MIPmap levels
immediately failed, whereas they should have compared their top
levels, and only fail if the "-a" flag was used; (2) some failure
modes incorrectly printed a "PASS" message despite actually failing. (r1722)
* Changed the environment variable that contains the plugin search path
from IMAGEIO_LIBRARY_PATH to OPENIMAGEIO_LIBRARY_PATH. (r1723)
* Bug fix to ImageInput::read_image -- could crash due to an internal
buffer allocated as the wrong size. (r1724)
For developers / build issues:
* testtex: print memory use (r1522)
* Embedded plugins are now built within the OIIO namespace, if defined (r1559).
* Fixed implementation of TypeDesc construction from a string. (r1562)
* Incorporate PugiXML for XML parsing/writing needs (r1569).
* In-progress socket I/O plugin is in the code base, but not yet fully
supported.
* Disable python support if boost_python is not found. (r1701)
Release 0.8 (May 26 2010)
-------------------------
Major new features:
* Python bindings for the ImageInput, ImageOutput, ImageSpec, ImageBuf,
and ImageCache classes.
* New format plugin: SGI image file
* New format plugin: PNM/PPM/PGM/PBM
* New format plugin: DDS (currently reading only)
* New format plugin: Softimage PIC (currently reading only)
API changes:
* New "linearity" tags include AdobeRGB, Rec709, and KodakLog.
* ColorTransfer helper class can convert among the linearity types, and
may be optionally passed to convert_image and convert_types.
* Added to fmath.h: sincos, exp2f, log2f
* Renamed ErrHandler::ErrCode enums with EH_ prefix (to fix conflicts
with some Windows headers).
* ustring now has getstats() and memory() methods.
Fixes, minor enhancements, and performance improvements:
* ImageInput::create() error messages are more helpful.
* Fixed some error messages in FITS output, iconvert.
* maketx: Console flushes in status messages to that a calling process
will get status messages right away.
* Fix subtle ImageCache bug with invalidate().
* ImageCache/TextureSystem have improved multithreading performance
when large untiled files are needed simultaneously by many threads.
* TextureSystem: new 'missingcolor' texture option that, when provided,
can specify a color that will be used for missing textures rather than
generating errors. (If not supplied, missing tex is still an error.)
* BMP plugin enhancements.
* TIFF: support 64-bit float pixels, proper random scanline access emulation
for all appropriate compression types, handle incorrectly set-to-zero
image_full_width and image_full_height. (r1515 - 0.8.1)
* PNG: properly handle palette images, unassociated alpha, gamma
correction, endianness for 16-bit files, and has vastly better memory
consumption due to reading scanlines individually rather than
buffering the whole image (r1523 - 0.8.1); fix clamping/wrapping
problem for certain values when alpha > color. (r1605 - 0.8.3)
* iv fixes: fix improper recentering after image reload; fix crash when
image info window opened without any image files loaded; better status
window message when image reads fail; iv goes into background properly
in Windows; "slide show" mode; pixel view display moves if you need to
look at pixels underneath it;
* ImageCache bug: previously couldn't designate a cache > 2GB (because of
integer overflow issues).
* ImageCache::get_image_info and TextureSystem::get_texture_info now respond
to a new "exists" query that merely tests for existance of the file. (0.8.1)
* ImageCache/TextureSystem fix for a threading logic bug that could potentially
lead to a deadlock (and definitely led to hitting a DASSERT when compiled
for DEBUG mode). (0.8.1)
* maketx performance improvements: --noresize is now the default (use
--resize if you really want power-of-two resizing); much better
performance because it doesn't use ImageCache unless the image being
converted is very large; takes advantage of multiple cores by
automatically multithreading (the number of threads can be controlled
by the "-t" option, with the default to use the same number of threads
as hardware cores). (r1546 - 0.8.2)
* Fix potential crash in read_tile for files with tiles so big that they
would not fit on the stack (heap allocation used instead). (0.8.2)
* OpenEXR: add support for vector metadata attributes. (r1554 - 0.8.2)
* Improve TIFF open error messages. (r1570 - 0.8.3)
* Make ImageCache::get_pixels() and TextureSystem::get_texels() safe for
crop windows -- fill with zero outside the valid pixel data area. (r1579 - 0.8.3)
* In ImageCache::attribute (and by extension, TS::attribute), only
invalidate the cache if the attributes actually CHANGED. (r1582 - 0.8.3)
* maketx: --checknan option double checks that no source image pixels
are NaN or Inf (r1584 - 0.8.3).
* Fixed crash that could result from certain XML strings embedded in TIFF
headers (uncaught exception). (0.8.5)
* Fixed ImageCache deadlock when using autotile. (r1631 - 0.8.6)
* Fixed a longstanding performance issue with ImageCache automip, wherein
an unmipped file that is larger than the cache size leads to pathological
thrashing. The solution is to automatically raise the cache size to be
large enough to automip the file without danger of thrashing. (r1657 - 0.8.7)
For developers / build issues:
* EMBEDPLUGINS=1 is now the default. This means that all the format
plugins that come with OIIO are compiled into the main library, so
there's no reason for users to set $IMAGEIO_LIBRARY_PATH unless they
need custom format plugins not supplied with the main distribution.
* Fix compiler warnings (mostly under Windows): TBB stuff, ustring, windows.h.
* Option to build static libraries (with 'make LINKSTATIC=1').
* Fixes to make clean compilation with gcc-4.4.2.
* Allow custom 'platform' designation in the build.
* Allow custom installation destination ('make INSTALLDIR=...').
* ustring now takes half the memory (by no longer redundantly storing the
characters on Linux and OS X).
* Always use TBB (better performance on Windows for atomics). [0.8.2]
Release 0.7 (Nov 26 2009)
--------------------------
Major new features:
* New format plugin: JPEG-2000 (r1050)
* New format plugin: FITS (r1287 et al)
* TextureSystem: two new entries to TextureOptions which allow the texture
system to return the derivatives in s and t of the texture. (r1308)
API changes:
* Added imagespec() method to ImageCache and TextureSystem that returns a
reference to the internal ImageSpec of the image. This is much more
efficient than get_imagespec, but beware, the pointer is only valid
until somebody calls invalidate() on the file. (r1266)
* TextureOptions: eliminated the 'alpha' field. Added the dresultds and
dresultdt fields.
* Extend TypeDesc to include INT64 and UINT64. (r1145)
Fixes, minor enhancements, and performance improvements:
* Make EMBEDPLUGINS=1 the default. (0.7.1)
* Improvements to the Targa plugin, bringing it into compliance with
TGA 2.0 (r1163, r1297)
* Fixed PNG-related crashes on 64 bit machines. (r1336)
* iv improvements: support for multichannel images and different color
modes (r1129), support auto use mipmap level based on zooming (r1093),
correct pixelview for rotated images (r1092), fix off-by-one error
with some zoom levels (r1089).
* maketx: fixed problem where it was sometimes not setting the output
data format to match the input data format correctly (r1290), fixed
problems with writing EXR files with --nomipmap (r1286), fixed cases
where data window was not the same as display window (i.e. crop or
overscan).
* ImageCache/TextureSystem: various threading and performance improvements.
(r1188, r1211, r1288, r1299)
* TS: fixed incorrect "texturetype" results of get_texture_info. (r1314)
* IC/TS: fixed crasher bugs when doing get_pixels of images that had
non-zero data window origin. (r1313)
* IC/TS: better error messages and recovery from spooky open and read_tile
failures. (r1321)
* When IC/TS reads and entire (untiled) image, the file is closed afterwards.
This is especially helpful on Windows where open files are locked to
writing by other processes. (r1298)
* HUGE speedup of ImageCache::get_image_info (and TS::get_texture_info)
b replacing strcmp's with ustring == (r1281).
* IC: fixed various subtle logic errors with broken files and
invalidate/invalidate_all. (r1252, r1279)
* IC/TS: fixed memory leak of per-thread imagecache data and subtle race
conditions. (r1057, r1216, r1222, r1238)
* TS: fixed problem where missing or broken textures weren't using the
right fill color. (r1268)
* IC: Clamp cache size to a reasonable lower limit (r1256)
* TS: improvements to filter estimation (1134) and bicubic interpolation
numerical stability and speed (r1166, r1179, r1333).
* IC: when autotile=0 but automip=1, fixed bug that was wasting HUGE
amounts of memory by using the wrong resolution for mip levels! (r1147)
* IC: fix an edge case where tiles could leak. (r1044)
* Fixed some hairy static initialization problems with ustring (r1280)
* Use a spin lock rather than block in ustring constructor gives HUGE
speedup especially on Windows. (r1167)
* TS: Make everything work for textures whose image origin is not (0,0)
or whose pixel data window doesn't match the image window (i.e. crop
windows or overscan). (r1332)
* IC/TS: Correctly invalidate files afected by recently changed "automip"
setting. (r1337)
* IC/TS: fix crash that could occur with non-existant textures in combination
with invalidate_all(). (r1338)
* Make create() error messages more helpful. (0.7.1)
For developers:
* Build more easily when older OpenEXR versions are found. (r1082)
* HTML Doxygen documentation on the public APIs. (r1311, r1312, et al)
* Sysutil::this_program_path finds the full path of the running program.
(r1304)
* Better compiler-side error checking of printf-like functions (r1302)
* A new site/... area where important users with local build customization
needs can check in (reasonably sized) custom makefiles or other helpful
things. (r1284)
* New ErrorHandler class, currently unused by OIIO itself, but very handy.
(r1265)
* Fixed lots of compiler warnings.
* Upgraded to a more recent TBB, which fixed some atomic problems. (r1211)
* ustring: make string comparison safe for empty strings. (r1330)
* Include file fixes for gcc 4.4. (r1331)
* Regularize all #include references to Imath and Openexr to
<OpenEXR/blah>. (r1335)
Release 0.6 (Jul 20, 2009)
--------------------------
Major new features:
* Everything has been ported to Windows.
* iv: handle older cards or versions of OpenGL, including lack of GLSL,
non-pow2 textures, etc. Generally should now be usable (if slightly
degraded functionality) for most OpenGL 1.x implementations. (r764)
* ImageBuf that only reads images is now automatically backed by
ImageCache. In the process, add Iterator and ConstIterator as "safe"
and efficient ways to visit all the pixels within a region of the
image, and eliminate the unsafe pixeladdr() method. Also added
ImageCache::attribute("forcefloat") to conveniently force all
ImageCache internal storage to be float. (r770,771,772,775,803,805)
* iv can now support "big" images, in particular larger than the OpenGL
texture limit (4k), and also very big images via the use of ImageCache
(r912).
* Truevision Targa (TGA) support. (r776,792)
API changes:
* In a variety of places that specified pixel rectangles (including
ImageCache::get_pixels and TextureSystem::get_texels), specify regions
as (xbegin,xend,ybegin,yend) rather than (xmin, ymin, xmax, ymax).
Note that 'end' is, like STL, one past the last pixel. (r771)
* All classes now query error messages using geterror(). Previously some
used geterror() and others used error_message(). The old error_message
is deprecated and will be removed in a future release (r957).
Fixes and minor enhancements:
* OpenEXR plugin improvements: don't set "textureformat" attribute
unless it really is a mip-mapped texture. Preserve the mipmap
rounding mode when copying OpenEXR files, by using the
"openexr:roundingmode" metadata (r801). Properly mark the alpha
and z channels in the ImageSpec (r885).
* TIFF plugin improvements: handle 2 bpp images, properly name channels
when reading palette images (r802), no longer uses the
PREDICTOR_FLOATINGPOINT, since older versions of libtiff can't read
those files (r752). Properly set the Exif sRGB marker (r888).
* BMP plugin improvements: allows top-down scanlines as well as bottom-up,
correctly reads 4-, 8- and 24-bit images that have scanlines padded to
4-byte boundaries.
* ImageBuf algorithms: crop, add (r892).
* EXPERIMENTAL: 'iprocess' utility that lets you do some simple image
processing operations (r892).
* ImageCache additional statistics: file open time (r743), alert if
mip-mapped images are accessed at only their highest-res level (r743).
Properly emulates random access reads of LZW-compressed files (r920).
* iv: fix problems displaying images whose width was not a multiple of 4
bytes (r767), when loading small images, the window starts out a
usable minimum size, iv always raises the window upon first opening,
fix pixelview of alpha in RGB images (r939).
* iv: Fix off-by-one error that drew the last scanline incorrectly
sometimes (r1089). Give feedback when doing a slow repaint (r1089).
* iv improvements: fix skew-like problems with Intel cards, fix non-GLSL
texture mapping, limit texture size to 4096^2 to keep GL memory use
reasonable make "Reload" work again after breaking a few patches ago
(r1090).
* maketx: in the case where the input texture was already float and needed
no pow2 rounding, we didn't get the tiling or other metadata right (r824)
* ImageCache and TextureSystem do a better job of reporting low-level
ImageInput errors up the chain (r945).
* ImageCache: new option "accept_untiled", when set to zero, will reject
untiled images (r979).
* 'maketx --hash' embeds a SHA-1 fingerprint of the source image's
pixels in the texture file header's "ImageDescription" field.
ImageCache (and TextureSystem) will recognize these and eliminate
redundant I/O when it finds multiple files with identical pixels.
(r741,742)
* iinfo: eliminate --md5 in favor of --hash (computing SHA-1). (r749)
* Fix ImageCache and TextureSystem to have thread-specific error
reporting. (r1045)
* TextureSystem: fixed subtle bug in destruction order that could
double-free per-thread data. (r1057)
* ImageCache: now get_image_info("format") returns teh native data format
of the file. (r1058)
* maketx: properly handle input files where the data window is not the
same as the display window or if the image offset was nonzero. The
correct semantics are that the DISPLAY window is what maps to [0,1] in
texture space. (r1059)
For developers:
* Lots of fixes for Windows compilation (r754, r860)
* A build option for whether or not to use TBB for atomics. (r780)
* New test suite entries: tiff-suite, tiff-depths (r787,788), openexr-suite,
openexr-multires, openexr-chroma (r789,790,791).
* New unit tests for ImageBuf::zero, ImageBuf::fill, ImageBufAlgo::crop (r891).
* Reorganization of unit tests.
* Improvements to ArgParse internals and interface.
* All the macros that prevent double-inclusion of header files have had
their names changed from FILENAME_H to OPENIMAGEIO_FILENAME_H so that
they don't conflict with other package (r967).
* Reorganized test suite hierarchy.
* Optionally allow the entire library to be enclosed in a versioned
namespace (via 'make NAMESPACE=foo') .
* Upgraded to a more recent version of TBB that seems to have fixed some
bugs with atomic counters. (r1027)
Release 0.5 (31 May 2009)
-------------------------
Features:
* New image format plugins: zfile (r529), ICO (r579,585,588,619,637),
BMP (reads only) (r580,584,614,625)
* Support for multiple subimages in iinfo (r607), iconvert, idiff (r631),
* ImageCache and TextureSystem: better stats (r528, r717), bug fixes for
large untiled images (r558,561), anisotropic improvements, stats
improvements, thread safety improvements (r566),
invalidate/invalidate_all (r591), better error reporting (r606),
thread safety fixes (r650), fix problem when filter size was precisely
at a mipmap level it blurred to higher level (r687), avoid problems
when blur > 1 and there is no 1x1 mip level (r687).
* maketx: --shadow (r530), --nomipmap (r531), big speedups (r699).
* idiff: add RMS error and PSNR (r622).
* OpenEXR plugin: support "openexr:lineOrder" attribute so
random-tile-order files may be written (r569).
* API: better handling of huge images that could have sizes > 32 bits (r575)
Fixes and minor enhancements:
* iinfo: fix - lack of help message when no files specified (r513).
* maketx: make -u work properly (r517), wasn't honoring --separate (r532).
* iconvert: add --separate and --contig (r535).
* TIFF plugin: work around error in old versions of libtiff for IPTC
packets (r674).
* JPEG plugin: if linearity is sRGB, set Exif:ColorSpace correctly (r536)
* iv: more robust to certain OpenGL versions (r550), support for OpenGL
versions that don't support non-pow2 textures (r563), correct texture
mapping when GL_NV_texture_rectangle is the best texture mapping
extension we can find (r572).
* idiff: refactored to use ImageBuf internally (r541)
For developers:
* Switch to CMake for builds.
* Build enhancements: 'make USE_OPENGL=0' (r512), better handling of
certain system OpenGL headers (r512), more robust with Qt location
(r542), handle older Boost 1.35 (r574).
* Tests: test_libOpenImageIO (r581), ico (r621),
* More work towards clean windows compilation (r659,672).
Release 0.4 (15 Mar 2009 - not formally released)
-------------------------------------------------
(compared to the 'initial' developer release of 1 Sep 2008)
Features:
* Lots of work on docs.
* API changes:
- Replaced ParamBaseType/ParamType with TypeDesc.
- ImageSpec: add full_{x,y,z} fields.
- Changed ImageInput/ImageOutput create(), open(), and suports() to
take std::string instead of char* (r297)
- Added ImageOutput::copy_image (r428)
- TypeDesc - distinguish COLOR from NOXFORM. (r466)
- ImageInput:open(name,newspec,config). (r482)
* igrep utility searches metadata of images (r447,455,499)
* iconvert: add --caption, --keyword, --clear-keywords, --adjust-time
--attrib, --inplace (r484,488,491), --compression (r354), --quality
(r362).
* iv: put into background after launch unless -F arg (r240),
alt-leftmouse zooms, handle sRGB correctly, GAMMA env variable, full
HDR for half and float (r243), honor full/display window versus data
window (r300), better view re-centering behavior (r355), fix
orientation bugs (r363,380,381).
* TextureSystem: single point texture lookups (r247), have all routines
return a bool giving error status, rename gettextureinfo ->
get_texture_info, add get_imagespec, get_texels, geterror (r252,265),
replace hard-coded get/set routines with generic
attribute/getattribute (r321), accept non-tiled and non-mipped
textures (r317,319,388,389,390), separate the image cache into a
separate ImageCache class that may be used independently of
TextureSystem (r326,327,393), better statistics including per-file
stats (r333,360,375,429), invalidate method (r460).
* TIFF plugin: read/write EXIF, IPTC IIM, and IPTC XPM/XML data
(r406,407,456,458)
* JPEG plugin: read/write IPTC IIM, XMP, and GPS metadata
(r408,411,458,461), implement ImageOutput::copy_data() can copy images
without altering pixel values (r483).
Fixes and minor enhancements:
* ImageBuf: add option to read() that allows data format conversion (r244),
add oriented{x,y} and oriented_full_{width,height} methods (r296).
* TextureSystem: fix bicubic filetering (r309), big memory savings by
not having libtiff use memory mapping (r332), lots of performance
tuning (r351), anisotropic texture improvements (r364), bug fixes for
search paths (r459).
* iinfo: print color space and file format info (r241), better printing
of matrix metadata (r365), new options -f, -m (r501).
* idiff: bug fix - not producing difference image (r402)
* maketx: deduce default file format from extension (r275).
* All format plugins: better error detection in open() for senseless
resolutions (r294,295)
* OpenEXR plugin: handle float as well as half data, fixes when image
origin is not (0,0) (r291), fix leak of exr writer (r292), conform to
common conventions for camera matrix naming (r367), regularize
capitalization of metadata (r412)
* TIFF plugin: bug fix for combination of tile + separate (r304), fixes
to retrieval of matrix tags (r366)
* HDR plugin: emulate random access of scanlines (r387), better error
reporting (r451).
* JPEG plugin: respect "CompressionQuality" (r361), emulate random
access of scanlines (r387), properly read & write JPEG_COM marker for
comments (r403), assume sRGB unless the metadata say otherwise (r414).
For developers:
* Preliminary work on Windows port (r398,399)
* Include all the needed .h files in the dist area (r251)
* Handle older gcc (r273), older boost (r301,431), older OpenEXR
(r301), older libtiff (r432).
* 'make EMBEDPLUGINS=1' compiles the bundled plugins right into main
library (r302).
* Put header files in dist/ARCH/include/OpenImageIO (r303), rename
src/libimageio -> src/libOpenImageIO (r382).
Initial developer release 0.1 (9/1/08):
---------------------------------------
* ImageInput, ImageOutput, TextureSystem APIs pretty mature
* Plugins: TIFF, JPEG/JFIF, OpenEXR, PNG, HDR/rgbe
* iv - basic display, multiple images, menus, status bar, info window,
basic prefs window, pixel view tool, zoom, pan, open, open recent,
close, save as, view subimages, view channels, gamma, exposure,
fit window to image, fit image to window, full screen.
* iconvert
* idiff
* maketx
* API docs for ImageInput, ImageOutput, writing plugins
* Linux and OSX