Exiftool

From aldeid
Jump to navigation Jump to search

Description

ExifTool is a tool that manipulates meta information on pictures (reads, writes and edits meta information). The tool is also capable of retrieving thumbnails embedded in jpeg images. It supports a wide variety of metadata formats (EXIF, GPS, IPTC, XMP, JFIF, ...).

Exiftool is certainly the most complete tool that manipulates meta data on pictures.

Installation

Under Linux

From sources

Description

This method installs the last available version of Exiftool (in the time of this writing, version 8.49). This is the recommended installation.

Prerequisites

$ sudo apt-get install perl

Installation of Exiftool

$ cd /data/src/
$ wget http://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-8.49.tar.gz
$ tar xvzf Image-ExifTool-8.49.tar.gz
$ cd Image-ExifTool-8.49/
$ sudo cp -R exiftool lib/ /usr/local/bin/

From packages

This method installs version 7.89.

$ sudo apt-get install libimage-exiftool-perl

Under Windows

Exiftool (CLI)

Download Exif from http://www.sno.phy.queensu.ca/~phil/exiftool/exiftool-8.49.zip, unzip and install.

Then rename "exiftool(-k).exe" to "exiftool.exe".

ExifToolGUI

Download ExifToolGUI from http://freeweb.siol.net/hrastni3/foto/exif/exiftoolgui.zip.

Uncompress in the same directory where you have placed exiftool.

Usage

Syntax

$ exiftool [OPTIONS] [-TAG...] [--TAG...] FILE...
$ exiftool [OPTIONS] -TAG[+-<]=[VALUE]... FILE...
$ exiftool [OPTIONS] -tagsFromFile SRCFILE [-SRCTAG[>DSTTAG]...] FILE...
$ exiftool [ -ver | -list[w|f|wf|g[NUM]|d|x] ]

Options

-TAG, --TAG
Extract or exclude specified tag
-TAG[+-]=[VALUE]
Write new value for tag
-TAG[+-]<=DATFILE
Write tag value from contents of file
-TAG[+-]<SRCTAG
Copy tag value (see -tagsFromFile)
-@ ARGFILE
Read command-line arguments from file
-a, -duplicates
Allow duplicate tag names in output
-b, -binary
Output data in binary format
-c FMT, -coordFormat
Set format for GPS coordinates
-d FMT, -dateFormat
Set format for date/time values
-D, -decimal
Show tag ID numbers in decimal
-e, --composite
Do not calculate composite tags
-E, -escapeHTML
Escape special characters for HTML
-ee, -extractEmbedded
Extract information from embedded files
-ext EXT, -extension
Process files with specified extension
-f, -forcePrint
Force printing of all specified tags
-F[OFFSET], -fixBase
Fix the base for maker notes offsets
-fast
Increase speed for slow devices
-g[NUM...], -groupHeadings
Organize output by tag group
-G[NUM...], -groupNames
Print group name for each tag
-geotag TRKFILE
Geotag images from specified GPS log
-h, -htmlFormat
Use HMTL formatting for output
-H, -hex
Show tag ID number in hexadecimal
-htmlDump[OFFSET]
Generate HTML-format binary dump
-i DIR, -ignore
Ignore specified directory name
-if EXPR
Conditionally process files
-j, -json
Use JSON output format
-k, -pause
Pause before terminating
-l, -long
Use long 2-line output format
-L, -latin
Use Windows Latin1 encoding
-lang [LANG]
Set current language
-list[w|f|wf|g[NUM]|d|x]
List various exiftool attributes
-m, -ignoreMinorErrors
Ignore minor errors and warnings
-n, --printConv
Disable print conversion
-o OUTFILE, -out
Set output file or directory name
-overwrite_original
Overwrite original by renaming tmp file
-overwrite_original_in_place
Overwrite original by copying tmp file
-p FMTFILE, -printFormat
Print output in specified format
-P, -preserve
Preserve date/time of original file
-q, -quiet
Quiet processing
-r, -recurse
Recursively process subdirectories
-s, -short
Short output format
-S, -veryShort
Very short output format
-scanForXMP
Brute force XMP scan
-sep STR, -separator
Set separator string for list items
-struct
Use structured XML or JSON output
-t, -tab
Output in tab-delimited list format
-T, -table
Output in tabular format
-tagsFromFile SRCFILE
Copy tag values from file
-u, -unknown
Extract unknown tags
-U, -unknown2
Extract unknown binary tags too
-v[NUM], -verbose
Print verbose messages
-ver
Print version number and exit
-w EXT, -textOut
Write console output to file
-x TAG, -exclude
Exclude specified tag
-X, -xmlFormat
Use RDF/XML output format
-z, -zip'
Read/write compressed information
-common_args
Define common arguments
-execute
Execute multiple commands on one line
-srcfile FMT
Set different source file name

Examples

Read Exif meta information

