256 lines
12 KiB
Plaintext
256 lines
12 KiB
Plaintext
|
ExifTool by Phil Harvey (philharvey66 at gmail.com)
|
||
|
----------------------------------------------------------------------------
|
||
|
|
||
|
ExifTool is a customizable set of Perl modules plus a full-featured
|
||
|
command-line application for reading and writing meta information in a wide
|
||
|
variety of files, including the maker note information of many digital
|
||
|
cameras by various manufacturers such as Canon, Casio, DJI, FLIR, FujiFilm,
|
||
|
GE, HP, JVC/Victor, Kodak, Leaf, Minolta/Konica-Minolta, Nikon, Nintendo,
|
||
|
Olympus/Epson, Panasonic/Leica, Pentax/Asahi, Phase One, Reconyx, Ricoh,
|
||
|
Samsung, Sanyo, Sigma/Foveon and Sony.
|
||
|
|
||
|
Below is a list of file types and meta information formats currently
|
||
|
supported by ExifTool (r = read, w = write, c = create):
|
||
|
|
||
|
File Types
|
||
|
------------+-------------+-------------+-------------+------------
|
||
|
360 r/w | DR4 r/w/c | JNG r/w | O r | RAW r/w
|
||
|
3FR r | DSS r | JP2 r/w | ODP r | RIFF r
|
||
|
3G2 r/w | DV r | JPEG r/w | ODS r | RSRC r
|
||
|
3GP r/w | DVB r/w | JSON r | ODT r | RTF r
|
||
|
A r | DVR-MS r | JXL r | OFR r | RW2 r/w
|
||
|
AA r | DYLIB r | K25 r | OGG r | RWL r/w
|
||
|
AAE r | EIP r | KDC r | OGV r | RWZ r
|
||
|
AAX r/w | EPS r/w | KEY r | ONP r | RM r
|
||
|
ACR r | EPUB r | LA r | OPUS r | SEQ r
|
||
|
AFM r | ERF r/w | LFP r | ORF r/w | SKETCH r
|
||
|
AI r/w | EXE r | LIF r | ORI r/w | SO r
|
||
|
AIFF r | EXIF r/w/c | LNK r | OTF r | SR2 r/w
|
||
|
APE r | EXR r | LRV r/w | PAC r | SRF r
|
||
|
ARQ r/w | EXV r/w/c | M2TS r | PAGES r | SRW r/w
|
||
|
ARW r/w | F4A/V r/w | M4A/V r/w | PBM r/w | SVG r
|
||
|
ASF r | FFF r/w | MACOS r | PCD r | SWF r
|
||
|
AVI r | FITS r | MAX r | PCX r | THM r/w
|
||
|
AVIF r/w | FLA r | MEF r/w | PDB r | TIFF r/w
|
||
|
AZW r | FLAC r | MIE r/w/ | PDF r/w | TORRENT r
|
||
|
BMP r | FLIF r/w | MIFF r c | PEF r/w | TTC r
|
||
|
BPG r | FLV r | MKA r | PFA r | TTF r
|
||
|
BTF r | FPF r | MKS r | PFB r | TXT r
|
||
|
CHM r | FPX r | MKV r | PFM r | VCF r
|
||
|
COS r | GIF r/w | MNG r/w | PGF r | VRD r/w/c
|
||
|
CR2 r/w | GPR r/w | MOBI r | PGM r/w | VSD r
|
||
|
CR3 r/w | GZ r | MODD r | PLIST r | WAV r
|
||
|
CRM r/w | HDP r/w | MOI r | PICT r | WDP r/w
|
||
|
CRW r/w | HDR r | MOS r/w | PMP r | WEBP r
|
||
|
CS1 r/w | HEIC r/w | MOV r/w | PNG r/w | WEBM r
|
||
|
CSV r | HEIF r/w | MP3 r | PPM r/w | WMA r
|
||
|
CZI r | HTML r | MP4 r/w | PPT r | WMV r
|
||
|
DCM r | ICC r/w/c | MPC r | PPTX r | WTV r
|
||
|
DCP r/w | ICS r | MPG r | PS r/w | WV r
|
||
|
DCR r | IDML r | MPO r/w | PSB r/w | X3F r/w
|
||
|
DFONT r | IIQ r/w | MQV r/w | PSD r/w | XCF r
|
||
|
DIVX r | IND r/w | MRC r | PSP r | XLS r
|
||
|
DJVU r | INSP r/w | MRW r/w | QTIF r/w | XLSX r
|
||
|
DLL r | INSV r | MXF r | R3D r | XMP r/w/c
|
||
|
DNG r/w | INX r | NEF r/w | RA r | ZIP r
|
||
|
DOC r | ISO r | NKSC r/w | RAF r/w |
|
||
|
DOCX r | ITC r | NRW r/w | RAM r |
|
||
|
DPX r | J2C r | NUMBERS r | RAR r |
|
||
|
|
||
|
Meta Information
|
||
|
----------------------+----------------------+---------------------
|
||
|
EXIF r/w/c | CIFF r/w | Ricoh RMETA r
|
||
|
GPS r/w/c | AFCP r/w | Picture Info r
|
||
|
IPTC r/w/c | Kodak Meta r/w | Adobe APP14 r
|
||
|
XMP r/w/c | FotoStation r/w | MPF r
|
||
|
MakerNotes r/w/c | PhotoMechanic r/w | Stim r
|
||
|
Photoshop IRB r/w/c | JPEG 2000 r | DPX r
|
||
|
ICC Profile r/w/c | DICOM r | APE r
|
||
|
MIE r/w/c | Flash r | Vorbis r
|
||
|
JFIF r/w/c | FlashPix r | SPIFF r
|
||
|
Ducky APP12 r/w/c | QuickTime r | DjVu r
|
||
|
PDF r/w/c | Matroska r | M2TS r
|
||
|
PNG r/w/c | MXF r | PE/COFF r
|
||
|
Canon VRD r/w/c | PrintIM r | AVCHD r
|
||
|
Nikon Capture r/w/c | FLAC r | ZIP r
|
||
|
GeoTIFF r/w/c | ID3 r | (and more)
|
||
|
|
||
|
See html/index.html for more details about ExifTool features.
|
||
|
|
||
|
ExifTool can be downloaded from
|
||
|
|
||
|
https://exiftool.org/
|
||
|
|
||
|
RUNNING
|
||
|
|
||
|
The exiftool script can be run right away without the need to install
|
||
|
Image::ExifTool. For example, from within the exiftool directory you can
|
||
|
extract the information from one of the included test files by typing:
|
||
|
|
||
|
./exiftool t/images/ExifTool.jpg
|
||
|
|
||
|
If you move the exiftool script to a different directory, you must also
|
||
|
either move the contents of the lib directory or install the Image::ExifTool
|
||
|
package so the script can find the necessary libraries.
|
||
|
|
||
|
Note: If you are using the Windows cmd shell, you may need to rename
|
||
|
'exiftool' to 'exiftool.pl' to run it directly from the command line.
|
||
|
Alternatively, you can run exiftool with the command 'perl exiftool'.
|
||
|
|
||
|
IF YOU ARE STILL CONFUSED
|
||
|
|
||
|
The exiftool script is a command line application. You run it by typing
|
||
|
commands in a terminal window. The first step is to determine the name of
|
||
|
the directory where you downloaded the ExifTool distribution package.
|
||
|
Assuming, for example, you downloaded it to a folder called "Desktop" in
|
||
|
your home directory, then you would type the following commands in a
|
||
|
terminal window to extract and run ExifTool:
|
||
|
|
||
|
cd ~/Desktop
|
||
|
gzip -dc Image-ExifTool-12.44.tar.gz | tar -xf -
|
||
|
cd Image-ExifTool-12.44
|
||
|
./exiftool t/images/ExifTool.jpg
|
||
|
|
||
|
Note: These commands extract meta information from one of the test images.
|
||
|
To use one of your images instead, enter the full path name of your file in
|
||
|
place of "t/images/ExifTool.jpg".
|
||
|
|
||
|
INSTALLATION
|
||
|
|
||
|
You can install the Image::ExifTool package to make it available for use by
|
||
|
other Perl scripts by typing the following:
|
||
|
|
||
|
perl Makefile.PL
|
||
|
make
|
||
|
make test
|
||
|
make install
|
||
|
|
||
|
Notes:
|
||
|
i) You need root access for the last step above.
|
||
|
|
||
|
ii) Some Perl installations (like the standard OSX installation) may not
|
||
|
contain the necessary files to complete the first step above. But no
|
||
|
worries: You can install ExifTool manually by moving 'exiftool' and the
|
||
|
'lib' directory to any directory in your current PATH (ie. /usr/bin).
|
||
|
|
||
|
iii) In Windows, "dmake" or "nmake" may be used if "make" is not
|
||
|
available.
|
||
|
|
||
|
(Also see html/install.html for more help with installation.)
|
||
|
|
||
|
DEPENDENCIES
|
||
|
|
||
|
Requires Perl version 5.004 or later. No other special libraries are
|
||
|
required, however the following modules are recommended for decoding
|
||
|
compressed and/or encrypted information from the indicated file types, and
|
||
|
for calculating digest values and providing other features listed below:
|
||
|
|
||
|
Archive::Zip (ZIP, DOCX, PPTX, XLSX, ODP, ODS, ODT, EIP, iWork)
|
||
|
Compress::Zlib (DNG, PNG, PDF, DCM, MIE and SWF files)
|
||
|
Digest::MD5 (PDF files, IPTC information, and JPG Extended XMP)
|
||
|
Digest::SHA (PDF with AES-256 encryption)
|
||
|
IO::Compress::Bzip2 (RWZ files)
|
||
|
Time::HiRes (for generating ProcessingTime tag)
|
||
|
POSIX::strptime (for inverse date/time conversion)
|
||
|
Time::Piece (alternative to POSIX::strptime)
|
||
|
Unicode::LineBreak (for column alignment of alternate-language output)
|
||
|
Win32::API (for proper handling of Windows file times)
|
||
|
Win32::FindFile (for Windows Unicode directory support, app only)
|
||
|
Win32API::File (for Windows Unicode file names and file times)
|
||
|
IO::Compress::RawDeflate (for writing FLIF images)
|
||
|
IO::Uncompress::RawInflate (for reading FLIF images)
|
||
|
|
||
|
COPYRIGHT AND LICENSE
|
||
|
|
||
|
Copyright 2003-2022, Phil Harvey
|
||
|
|
||
|
This is free software; you can redistribute it and/or modify it under the
|
||
|
same terms as Perl itself.
|
||
|
|
||
|
DISTRIBUTION FILES
|
||
|
|
||
|
Below is a list of the files/directories included in the full ExifTool
|
||
|
distribution package:
|
||
|
|
||
|
Changes - Revision history
|
||
|
MANIFEST - Full list of distribution files
|
||
|
META.json - Standard CPAN dependency file (JSON format)
|
||
|
META.yml - Standard CPAN dependency file (YAML format)
|
||
|
Makefile.PL - Makefile for installation
|
||
|
README - This file
|
||
|
arg_files/ - Argument files to convert metadata formats:
|
||
|
exif2iptc.args - Arguments for converting EXIF to IPTC
|
||
|
exif2xmp.args - Arguments for converting EXIF to XMP
|
||
|
gps2xmp.args - Arguments for converting GPS to XMP
|
||
|
iptc2exif.args - Arguments for converting IPTC to EXIF
|
||
|
iptc2xmp.args - Arguments for converting IPTC to XMP
|
||
|
iptcCore.args - Complete list of IPTC Core XMP tags
|
||
|
pdf2xmp.args - Arguments for converting PDF to XMP
|
||
|
xmp2exif.args - Arguments for converting XMP to EXIF
|
||
|
xmp2gps.args - Arguments for converting XMP to GPS
|
||
|
xmp2iptc.args - Arguments for converting XMP to IPTC
|
||
|
xmp2pdf.args - Arguments for converting XMP to PDF
|
||
|
config_files/ - Sample ExifTool configuration files:
|
||
|
acdsee.config - Definitions for writing ACDSee XMP regions
|
||
|
age.config - Calculate Age of person in photo
|
||
|
bibble.config - Definitions for writing Bibble XMP tags
|
||
|
convert_regions.config - Convert between MWG, MP and IPTC regions
|
||
|
cuepointlist.config - Extract cue points and labels as a list
|
||
|
depthmap.config - Extract Google DepthMap images
|
||
|
example.config - General example showing config features
|
||
|
fotoware.config - Definitions for writing Fotoware XMP tags
|
||
|
gps2utm.config - Generate UTM coordinate tags from GPS info
|
||
|
gpsdatetime.config - Make GPSDateTime from CreateDate+SampleTime
|
||
|
nksc.config - Decode tags in Nikon ViewNX NKSC files
|
||
|
photoshop_paths.config - For extracting or copying Photoshop paths
|
||
|
picasa_faces.config - Convert from Picasa to MWG/MP face regions
|
||
|
rotate_regions.config - Rotate MWG and MP region tags
|
||
|
tiff_version.config - Determine the version of a TIFF file
|
||
|
time_zone.config - Calculate time zone from EXIF tags
|
||
|
exiftool - The exiftool application (Perl script)
|
||
|
fmt_files/ - Output formatting example files:
|
||
|
gpx.fmt - Format file for creating GPX track
|
||
|
gpx_wpt.fmt - Format file for creating GPX waypoints
|
||
|
kml.fmt - Format file for creating KML placemarks
|
||
|
kml_track.fmt - Format file for creating KML track
|
||
|
html/ - HTML documentation
|
||
|
html/TagNames/ - HTML tag name documentation
|
||
|
lib/ - ExifTool Perl library modules
|
||
|
perl-Image-ExifTool.spec - Red Hat Packaging Manager specification file
|
||
|
t/ - Verification test code
|
||
|
t/images/ - Verification test images
|
||
|
|
||
|
ADDITIONAL INFORMATION
|
||
|
|
||
|
Read the following files included in the full distribution for more
|
||
|
information:
|
||
|
|
||
|
html/index.html - Main ExifTool documentation
|
||
|
html/install.html - Installation instructions
|
||
|
html/history.html - Revision history
|
||
|
html/ExifTool.html - API documentation
|
||
|
html/TagNames/index.html - Tag name documentation
|
||
|
html/geotag.html - Geotag feature
|
||
|
html/faq.html - Frequently asked questions
|
||
|
html/filename.html - Renaming/moving files
|
||
|
html/metafiles.html - Working with metadata sidecar files
|
||
|
html/struct.html - Working with structured XMP information
|
||
|
lib/Image/ExifTool/README - ExifTool library modules documentation
|
||
|
|
||
|
and if you have installed Image::ExifTool, you can also consult perldoc or
|
||
|
the man pages:
|
||
|
|
||
|
perldoc exiftool
|
||
|
perldoc Image::ExifTool
|
||
|
perldoc Image::ExifTool::TagNames
|
||
|
|
||
|
man exiftool
|
||
|
man Image::ExifTool
|
||
|
man Image::ExifTool::TagNames
|
||
|
|
||
|
Note: If the man pages don't work, it is probably because your man path is
|
||
|
not set to include the installed documentation. See "man man" for
|
||
|
information about how to set the man path.
|
||
|
|
||
|
----------------------------------------------------------------------------
|