We are running into metadata issues with tif files created in oiio 1.5.16 (after upgrading from 1.4.8). In both cases, we are building against libtiff 4.0.3.
As a repro, I started with a plain exr created with oiio 1.4.8: oiio-1.4.8/oiiotool --pattern checker 128x128 4 --ch R,G,B,=1.0 -d half -o checker.exr And then created tx files with both 1.5.16 and 1.4.8 as a baseline: oiio-1.4.8/maketx --prman -o oiio-1.4.8.tx checker.exr oiio-1.5.16/maketx --prman -o oiio-1.5.16.tx checker.exr Using tiffinfo built with libtiff 4.0.3 on oiio-1.5.16.tx image shows the following printed to stderr: tiffinfo oiio-1.5.16.tx > /dev/null TIFFFetchDirectory: Sanity check on directory count failed, zero tag directories not supported. TIFFReadCustomDirectory: Failed to read custom directory at offset 28686. ...and oiio-1.4.8.tx image shows no such issues. Lastly, using the tiffinfo that ships with prman 19 shows the following (I'm not sure what version of libtiff prman is using, but the message makes it look like it's 3.x): prman/bin/tiffinfo oiio-1.5.16.tx > /dev/null TIFFReadDirectory: Warning, oiio-1.5.16.tx: wrong data type 13 for "EXIFIFDOffset"; tag ignored. ...which is the base problem here - renders are spitting out the above warning for all texture reads. tiffdump shows the two tx files are largely the same, except the 1.5.16 tx has an extra TIFFTAG_EXIFIFD tag at the end of the 0th directory. The biggest relevant source diff I can see between the two oiio versions is TIFFOutput::write_exif_data. I'm half wondering if the TIFFSetDirectory/TIFFSetField calls at the bottom of that method are failing in some way, but this is literally the second time I've ever looked at the tiff format and source, so it's a shot in the dark :). I have the above three image files I can mail over if that would be helpful (checker.exr, oiio-1.4.8.tx, and oiio-1.5.16.tx). John
_______________________________________________ Oiio-dev mailing list [email protected] http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