$ exiftool.exe CatsmokeingISgood.jpg
ExifTool Version Number         : 8.49
File Name                       : CatsmokeingISgood.jpg
Directory                       : .
File Size                       : 66 kB
File Modification Date/Time     : 2011:02:15 12:24:29+01:00
File Permissions                : rw-rw-rw-
File Type                       : JPEG
MIME Type                       : image/jpeg
JFIF Version                    : 1.01
Exif Byte Order                 : Big-endian (Motorola, MM)
Image Description               :
Make                            : NIKON CORPORATION
Camera Model Name               : NIKON D100
Orientation                     : Horizontal (normal)
X Resolution                    : 300
Y Resolution                    : 300
Resolution Unit                 : inches
Software                        : Adobe Photoshop 7.0
Modify Date                     : 2003:07:07 21:20:30
Y Cb Cr Positioning             : Co-sited
Exposure Time                   : 1/125
F Number                        : 9.0
Exposure Program                : Manual
Exif Version                    : 0220
Date/Time Original              : 2001:07:03 21:03:55
Create Date                     : 2001:07:03 21:03:55
Components Configuration        : Y, Cb, Cr, -
Compressed Bits Per Pixel       : 4
Exposure Compensation           : 0
Max Aperture Value              : 4.1
Metering Mode                   : Center-weighted average
Light Source                    : Unknown
Flash                           : No Flash
Focal Length                    : 60.0 mm
User Comment                    :
Sub Sec Time                    : 90
Sub Sec Time Original           : 90
Sub Sec Time Digitized          : 90
Flashpix Version                : 0100
Color Space                     : Uncalibrated
Exif Image Width                : 3008
Exif Image Height               : 2000
Related Sound File              :
Sensing Method                  : One-chip color area
File Source                     : Digital Camera
Scene Type                      : Directly photographed
CFA Pattern                     : [Green,Red][Blue,Green]
Custom Rendered                 : Normal
Exposure Mode                   : Manual
White Balance                   : Auto
Digital Zoom Ratio              : 1
Focal Length In 35mm Format     : 90 mm
Scene Capture Type              : Standard
Gain Control                    : None
Contrast                        : Normal
Saturation                      : Normal
Sharpness                       : Normal
Subject Distance Range          : Unknown
Compression                     : JPEG (old-style)
Thumbnail Offset                : 1016
Thumbnail Length                : 5539
Current IPTC Digest             : 540c4aedc4be816d04703ac16f5c865e
Application Record Version      : 2
Caption-Abstract                :
IPTC Digest                     : 540c4aedc4be816d04703ac16f5c865e
Displayed Units X               : inches
Displayed Units Y               : inches
Global Angle                    : 30
Global Altitude                 : 30
Copyright Flag                  : False
Photoshop Thumbnail             : (Binary data 5539 bytes, use -b option to extr
act)
Photoshop Quality               : 12
Photoshop Format                : Standard
Progressive Scans               : 3 Scans
Image Width                     : 896
Image Height                    : 684
Encoding Process                : Baseline DCT, Huffman coding
Bits Per Sample                 : 8
Color Components                : 3
Y Cb Cr Sub Sampling            : YCbCr4:2:0 (2 2)
Aperture                        : 9.0
Image Size                      : 896x684
Scale Factor To 35 mm Equivalent: 1.5
Shutter Speed                   : 1/125
Create Date                     : 2001:07:03 21:03:55.90
Date/Time Original              : 2001:07:03 21:03:55.90
Modify Date                     : 2003:07:07 21:20:30.90
Thumbnail Image                 : (Binary data 5539 bytes, use -b option to extract)
Circle Of Confusion             : 0.020 mm
Field Of View                   : 22.6 deg
Focal Length                    : 60.0 mm (35 mm equivalent: 90.0 mm)
Hyperfocal Distance             : 19.97 m

Embedded thumbnail in jpeg

Jpeg picture
Thumb picture disclosed

This example illustrates the dangers of leaving meta information on jpeg images. In this example, we use Exiftool to extract thumbnail embedded in a jpeg picture that has been cropped with Photoshop 7.

First download these pictures:

$ cd /data/tmp
$ wget http://hektik.org/Various/TheBad/cat/img/Cateyes.jpg
$ wget http://hektik.org/Various/TheBad/cat/img/CatsmokeingISgood.jpg

By using Exif, we will discover the *hidden* parts of these pictures (embedded thumbnails):

$ exiftool -b -ThumbnailImage Cateyes.jpg > Cateyes.thumb.jpg
$ exiftool -b -ThumbnailImage CatsmokeingISgood.jpg > CatsmokeingISgood.thumb.jpg

The tools is capable of embed the thumbnails back to the original pictures:

$ exiftool "-ThumbnailImage<=Cateyes.thumb.jpg" Cateyes.jpg
$ exiftool "-ThumbnailImage<=CatsmokeingISgood.thumb.jpg" CatsmokeingISgood.jpg

Comments