Monday, August 01, 2005

QuickTime bug: MakerNote info corruption (also affects iPhoto)

JakeO.com - Exifixer is an EXIF image reader library in PHP

This bug apparently causes massive bloat and slowdown in some iPhoto libraries: "QuickTime (including iPhoto) messes up the MakerNote tag for certain photos (no workaround yet)".

From Macintouch on 7/27:

Eric Lindsay

...This occurs when photographs from certain cameras including some or all Pentax and Nikon are included in your Library. These cameras include in their JPG EXIF information called a MakerNote. For most cameras the MakerNote is a few hundred bytes. In a Pentax Optio, the MakerNote is around 40KB.

iPhoto 4 stores the MakerNote in the Data directory for each day of photos, in a file called *.attr There is one such .attr file for each photo. Because iPhoto 4 has separate files, it does not slow down on closing the way iPhoto 5 does.

iPhoto 5 combines all these .attr files with their large MakerNotes in a file called Library.iPhoto. If you have say 6000 photos, and each has a 40KB MakerNote included, this makes Library.iPhoto expand to over 250MB.

If you have such a bloated Library in iPhoto 5, you can demonstrate this making a new Library from a bunch of photos. Then remove the MakerNote from the same bunch of photos, and import them into another new Library. Compare the size of Library.iPhoto.

There is a Perl script at anders.hultman.nu/data/makernote that can remove MakerNote. You need to amend the first line to point at your copy of Perl, and put the rmmn-100.pl script in your $PATH

So there are perhaps two issues:
  1. MakerNote corruption problem (maybe fixed since first noted)?
  2. Design issue with how iPhoto 5 consolidates MakerNotes (size not bigger than iPhoto 4 really, but slow shutdown due to how data is managed for users of Nikon cameras).
I use Canon cameras, so I'm not affected. Sounds like it may be a combination of more than one bug and a design decision.

No comments: