Change EXIF meta-data of multiple images in single click
I ran into big problem yesterday night.
I took out my old digital camera, and started using it without setting current date and time.
All photos clicked now have date as Jan 01, 2009
I want to change the date and time (and other EXIF image meta-data) of multiple images.
Please recommend some software which can process on multiple images in single click/go.
ExifTool is the one to go for.
It has a time shift feature that allows you to shift the dates.
Date/Time Shift Feature
Have you ever forgotten to set the date/time on your digital camera before taking a bunch of pictures? ExifTool has a time shift feature that makes it easy to apply a batch fix to the timestamps of the images (ie. change the "Date Picture Taken" reported by Windows Explorer). Say for example that your camera clock was reset to 2000:01:01 00:00:00 when you put in a new battery at 2005:11:03 10:48:00. Then all of the pictures you took subsequently have timestamps that are wrong by 5 years, 10 months, 2 days, 10 hours and 48 minutes. To fix this, put all of the images in the same directory ("DIR") and run exiftool:
exiftool "-DateTimeOriginal+=5:10:2 10:48:0" DIR
The example above changes only the DateTimeOriginal tag, but any writable date or time tag can be shifted, and multiple tags may be written with a single command line. Commonly, in JPEG images, the DateTimeOriginal, CreateDate and ModifyDate values must all be changed. For convenience, a shortcut tag called AllDates has been defined to represent these three tags. So, for example, if you forgot to set your camera clock back 1 hour at the end of daylight savings time in the fall, you can fix the images with:
exiftool -AllDates-=1 DIR
See Image::ExifTool::Shift.pl (download in PDF format) for details about the syntax of the time shift string.
Some things to note:
Test on a small batch of copies first until you get the date syntax you want.
I suggest you copy or move your images to a new folder first. And run the command on that directory.
If you run exiftool on a directory it will look in sub directories and modify any image files it finds.
Exiftool WILL automatically append '_original' on the end of your original files and create a new copy for you with the modifications.
You can override this by using the '-overwrite_original' option.
exiftool -overwrite_original -AllDates+="0:2:1 10:48:0" /Users/UserName/Desktop/testFolder
This example shifts forward 0 years, 2 months, 1 day, 10 hours, 48 minutes, 0 seconds.
Using a single set of time shifts i.e instead of "0:2:1 10:48:0" you use "10:48:0".
Exiftool will see this as hh:mm:ss.
And you can omit 0 where you do not want to put a shift.
exiftool -overwrite_original AllDates+="9::" /Users/UserName/Desktop/testFolder
This example shifts forward 9 hours.
exiftool -overwrite_original -AllDates-="9::" /Users/UserName/Desktop/testFolder
This example shifts back 9 hours.
Notice AllDates-=" and AllDates+=" , one has a plus one has a minus.
Also Remember you are shifting time not stamping a time stamp.
So if my original date was : 2011:07:21 01:41:29
and I used exiftool -overwrite_original -AllDates-="24::" /Users/UserName/Desktop/testFolder
Then I would get : 2011:07:20 01:41:29
Do download the PDF with the syntax
And make sure you look at the difference with the options -overwrite_original_in_place and -overwrite_original
Documentation
OS X Photos app has this functionality built in, under Image -› Adjust Date and Time.
It opens a dialog showing current time stamp and prompting for corrected one. If multiple images were selected, date and time of the first photo is shown; the adjustment is used to calculate time shift to apply to all selected photos.