Writing JPGFromRAW (CRW) breaks Canon ZoomBrowser

Started by Archive, May 12, 2010, 08:54:27 AM

Previous topic - Next topic

Archive

[Originally posted by gmikol on 2008-11-06 19:27:48-08]

Sure thing, Phil...I'm happy to do any testing. Just let me know what you need...

--Greg

Archive

[Originally posted by exiftool on 2008-11-07 23:16:15-08]

Well, after a couple more wasted hours trying to install the
zoombrowser update, I finally got it to work, so I have
been able to try a few things myself.  The symptoms I
observe are different than you:  I can't get ZB to display
either a thumbnail or a jpgfromraw other than the original.
I wonder if we are running a slightly different version of ZB.
I'm running 6.1.1.21.  Also, I am running Service pack 2,
but I don't see how that could affect things.

But after a number of tests, I have narrowed down the
possible causes for not displaying the embedded images:

- it isn't the YCbCrSubSampling (but you knew that already)

- it isn't any of the metadata (ie. JFIF)

- it isn't the image dimensions

- it isn't the image file size (I tried adding junk to the end of
both the original and your new images to make them the same length,
but the Canon ones still worked while the new ones didn't)

- it isn't the image encoding process (all baseline DCT, Huffman)

I could only think of one thing that was left:

- it could be that the quantization tables are different

So I did some specific tests and confirmed that this is the reason.
If I copy the quantization tables (DQT segment) and huffman
tables (DHT segment) from the Canon image and use them in the
new image, then ZB will display this embedded image.  Very odd.
(Copying either the DQT or the DHT alone doesn't work, they both
must be copied.) The only reason I could imagine why this would
happen is if Canon intentionally checks for Canon-specific tables
and disables display of other embedded images.

Very crazy indeed, but those are the facts.

Unfortunately I know if no utilities that will allow you
to use a specific set of quantization tables.  I had the
bright idea of using ZB to rewrite the JPEG before embedding
it, but sadly that didn't work.

So it looks like there is no simple solution to the problem,
short of finding or writing a utility to use a specific set
of quantization tables in the JPEG transform.

- Phil

Archive

[Originally posted by gmikol on 2008-11-08 02:49:21-08]

Well, thanks for all your help, Phil.

For everyone who reads this in the future. JpgFromRaw images embedded with ExifTool v7.52 will display correctly in ZoomBrowser 5.0 and 5.5 (and presumably 5.7, which I didn't test). They do not display correctly in 6.01 and 6.11.

It's a shame Canon changed the way they're parsing the CRW files, if I thought I could get Canon to do anything about it, I would beg and whine and cry piteously until they did. But I can't...so I won't.

Thanks again--

--Greg

Archive

[Originally posted by bogdan on 2008-11-08 14:53:27-08]

Hi,

I didn't dig deeper into this, but... As far I recall, for ZB v6.xx, ZoomBrowser started to use .NET library. Maybe this is somehow related with issue you have. It's just a though.

Greetings,

Bogdan