Flattened ITPC Fields by Aperture

Aperture’s metadata exporting routines need a little more work.

Aperture seems to flatten into a single string IPTC fields that can hold multiple values such as Keywords, Supplemental Categories, and Contacts — Keywords, Categories and People in iView terms — during import of JPEGs and TIFFs. If and when they ever read the annotation fields in RAW files, I suspect the app will do the same. Annotations in these fields are flattened into one comma-delimited string.

While it’s good that it was able to transfer the data, the format of the data is sub-optimal when you rexport the data and import it into an application like Photoshop or iView. Keywords and Contacts become one keyword string. In CS’s File Info browser, you can separate multiple keywords or people using the semicolon. iView 2.6.4 and 3.0.1 will happily read these annotations correctly.

Nearly four years ago, I was investigating a problem with the EXIF and IPTC in EOS-1D files. Looking at hex files, I discovered Canon created its JPEG headers in such a way so as to cause annotation issues with iView and Photoshop. Looking at the hex screens for images exported with Aperture, it seems something similar is afoot.

Earlier versions of Photoshop placed IPTC information in an APP13 block (sometimes also known as APP14) within a JPEG file. Photoshop called this information the Photoshop Information Block, or PIB. Newer versions of Photoshop place annotation information into an XMP block within saved files. I’m suprised that Apple is still placing information the old way. It might be that Aperture is using some system-level routines to export data. If this is the case, then it might not be Aperture’s fault as it is in Image Events.

IPTC from Aperture/iView in HexEdit

Success!

I had to dig out an ancient version of iView Media Pro 2.0 beta 4 to figure this problem out. Had to change the date of my computer back before July, 2002 to get the iView 2.0 beta to launch! Take a look at how this old version of iView stored its IPTC information:

iView 2.0 beta 4 IPTC

iView used to store annotation information in the resource fork of images. If you look carefully, IPTC fields are separated by 1C02 followed by a hexadecimal denoting the type of field. Caption is 78, for instance, and People/Contact is 76. Additional Contact fields can be made be simply adding additional 1C02 76 blocks. Each block also has the length of the string in hex format. As you can see in the Aperture and iView 2.0b4 hex screenshots, iView’s has multiple instances of the People/Contact block whereas Aperture has just one.

If you manually add an additional 1C02 76 ... block in the Aperture JPEG, iView will correctly read the People field.

Aperture JPEG's IPTC modified manually in HexEdit

Now this all is fine and dandy, but it won’t work in Photoshop, since it never looked for that field in the first place! iView Media Pro has a separate pane in Photoshop CS’s File Info window, but it now looks in the XMP area for People/Contacts.

As for me, I’ll separate values for multiple fields using commas when I go from iView to Aperture. Nothing I can right now for Aperture to iView, but hopefully, this information will get passed onto the team at Apple and a fix for the problem will show up in a future version of the OS/Aperture.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: