iPhoto Now Supports IPTC Metadata

I've just noticed that iPhoto now has rudimentary support for importing embedded IPTC metadata from images. Even better any changes made by iPhoto to the title, keywords or caption fields are correctly updated when you export the image from iPhoto.

I haven't seen any mention of this anywhere so I figured I'd write it up and show people how it works.

  1. Start with any JPEG photo and add some IPTC metadata. I used the free trial of Graphic Converter to do this but there are many alternatives including Photoshop.
  2. Verify that the IPTC metadata was successfully added to the image by selecting the image in Finder and using the “File - Get Info” menu. The IPTC data should show up in the “More Info” section. Another way to verify this is to use the exiv2 command line tool which is available via Mac Ports.
            # exiv2 -p i pr ~/Desktop/iptc\ test\ picture\ \(pre-iphoto\).jpg | egrep "2\.(ObjectName|Keywords|Caption)"
            Iptc.Application2.Caption                    String     17  this is a caption
            Iptc.Application2.ObjectName                 String     18  title is blah blah
            Iptc.Application2.Keywords                   String      8  keyword1
            Iptc.Application2.Keywords                   String      8  keyword2
            Iptc.Application2.Keywords                   String     20  keyword with a space
  3. Import the photo into iPhoto, you should see the IPTC information translated into the photo's title, keywords and caption.
  4. Change any of the title, keywords or caption information that you want.
  5. Export the image from iPhoto using the “File - Export” menu (this does not seem to work if you drag and drop the image from iPhoto). It's important that you select JPG as the image type and tick the “Include title and keywords” box.
  6. Inspect the IPTC metadata on the new file and it should be updated to reflect the changes you made in iPhoto! w00t!
            exiv2 -p i pr ~/Desktop/iptc\ test\ picture.jpg | egrep "2\.(ObjectName|Keywords|Caption)"
            Iptc.Application2.Keywords                   String     14  iphoto keyword
            Iptc.Application2.Keywords                   String     17  surprise butsectx
            Iptc.Application2.ObjectName                 String     12  iphoto title
            Iptc.Application2.Caption                    String     39  nobody expects the spanish inquisition.

In theory you should be able to do this with TIFF as well as JPEG images but I haven't tested it.

If you discover any other information about iPhoto's IPTC support please let me know!

UPDATE: The Tao of Mac reports that none of this is yet scriptable. Stink.


2014 by adam shand. sharing is an act of love, please share.