iPhoto Date/Time Shift (not the "normal" problem)

Started by tucsonbil, September 27, 2011, 04:51:47 PM

Previous topic - Next topic

tucsonbil

Good afternoon:

I'm running OS 10.7 and using iPhoto 9.1.5 and am trying to embed the date / time into the EXIF data for each photo. I have  24,000+ photos. Most of the them are accurately embedded with the time/date, but thousands have been scanned and imported with "the date" then modified to reflect when the original photo was taken (but these dates/times are not embedded in the EXIF data) ...

I need something that will advance through each of the photos AND that recognizes the existing date / time (embedded or not) of each individual photo and THEN adds 1 second of time to that and then saves the adjusted date into the photo EXIF data ("Adjust date/time" -> Modify original files") ...

I think that the problem here is that when a scan is imported into iPhoto there is no EXIF data related to the date. The "date" which is listed on the scanned photo (in iPhoto) is the date/time of the import (and it's not in EXIF Format). Most of my imported scans were manually time shifted ... without "modifying the original file" ... so there is no EXIF date data embedded in the first place (iPhoto must maintain a separate database of dates in these cases)

Is this something that ExifTool can help with?

Phil Harvey

I'm not sure why you want to add 1 second to each date/time, but I think exiftool can do what you want.

To copy the file modification date/time to the exif, but only if it didn't previously exist, use this command:

exiftool "-datetimeoriginal<filemodifydate" -if 'not $datetimeoriginal' -r ~/Desktop/images

This assumes that the images are in a folder called "images" on your desktop, but you can change this to whatever you want.  Note that the command will automatically create "_original" backup files, but you can disable this by adding the -overwrite_original option if you already have backups.

Then, to add 1 second to the common date/time metadata values:

exiftool -alldates+=0:0:1 -r ~/Desktop/images

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).