How to get/edit EXIF meta-data of multiple images?

35,954

Solution 1

Changing the date and time are easy in Shotwell. Select the photos you want to adjust and go to the menu like this:

shotwell menu

Select Photos/Adjust date and time. That brings up a menu like this:

time date adjust

If all the photos are off by the same amount, you can do them all in one go. If you used more than one camera and they were off by different amounts, you have to divide them and do each batch separately.

Shotwell's help page explaining this is here.

Solution 2

This question asked for EXIF, but image metadata has at least three standards that can be attached to images, EXIF, XMP, and IPTC. Many photo programs will write to all of these formats, but not all, so it's important to check all of them.

I've found that exif is a good tool, but that exiv2 is better. Compare exif:

↪ exif 00000020.jpg 
EXIF tags in '00000020.jpg' ('Intel' byte order):
--------------------+----------------------------------------------------------
Tag                 |Value
--------------------+----------------------------------------------------------
Software            |Shotwell 0.22.0
Date and Time       |1905:01:01 00:00:01
X-Resolution        |72
Y-Resolution        |72
Resolution Unit     |Inch
Date and Time (Origi|1905:01:01 00:00:01
Date and Time (Digit|1905:01:01 00:00:01
User Comment        |Dad
Exif Version        |Exif Version 2.1
FlashPixVersion     |FlashPix Version 1.0
Color Space         |Internal error (unknown value 65535)
--------------------+----------------------------------------------------------

To exiv2:

↪ exiv2 -p a 00000020.jpg 
Exif.Image.Software                          Ascii      16  Shotwell 0.22.0
Exif.Image.DateTime                          Ascii      20  1905:01:01 00:00:01
Exif.Image.ExifTag                           Long        1  86
Exif.Photo.DateTimeOriginal                  Ascii      20  1905:01:01 00:00:01
Exif.Photo.DateTimeDigitized                 Ascii      20  1905:01:01 00:00:01
Exif.Photo.UserComment                       Undefined  11  Dad
Iptc.Application2.Program                    String      8  Shotwell
Iptc.Application2.ProgramVersion             String      6  0.22.0
Iptc.Application2.Keywords                   String      8  2015scan
Iptc.Application2.Keywords                   String     11  Lissner-Jay
Iptc.Application2.Keywords                   String      6  People
Xmp.exif.DateTimeOriginal                    XmpText    20  1905:01:01 08:00:01
Xmp.exif.DateTimeDigitized                   XmpText    20  1905-01-01T08:00:01Z
Xmp.xmp.CreateDate                           XmpText    20  1905-01-01T08:00:01Z
Xmp.dc.subject                               XmpBag      3  2015scan, Lissner-Jay, People
Xmp.digiKam.TagsList                         XmpSeq      2  People, People/Lissner-Jay
Xmp.MicrosoftPhoto.LastKeywordXMP            XmpBag      2  People, People/Lissner-Jay

The big difference here being that the keywords in XMP and IPTC aren't in EXIF at all and so if I only looked there, I'd think it didn't have keywords.

I gave the command exiv2 -p a my-image.jpg because that displays all three forms of metadata. Leaving out -p a will just show you the EXIF data.

Share:
35,954

Related videos on Youtube

I-M-JM
Author by

I-M-JM

Updated on September 18, 2022

Comments

  • I-M-JM
    I-M-JM over 1 year

    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 multiple images in single click/go.

  • Admin
    Admin over 11 years
    +1, Outstanding answer Mik. This is much more flexible than just using Shotwell.
  • Admin
    Admin over 9 years
    I stumbled on this answer because I was looking at how to add EXIF data to jpg images that didn't have it in the first place. For that, I found that I needed jhead -mkexif -ts<date>.
  • Admin
    Admin almost 9 years
    jhead was just great to use.
  • Leonardo Castro
    Leonardo Castro almost 8 years
    Shotwell top menu options are not showing up here. Is that a bug of Xenial Xerus?
  • Admin
    Admin over 5 years
    1. Note that unfortunately the EXIF standard doesn't include timezone info. 2. Instead of asterisk you could use brace expansion: DSCN{120..345}.jpg. 3. To change file timestamp using other as reference use touch -r ~/path/reference.jpg *.jpg