By Forrest Cook
September 12, 2007
Phil Harvey's
ExifTool
utility is a cross-platform Perl-based application that can be used
to inspect and modify
Exchangeable image file format (Exif) metadata from digital images:
ExifTool is a platform-independent Perl library plus a command-line application for reading, writing and editing meta information in image, audio and video files. ExifTool supports many different types of metadata including EXIF, GPS, IPTC, XMP, JFIF, GeoTIFF, ICC Profile, Photoshop IRB, FlashPix, AFCP and ID3, as well as the maker notes of many digital cameras by Canon, Casio, FujiFilm, HP, JVC/Victor, Kodak, Leaf, Minolta/Konica-Minolta, Nikon, Olympus/Epson, Panasonic/Leica, Pentax/Asahi, Ricoh, Sanyo, Sigma/Foveon and Sony.
Exiftool has a long list of
features, these include reading and modifying data from a large
number of digital cameras, support for a long list of image
filetypes, operation on single files and directory trees of files
and much more. A huge number of metadata
tag names are supported.
Installation of ExifTool on a Ubuntu 7.04 system involved the
trivial step of selecting the libimage-exiftool-perl package in the
synaptic package management application and selecting "install".
The perl-doc package was
also added to support the application's online documentation.
ExifTool was run on a test image, the
example output
shows the large amount of image metadata produced by a modern
digital camera (Nikon Coolpix S10). Lots of useful information
was found, such as the image resolution, creation date/time
and camera exposure settings for the particular image.
Your author experimented a bit with changing some fields in
his test image. Changing a writable field was as simple as typing:
exiftool -Comment="new comment" DSCN0432.JPG on the command
line, but some difficulty was found with modifying multi-word field
names, specifically "User Comment". The documentation was
consulted and the command
exiftool -listw DSCN0432.JPG was run, showing a long list
of writable field names.
A discrepancy involving inter-word whitespace was found between
the displayed field names and those that need to be entered on the
command line. The online manual could be a bit more clear on this point.
Still, no luck was had changing the "User Comment" field.
The problem was finally resolved by using the -m flag to ignore
"minor errors" such as "Bad NikonPreview directory", which showed up
when examining images from this particular camera. Running
exiftool -m -UserComment="new user comment" DSCN0432.JPG
finally produced the desired change to the image metadata.
The project's
version history notes the recent release of version 6.96,
which adds support for a number of camera manufacturers' subfields
and fixes some bugs. The software is available for download from the
ExifTool
project page, or older versions may be installed from your favorite
distribution's package repository. ExifTool has been released under the
same licensing terms
as the Perl language.
If you need to examine or modify Exif data from digital images,
ExifTool is a powerful tool that can get the job done.
(
Log in to post comments)