| AWARE [SYSTEMS] | Imaging expertise for the Delphi developer | |||||||
![]() |
TIFF and LibTiff Mailing List Archive | |||||||
LibTiff Mailing List
TIFF and LibTiff Mailing List Archive Contact
The TIFF Mailing List Homepage |
Thread2005.12.13 18:40 "Re: Writing EXIF data?", by Chris LosingerAt 01:16 PM 12/13/2005, Joshua Muskovitz wrote:
> It seems the concensus is that libtiff is really great for reading and
> writing TIFF files, fairly useless in reading EXIF-encoded TIFF files, and
> completely useless in writing EXIF-encoded TIFF files. Equally bad is
> that libtiff expects a valid image in the first IFD, and so is again
> fairly useless in parsing EXIF-encoded JPEG files, and completely useless
> in writing them.
>
> Alas, I require the ability to read and write EXIF information in both
> TIFF and JPEG formats. I've given up on libtiff and begun using libexif
> for the JPEG side of things, but it is the canonical example of the
> actively used, yet completely undocumented library. Hopefully, my need to
> support TIFF will wait long enough for libtiff to catch up.
LibTiff (via the Pritave SubDir stuff) can read EXIF in TIFF
pretty well (at least tags in the main EXIF IFD). i've used it for a while.
but, for EXIF in JPG, i went ahead and wrote my own decoder - can't use
LibExif because of the GPL.
but, writing EXIF is a huge hassle, because of Maker Note data.
most Maker Note data is just more TIFF-style tags, but with little
vendor-specific nuances. the one that causes the most trouble is that some
vendors use tag and data offsets inside the Maker Note IFD that are based
on the start of the EXIF IFD itself, instead of being based on the start of
the Maker Note IFD. so, modifiying anything before the Maker Note IFD will
break those offsets. and since Maker Notes are always undocumented (though
they may have been reverse-engineered in some cases). this wouldn't be a
problem if users wanted to create EXIF data from scratch, since there would
be no MN data to worry about; but most users want to *edit* EXIF data in
files created by cameras. for that reason alone, i don't make EXIF writing
available in any of my stuff.
-c
__________________________
Chris Losinger
Smaller Animals Software, Inc.
http://www.smalleranimals.com
|
|||||||