Monday 14 September 2009

Aperture Bug — EXIF Data Missing in Exported Images

I really like Aperture. It's got a simple and intuitive interface, and gives you a lot of power to store, organise, prepare, manipulate, etc your photos. I've been using it for about a year now, and on the whole, it's great...

Of course, like any software, I have a few issues with it... some are simple UI annoyances, speed issues, the occasional, but temporary bug... but there's one that Apple seem to consistently ignore (I've sent them bug reports about it several times over the last year, and it still remains)... to the point where I wonder if somehow there's only a few of us suffering from this bug.

The bug in question is fairly simple, and completely repeatable (for me at least).

Step 1: You take a photo, and import it into Aperture.
Step 2: You do whatever it is you do in Aperture to your photos.
Step 3: You export the finished version (specifically the Version, not the Master).

This export step might be using basic "Export Version(s)" option of Aperture, or it might be using an export plug-in such as FlickrExport by Connected Flow (which essentially exports the versions to temporary files so the plug-in can do something with them). Either way, it's the same process of creating a JPEG file from your master, with your modifications applied.

Step 4: Notice the missing EXIF fields (e.g. in the 'more details' link on Flickr, using a program like ExifTool, or even importing the version into another photo application like iPhoto)

Now, perhaps for most people, nothing has gone wrong... The file has been exported, and it looks like it should. Unfortunately, Apple seem to have decided to not include a bunch of EXIF fields. Up until April 2009, this included things like Longitude and Latitude (which upset some people) — but that was fixed in 2.1.3 (not that they mentioned it in the release notes). Unfortunately, that was all they fixed — lens and flash information are still excluded for no apparent reason.

So you ask, why would anyone care, it's just some EXIF data that most people don't even know how to access? Mostly just education and/or curiosity on sites like Flickr, where you can see what settings and equipment people used to take specific photos. The internet is a great tool for learning, and with massive databases and information sources like Flickr, people can answer all sorts of questions and learn all sorts of things from the work of others.

So what are the actual differences?
I used ExifTool to read the EXIF data from a Master and Version of the same photo (with some modifications) and found the following notable differences.

Firstly some additional data is in the Version JPEG (which I would say is generally a Good Thing™, yay!)
  • File name, size, resolution, etc that have changed are of course updated in the Version as they should be.
  • Headline, Caption, Keywords etc from IPTC info are added. Cool.
  • A bunch of EXIF info is added to the Version regarding colour profiles (about 30 EXIF fields relating to colour profiles in fact... I won't list them all, but things like Color Space Data and Profile Description).
Then some information has been changed between the Version and Master JPEGs (some good, some odd)
  • GPS Longitude and GPS Latitude have lost some precision (tsk tsk, is someone carelessly type casting...?). In my example image, it's about 0.3 seconds, so not huge, but still unnecessary.
  • Focal Plane X Resolution and Focal Plane Y Resolution have also lost precision (a change of about 0.0001 — probably no big deal!)
  • Scale Factor to 35mm Equivalent, Circle Of Confusion, Field of View, 35mm Focal Length and Hyperfocal Distance have all been updated. I'm fairly sure this is because I cropped the image, so these are probably intelligent changes.
  • Y Cb Cr Sub Sampling changed from YCbCr4:2:0 (2 2) to YCbCr4:2:2 (2 1). Don't really know what this is, so not sure if it makes sense or not...
  • EXIF Byte Order changed from Little-endian (Intel, II) to Big-endian (Motorola, MM). No big deal, this is just the way the EXIF data is formatted at the bit/byte level.
And, as per my complaint, they've left out a bunch of EXIF fields. There's 165 in total that have been neglected, so I'll just list a few that I believe would be useful for some photographers...
  • Lens Type — Canon EF 50mm f/1.8 MkII (and other Lens related data), or
  • Lens Model — EF50mm f/1.8 II
  • Macro Mode — Normal
  • Self Timer — Off
  • Quality — Fine
  • Canon Flash Mode — External Flash
  • Flash Activity — 146
  • Flash Bits — E-TTL, External
  • Flash Exposure Compensation — -1
  • Flash Sync Speed Av — 1/200 Fixed
  • Continuous Drive — Single
  • Focus Mode — One-shot AF
  • Record Mode — JPEG
  • Canon Image Size — Medium
  • Canon Exposure Mode — Manual
  • Measured EV — 0.75
  • Picture Style — Standard
  • AF Mode — Single-point AF
  • and so on...
Some of these I think would be useful to gain a bit more info about the scene being shot and how it was shot, and in plenty of cases give people a bit more info on how other photographers use their camera (e.g. the flash information or even that I use a single AF point).

I realise that copying the camera settings of another photographer, much like copying their camera body or lenses doesn't make better photos, but it does give people ideas to try out. There have been plenty of times I've seen 'odd' settings in the 'more details' tab on Flickr, or seen people describe settings that I'd not normally use which have helped me learn more about my camera and how it works. So I think this would actually be quite useful for those of us who do have a look behind the scenes on photos we wish we could take ourselves.

I really wish Apple would stop ignoring this problem. If it bugs you too, please head over to the Aperture feedback form and tell them to fix it as well! Feel free to link to or copy sections of this post that you feel they should fix (e.g. the specific EXIF fields you want them to include in exported versions).

My experience is with a Canon EOS 450D (aka XSi or Kiss X2), so no doubt the EXIF data will be a little different for other Canons and other brands, so you might even want to use ExifTool to check out what Aperture is ignoring for you! I recommend using a 'diff' tool (such as FileMerge which comes with the Apple Developer Tools or the command line 'diff') to compare the outputs from ExifTool.

1 comment:

müzso said...

Thanks for the in-depth description on the current status of the bug. One addition: I've looked at my older JPGs produced with Aperture 1.5.x and they have all sorts of EXIF fields (eg. lens type and model are there). Thus I think that this "bug" (which I'm quite sure is a feature in Apple's eyes) came in only with Aperture 2.x. I hope they fix it before I get to switch to some other RAW conversion solution (there're not too many alternatives though).