It does fail for me! So I'll take a look and see if I can figure out what's 
going on.

To answer the question in your subject line, yes, the unit tests do test TIFF 
JPEG compression by reading a JPEG-compressed file from the libtiff test 
images. But that's really it. I've never actually seen a JPEG-compressed TIFF 
image "in the wild", so I admit that it has not been extensively tested, 
especially for edge cases like being both JPEG and multi-image.


> On Sep 25, 2016, at 10:56 AM, Larry Gritz <[email protected]> wrote:
> 
> Sorry, Yang Yang. I think your email was sent list from an address other than 
> you use to subscribe to the list, so it went into "quarantine" awaiting my 
> approval to forward it to the rest of the list. But I've been traveling and 
> very busy for a few days, and by the time I noticed it was awaiting 
> moderation, it had already expired from the quarantine queue. (I have since 
> extended the length of time things will wait in the queue before being 
> auto-deleted.)
> 
> So you're saying that this file can't be opened properly by today's master, 
> but could be at some point in the past? Do you know what version works? Also, 
> are you quite sure that both versions you tried (the one that worked, and the 
> one that didn't) are using the very same version of libtiff? And do you know 
> which version of libtiff you are using?
> 
> 
>> Begin forwarded message:
>> 
>> From: Yang Yang <[email protected] <mailto:[email protected]>>
>> Subject: Did anyone test JPEG compression support in TIFF format in the 
>> master branch?
>> Date: September 23, 2016 at 8:22:25 AM PDT
>> To: OpenImageIO developers <[email protected] 
>> <mailto:[email protected]>>
>> 
>> 
>> Hi All,
>> 
>> I encountered a strange issue that read tiff image which contains multiple 
>> jpeg files will crash application. It crashes at TIFFReadRGBAImageOriented.
>> 
>> *****************************************************
>> bool
>> TIFFInput::read_native_scanline (int y, int z, void *data)
>> {
>>     y -= m_spec.y;
>> 
>>     if (m_use_rgba_interface) {
>>         // We punted and used the RGBA image interface -- copy from buffer.
>>         // libtiff has no way to read just one scanline as RGBA. So we
>>         // buffer the whole image.
>>         if (! m_rgbadata.size()) { // first time through: allocate & read
>>             m_rgbadata.resize (m_spec.width * m_spec.height * m_spec.depth);
>>             bool ok = TIFFReadRGBAImageOriented (m_tif, m_spec.width, 
>> m_spec.height,
>>                                        &m_rgbadata[0], ORIENTATION_TOPLEFT, 
>> 0);
>> 
>> *****************************************************
>> 
>> However the file can be open correctly using old version OpenImageIO and 
>> other tools such as IrfanView.
>> 
>> I have no idea what is going wrong. It seems like the data is corrupted 
>> somehow.
>> I also attached an example file which failed in master branch oiio.
>> I would be appreciated if anyone can point out a hint.
>> 
>> Regards,
>> 
>> Yang
>> <Test-JPEG-2.tiff>
>> 
>> 
>> 
>> 
>> 
> 
> --
> Larry Gritz
> [email protected] <mailto:[email protected]>
> 
> 

--
Larry Gritz
[email protected]


_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to