[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [52245] trunk/lib/win64/openimageio: Windows x64 MSVC:
Thomas Dinges
blender at dingto.org
Thu Nov 15 20:33:46 CET 2012
Revision: 52245
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=52245
Author: dingto
Date: 2012-11-15 19:33:46 +0000 (Thu, 15 Nov 2012)
Log Message:
-----------
Windows x64 MSVC:
* OIIO 1.1 static libraries.
Modified Paths:
--------------
trunk/lib/win64/openimageio/CHANGES
trunk/lib/win64/openimageio/build.bat
trunk/lib/win64/openimageio/build.patch
trunk/lib/win64/openimageio/include/OpenImageIO/argparse.h
trunk/lib/win64/openimageio/include/OpenImageIO/color.h
trunk/lib/win64/openimageio/include/OpenImageIO/errorhandler.h
trunk/lib/win64/openimageio/include/OpenImageIO/export.h
trunk/lib/win64/openimageio/include/OpenImageIO/filesystem.h
trunk/lib/win64/openimageio/include/OpenImageIO/filter.h
trunk/lib/win64/openimageio/include/OpenImageIO/fmath.h
trunk/lib/win64/openimageio/include/OpenImageIO/hash.h
trunk/lib/win64/openimageio/include/OpenImageIO/imagebuf.h
trunk/lib/win64/openimageio/include/OpenImageIO/imagebufalgo.h
trunk/lib/win64/openimageio/include/OpenImageIO/imagecache.h
trunk/lib/win64/openimageio/include/OpenImageIO/imageio.h
trunk/lib/win64/openimageio/include/OpenImageIO/paramlist.h
trunk/lib/win64/openimageio/include/OpenImageIO/plugin.h
trunk/lib/win64/openimageio/include/OpenImageIO/pugiconfig.hpp
trunk/lib/win64/openimageio/include/OpenImageIO/strutil.h
trunk/lib/win64/openimageio/include/OpenImageIO/sysutil.h
trunk/lib/win64/openimageio/include/OpenImageIO/texture.h
trunk/lib/win64/openimageio/include/OpenImageIO/thread.h
trunk/lib/win64/openimageio/include/OpenImageIO/timer.h
trunk/lib/win64/openimageio/include/OpenImageIO/typedesc.h
trunk/lib/win64/openimageio/include/OpenImageIO/ustring.h
trunk/lib/win64/openimageio/include/OpenImageIO/version.h
trunk/lib/win64/openimageio/lib/OpenImageIO.lib
trunk/lib/win64/openimageio/readme.txt
Removed Paths:
-------------
trunk/lib/win64/openimageio/bin/
Modified: trunk/lib/win64/openimageio/CHANGES
===================================================================
--- trunk/lib/win64/openimageio/CHANGES 2012-11-15 19:26:11 UTC (rev 52244)
+++ trunk/lib/win64/openimageio/CHANGES 2012-11-15 19:33:46 UTC (rev 52245)
@@ -1,15 +1,33 @@
Changes:
-Release 1.1 (developmet in progress, compared to 1.0.4)
--------------------------------------------------------
+Release 1.1 (9 Nov 2012)
+------------------------
Major new features and improvements:
-* OpenCV interoperability: new ImageBufAlgo::fromIplImage converts/copies
- an OpenCV image to an ImageBuf.
+* Support for reading and writing "deep" images (including OpenEXR 2.0).
+* Big ImageCache/TextureSystem improvements:
+ - Improved accuracy of anisotropic texture filtering, especially when
+ combined with "blur."
+ - Improve performance in cases with high numbers of threads using the
+ TS simultaneously (mostly due to use of reader-writer locks on the
+ tile cache rather than unique locks).
* New ImageBufAlgo functions:
- capture_image : captures from a camera device (only if OpenCV is found)
+ fromIplImage() : converts/copies an OpenCV image to an ImageBuf.
+ capture_image() : captures from a camera device (only if OpenCV is found)
+ over() : Porter/Duff "over" compositing operation
+ render_text() : render text into an image
+ histogram() : compute value histogram information for an image
+ histogram_draw() : compute an image containing a graph of the histogram
+ of another image
+ channels() : select, shuffle, truncate, or extend channels of an image.
* New oiiotool commands:
--capture : captures from a camera device (only if OpenCV is found)
--pattern constant : creates a constant-color image
+ --over : Porter/Duff "over" compositing operation
+ --text : render text into an image.
+ --histogram : computes an image containing a graph of the histogram of
+ the input image.
+ --fill : fills a region with a solid color
+ --ch : select, shuffle, truncate, or extend channels
API changes:
* A new static ImageInput::open(filename [,config]) combines the old
@@ -17,6 +35,12 @@
efficient because it won't needlessly open and close the file multiple
times. This is now the preferred method for reading a file, though
the old-style create() and open() still work as always.
+* Deep image support: ImageInput adds read_native_deep_scanlines,
+ read_native_deep_tiles, read_native_deep_image, and ImageOutput adds
+ write_deep_scanlines, write_deep_tiles, write_deep_image, as well as a
+ supports("deepdata") query. Also, a 'deep' field has been added to
+ ImageSpec, and some deep data access functions have been added to
+ ImageBuf.
* ImageInput plugins now may supply a valid_file(filename) method which
detects whether a given file is in the right format, less expensively
than doing a full open() and checking for errors. (It's probably the same
@@ -30,14 +54,49 @@
* TextureOpt now contains a 'subimagename' field that allows subimages
to be addressed by name as well as by index (only for multi-image textures,
of course).
+* ImageBuf improvements:
+ - A new constructor allows an ImageBuf to "wrap" an existing buffer
+ memory owned by the calling application without allocating/copying.
+ - Renamed the old ImageBuf::copy_pixels -> get_pixels, and it now
+ works for 3D (volumetric) buffers.
+ - New ImageBuf::copy(), and eliminated operator= which was confusing.
+ - New ImageBuf methods: reres(), copy_metadata(), copy_pixels(),
+ get_pixel_channels().
+ - ImageBuf::specmod() allows writable access to the ImageSpec (caution!).
+ - Better error reporting mechanism.
+ - get_pixels and get_pixel_channels take optional strides.
+* ImageBufAlgo changes:
+ - Many ImageBufAlgo functions now take a 'ROI' that restricts the
+ operation to a particular range of pixels within the image (usually
+ defaulting to the whole image), and for some operations a range of
+ channels.
+ - zero() and fill() take ROI arguments.
+ - ImageBufAlgo::CompareResults struct changed the failure and warning
+ counts to imagesize_t so they can't overflow int for large images.
+* OIIO::getattribute("format_list") now can retrieve the comma-separated
+ list of all known image file formats.
Fixes, minor enhancements, and performance improvements:
-* TextureSystem: anisotropic texture lookups are more robust when the
- derivatives are tiny.
+* ImageCache/TextureSystem:
+ - Anisotropic texture lookups are more robust when the derivatives are tiny.
+ - Attribute "deduplicate" controls whether the identical-image
+ deduplication is enabled (on by default).
+ - Attribute "substitute_image" lets you force all texture references to a
+ single image (helpful for debugging).
+ - Texture files are no longer limited to having tile sizes that are
+ powers of 2.
+ - Much faster TIFF texture access (by speeding up switching of MIPmap levels).
+ - More graceful handling of the inability to free handles or tiles
+ under extreme conditions. Rather than assert when we can't free
+ enough to stay within limits, just issue an error and allow the
+ limits to be exceeded (hopefully only by a little, and temporarily).
+ - Detailed per-file stats now track the number of tile reads per
+ MIPmap level.
+ - Attribute "unassociatedalpha" (when nonzero) requests that
+ IC images not convert unassociated alpha image to associated alpha.
* iconvert handles the int32 and uint32 cases.
* Bug fix in to_native_rectangle, which could lead to errors in certain
data format conversions.
-* Faster TIFF texture access (by speeding up switching of MIPmap levels).
* iv improvements:
- better behavior after closing the last image of the sequence.
- file load/save dialogs can filter to show just certain image file types.
@@ -45,11 +104,12 @@
- "About" dialog has a link to the OIIO home page
* Improve ::create to more robustly handle files whose extensions don't
match their actual formats.
-* ImageCache attribute "deduplicate" controls whether the identical-image
- deduplication is enabled (on by default).
* OpenImageIO::geterror() is now thread-specific, so separate threads will
no longer clobber each others' error messages.
+* OpenEXR: support for building with OpenEXR 2.x, including use of
+ multi-part EXR and "deep" data.
* Fix reading bugs in DPX and Cineon.
+* DPX: fix endianness problem for 15 bit DPX output.
* PNG: fix handling of gamma for sRGB images.
* oiiotool fixes: print MIP messages correctly (it was only printing for
the first MIP level); make sure stray "oiio:BitsPerSample" in an input
@@ -59,25 +119,154 @@
present as a multi-image file with the "oiio:subimagename" giving a
unique name for each layer subimage;
* OpenEXR: suppress format-specific metadata from other formats.
-* Texture files are no longer limited to having tile sizes that are
- powers of 2.
+* Targa: fix several bugs that were preventing certain metadata from being
+ written properly.
+* TIFF: recognize the SAMPLEFORMAT_IEEEFP/bitspersample=16 as an image
+ composed of "half" pixels; enable PREDICTOR_FLOATINGPOINT to give slightly
+ better compression of float images.
+* Handle UTF-8 paths properly on Windows.
+* Removed the obsolete "iprocess" utility.
+* Fix allocation and stride bugs when dealing with images having different data
+ formats per channel, and tiled images with partially filled border tiles.
+* Field3D: Bug fix when reading vector f3d files.
+* Significant performance improvements of our atomics and spin locks when
+ compiling with USE_TBB=0.
+* Fix quantize() to properly round rather than truncate.
+* ImageBufAlgo functions now by convention will save error messages into
+ the error state of their output ImageBuf parameter.
+* Improve I/O error checking -- many file reads/writes did not previously
+ have their result status checked.
+* Fixed missing OpenEXR open() error message.
+* Clean up error reporting in iconvert.
+* Fixes to handle Windows utf8 filenames properly.
+* ImageBufAlgo::compare() gives a sensible error (rather than an assertion)
+ if the images being compared are not float.
+* maketx:
+ - Better error messages for a variety of things that could go wrong when
+ reading or writing image files.
+ - Fixes for bug preventing certain ImageCache efficiencies.
+ - new option --ignore-unassoc leaves unassociated alpha data as it is
+ (no auto-conversion to associated alpha) and/or ignores the tags for
+ an input file that is associated but incorrectly tagged as
+ unassociated alpha.
+ - Option --monochrome-detect was buggy for images with alpha.
+ - Option --constant-color-detect didn't do anything; now it works.
+ - New option: --compression allows you to override the default compresion.
+* oiiotool & info: the --hash command had a bug wherein when applied to
+ images there were MIP-mapped, would hash the lowest-res MIP level rather
+ than the highest-res. This could result in two different images, if
+ they happened to have the same average color, to incorrectly report
+ the same SHA-1 hash. Note that this did NOT affect non-MIPmapped images,
+ nor did it affect the SHA-1 hashing that occurred in maketx to allow
+ the TextureSystem to detect duplicate textures.
-Build system improvements:
+Build/test system improvements:
* Various Windows build fixes, including fixes for Windows 7, and
improvements to running the testsuite on Windows.
* Testsuite additions and improvements: png fmath_test
* Compilation fixes on FreeBSD.
+* Compilation fixes on GNU Hurd platform.
+* Compilation and warning fixes for Clang 3.1.
* Add FIELD3D_HOME build variable to allow explicit path to Field3D
implementation.
+* Remove support for Boost < 1.40.
+* Improved unit tests for atomics, spin locks, and rw locks.
+* Avoid generating iv man pages when USE_QT=0
+* New testtex options: --aniso, --stblur
+* CMake option 'EXTRA_CPP_DEFINITIONS' lets custom builds inject
+ site-specific compiler flags.
+* Make/cmake option: HIDE_SYMBOLS=1 will try to restrict symbol visibility
+ so that only symbols intended to be part of the public APIs will be
+ visible in the library when linked.
+* The old DLLPUBLIC and LLEXPORT macros, which could clash with other
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list