Import Upstream version 12.44

This commit is contained in:
denghao 2022-10-08 12:37:59 +03:00
commit 14a36b707e
1130 changed files with 615737 additions and 0 deletions

10183
Changes Normal file

File diff suppressed because it is too large Load Diff

1130
MANIFEST Normal file

File diff suppressed because it is too large Load Diff

51
META.json Normal file
View File

@ -0,0 +1,51 @@
{
"abstract" : "Read and write meta information",
"author" : [
"Phil Harvey (philharvey66 at gmail.com)"
],
"dynamic_config" : 1,
"generated_by" : "ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter version 2.133380",
"license" : [
"perl_5"
],
"meta-spec" : {
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
"version" : "2"
},
"name" : "Image-ExifTool",
"no_index" : {
"directory" : [
"t",
"inc"
]
},
"prereqs" : {
"build" : {
"requires" : {
"ExtUtils::MakeMaker" : "0"
}
},
"configure" : {
"requires" : {
"ExtUtils::MakeMaker" : "0"
}
},
"runtime" : {
"recommends" : {
"Archive::Zip" : "0",
"Compress::Zlib" : "0",
"Digest::MD5" : "0",
"Digest::SHA" : "0",
"IO::Compress::RawDeflate" : "0",
"IO::Uncompress::RawInflate" : "0",
"POSIX::strptime" : "0",
"Time::HiRes" : "0"
},
"requires" : {
"perl" : "5.004"
}
}
},
"release_status" : "stable",
"version" : "12.44"
}

31
META.yml Normal file
View File

@ -0,0 +1,31 @@
---
abstract: 'Read and write meta information'
author:
- 'Phil Harvey (philharvey66 at gmail.com)'
build_requires:
ExtUtils::MakeMaker: 0
configure_requires:
ExtUtils::MakeMaker: 0
dynamic_config: 1
generated_by: 'ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter version 2.133380'
license: perl
meta-spec:
url: http://module-build.sourceforge.net/META-spec-v1.4.html
version: 1.4
name: Image-ExifTool
no_index:
directory:
- t
- inc
recommends:
Archive::Zip: 0
Compress::Zlib: 0
Digest::MD5: 0
Digest::SHA: 0
IO::Compress::RawDeflate: 0
IO::Uncompress::RawInflate: 0
POSIX::strptime: 0
Time::HiRes: 0
requires:
perl: 5.004
version: 12.44

52
Makefile.PL Normal file
View File

@ -0,0 +1,52 @@
use ExtUtils::MakeMaker;
use File::Spec;
my $ExifTool_pm = File::Spec->catfile('lib', 'Image', 'ExifTool.pm');
my $ExifTool_pod = File::Spec->catfile('lib', 'Image', 'ExifTool.pod');
WriteMakefile(
NAME => 'Image::ExifTool',
VERSION_FROM => $ExifTool_pm,
PREREQ_PM => { },
(($ExtUtils::MakeMaker::VERSION gt '6.31' and
$ExtUtils::MakeMaker::VERSION lt '6.46') ?
(EXTRA_META => "recommends:\n" .
" Archive::Zip: 0\n" .
" Compress::Zlib: 0\n" .
" Digest::MD5: 0\n" .
" Digest::SHA: 0\n" .
" Time::HiRes: 0\n" .
" POSIX::strptime: 0\n" .
" IO::Compress::RawDeflate: 0\n" .
" IO::Uncompress::RawInflate: 0\n" ,
# (not worth recommending -- only for column alignment of some languages)
# " Unicode::LineBreak: 0\n",
# (not worth recommending -- only for Rawzor files)
# " IO::Compress::Bzip2: 0\n",
) : ()),
($ExtUtils::MakeMaker::VERSION ge '6.46' ?
(META_MERGE => {
recommends => {
'Archive::Zip' => 0,
'Compress::Zlib' => 0,
'Digest::MD5' => 0,
'Digest::SHA' => 0,
'Time::HiRes' => 0,
'POSIX::strptime' => 0,
'IO::Compress::RawDeflate' => 0,
'IO::Uncompress::RawInflate' => 0,
# 'Unicode::LineBreak' => 0,
# 'IO::Compress::Bzip2' => 0,
},
} ) : ()),
clean => { FILES => 't/*.tmp' },
EXE_FILES => [ 'exiftool' ],
($] >= 5.005 ?
(ABSTRACT_FROM => $ExifTool_pod,
AUTHOR => 'Phil Harvey (philharvey66 at gmail.com)',
) : ()),
(($ExtUtils::MakeMaker::VERSION gt '6.30') ?
(LICENSE => 'perl') : ()),
(($ExtUtils::MakeMaker::VERSION ge '6.47') ?
(MIN_PERL_VERSION => '5.004') : ()),
);

255
README Normal file
View File

@ -0,0 +1,255 @@
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.
----------------------------------------------------------------------------

31
arg_files/exif2iptc.args Normal file
View File

@ -0,0 +1,31 @@
#------------------------------------------------------------------------------
# File: exif2iptc.args
#
# Description: Tag name translations for converting EXIF to IPTC
#
# Usage: exiftool -tagsFromFile SRCFILE -@ exif2iptc.args DSTFILE
#
# Requires: ExifTool version 6.51 or later
#
# Revisions: 2011/09/13 - P. Harvey Created
# 2017/07/06 - PH Set time zone from new EXIF OffsetTime tags
#
# Notes: 1) IPTC requires a timezone but EXIF does not support one, so
# the local timezone is assumed when writing the IPTC times
#
# 2) These arguments will not delete existing IPTC tags which are
# missing from the EXIF. The IPTC tags should be deleted
# beforehand if required.
#------------------------------------------------------------------------------
-IPTC:By-line < EXIF:Artist
-IPTC:CopyrightNotice < EXIF:Copyright
-IPTC:Caption-Abstract < EXIF:ImageDescription
# the inverse IPTC date and time conversions automagically pull the
# appropriate date or time part out of the EXIF date/time value
-IPTC:DateCreated < EXIF:DateTimeOriginal
-IPTC:TimeCreated < EXIF:DateTimeOriginal
-IPTC:TimeCreated < Composite:SubSecDateTimeOriginal
-IPTC:DigitalCreationDate < EXIF:CreateDate
-IPTC:DigitalCreationTime < EXIF:CreateDate
-IPTC:DigitalCreationTime < Composite:SubSecCreateDate
# end

53
arg_files/exif2xmp.args Normal file
View File

@ -0,0 +1,53 @@
#------------------------------------------------------------------------------
# File: exif2xmp.args
#
# Description: Tag name translations for converting EXIF to XMP
#
# Usage: exiftool -tagsFromFile SRCFILE -@ exif2xmp.args DSTFILE
#
# Requires: ExifTool version 10.96 or later
#
# Revisions: 2009/01/20 - P. Harvey Created
# 2011/06/22 - PH Copy flash information via Composite:Flash
# 2013/06/12 - PH Additions for the Exif 2.3 for XMP spec
# 2015/01/12 - PH Avoid copying to non-standard namespaces
# 2018/05/07 - PH Added support for GPSDestXxxRef tags
# 2022/03/31 - PH IPTC Photometadata Mapping Guidelines 2202.1 update
#
# References: http://www.metadataworkinggroup.org/specs/
# https://iptc.org/std/photometadata/documentation/mappingguidelines/
#
# Notes: 1) The first three arguments copy most of the EXIF and GPS tags to
# XMP-exif/XMP-tiff, and the remaining arguments handle tags
# which have different names and/or formats in EXIF and XMP.
#
# 2) These arguments will not delete existing XMP tags which are
# missing from the EXIF. The XMP tags should be deleted
# beforehand if required.
#
# 3) EXIF:SubjectArea is not currently mapped into XMP-iptcExt:ImageRegion
#------------------------------------------------------------------------------
-XMP-exif:all < EXIF:all
-XMP-exifEX:all < EXIF:all
-XMP-tiff:all < EXIF:all
-XMP-dc:Description < EXIF:ImageDescription
# overwrite date/time values to include sub-second information if available
-XMP-photoshop:DateCreated < EXIF:DateTimeOriginal
-XMP-photoshop:DateCreated < Composite:SubSecDateTimeOriginal
-XMP-xmp:CreateDate < EXIF:CreateDate
-XMP-xmp:CreateDate < Composite:SubSecCreateDate
-XMP-xmp:ModifyDate < EXIF:ModifyDate
-XMP-xmp:ModifyDate < Composite:SubSecModifyDate
-XMP-xmp:CreatorTool < EXIF:Software
-XMP-dc:Rights < EXIF:Copyright
-XMP-dc:Creator < EXIF:Artist
-XMP-iptcExt:DigitalImageGUID < EXIF:DigImageGUID
# XMP flash information is translated by the Composite Flash tag
-Composite:Flash < EXIF:Flash
# overwrite GPS tags which have different formats in XMP
-XMP:GPSLatitude < Composite:GPSLatitude
-XMP:GPSLongitude < Composite:GPSLongitude
-XMP:GPSDestLatitude < Composite:GPSDestLatitude
-XMP:GPSDestLongitude < Composite:GPSDestLongitude
-XMP:GPSDateTime < Composite:GPSDateTime
# end

27
arg_files/gps2xmp.args Normal file
View File

@ -0,0 +1,27 @@
#------------------------------------------------------------------------------
# File: gps2xmp.args
#
# Description: Argument file for copying GPS information from EXIF to XMP
#
# Usage: exiftool -tagsFromFile SRCFILE -@ gps2xmp.args DSTFILE
#
# Requires: ExifTool version 10.96 or later
#
# Revisions: 2009/01/09 - P. Harvey Created
# 2018/05/07 - PH Handle GPSDestLatitude/LongitudeRef tags
#
# Notes: 1) Most of the GPS tags are copied by the first argument, but
# the XMP GPS coordinate and date/time tags are composites of
# more than one EXIF GPS tag, so they are handled separately.
#
# 2) These arguments will not delete existing XMP tags which are
# missing from the GPS. The XMP GPS tags should be deleted
# first with "-xmp:gps*=" if required.
#------------------------------------------------------------------------------
-XMP:all < GPS:all
-XMP:GPSLatitude < Composite:GPSLatitude
-XMP:GPSLongitude < Composite:GPSLongitude
-XMP:GPSDestLatitude < Composite:GPSDestLatitude
-XMP:GPSDestLongitude < Composite:GPSDestLongitude
-XMP:GPSDateTime < Composite:GPSDateTime
# end

24
arg_files/iptc2exif.args Normal file
View File

@ -0,0 +1,24 @@
#------------------------------------------------------------------------------
# File: iptc2exif.args
#
# Description: Tag name translations for converting IPTC to EXIF
#
# Usage: exiftool -tagsFromFile SRCFILE -@ iptc2exif.args DSTFILE
#
# Requires: ExifTool version 7.98 or later
#
# Revisions: 2011/09/13 - P. Harvey Created
# 2017/07/06 - PH Set new EXIF OffsetTime tags
#
# Notes: These arguments will not delete existing EXIF tags which are
# missing from the IPTC. The EXIF tags should be deleted
# beforehand if required.
#------------------------------------------------------------------------------
-EXIF:Artist < IPTC:By-line
-EXIF:Copyright < IPTC:CopyrightNotice
-EXIF:ImageDescription < IPTC:Caption-Abstract
-EXIF:DateTimeOriginal < Composite:DateTimeCreated
-EXIF:CreateDate < Composite:DigitalCreationDateTime
-EXIF:OffsetTimeOriginal < IPTC:TimeCreated
-EXIF:OffsetTimeDigitized < IPTC:DigitalCreationTime
# end

57
arg_files/iptc2xmp.args Normal file
View File

@ -0,0 +1,57 @@
#------------------------------------------------------------------------------
# File: iptc2xmp.args
#
# Description: Tag name translations for converting from IPTC to XMP
#
# Usage: exiftool -tagsFromFile SRCFILE -@ iptc2xmp.args DSTFILE
#
# Requires: ExifTool version 7.45 or later
#
# Revisions: 2005/05/14 - P. Harvey Created
# 2008/03/04 - PH Changed Location translation and added
# IntellectualGenre and SubjectCode
# 2008/09/30 - PH Added writing of Photoshop:IPTCDigest
# 2009/01/20 - PH Updated to conform with MWG spec
# 2009/10/21 - PH Write XMP-xmp:CreateDate as per MWG 1.01 spec
#
# References: http://www.iptc.org/IPTC4XMP/
# http://www.iptc.org/IIM/
# http://www.adobe.com/products/xmp/pdfs/xmpspec.pdf
# http://www.metadataworkinggroup.org/specs/
#
# Notes: 1) Also updates Photoshop:IPTCDigest as per MWG recommendation.
#
# 2) These arguments will not delete existing XMP tags which are
# missing from the IPTC. The XMP tags should be deleted
# beforehand if required.
#------------------------------------------------------------------------------
-XMP-dc:Creator < IPTC:By-line
-XMP-dc:Description < IPTC:Caption-Abstract
-XMP-dc:Rights < IPTC:CopyrightNotice
-XMP-dc:Subject < IPTC:Keywords
-XMP-dc:Title < IPTC:ObjectName
-XMP-photoshop:AuthorsPosition < IPTC:By-lineTitle
-XMP-photoshop:CaptionWriter < IPTC:Writer-Editor
-XMP-photoshop:Category < IPTC:Category
-XMP-photoshop:City < IPTC:City
-XMP-photoshop:Country < IPTC:Country-PrimaryLocationName
-XMP-photoshop:Credit < IPTC:Credit
-XMP-photoshop:DateCreated < IPTC:DateCreated
# overwrite XMP DateCreated to include date and time if available
-XMP-photoshop:DateCreated < Composite:DateTimeCreated
-XMP-photoshop:Headline < IPTC:Headline
-XMP-photoshop:Instructions < IPTC:SpecialInstructions
-XMP-photoshop:Source < IPTC:Source
-XMP-photoshop:State < IPTC:Province-State
-XMP-photoshop:SupplementalCategories < IPTC:SupplementalCategories
-XMP-photoshop:TransmissionReference < IPTC:OriginalTransmissionReference
-XMP-photoshop:Urgency < IPTC:Urgency
-XMP-iptcCore:CountryCode < IPTC:Country-PrimaryLocationCode
-XMP-iptcCore:Location < IPTC:Sub-location
-XMP-xmp:CreateDate < IPTC:DigitalCreationDate
-XMP-xmp:CreateDate < Composite:DigitalCreationDateTime
# these tags are not free-form text, and may need special handling:
#-XMP-iptcCore:IntellectualGenre < IPTC:ObjectAttributeReference
#-XMP-iptcCore:SubjectCode < IPTC:SubjectReference
-Photoshop:IPTCDigest=new
# end

241
arg_files/iptcCore.args Normal file
View File

@ -0,0 +1,241 @@
#------------------------------------------------------------------------------
# File: iptcCore.args
#
# Description: ExifTool arguments for IPTC Core and Extension tags
#
# Usage: exiftool -@ iptcCore.args FILE
#
# Requires: ExifTool version 8.44 or later
#
# Revisions: 2011/12/28 - P. Harvey Created (IPTC Core version 1.1)
# 2015/04/21 - PH Updated to IPTC Extension version 1.2
# 2017/06/02 - PH Updated to IPTC Extension version 1.3
# 2018/08/20 - PH Updated to IPTC Extension version 1.4
#
# References: http://www.iptc.org/IPTC4XMP/
#
# Notes: Both flattened and structured tags are included
#------------------------------------------------------------------------------
#
# dc schema
#
-XMP-dc:Creator
-XMP-dc:Description
-XMP-dc:Rights
-XMP-dc:Subject
-XMP-dc:Title
#
# photoshop schema
#
-XMP-photoshop:AuthorsPosition
-XMP-photoshop:CaptionWriter
-XMP-photoshop:City
-XMP-photoshop:Country
-XMP-photoshop:Credit
-XMP-photoshop:DateCreated
-XMP-photoshop:Headline
-XMP-photoshop:Instructions
-XMP-photoshop:Source
-XMP-photoshop:State
-XMP-photoshop:TransmissionReference
#
# xmp schema
#
-XMP-xmp:Rating
#
# xmpRights schema
#
-XMP-xmpRights:UsageTerms
-XMP-xmpRights:WebStatement
#
# Iptc4xmpCore schema
#
-XMP-iptcCore:CountryCode
# ContactInfo struct
-XMP-iptcCore:CreatorContactInfo
-XMP-iptcCore:CreatorAddress
-XMP-iptcCore:CreatorCity
-XMP-iptcCore:CreatorCountry
-XMP-iptcCore:CreatorPostalCode
-XMP-iptcCore:CreatorRegion
-XMP-iptcCore:CreatorWorkEmail
-XMP-iptcCore:CreatorWorkTelephone
-XMP-iptcCore:CreatorWorkURL
-XMP-iptcCore:IntellectualGenre
-XMP-iptcCore:Location
-XMP-iptcCore:Scene
-XMP-iptcCore:SubjectCode
#
# Iptc4xmpExt schema
#
-XMP-iptcExt:AdditionalModelInformation
# CVTermDetails struct
-XMP-iptcExt:AboutCvTerm
-XMP-iptcExt:AboutCvTermCvId
-XMP-iptcExt:AboutCvTermId
-XMP-iptcExt:AboutCvTermName
-XMP-iptcExt:AboutCvTermRefinedAbout
# ArtworkOrObjectDetails struct
-XMP-iptcExt:ArtworkOrObject
-XMP-iptcExt:ArtworkCopyrightNotice
-XMP-iptcExt:ArtworkCreator
-XMP-iptcExt:ArtworkDateCreated
-XMP-iptcExt:ArtworkSource
-XMP-iptcExt:ArtworkSourceInventoryNo
-XMP-iptcExt:ArtworkTitle
-XMP-iptcExt:ArtworkCopyrightOwnerName
-XMP-iptcExt:ArtworkCopyrightOwnerID
-XMP-iptcExt:ArtworkLicensorName
-XMP-iptcExt:ArtworkLicensorID
-XMP-iptcExt:ArtworkCreatorID
-XMP-iptcExt:ArtworkCircaDateCreated
-XMP-iptcExt:ArtworkStylePeriod
-XMP-iptcExt:ArtworkSourceInvURL
-XMP-iptcExt:ArtworkContentDescription
-XMP-iptcExt:ArtworkContributionDescription
-XMP-iptcExt:ArtworkPhysicalDescription
-XMP-iptcExt:ControlledVocabularyTerm
-XMP-iptcExt:DigitalImageGUID
-XMP-iptcExt:DigitalSourcefileType
-XMP-iptcExt:DigitalSourceType
# EEREDetails struct
-XMP-iptcExt:EmbdEncRightsExpr
-XMP-iptcExt:EmbeddedEncodedRightsExpr
-XMP-iptcExt:EmbeddedEncodedRightsExprType
-XMP-iptcExt:EmbeddedEncodedRightsExprLangID
-XMP-iptcExt:Event
-XMP-iptcExt:IPTCLastEdited
# LEREDetails struct
-XMP-iptcExt:LinkedEncRightsExpr
-XMP-iptcExt:LinkedEncodedRightsExpr
-XMP-iptcExt:LinkedEncodedRightsExprType
-XMP-iptcExt:LinkedEncodedRightsExprLangID
# LocationDetails struct
-XMP-iptcExt:LocationCreated
-XMP-iptcExt:LocationCreatedCity
-XMP-iptcExt:LocationCreatedCountryCode
-XMP-iptcExt:LocationCreatedCountryName
-XMP-iptcExt:LocationCreatedProvinceState
-XMP-iptcExt:LocationCreatedSublocation
-XMP-iptcExt:LocationCreatedWorldRegion
-XMP-iptcExt:LocationCreatedLocationId
# LocationDetails struct
-XMP-iptcExt:LocationShown
-XMP-iptcExt:LocationShownCity
-XMP-iptcExt:LocationShownCountryCode
-XMP-iptcExt:LocationShownCountryName
-XMP-iptcExt:LocationShownProvinceState
-XMP-iptcExt:LocationShownSublocation
-XMP-iptcExt:LocationShownWorldRegion
-XMP-iptcExt:LocationShownLocationId
-XMP-iptcExt:MaxAvailHeight
-XMP-iptcExt:MaxAvailWidth
-XMP-iptcExt:ModelAge
-XMP-iptcExt:OrganisationInImageCode
-XMP-iptcExt:OrganisationInImageName
-XMP-iptcExt:PersonInImage
# PersonDetails struct
-XMP-iptcExt:PersonInImageWDetails
-XMP-iptcExt:PersonInImageId
-XMP-iptcExt:PersonInImageName
-XMP-iptcExt:PersonInImageDescription
# CVTermDetails struct
#-XMP-iptcExt:PersonInImageCharacteristic
-XMP-iptcExt:PersonInImageCvTermCvId
-XMP-iptcExt:PersonInImageCvTermId
-XMP-iptcExt:PersonInImageCvTermName
-XMP-iptcExt:PersonInImageCvTermRefinedAbout
# ProductDetails struct
-XMP-iptcExt:ProductInImage
-XMP-iptcExt:ProductInImageName
-XMP-iptcExt:ProductInImageGTIN
-XMP-iptcExt:ProductInImageDescription
# RegistryEntryDetails struct
-XMP-iptcExt:RegistryID
-XMP-iptcExt:RegistryItemID
-XMP-iptcExt:RegistryOrganisationID
-XMP-iptcExt:RegistryEntryRole
# Genre struct
-XMP-iptcExt:Genre
-XMP-iptcExt:GenreCvId
-XMP-iptcExt:GenreCvTermId
-XMP-iptcExt:GenreCvTermName
-XMP-iptcExt:GenreCvTermRefinedAbout
#
# plus schema
#
# CopyrightOwnerDetail struct
-XMP-plus:CopyrightOwner
-XMP-plus:CopyrightOwnerID
-XMP-plus:CopyrightOwnerImageID
-XMP-plus:CopyrightOwnerName
# ImageCreatorDetail struct
-XMP-plus:ImageCreator
-XMP-plus:ImageCreatorID
-XMP-plus:ImageCreatorImageID
-XMP-plus:ImageCreatorName
# ImageSupplierDetail struct
-XMP-plus:ImageSupplier
-XMP-plus:ImageSupplierID
-XMP-plus:ImageSupplierImageID
-XMP-plus:ImageSupplierName
# LicensorDetail struct
-XMP-plus:Licensor
-XMP-plus:LicensorCity
-XMP-plus:LicensorCountry
-XMP-plus:LicensorEmail
-XMP-plus:LicensorExtendedAddress
-XMP-plus:LicensorID
-XMP-plus:LicensorImageID
-XMP-plus:LicensorName
-XMP-plus:LicensorNotes
-XMP-plus:LicensorPostalCode
-XMP-plus:LicensorRegion
-XMP-plus:LicensorStreetAddress
-XMP-plus:LicensorTelephone1
-XMP-plus:LicensorTelephone2
-XMP-plus:LicensorTelephoneType1
-XMP-plus:LicensorTelephoneType2
-XMP-plus:LicensorTransactionID
-XMP-plus:LicensorURL
-XMP-plus:MinorModelAgeDisclosure
-XMP-plus:ModelReleaseID
-XMP-plus:ModelReleaseStatus
-XMP-plus:PLUSVersion
-XMP-plus:PropertyReleaseID
-XMP-plus:PropertyReleaseStatus
# end

27
arg_files/pdf2xmp.args Normal file
View File

@ -0,0 +1,27 @@
#------------------------------------------------------------------------------
# File: pdf2xmp.args
#
# Description: Tag name translations for converting from PDF DocInfo to XMP
#
# Usage: exiftool -tagsFromFile SRCFILE -@ pdf2xmp.args DSTFILE
#
# Requires: ExifTool version 7.07 or later
#
# Revisions: 2011/01/23 - P. Harvey Created
#
# References: http://www.adobe.com/devnet/xmp/
#
# Notes: These arguments will not delete existing XMP tags which are
# missing from the PDF. The XMP tags should be deleted
# beforehand if required.
#------------------------------------------------------------------------------
-XMP-dc:Title < PDF:Title
-XMP-dc:Creator < PDF:Author
-XMP-dc:Description < PDF:Subject
-XMP-pdf:Keywords < PDF:Keywords
-XMP-xmp:CreatorTool < PDF:Creator
-XMP-pdf:Producer < PDF:Producer
-XMP-xmp:CreateDate < PDF:CreateDate
-XMP-xmp:ModifyDate < PDF:ModifyDate
-XMP-pdf:Trapped < PDF:Trapped
# end

56
arg_files/xmp2exif.args Normal file
View File

@ -0,0 +1,56 @@
#------------------------------------------------------------------------------
# File: xmp2exif.args
#
# Description: Tag name translations for converting XMP to EXIF
#
# Usage: exiftool -tagsFromFile SRCFILE -@ xmp2exif.args DSTFILE
#
# Requires: ExifTool version 10.96 or later
#
# Revisions: 2009/01/20 - P. Harvey Created
# 2011/06/22 - PH Copy flash information via Composite:Flash
# 2013/06/12 - PH Additions for the Exif 2.3 for XMP spec
# 2015/01/12 - PH Avoid copying from non-standard namespaces
# 2016/09/26 - PH Write Composite SubSec tags
# 2018/05/07 - PH Added support for GPSDestXxxRef tags
# 2021/09/30 - PH Removed erroneous "-" when copying CreatorTool
# 2022/03/31 - PH IPTC Photometadata Mapping Guidelines 2202.1 update
#
# References: http://www.metadataworkinggroup.org/specs/
# https://iptc.org/std/photometadata/documentation/mappingguidelines/
#
# Notes: 1) The first three arguments copy the bulk of the EXIF and GPS
# information, and the remaining arguments handle the tags
# which have different names and/or formats in XMP and EXIF.
#
# 2) These arguments will not delete existing EXIF tags which are
# missing from the XMP. The EXIF tags should be deleted
# beforehand if required.
#
# 3) XMP-iptcExt:ImageRegion is not currently mapped into EXIF:SubjectArea
#------------------------------------------------------------------------------
-EXIF:all < XMP-exif:all
-EXIF:all < XMP-exifEX:all
-EXIF:all < XMP-tiff:all
-EXIF:ImageDescription < XMP-dc:Description
-EXIF:DateTimeOriginal < XMP-photoshop:DateCreated
# the following 3 SubSec tags also write/delete the corresponding EXIF
# SubSecTime and OffsetTime tags as appropriate
-Composite:SubSecDateTimeOriginal < XMP-photoshop:DateCreated
-Composite:SubSecCreateDate < XMP-xmp:CreateDate
-Composite:SubSecModifyDate < XMP-xmp:ModifyDate
-EXIF:Software < XMP-xmp:CreatorTool
-EXIF:Copyright < XMP-dc:Rights
-EXIF:Artist < XMP-plus:ImageCreatorName
-EXIF:Artist < XMP-dc:Creator
-EXIF:DigImageGUID < XMP-iptcExt:DigitalImageGUID
# XMP flash information is translated by the Composite Flash tag
-EXIF:Flash < Composite:Flash
# generate GPS tags which have been combined into other XMP tags
-GPS:GPSLatitudeRef < Composite:GPSLatitudeRef
-GPS:GPSLongitudeRef < Composite:GPSLongitudeRef
-GPS:GPSDestLatitudeRef < Composite:GPSDestLatitudeRef
-GPS:GPSDestLongitudeRef < Composite:GPSDestLongitudeRef
-GPS:GPSDatestamp < XMP-exif:GPSDateTime
-GPS:GPSTimestamp < XMP-exif:GPSDateTime
# end

31
arg_files/xmp2gps.args Normal file
View File

@ -0,0 +1,31 @@
#------------------------------------------------------------------------------
# File: xmp2gps.args
#
# Description: Argument file for copying GPS information from XMP to EXIF
#
# Usage: exiftool -tagsFromFile SRCFILE -@ xmp2gps.args DSTFILE
#
# Requires: ExifTool version 10.96 or later
#
# Revisions: 2009/01/09 - P. Harvey Created
# 2018/05/07 - PH Handle GPSDestLatitude/LongitudeRef tags
#
# Notes: 1) Most of the GPS tags are copied by the first argument, but
# the coordinate references and date/time values are stored
# separately in EXIF, so they must be handled separately.
# A bit of magic is employed by ExifTool to extract the date
# and time parts respectively when writing date-only and
# time-only tags with a date/time value.
#
# 2) These arguments will not delete existing GPS tags which are
# missing from the XMP. The GPS tags should be deleted with
# "-gps:all=" first if required.
#------------------------------------------------------------------------------
-GPS:all < XMP-exif:all
-GPS:GPSLatitudeRef < Composite:GPSLatitudeRef
-GPS:GPSLongitudeRef < Composite:GPSLongitudeRef
-GPS:GPSDestLatitudeRef < Composite:GPSDestLatitudeRef
-GPS:GPSDestLongitudeRef < Composite:GPSDestLongitudeRef
-GPS:GPSDateStamp < XMP-exif:GPSDateTime
-GPS:GPSTimeStamp < XMP-exif:GPSDateTime
# end

66
arg_files/xmp2iptc.args Normal file
View File

@ -0,0 +1,66 @@
#------------------------------------------------------------------------------
# File: xmp2iptc.args
#
# Description: Tag name translations for converting from XMP to IPTC
#
# Usage: exiftool -tagsFromFile SRCFILE -@ xmp2iptc.args DSTFILE
#
# Requires: ExifTool version 7.45 or later
#
# Revisions: 2005/05/14 - P. Harvey Created
# 2008/03/04 - PH Changed Location translation and added
# IntellectualGenre and SubjectCode
# 2008/09/30 - PH Added writing of Photoshop:IPTCDigest
# 2009/01/20 - PH Updated to conform with MWG spec
# 2009/10/21 - PH Write IPTC:DigitalCreationDate/Time tags
#
# References: http://www.iptc.org/IPTC4XMP/
# http://www.iptc.org/IIM/
# http://www.adobe.com/products/xmp/pdfs/xmpspec.pdf
# http://www.metadataworkinggroup.org/specs/
#
# Notes: 1) Also updates Photoshop:IPTCDigest as per MWG recommendation.
#
# 2) For special characters in the XMP to be preserved, the IPTC
# encoding must be UTF-8: Either IPTC:CodedCharacterSet must
# already be "UTF8", or it must be set to "UTF8" when copying the
# XMP. This is not done automatically by this argfile because it
# could invalidate the encoding of existing IPTC if there were
# any values containing special characters. See FAQ number 10
# for more information about converting the IPTC encoding:
# https://exiftool.org/faq.html#Q10
#
# 3) These arguments will not delete existing IPTC tags which are
# missing from the XMP. The IPTC tags should be deleted
# beforehand if required.
#------------------------------------------------------------------------------
-IPTC:By-line < XMP-dc:Creator
-IPTC:Caption-Abstract < XMP-dc:Description
-IPTC:CopyrightNotice < XMP-dc:Rights
-IPTC:Keywords < XMP-dc:Subject
-IPTC:ObjectName < XMP-dc:Title
-IPTC:By-lineTitle < XMP-photoshop:AuthorsPosition
-IPTC:Writer-Editor < XMP-photoshop:CaptionWriter
-IPTC:Category < XMP-photoshop:Category
-IPTC:City < XMP-photoshop:City
-IPTC:Country-PrimaryLocationName < XMP-photoshop:Country
-IPTC:Credit < XMP-photoshop:Credit
-IPTC:DateCreated < XMP-photoshop:DateCreated
# magically extracts time from a date/time value
-IPTC:TimeCreated < XMP-photoshop:DateCreated
-IPTC:Headline < XMP-photoshop:Headline
-IPTC:SpecialInstructions < XMP-photoshop:Instructions
-IPTC:Source < XMP-photoshop:Source
-IPTC:Province-State < XMP-photoshop:State
-IPTC:SupplementalCategories < XMP-photoshop:SupplementalCategories
-IPTC:OriginalTransmissionReference < XMP-photoshop:TransmissionReference
-IPTC:Urgency < XMP-photoshop:Urgency
-IPTC:Country-PrimaryLocationCode < XMP-iptcCore:CountryCode
-IPTC:Sub-location < XMP-iptcCore:Location
-IPTC:DigitalCreationDate < XMP-xmp:CreateDate
-IPTC:DigitalCreationTime < XMP-xmp:CreateDate
# these tags are not free-form text, and may need special handling:
#-IPTC:ObjectAttributeReference < XMP-iptcCore:IntellectualGenre
#-IPTC:SubjectReference < XMP-iptcCore:SubjectCode
-Photoshop:IPTCDigest=new
# end

27
arg_files/xmp2pdf.args Normal file
View File

@ -0,0 +1,27 @@
#------------------------------------------------------------------------------
# File: xmp2pdf.args
#
# Description: Tag name translations for converting from XMP to PDF DocInfo
#
# Usage: exiftool -tagsFromFile SRCFILE -@ xmp2pdf.args DSTFILE
#
# Requires: ExifTool version 7.07 or later
#
# Revisions: 2011/01/23 - P. Harvey Created
#
# References: http://www.adobe.com/devnet/xmp/
#
# Notes: These arguments will not delete existing PDF tags which are
# missing from the XMP. The PDF tags should be deleted
# beforehand if required.
#------------------------------------------------------------------------------
-PDF:Title < XMP-dc:Title
-PDF:Author < XMP-dc:Creator
-PDF:Subject < XMP-dc:Description
-PDF:Keywords < XMP-pdf:Keywords
-PDF:Creator < XMP-xmp:CreatorTool
-PDF:Producer < XMP-pdf:Producer
-PDF:CreateDate < XMP-xmp:CreateDate
-PDF:ModifyDate < XMP-xmp:ModifyDate
-PDF:Trapped < XMP-pdf:Trapped
# end

258
config_files/acdsee.config Normal file
View File

@ -0,0 +1,258 @@
#------------------------------------------------------------------------------
# File: acdsee.config
#
# Description: This config file defines ACDSee XMP region tags for writing.
# The following tags are created in the XMP-acdsee-rs group
#
# RegionInfoACDSee : The structured tag for the ACDSee regions
# (similar to XMP-mwg-rs:RegionInfo)
#
# The following tags are the width, height, and unit of the
# image at the time of processing when storing image region
# metadata. They are similar to the AppliedToDimensions tags
# of the MWG regions.
# ACDSeeRegionAppliedToDimensionsH : Height of the image
# ACDSeeRegionAppliedToDimensionsUnit : Unit of the image
# ACDSeeRegionAppliedToDimensionsW : Width of the image
#
# Actual region data, stored in an array. These flattened tags
# are treated as List Type tags. There are two region types,
# the ALYArea and the DLYArea. The ALYArea tags tags assigned
# by ACDSee and are usually square in dimensions. The DLYArea
# tags are both the tags assigned by ACDSee (but possibly
# rectangular instead of square) as well as any manual
# assigned tags. They are similar to the area tags of the MWG
# regions.
# ACDSeeRegionDLYAreaH : Height of DLY region
# ACDSeeRegionDLYAreaW : Width of DLY region
# ACDSeeRegionDLYAreaX : X centerpoint of DLY region
# ACDSeeRegionDLYAreaY : Y centerpoint of DLY region
# ACDSeeRegionALYAreaH : Height of ALY region
# ACDSeeRegionALYAreaW : Width of ALY region
# ACDSeeRegionALYAreaX : X centerpoint of ALY region
# ACDSeeRegionALYAreaY : Y centerpoint of ALY region
# ACDSeeRegionName : Name of region
# ACDSeeRegionType : Type of region
# ACDSeeRegionNameAssignType : How the type was assigned.
# "Manual" is the only known
# entry at this time
#
# Conversion tags. These tags can be used to convert other region
# type tags to ACDSee regions.
# MPRegion2ACDSeeRegion : Converts a Microsoft RegionInfoMP
# IPTCRegion2ACDSeeRegion : Converts an IPTC ImageRegion
# MWGRegion2ACDSeeRegion : Converts a MWG RegionInfo
#
# Usage: To set individual tags
# exiftool -config acdsee.config -ACDSEETAG=VALUE FILE ...
#
# To convert Microsoft Regions to ACDSee regions
# exiftool -config acdsee.config "-RegionInfoACDSee<MPRegion2ACDSeeRegion" File ...
# To convert IPTC regions to ACDSee regions
# exiftool -config acdsee.config "-RegionInfoACDSee<IPTCRegion2ACDSeeRegion" File ...
# To convert MWG Regions to ACDSee regions
# exiftool -config acdsee.config "-RegionInfoACDSee<MWGRegion2ACDSeeRegion" File ...
#
# Requires: ExifTool version 10.28 or later
#
# Revisions: 2020/01/28 - Bryan K. Williams (aka StarGeek) Created
# 2021/04/08 - BKW Added tags to convert from Microsoft, IPTC,
# and MWG regions to ACDSee regions based upon
# convert_regions.config. Expanded docs.
# Shortened ADCSee tag names and added shortcuts
# from original names to new names, for example
# "RegionInfoACDSeeAppliedToDimensions*" -> "ACDSeeRegionAppliedToDimensions*"
# "RegionInfoACDSeeRegionList* -> "ACDSeeRegion*"
#------------------------------------------------------------------------------
use Data::Dumper;
my %sACDSeeDimensions = (
STRUCT_NAME => 'ACDSee Dimensions',
NAMESPACE => {'acdsee-stDim' => 'http://ns.acdsee.com/sType/Dimensions#'},
'w' => { Writable => 'real' },
'h' => { Writable => 'real' },
'unit' => { },
);
my %sACDSeeArea = (
STRUCT_NAME => 'ACDSee Area',
NAMESPACE => { 'acdsee-stArea' => 'http://ns.acdsee.com/sType/Area#' },
'x' => { Writable => 'real' },
'y' => { Writable => 'real' },
w => { Writable => 'real' },
h => { Writable => 'real' },
);
my %sACDSeeRegionStruct = (
STRUCT_NAME => 'ACDSee Regions',
NAMESPACE => { 'acdsee-rs' => 'http://ns.acdsee.com/regions/' },
ALGArea => { Struct => \%sACDSeeArea },
DLYArea => { Struct => \%sACDSeeArea },
Name => { },
NameAssignType => { },
Type => { },
);
%Image::ExifTool::UserDefined = (
# new XMP namespaces for ACDSee regions
'Image::ExifTool::XMP::Main' => {
'acdsee-rs' => { # <-- must be the same as the NAMESPACE prefix
SubDirectory => {
TagTable => 'Image::ExifTool::UserDefined::ACDSeeRegions'
},
},
},
'Image::ExifTool::Composite' => {
# create an ACDSee RegionInfo structure from a Microsoft RegionInfoMP structure
MPRegion2ACDSeeRegion => {
Require => {
0 => 'RegionInfoMP',
1 => 'ImageWidth',
2 => 'ImageHeight',
},
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{Regions}}) {
my $name = $$rgn{PersonDisplayName};
next unless $$rgn{Rectangle} or defined $name;
my %newRgn = ( Type => 'Face' );
if (defined $name) {
# don't add ignored faces
next if $name eq 'ffffffffffffffff';
$newRgn{Name} = $name;
}
if ($$rgn{Rectangle}) {
my @rect = split /\s*,\s*/, $$rgn{Rectangle};
$newRgn{DLYArea} = {
X => $rect[0] + $rect[2]/2,
Y => $rect[1] + $rect[3]/2,
W => $rect[2],
H => $rect[3],
} if @rect == 4;
}
push @newRgns, \%newRgn;
}
return {
AppliedToDimensions => { W => $val[1], H => $val[2], Unit => 'pixel' },
RegionList => \@newRgns,
};
},
},
# create an ACDSee RegionInfo structure from an IPTC ImageRegion list
IPTCRegion2ACDSeeRegion => {
Require => {
0 => 'ImageRegion',
1 => 'ImageWidth',
2 => 'ImageHeight',
},
ValueConv => q{
my ($rgn, @newRgns);
my $rgns = ref $val[0] eq 'ARRAY' ? $val[0] : [ $val[0] ];
foreach $rgn (@$rgns) {
my %newRgn = ( Type => 'Face' );
if ($$rgn{RegionBoundary} and $$rgn{RegionBoundary}{RbShape} eq 'rectangle') {
my @rect = @{$$rgn{RegionBoundary}}{'RbX','RbY','RbW','RbH'};
if ($$rgn{RegionBoundary}{RbUnit} eq 'pixel') {
$rect[0] /= $val[1], $rect[2] /= $val[1];
$rect[1] /= $val[2]; $rect[3] /= $val[2];
}
$newRgn{'DLYArea'} = {
X => $rect[0] + $rect[2]/2,
Y => $rect[1] + $rect[3]/2,
W => $rect[2],
H => $rect[3],
};
} else {
next unless defined $$rgn{Name};
}
$newRgn{Name} = $$rgn{Name} if defined $$rgn{Name};
push @newRgns, \%newRgn;
}
return {
AppliedToDimensions => { 'W' => $val[1], 'H' => $val[2], 'Unit' => 'pixel' },
RegionList => \@newRgns,
};
},
},
# create an MWG RegionInfo structure from an IPTC ImageRegion list
MWGRegion2ACDSeeRegion => {
Require => {
0 => 'RegionInfo',
1 => 'ImageWidth',
2 => 'ImageHeight',
},
ValueConv => q{
my ($rgn, @newRgns);
my %newRgn;
foreach $rgn (@{$val[0]{RegionList}}) {
next unless $$rgn{Area} or defined $$rgn{Name};
my %newRgn;
if ($$rgn{Area}) {
$newRgn{'DLYArea'} = {
'X' => $$rgn{Area}{'X'},
'Y' => $$rgn{Area}{'Y'},
'W' => $$rgn{Area}{'W'},
'H' => $$rgn{Area}{'H'},
};
};
$newRgn{Name} = $$rgn{Name} if defined $$rgn{Name};
$newRgn{'Type'} = $$rgn{'Type'} if defined $$rgn{'Type'};
push @newRgns, \%newRgn;
}
return {
'AppliedToDimensions' => $val[0]{'AppliedToDimensions'},
RegionList => \@newRgns,
}
},
},
####
},
);
%Image::ExifTool::UserDefined::ACDSeeRegions = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-acdsee', 2 => 'Image' },
NAMESPACE => { 'acdsee-rs' => 'http://ns.acdsee.com/regions/' },
WRITABLE => 'string', # (default to string-type tags)
Regions => {
Name => 'RegionInfoACDSee',
FlatName => 'ACDSee',
# the "Struct" entry defines the structure fields
Struct => {
# optional structure name (used for warning messages only)
STRUCT_NAME => 'ACDSee RegionInfo',
RegionList => {
FlatName => 'Region',
Struct => \%sACDSeeRegionStruct,
List => 'Bag',
},
AppliedToDimensions => {
FlatName => 'RegionAppliedToDimensions',Struct => \%sACDSeeDimensions },
},
},
);
# Shortcuts to old names added so as not to break previously used commands
%Image::ExifTool::UserDefined::Shortcuts = (
RegionInfoACDSeeAppliedToDimensionsH => 'ACDSeeRegionAppliedToDimensionsH',
RegionInfoACDSeeAppliedToDimensionsUnit => 'ACDSeeRegionAppliedToDimensionsUnit',
RegionInfoACDSeeAppliedToDimensionsW => 'ACDSeeRegionAppliedToDimensionsW',
RegionInfoACDSeeRegionListDLYAreaH => 'ACDSeeRegionDLYAreaH',
RegionInfoACDSeeRegionListDLYAreaW => 'ACDSeeRegionDLYAreaW',
RegionInfoACDSeeRegionListDLYAreaX => 'ACDSeeRegionDLYAreaX',
RegionInfoACDSeeRegionListDLYAreaY => 'ACDSeeRegionDLYAreaY',
RegionInfoACDSeeRegionListALGAreaH => 'ACDSeeRegionALGAreaH',
RegionInfoACDSeeRegionListALGAreaW => 'ACDSeeRegionALGAreaW',
RegionInfoACDSeeRegionListALGAreaX => 'ACDSeeRegionALGAreaX',
RegionInfoACDSeeRegionListALGAreaY => 'ACDSeeRegionALGAreaY',
RegionInfoACDSeeRegionListName => 'ACDSeeRegionName',
RegionInfoACDSeeRegionListType => 'ACDSeeRegionType',
RegionInfoACDSeeRegionListNameAssignType => 'ACDSeeRegionNameAssignType',
);
# Forced -struct option during debugging
#%Image::ExifTool::UserDefined::Options = (
# Struct => 1,
#);
#------------------------------------------------------------------------------
1; #end

84
config_files/age.config Normal file
View File

@ -0,0 +1,84 @@
#------------------------------------------------------------------------------
# File: age.config
#
# Description: Definition for a Composite "Age" tag to calculate age of person
# in image based on their birthday and the DateTimeOriginal or
# CreateDate of the image.
#
# Notes: The birthday date is set via the -userParam option, and is a
# string containing year, month, day, hour, minute and second.
# Only the year is required. By default the format of the
# returned Age value is exactly the same as the input birthday,
# with 2 digits for each parameter, however an AgeFormat user
# parameter may be used to define a printf-style format string
# for any desired output format (see fourth example below).
#
# If the specified birthday comes after the image date/time
# then the returned result is enclosed in brackets to indicate
# a negative time difference (see last example below).
#
# If birthday is not given, then the current date/time is assumed
# (in which case Age returns the age of the photo).
#
# Examples: (based on a DateTimeOriginal of "2005:08:27 18:21:00")
#
# > exiftool -config age.config -userparam birthday=1990:09:31 -age a.jpg
# Age : 14:10:26
#
# > exiftool -config age.config -userparam birthday=1990Y09M31D -age a.jpg
# Age : 14Y10M26D
#
# > exiftool -config age.config -userparam birthday="2000:01:02 03:45" -age a.jpg
# Age : 05:07:25 14:36
#
# > exiftool -config age.config -userparam birthday=2000:01:02 \
# -userparam ageformat="%d years" -age a.jpg
# Age : 5 years
#
# > exiftool -config age.config -userparam birthday=2005:09:26 -age a.jpg
# Age : (00:00:30)
#
# Requires: ExifTool version 9.90 or later
#
# Revisions: 2017/01/24 - P. Harvey Created
#------------------------------------------------------------------------------
%Image::ExifTool::UserDefined = (
'Image::ExifTool::Composite' => {
Age => {
Desire => {
0 => 'DateTimeOriginal',
1 => 'CreateDate',
},
ValueConv => q{
my $bday = $self->Options(UserParam => 'Birthday');
$bday or ($bday = TimeNow()) =~ s/[-+].*//;
my $date = $val[0] || $val[1] or return undef;
my @t0 = ($bday =~ /\d+/g);
my @t1 = ($date =~ /\d+/g);
return '<invalid birthday date>' unless $t0[0];
my ($i, @diff, $sign);
for ($i=0; $i<6; ++$i) {
last unless defined $t0[$i];
my $dt = $t1[$i] - $t0[$i];
$sign or $sign = ($dt <=> 0);
push @diff, $dt * $sign;
}
require 'Image/ExifTool/Shift.pl';
my $base = $sign < 0 ? \@t1 : \@t0;
my @wrap = (0, 12, DaysInMonth($$base[1]||1,$$base[0]), 24, 60, 60);
for ($i=$#diff; $i>0; --$i) {
$diff[$i] < 0 and $diff[$i] += $wrap[$i], --$diff[$i-1];
}
$bday =~ s/\d+/sprintf '%.2d', shift @diff/ge;
return $sign < 0 ? "($bday)" : $bday;
},
PrintConv => q{
my $fmt = $self->Options(UserParam => 'AgeFormat') or return $val;
sprintf($fmt, $val =~ /\d+/g);
},
},
},
);
1; #end

520
config_files/bibble.config Normal file
View File

@ -0,0 +1,520 @@
#------------------------------------------------------------------------------
# File: bibble.config
#
# Description: This config file defines Bibble XMP tags for writing.
#
# Usage: exiftool -config bibble.config -BIBBLETAG=VALUE FILE ...
#
# Requires: ExifTool version 10.28 or later
#
# Revisions: 2016/09/25 - P. Harvey Created
#------------------------------------------------------------------------------
%Image::ExifTool::UserDefined = (
'Image::ExifTool::XMP::Main' => {
dmf => {
SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::dmf' },
},
},
);
%Image::ExifTool::UserDefined::dmf = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-dmf', 2 => 'Image' },
NAMESPACE => { 'dmf' => 'http://www.bibblelabs.com/DigitalMasterFile/1.0/' },
WRITABLE => 'string',
versionCount => {
Name => 'DMFCount',
Writable => 'integer',
},
versions => {
Name => 'DMF',
List => 'Seq',
Struct => {
NAMESPACE => { 'dmfversion' => 'http://www.bibblelabs.com/DigitalMasterFileVersion/1.0/' },
software => { },
softwareVersion => { },
versionName => { },
settings => {
Struct => {
NAMESPACE => { 'bset' => 'http://www.bibblelabs.com/BibbleSettings/5.0/' },
settingsVersion => { },
respectsTransform => { },
curLayer => { },
layers => {
List => 'Seq',
Struct => {
NAMESPACE => { 'blay' => 'http://www.bibblelabs.com/BibbleLayers/5.0/' },
layerId => { },
layerPos => { },
name => { },
enabled => { },
options => {
Struct => {
NAMESPACE => { 'bopt' => 'http://www.bibblelabs.com/BibbleOpt/5.0/' },
'optionchanged' => { },
'hasSettings' => { },
'metaDirty' => { },
'version' => { },
'colormode' => { },
'colormode' => { },
'workingspace' => { },
'whiteauto' => { },
'whitetype' => { },
'lwhitetype' => { },
'lmr' => { },
'lmb' => { },
'whitered' => { },
'whitegreen' => { },
'whiteblue' => { },
'whiteowbr' => { },
'whiteowbb' => { },
'autolevel' => { },
'shadowval' => { },
'highlightval' => { },
'exposureval' => { },
'highlightrecval' => { },
'highlightrange' => { },
'blackPoint' => { },
'fillamount' => { },
'fillrange' => { },
'autorotate' => { },
'rotateangle' => { },
'sharpensense' => { },
'newsharpen' => { },
'sharpenon' => { },
'pcenabled' => { },
'pctintmeta' => { },
'PCNOn' => { },
'PCNPreset' => { },
'PCNStrength' => { },
'PCNDetail' => { },
'red' => { },
'green' => { },
'blue' => { },
'sat' => { },
'cont' => { },
'hue' => { },
'vibe' => { },
'useHSL' => { },
'useHSV' => { },
'invertRegions' => { },
'layerOpacity' => { },
'selective_color' => { },
'curveson' => { },
'curves_m_cn' => { },
'curves_m_cy' => { },
'curves_m_cx' => { },
'curves_m_imid' => { },
'curves_m_olo' => { },
'curves_m_ilo' => { },
'curves_m_ihi' => { },
'curves_m_ohi' => { },
'kelvin' => { },
'tint' => { },
'okelvin' => { },
'otint' => { },
'lkelvin' => { },
'ltint' => { },
'ckelvin' => { },
'ctint' => { },
'cropon' => { },
'croplocked' => { },
'cropstyle' => { },
'cropleft' => { },
'croptop' => { },
'cropheight' => { },
'cropwidth' => { },
'cropdpi' => { },
'cropstickydpi' => { },
'cropstickyx' => { },
'cropstickyy' => { },
'cropmenuitem' => { },
'croppercent' => { },
'Date' => { },
'DigitizedDateTime' => { },
'title' => { },
'Priority' => { },
'Category' => { },
'SupplementalCategory' => { },
'creator' => { },
'AuthorsPosition' => { },
'rights' => { },
'Credit' => { },
'description' => { },
'CaptionWriter' => { },
'City' => { },
'State' => { },
'Country' => { },
'CountryCode' => { },
'Headline' => { },
'Instructions' => { },
'TransmissionReference' => { },
'Source' => { },
'subject' => { },
'IntellectualGenre' => { },
'CiAdrCity' => { },
'CiAdrCtry' => { },
'CiAdrExtadr' => { },
'CiAdrPcode' => { },
'CiAdrRegion' => { },
'CiEmailWork' => { },
'CiTelWork' => { },
'CiUrlWork' => { },
'UsageTerms' => { },
'Location' => { },
'SubjectCode' => { },
'Scene' => { },
'tag' => { },
'keywordlist' => { },
'rating' => { },
'label' => { },
'warpon' => { },
'warpa' => { },
'warpb' => { },
'warpc' => { },
'warpresize' => { },
'warpfocal' => { },
'warpcaon' => { },
'warpcarc' => { },
'warpcaby' => { },
'vignetteon' => { },
'vignetterad' => { },
'vignetteamt' => { },
'profilemake' => { },
'profilemodel' => { },
'profilelens' => { },
'lens' => { },
'GPSVersionID' => { },
'GPSLatitude' => { },
'GPSLongitude' => { },
'GPSAltitudeRef' => { },
'GPSAltitude' => { },
'GPSTimeStamp' => { },
'GPSSatellites' => { },
'GPSStatus' => { },
'GPSMeasureMode' => { },
'GPSDateStamp' => { },
'GPSMapDatum' => { },
'GPSAreaInformation' => { },
'GPSProcessingMethod' => { },
'bMirrorOn' => { },
'bInvertOn' => { },
'rn_enabled' => { },
'rn_smooth_enabled' => { },
'rn_threshold' => { },
'rn_limit' => { },
'lc_enabled' => { },
'lc_radius' => { },
'lc_strength' => { },
'lc_debug' => { },
'enableInputProfile' => { },
'inputProfile' => { },
'redeyeSize' => { },
'redeyeTrack' => { },
'redeyeTrackStra' => { },
'redeyeTrackCrop' => { },
'redeyeEnable' => { },
'watermark_mode' => { },
'watermark_imageFilename' => { },
'watermark_text' => { },
'watermark_fontName' => { },
'watermark_fontColor' => { },
'watermark_fontItalic' => { },
'watermark_fontUnderline' => { },
'watermark_fontBold' => { },
'watermark_fontStrikeout' => { },
'watermark_alignment' => { },
'watermark_basesize' => { },
'watermark_rotation' => { },
'watermark_size' => { },
'watermark_hpos' => { },
'watermark_vpos' => { },
'watermark_opacity' => { },
'watermark_hskew' => { },
'watermark_vskew' => { },
'watermark_hproject' => { },
'watermark_vproject' => { },
'watermark_hstretch' => { },
'watermark_vstretch' => { },
'watermark_enabled' => { },
'ferd.bez_enabled' => { },
'ferd.bez_Early' => { },
'ferd.bez_HCL' => { },
'ferd.bez_opacity' => { },
'ferd.bez_saturation' => { },
'ferd.bez_lighten' => { },
'ferd.bez_lightengamma' => { },
'ferd.bez_midi' => { },
'ferd.bez_sigcontrast' => { },
'ferd.bez_sigmiddle' => { },
'ferd.bez_shadows' => { },
'ferd.bez_lowmids' => { },
'ferd.bez_greys' => { },
'ferd.bez_highmids' => { },
'ferd.bez_highlights' => { },
'ferd.bez_shadows4' => { },
'ferd.bez_lowmids4' => { },
'ferd.bez_highmids4' => { },
'ferd.bez_highlights4' => { },
'ferd.ferd_bez_enabled' => { },
'ferd.ferd_bez_RGB' => { },
'ferd.ferd_bez_BW' => { },
'ferd.ferd_bez_lighten' => { },
'ferd.ferd_bez_lightengamma' => { },
'ferd.ferd_bez_midi' => { },
'ferd.ferd_bez_blak' => { },
'ferd.ferd_bez_sigcontrast' => { },
'ferd.ferd_bez_sigmiddle' => { },
'ferd.ferd_bez_contrast' => { },
'ferd.ferd_bez_centre' => { },
'ferd.ferd_bez_shadows' => { },
'ferd.ferd_bez_lowmids' => { },
'ferd.ferd_bez_greys' => { },
'ferd.ferd_bez_highmids' => { },
'ferd.ferd_bez_highlights' => { },
'ferd.ferd_bez_shadows4' => { },
'ferd.ferd_bez_lowmids4' => { },
'ferd.ferd_bez_highmids4' => { },
'ferd.ferd_bez_highlights4' => { },
'Grid_kb.thirds' => { },
'Grid_kb.goldenrat' => { },
'Grid_kb.goldenspir' => { },
'Grid_kb.squaregrid' => { },
'Grid_kb.spiralcenter' => { },
'Grid_kb.gridsize' => { },
'Grid_kb.gridxcenter' => { },
'Grid_kb.gridycenter' => { },
'Mix3.mix3_enabled' => { },
'Mix3.mix3_early' => { },
'Mix3.mix3_exposure' => { },
'Mix3.mix3_red' => { },
'Mix3.mix3_green' => { },
'Mix3.mix3_blue' => { },
'SiliconBonk.SiliconBonkOn' => { },
'SiliconBonk.SiliconBonkHighlights' => { },
'SiliconBonk.SiliconBonkH' => { },
'SiliconBonk.SiliconBonkL' => { },
'SiliconBonk.SiliconBonkContrast' => { },
'SiliconBonk.SiliconBonkMid' => { },
'SiliconBonk.SiliconBonkSat' => { },
'SiliconBonk.SiliconBonkC0L' => { },
'SiliconBonk.SiliconBonkC1L' => { },
'SiliconBonk.SiliconBonkC2L' => { },
'SiliconBonk.SiliconBonkC3L' => { },
'SiliconBonk.SiliconBonkC4L' => { },
'SiliconBonk.SiliconBonkC5L' => { },
'Vigne_kb.kbv_enabled' => { },
'Vigne_kb.kbv_size' => { },
'Vigne_kb.kbv_strength' => { },
'Vigne_kb.kbv_ccol' => { },
'Vigne_kb.kbv_falloff' => { },
'Vigne_kb.kbv_shape' => { },
'Vigne_kb.kbv_horzcenter' => { },
'Vigne_kb.kbv_vertcenter' => { },
'Vigne_kb.kbv_factor' => { },
'Vigne_kb.kbv_trans' => { },
'Vigne_kb.kbv_adjustcrop' => { },
'Vigne_kb.kbv_colenabled' => { },
'Vigne_kb.kbv_col' => { },
'Vigne_kb.kbv_preview' => { },
'Vigne_kb.kbv_desat' => { },
'Vigne_kb.kbv_desaturate' => { },
'WaveletDenoise2.bSphWaveletDenoiseon' => { },
'WaveletDenoise2.bSphWaveletDenoiseThresL' => { },
'WaveletDenoise2.bSphWaveletDenoiseLowL' => { },
'WaveletDenoise2.bSphWaveletDenoiseThresC' => { },
'WaveletDenoise2.bSphWaveletDenoiseLowC' => { },
'WaveletDenoise2.bSphWaveletDenoiseDePepper' => { },
'WaveletDenoise2.bSphWaveletDenoiseShowEdge' => { },
'WaveletSharpen2.bSphWaveletUsmon' => { },
'WaveletSharpen2.bSphWaveletUsmRadius' => { },
'WaveletSharpen2.bSphWaveletUsmAmount' => { },
'WaveletSharpen2.bSphWaveletUsmThreshold' => { },
'WaveletSharpen2.bSphWaveletUsmClarity' => { },
'WaveletSharpen2.bSphWaveletLLenable' => { },
'WaveletSharpen2.bSphWaveletLLStrength' => { },
'WaveletSharpen2.bSphWaveletLLiter' => { },
'WaveletSharpen2.bSphWaveletMCStrength' => { },
'WaveletSharpen2.bSphWaveleton' => { },
'WaveletSharpen2.bSphWaveletAmount' => { },
'WaveletSharpen2.bSphWaveletRadius' => { },
'WaveletSharpen2.bSphWaveletSharpenDePepper' => { },
'WaveletSharpen2.bSphWaveletEdge' => { },
'WaveletSharpen2.bSphWaveletSharpenClarity' => { },
'WaveletSharpen2.bSphWaveleton2' => { },
'WaveletSharpen2.bSphWaveletAmount2' => { },
'WaveletSharpen2.bSphWaveletRadius2' => { },
'WaveletSharpen2.bSphWaveletSharpenDePepper2' => { },
'WaveletSharpen2.bSphWaveletEdge2' => { },
'WaveletSharpen2.bSphWaveletSharpenClarity2' => { },
'zChannelMixerGroup.zcmEnable' => { },
'zChannelMixerGroup.zcmbw' => { },
'zChannelMixerGroup.zcmbwa' => { },
'zChannelMixerGroup.zcmlockbw' => { },
'zChannelMixerGroup.zcmlockcolor' => { },
'zChannelMixerGroup.zcmrr' => { },
'zChannelMixerGroup.zcmrg' => { },
'zChannelMixerGroup.zcmrb' => { },
'zChannelMixerGroup.zcmgr' => { },
'zChannelMixerGroup.zcmgg' => { },
'zChannelMixerGroup.zcmgb' => { },
'zChannelMixerGroup.zcmbr' => { },
'zChannelMixerGroup.zcmbg' => { },
'zChannelMixerGroup.zcmbb' => { },
'zFramePlug.zframeSize1' => { },
'zFramePlug.zframeColor1' => { },
'zFramePlug.zframeSize2' => { },
'zFramePlug.zframeColor2' => { },
'zFramePlug.zframeSize3' => { },
'zFramePlug.zframeColor3' => { },
'zFramePlug.zframeSize4' => { },
'zFramePlug.zframeColor4' => { },
'zFramePlug.zframeSize5' => { },
'zFramePlug.zframeColor5' => { },
'zFramePlug.zframeDummy' => { },
'zFramePlug.zframeEnable' => { },
'zFramePlug.zframeEnable1' => { },
'zFramePlug.zframeEnable2' => { },
'zFramePlug.zframeEnable3' => { },
'zFramePlug.zframeEnable4' => { },
'zFramePlug.zframeEnable5' => { },
'zFramePlug.zframeCalibration' => { },
'zFramePlug.zframeRatio1' => { },
'zFramePlug.zframeRatio2' => { },
'zFramePlug.zframeRatio3' => { },
'zFramePlug.zframeRatio4' => { },
'zFramePlug.zframeRatio5' => { },
'zFramePlug.xPos1' => { },
'zFramePlug.yPos1' => { },
'zFramePlug.xPos2' => { },
'zFramePlug.yPos2' => { },
'zFramePlug.xPos3' => { },
'zFramePlug.yPos3' => { },
'zFramePlug.xPos4' => { },
'zFramePlug.yPos4' => { },
'zFramePlug.xPos5' => { },
'zFramePlug.yPos5' => { },
'zFramePlug.relativeTo' => { },
'zFramePlug.place' => { },
'Zone_kb.kbz_enabled' => { },
'Zone_kb.kbz_highlight' => { },
'zPerspectorPlug.zpersEnable' => { },
'zPerspectorPlug.zpersRotate' => { },
'zPerspectorPlug.zpersGridEnable' => { },
'zPerspectorPlug.zpersGrid' => { },
'zPerspectorPlug.zpersTopLeft' => { },
'zPerspectorPlug.zpersTopRight' => { },
'zPerspectorPlug.zpersLeftTop' => { },
'zPerspectorPlug.zpersRightTop' => { },
'zPerspectorPlug.zpersBottomLeft' => { },
'zPerspectorPlug.zpersBottomRight' => { },
'zPerspectorPlug.zpersLeftBottom' => { },
'zPerspectorPlug.zpersRightBottom' => { },
'zPerspectorPlug.zpersmirror' => { },
'zPerspectorPlug.zpersMirrorOffset' => { },
'zPerspectorPlug.zpersCanvasResize' => { },
'zShadowPlug.direction' => { },
'zShadowPlug.zshadowEnable' => { },
'zShadowPlug.dummy' => { },
'zShadowPlug.size' => { },
'zShadowPlug.scale' => { },
'zShadowPlug.edge' => { },
'zShadowPlug.sizeBg' => { },
'zShadowPlug.color' => { },
'zShadowPlug.colorBg' => { },
'zShadowPlug.relativeTo' => { },
'zShadowPlug.xPos' => { },
'zShadowPlug.yPos' => { },
'zSoftenPlug.softenEnable' => { },
'zSoftenPlug.softenradius' => { },
'zSoftenPlug.softenorton' => { },
'zSoftenPlug.softencombo' => { },
'zSoftenPlug.softenVignette' => { },
'zSoftenPlug.softenProof' => { },
'zSoftenPlug.softenvigSize' => { },
'zSoftenPlug.softenvigShape' => { },
'zSoftenPlug.softenvigFeather' => { },
'zSoftenPlug.softenvigXpos' => { },
'zSoftenPlug.softenvigYpos' => { },
'zSoftenPlug.softenvigRotate' => { },
'zTextPlug.zTextOn' => { },
'zTextPlug.italic' => { },
'zTextPlug.bold' => { },
'zTextPlug.underline' => { },
'zTextPlug.strikeout' => { },
'zTextPlug.overline' => { },
'zTextPlug.size' => { },
'zTextPlug.xpos' => { },
'zTextPlug.ypos' => { },
'zTextPlug.rotate' => { },
'zTextPlug.font' => { },
'zTextPlug.text' => { },
'zTextPlug.opacity' => { },
'zTextPlug.stretch' => { },
'zTextPlug.color' => { },
'zTextPlug.shearv' => { },
'zTextPlug.shearh' => { },
'zTextPlug.scalev' => { },
'zTextPlug.scaleh' => { },
'zTextPlug.projectv' => { },
'zTextPlug.projecth' => { },
'zTextPlug.basesize' => { },
'zTextPlug.textalign' => { },
'zTextPlug.textposh' => { },
'zTextPlug.textposv' => { },
'zTextPlug.shadowEnable' => { },
'zTextPlug.shadowDirection' => { },
'zTextPlug.shadowShift' => { },
'zTextPlug.shadowIntensity' => { },
'zTextPlug.shadowColor' => { },
'blplug.bbwenabled' => { },
'blplug.bbwspotA' => { },
'blplug.bbwspotB' => { },
'blplug.bbwhueA' => { },
'blplug.bbwfuzzyA' => { },
'blplug.bbwcolorA' => { },
'blplug.bbwhueB' => { },
'blplug.bbwcolorB' => { },
'blplug.bbwfuzzyB' => { },
'blplug.bbwmode' => { },
'Equalizer_kb.kbs_enabled' => { },
'Equalizer_kb.kbs_bw' => { },
'Equalizer_kb.kbs_redlum' => { },
'Equalizer_kb.kbs_yellowlum' => { },
'Equalizer_kb.kbs_orangelum' => { },
'Equalizer_kb.kbs_greenlum' => { },
'Equalizer_kb.kbs_cyanlum' => { },
'Equalizer_kb.kbs_bluelum' => { },
'Equalizer_kb.kbs_magentalum' => { },
'Equalizer_kb.kbs_redhue' => { },
'Equalizer_kb.kbs_yellowhue' => { },
'Equalizer_kb.kbs_orangehue' => { },
'Equalizer_kb.kbs_greenhue' => { },
'Equalizer_kb.kbs_cyanhue' => { },
'Equalizer_kb.kbs_bluehue' => { },
'Equalizer_kb.kbs_magentahue' => { },
'Equalizer_kb.kbs_redsat' => { },
'Equalizer_kb.kbs_yellowsat' => { },
'Equalizer_kb.kbs_orangesat' => { },
'Equalizer_kb.kbs_greensat' => { },
'Equalizer_kb.kbs_cyansat' => { },
'Equalizer_kb.kbs_bluesat' => { },
'Equalizer_kb.kbs_magentasat' => { },
'Equalizer_kb.kbs_redvib' => { },
'Equalizer_kb.kbs_yellowvib' => { },
'Equalizer_kb.kbs_orangevib' => { },
'Equalizer_kb.kbs_greenvib' => { },
'Equalizer_kb.kbs_cyanvib' => { },
'Equalizer_kb.kbs_bluevib' => { },
'Equalizer_kb.kbs_magentavib' => { },
},
},
},
},
},
},
},
},
);
1; #end

View File

@ -0,0 +1,234 @@
#------------------------------------------------------------------------------
# File: convert_regions.config
#
# Description: User-defined Composite tag definitions to allow conversion of
# face regions between Microsoft Windows Live Photo Gallery (WLPG),
# Metadata Working Group (MWG), and IPTC Extension formats
#
# Usage: 1) Convert from MP WLPG or IPTC regions to MWG regions:
#
# exiftool -config convert_regions.config "-RegionInfo<MPRegion2MWGRegion" FILE
#
# 2) Convert from MWG or IPTC to MP WLPG regions:
#
# exiftool -config convert_regions.config "-RegionInfoMP<MWGRegion2MPRegion" FILE
#
# 3) Convert from MWG or MP WLPG to IPTC regions:
#
# exiftool -config convert_regions.config "-ImageRegion<MWGRegion2IPTCRegion" FILE
#
# Requires: ExifTool version 11.74 or later
#
# Revisions: 2012/12/27 - P. Harvey Created
# 2013/02/20 - PH Don't add ignored MP faces
# 2017/02/13 - PH Handle MP regions without Rectangle or Name entries
# 2019/10/26 - PH Added support for the new IPTC ImageRegion
# 2021/05-27 - PH Changed a few tag names and added shortcuts for
# backward compatibility
#
# References: http://www.metadataworkinggroup.org/specs/
#------------------------------------------------------------------------------
%Image::ExifTool::UserDefined = (
'Image::ExifTool::Composite' => {
# create an MWG RegionInfo structure from a Microsoft RegionInfoMP structure
MPRegion2MWGRegion => {
Require => {
0 => 'RegionInfoMP',
1 => 'ImageWidth',
2 => 'ImageHeight',
},
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{Regions}}) {
my $name = $$rgn{PersonDisplayName};
next unless $$rgn{Rectangle} or defined $name;
my %newRgn = ( Type => 'Face' );
if (defined $name) {
# don't add ignored faces
next if $name eq 'ffffffffffffffff';
$newRgn{Name} = $name;
}
if ($$rgn{Rectangle}) {
my @rect = split /\s*,\s*/, $$rgn{Rectangle};
$newRgn{Area} = {
X => $rect[0] + $rect[2]/2,
Y => $rect[1] + $rect[3]/2,
W => $rect[2],
H => $rect[3],
Unit => 'normalized',
} if @rect == 4;
}
push @newRgns, \%newRgn;
}
return {
AppliedToDimensions => { W => $val[1], H => $val[2], Unit => 'pixel' },
RegionList => \@newRgns,
};
},
},
# create an MWG RegionInfo structure from an IPTC ImageRegion list
IPTCRegion2MWGRegion => {
Name => 'MPRegion2MWGRegion',
Require => {
0 => 'ImageRegion',
1 => 'ImageWidth',
2 => 'ImageHeight',
},
ValueConv => q{
my ($rgn, @newRgns);
my $rgns = ref $val[0] eq 'ARRAY' ? $val[0] : [ $val[0] ];
foreach $rgn (@$rgns) {
my %newRgn = ( Type => 'Face' );
if ($$rgn{RegionBoundary} and $$rgn{RegionBoundary}{RbShape} eq 'rectangle') {
my @rect = @{$$rgn{RegionBoundary}}{'RbX','RbY','RbW','RbH'};
if ($$rgn{RegionBoundary}{RbUnit} eq 'pixel') {
$rect[0] /= $val[1], $rect[2] /= $val[1];
$rect[1] /= $val[2]; $rect[3] /= $val[2];
}
$newRgn{Area} = {
X => $rect[0] + $rect[2]/2,
Y => $rect[1] + $rect[3]/2,
W => $rect[2],
H => $rect[3],
Unit => 'normalized',
};
} else {
next unless defined $$rgn{Name};
}
$newRgn{Name} = $$rgn{Name} if defined $$rgn{Name};
push @newRgns, \%newRgn;
}
return {
AppliedToDimensions => { W => $val[1], H => $val[2], Unit => 'pixel' },
RegionList => \@newRgns,
};
},
},
# create a Microsoft RegionInfoMP structure from an MWG RegionInfo structure
MWGRegion2MPRegion => {
Require => 'RegionInfo',
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{RegionList}}) {
next unless $$rgn{Area} or defined $$rgn{Name};
my %newRgn;
if ($$rgn{Area}) {
my @rect = @{$$rgn{Area}}{'X','Y','W','H'};
$rect[0] -= $rect[2]/2;
$rect[1] -= $rect[3]/2;
$newRgn{Rectangle} = join(', ', @rect);
}
$newRgn{PersonDisplayName} = $$rgn{Name} if defined $$rgn{Name};
push @newRgns, \%newRgn;
}
return { Regions => \@newRgns };
},
},
# create a Microsoft RegionInfoMP structure from an IPTC ImageRegion list
IPTCRegion2MPRegion => {
Name => 'MWGRegion2MPRegion',
Require => {
0 => 'ImageRegion',
1 => 'ImageWidth',
2 => 'ImageHeight',
},
ValueConv => q{
my ($rgn, @newRgns);
my $rgns = ref $val[0] eq 'ARRAY' ? $val[0] : [ $val[0] ];
foreach $rgn (@$rgns) {
my %newRgn;
if ($$rgn{RegionBoundary} and $$rgn{RegionBoundary}{RbShape} eq 'rectangle') {
my @rect = @{$$rgn{RegionBoundary}}{'RbX','RbY','RbW','RbH'};
if ($$rgn{RegionBoundary}{RbUnit} eq 'pixel') {
$rect[0] /= $val[1], $rect[2] /= $val[1];
$rect[1] /= $val[2]; $rect[3] /= $val[2];
}
$newRgn{Rectangle} = join(', ', @rect);
} else {
next unless defined $$rgn{Name};
}
$newRgn{PersonDisplayName} = $$rgn{Name} if defined $$rgn{Name};
push @newRgns, \%newRgn;
}
return { Regions => \@newRgns };
},
},
# create an IPTC ImageRegion list from an MWG RegionInfo structure
MWGRegion2IPTCRegion => {
Require => 'RegionInfo',
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{RegionList}}) {
next unless $$rgn{Area} or defined $$rgn{Name};
my %newRgn;
if ($$rgn{Area}) {
my @rect = @{$$rgn{Area}}{'X','Y','W','H'};
$rect[0] -= $rect[2]/2;
$rect[1] -= $rect[3]/2;
$newRgn{RegionBoundary} = {
RbShape => 'rectangle',
RbUnit => 'relative',
RbX => $rect[0],
RbY => $rect[1],
RbW => $rect[2],
RbH => $rect[3],
};
}
$newRgn{Name} = $$rgn{Name} if defined $$rgn{Name};
push @newRgns, \%newRgn;
}
return \@newRgns;
},
},
# create an IPTC ImageRegion list from a Microsoft RegionInfoMP structure
MPRegion2IPTCRegion => {
Name => 'MWGRegion2IPTCRegion',
Require => 'RegionInfoMP',
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{Regions}}) {
my $name = $$rgn{PersonDisplayName};
next unless $$rgn{Rectangle} or defined $name;
my %newRgn;
if (defined $name) {
# don't add ignored faces
next if $name eq 'ffffffffffffffff';
$newRgn{Name} = $name;
}
if ($$rgn{Rectangle}) {
my @rect = split /\s*,\s*/, $$rgn{Rectangle};
$newRgn{RegionBoundary} = {
RbShape => 'rectangle',
RbUnit => 'relative',
RbX => $rect[0],
RbY => $rect[1],
RbW => $rect[2],
RbH => $rect[3],
} if @rect == 4;
}
push @newRgns, \%newRgn;
}
return \@newRgns;
},
},
},
);
%Image::ExifTool::UserDefined::Shortcuts = (
MyRegion => 'MPRegion2MWGRegion',
MyRegion2 => 'IPTCRegion2MWGRegion',
MyRegionMP => 'MWGRegion2MPRegion',
MyRegionMP2 => 'IPTCRegion2MPRegion',
MyRegionIPTC => 'MWGRegion2IPTCRegion',
MyRegionIPTC2 => 'MPRegion2IPTCRegion',
);
1; #end

View File

@ -0,0 +1,70 @@
#------------------------------------------------------------------------------
# File: cuepointlist.config
#
# Description: ExifTool config file to generate list of cue points and labels
# in WAV audio files
#
# Usage: exiftool -config cuepointlist.config -cuepointlist -b FILE
#
# Requires: ExifTool version 12.25 or later
#
# Revisions: 2021-04-20 - P. Harvey Created
#------------------------------------------------------------------------------
%Image::ExifTool::UserDefined = (
'Image::ExifTool::Composite' => {
CuePointList => {
Require => {
0 => 'CuePoints',
1 => 'SampleRate',
},
Desire => {
2 => 'CuePointLabel',
3 => 'CuePointNotes',
4 => 'LabeledText',
},
ValueConv => q{
SetByteOrder('II');
my (%lbl, %rgn, %rtyp, %rlbl, %note, $pos, $i);
# get labels if available
for ($i=1; defined $val[2]; ++$i) {
$lbl{$1} = $2 if $val[2] =~ /^(\d+) (.*)/ and length $2;
$val[2] = $self->GetValue("CuePointLabel ($i)");
}
# get notes if available
for ($i=1; defined $val[3]; ++$i) {
$note{$1} = $2 if $val[3] =~ /^(\d+) (.*)/ and length $2;
$val[3] = $self->GetValue("CuePointNotes ($i)");
}
# get regions if available
for ($i=1; defined $val[4]; ++$i) {
if ($val[4] =~ /^(\d+) (\d+) '(.*)' \d+ \d+ \d+ \d+ (.*)/) {
$rgn{$1} = $2;
$rtyp{$1} = $3;
$rlbl{$1} = $4;
}
$val[4] = $self->GetValue("LabeledText ($i)");
}
my $buff = "Cue\tStart\tEnd\tLabel\tPurpose\tText\tNotes\n";
for ($pos=4; $pos+24<=length(${$val[0]}); $pos+=24) {
my $n = Get32u($val[0], $pos);
my $start = Get32u($val[0], $pos + 4);
my (@lbl, $lbl);
push @lbl, $lbl{$n} if defined $lbl{$n};
push @lbl, $rlbl{$n} if defined $rlbl{$n};
push @lbl, '-', $note{$n} if defined $note{$n};
my $lbl = join ' ', @lbl;
$buff .= sprintf("%d\t%.3f\t%.3f\t%s\t%s\t%s\t%s\n",
$n, $start/$val[1], ($start+($rgn{$n}||0))/$val[1],
defined($lbl{$n}) ? $lbl{$n} : '',
defined($rtyp{$n}) ? $rtyp{$n} : '',
defined($rlbl{$n}) ? $rlbl{$n} : '',
defined($note{$n}) ? $note{$n} : '');
}
return $buff;
},
},
},
);
1; # end

View File

@ -0,0 +1,56 @@
#------------------------------------------------------------------------------
# File: depthmap.config
#
# Description: Composite tag definitions to extract DepthMap and ConfidenceMap
# images from Google Dynamic-depth images
#
# Usage: exiftool -config depthmap.config -W %d%f_%t.%s -depthmap -confidencemap -b DIR
#
# Requires: ExifTool version 11.88 or later
#
# Revisions: 2020/02/20 - P. Harvey Created
#------------------------------------------------------------------------------
sub GetTrailerImage($$)
{
my ($val, $type) = @_;
my @uri = ref $$val[1] ? @{$$val[1]} : $$val[1];
my @len = ref $$val[2] ? @{$$val[2]} : $$val[2];
my $start = 0;
for (my $i=0; $i<@uri; ++$i) {
if ($uri[$i] =~ /$type/) {
my $img = substr(${$$val[0]}, $start, $len[$i]);
return \$img;
}
$start += $len[$i];
}
return undef;
}
%Image::ExifTool::UserDefined = (
'Image::ExifTool::Composite' => {
DepthMap => {
Require => {
0 => 'Trailer',
1 => 'ContainerDirectoryItemDataURI',
2 => 'ContainerDirectoryItemLength',
},
ValueConv => 'GetTrailerImage(\@val, "depthmap")',
},
ConfidenceMap => {
Require => {
0 => 'Trailer',
1 => 'ContainerDirectoryItemDataURI',
2 => 'ContainerDirectoryItemLength',
},
ValueConv => 'GetTrailerImage(\@val, "confidencemap")',
},
},
);
%Image::ExifTool::UserDefined::Options = (
RequestTags => 'Trailer',
);
#------------------------------------------------------------------------------
1; #end

357
config_files/example.config Normal file
View File

@ -0,0 +1,357 @@
#------------------------------------------------------------------------------
# File: example.config --> ~/.ExifTool_config
#
# Description: Sample user configuration file for Image::ExifTool
#
# Notes: This example file shows how to define your own shortcuts and
# add new EXIF, IPTC, XMP, PNG, MIE and Composite tags, as well
# as how to specify preferred lenses for the LensID tag, and
# define new file types and default ExifTool option values.
#
# Note that unknown tags may be extracted even if they aren't
# defined, but tags must be defined to be written. Also note
# that it is possible to override an existing tag definition
# with a user-defined tag.
#
# To activate this file, rename it to ".ExifTool_config" and
# place it in your home directory or the exiftool application
# directory. (On Mac and some Windows systems this must be done
# via the command line since the GUI's may not allow filenames to
# begin with a dot. Use the "rename" command in Windows or "mv"
# on the Mac.) This causes ExifTool to automatically load the
# file when run. Your home directory is determined by the first
# defined of the following environment variables:
#
# 1. EXIFTOOL_HOME
# 2. HOME
# 3. HOMEDRIVE + HOMEPATH
# 4. (the current directory)
#
# Alternatively, the -config option of the exiftool application
# may be used to load a specific configuration file (note that
# this must be the first option on the command line):
#
# exiftool -config example.config ...
#
# This example file defines the following 16 new tags as well as
# a number of Shortcut and Composite tags:
#
# 1. EXIF:NewEXIFTag
# 2. GPS:GPSPitch
# 3. GPS:GPSRoll
# 4. IPTC:NewIPTCTag
# 5. XMP-xmp:NewXMPxmpTag
# 6. XMP-exif:GPSPitch
# 7. XMP-exif:GPSRoll
# 8. XMP-xxx:NewXMPxxxTag1
# 9. XMP-xxx:NewXMPxxxTag2
# 10. XMP-xxx:NewXMPxxxTag3
# 11. XMP-xxx:NewXMPxxxStruct
# 12. PNG:NewPngTag1
# 13. PNG:NewPngTag2
# 14. PNG:NewPngTag3
# 15. MIE-Meta:NewMieTag1
# 16. MIE-Test:NewMieTag2
#
# For detailed information on the definition of tag tables and
# tag information hashes, see lib/Image/ExifTool/README.
#------------------------------------------------------------------------------
# Shortcut tags are used when extracting information to simplify
# commonly used commands. They can be used to represent groups
# of tags, or to provide an alias for a tag name.
%Image::ExifTool::UserDefined::Shortcuts = (
MyShortcut => ['exif:createdate','exposuretime','aperture'],
MyAlias => 'FocalLengthIn35mmFormat',
);
# NOTE: All tag names used in the following tables are case sensitive.
# The %Image::ExifTool::UserDefined hash defines new tags to be added
# to existing tables.
%Image::ExifTool::UserDefined = (
# All EXIF tags are added to the Main table, and WriteGroup is used to
# specify where the tag is written (default is ExifIFD if not specified):
'Image::ExifTool::Exif::Main' => {
# Example 1. EXIF:NewEXIFTag
0xd000 => {
Name => 'NewEXIFTag',
Writable => 'int16u',
WriteGroup => 'IFD0',
},
# add more user-defined EXIF tags here...
},
# the Geotag feature writes these additional GPS tags if available:
'Image::ExifTool::GPS::Main' => {
# Example 2. GPS:GPSPitch
0xd000 => {
Name => 'GPSPitch',
Writable => 'rational64s',
},
# Example 3. GPS:GPSRoll
0xd001 => {
Name => 'GPSRoll',
Writable => 'rational64s',
},
},
# IPTC tags are added to a specific record type (eg. application record):
# (Note: IPTC tag ID's are limited to the range 0-255)
'Image::ExifTool::IPTC::ApplicationRecord' => {
# Example 4. IPTC:NewIPTCTag
160 => {
Name => 'NewIPTCTag',
Format => 'string[0,16]',
},
# add more user-defined IPTC ApplicationRecord tags here...
},
# XMP tags may be added to existing namespaces:
'Image::ExifTool::XMP::xmp' => {
# Example 5. XMP-xmp:NewXMPxmpTag
NewXMPxmpTag => { Groups => { 2 => 'Author' } },
# add more user-defined XMP-xmp tags here...
},
# special Geotag tags for XMP-exif:
'Image::ExifTool::XMP::exif' => {
# Example 6. XMP-exif:GPSPitch
GPSPitch => { Writable => 'rational', Groups => { 2 => 'Location' } },
# Example 7. XMP-exif:GPSRoll
GPSRoll => { Writable => 'rational', Groups => { 2 => 'Location' } },
},
# new XMP namespaces (eg. xxx) must be added to the Main XMP table:
'Image::ExifTool::XMP::Main' => {
# namespace definition for examples 8 to 11
xxx => { # <-- must be the same as the NAMESPACE prefix
SubDirectory => {
TagTable => 'Image::ExifTool::UserDefined::xxx',
# (see the definition of this table below)
},
},
# add more user-defined XMP namespaces here...
},
# new PNG tags are added to the PNG::TextualData table:
'Image::ExifTool::PNG::TextualData' => {
# Example 12. PNG:NewPngTag1
NewPngTag1 => { },
# Example 13. PNG:NewPngTag2
NewPngTag2 => { iTXt => 1 }, # (force this tag to be written as iTXt)
# Example 14. PNG:NewPngTag3
NewPngTag3 => { },
},
# add a new MIE tag (NewMieTag1) and group (MIE-Test) to MIE-Meta
# (Note: MIE group names must NOT end with a number)
'Image::ExifTool::MIE::Meta' => {
# Example 15. MIE-Meta:NewMieTag1
NewMieTag1 => {
Writable => 'rational64u',
Units => [ 'cm', 'in' ],
},
# new MIE "Test" group for example 16
Test => {
SubDirectory => {
TagTable => 'Image::ExifTool::UserDefined::MIETest',
DirName => 'MIE-Test',
},
},
},
# Composite tags are added to the Composite table:
'Image::ExifTool::Composite' => {
# Composite tags have values that are derived from the values of
# other tags. The Require/Desire elements below specify constituent
# tags that must/may exist, and the keys of these hashes are used as
# indices in the @val array of the ValueConv expression to access the
# numerical (-n) values of these tags. Print-converted values are
# accessed via the @prt array. All Require'd tags must exist for
# the Composite tag to be evaluated. If no Require'd tags are
# specified, then at least one of the Desire'd tags must exist. See
# the Composite table in Image::ExifTool::Exif for more examples,
# and lib/Image/ExifTool/README for all of the details.
# The first few examples demonstrate simplifications which may be
# used if only one tag is Require'd or Desire'd:
# 1) the Require lookup may be replaced with a simple tag name
# 2) "$val" may be used to represent "$val[0]" in the expression
FileExtension => {
Require => 'FileName',
ValueConv => '$val=~/\.([^.]*)$/; $1',
},
# override CircleOfConfusion tag to use D/1750 instead of D/1440
CircleOfConfusion => {
Require => 'ScaleFactor35efl',
Groups => { 2 => 'Camera' },
ValueConv => 'sqrt(24*24+36*36) / ($val * 1750)',
# an optional PrintConv may be used to format the value
PrintConv => 'sprintf("%.3f mm",$val)',
},
# generate a description for this file type
FileTypeDescription => {
Require => 'FileType',
ValueConv => 'GetFileType($val,1) || $val',
},
# calculate physical image size based on resolution
PhysicalImageSize => {
Require => {
0 => 'ImageWidth',
1 => 'ImageHeight',
2 => 'XResolution',
3 => 'YResolution',
4 => 'ResolutionUnit',
},
ValueConv => '$val[0]/$val[2] . " " . $val[1]/$val[3]',
# (the @prt array contains print-formatted values)
PrintConv => 'sprintf("%.1fx%.1f $prt[4]", split(" ",$val))',
},
# [advanced] select largest JPEG preview image
BigImage => {
Groups => { 2 => 'Preview' },
Desire => {
0 => 'JpgFromRaw',
1 => 'PreviewImage',
2 => 'OtherImage',
# (DNG and A100 ARW may be have 2 PreviewImage's)
3 => 'PreviewImage (1)',
# (if the MPF has 2 previews, MPImage3 could be the larger one)
4 => 'MPImage3',
},
# ValueConv may also be a code reference
# Inputs: 0) reference to list of values, 1) ExifTool object
ValueConv => sub {
my $val = shift;
my ($image, $bigImage, $len, $bigLen);
foreach $image (@$val) {
next unless ref $image eq 'SCALAR';
# check for JPEG image (or "Binary data" if -b not used)
next unless $$image =~ /^(\xff\xd8\xff|Binary data (\d+))/;
$len = $2 || length $$image; # get image length
# save largest image
next if defined $bigLen and $bigLen >= $len;
$bigLen = $len;
$bigImage = $image;
}
return $bigImage;
},
},
# **** ADD ADDITIONAL COMPOSITE TAG DEFINITIONS HERE ****
},
);
# This is a basic example of the definition for a new XMP namespace.
# This table is referenced through a SubDirectory tag definition
# in the %Image::ExifTool::UserDefined definition above.
# The namespace prefix for these tags is 'xxx', which corresponds to
# an ExifTool family 1 group name of 'XMP-xxx'.
%Image::ExifTool::UserDefined::xxx = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-xxx', 2 => 'Image' },
NAMESPACE => { 'xxx' => 'http://ns.myname.com/xxx/1.0/' },
WRITABLE => 'string', # (default to string-type tags)
# Example 8. XMP-xxx:NewXMPxxxTag1 (an alternate-language tag)
# - replace "NewXMPxxxTag1" with your own tag name (eg. "MyTag")
NewXMPxxxTag1 => { Writable => 'lang-alt' },
# Example 9. XMP-xxx:NewXMPxxxTag2 (a string tag in the Author category)
NewXMPxxxTag2 => { Groups => { 2 => 'Author' } },
# Example 10. XMP-xxx:NewXMPxxxTag3 (an unordered List-type tag)
NewXMPxxxTag3 => { List => 'Bag' },
# Example 11. XMP-xxx:NewXMPxxxStruct (a structured tag)
# - example structured XMP tag
NewXMPxxxStruct => {
# the "Struct" entry defines the structure fields
Struct => {
# optional namespace prefix and URI for structure fields
# (required only if different than NAMESPACE above)
# --> multiple entries may exist in this namespace lookup,
# with the last one alphabetically being the default for
# the fields, but each field may have a "Namespace"
# element to specify which prefix to use
NAMESPACE => { 'test' => 'http://x.y.z/test/' },
# optional structure name (used for warning messages only)
STRUCT_NAME => 'MyStruct',
# optional rdf:type property for the structure
TYPE => 'http://x.y.z/test/xystruct',
# structure field definitions (very similar to tag definitions)
X => { Writable => 'integer' },
Y => { Writable => 'integer' },
# a nested structure...
Things => {
List => 'Bag',
Struct => {
NAMESPACE => { thing => 'http://x.y.z/thing/' },
What => { },
Where => { },
},
},
},
List => 'Seq', # structures may also be elements of a list
},
# Each field in the structure has a corresponding flattened tag that is
# generated automatically with an ID made from a concatenation of the
# original structure tag ID and the field name (after capitalizing the
# first letter of the field name if necessary). The Name and/or
# Description of these flattened tags may be changed if desired, but all
# other tag properties are taken from the structure field definition.
# The "Flat" flag must be used when setting the Name or Description of a
# flattened tag. For example:
NewXMPxxxStructX => { Name => 'SomeOtherName', Flat => 1 },
);
# Adding a new MIE group requires a few extra definitions
use Image::ExifTool::MIE;
%Image::ExifTool::UserDefined::MIETest = (
%Image::ExifTool::MIE::tableDefaults, # default MIE table entries
GROUPS => { 0 => 'MIE', 1 => 'MIE-Test', 2 => 'Document' },
WRITE_GROUP => 'MIE-Test',
# Example 16. MIE-Test:NewMieTag2
NewMieTag2 => { }, # new user-defined tag in MIE-Test group
);
# A special 'Lenses' list can be defined to give priority to specific lenses
# in the logic to determine a lens model for the Composite:LensID tag
@Image::ExifTool::UserDefined::Lenses = (
'Sigma AF 10-20mm F4-5.6 EX DC',
'Tokina AF193-2 19-35mm f/3.5-4.5',
);
# User-defined file types to recognize
%Image::ExifTool::UserDefined::FileTypes = (
XXX => { # <-- the extension of the new file type (case insensitive)
# BaseType specifies the format upon which this file is based (case
# sensitive). If BaseType is defined, then the file will be fully
# supported, and in this case the Magic pattern should not be defined
BaseType => 'TIFF',
MIMEType => 'image/x-xxx',
Description => 'My XXX file type',
# if the BaseType is writable by ExifTool, then the new file type
# will also be writable unless otherwise specified, like this:
Writable => 0,
},
YYY => {
# without BaseType, the file will be recognized but not supported
Magic => '0123abcd', # regular expression to match at start of file
MIMEType => 'application/test',
Description => 'My YYY file type',
},
ZZZ => {
# if neither BaseType nor Magic are defined, the file will be
# recognized by extension only. MIMEType will be application/unknown
# unless otherwise specified
Description => 'My ZZZ file type',
},
# if only BaseType is specified, then the following simplified syntax
# may be used. In this example, files with extension "TTT" will be
# processed as JPEG files
TTT => 'JPEG',
);
# Change default location for writing QuickTime tags so Keys is preferred
# (by default, the PREFERRED levels are: ItemList=2, UserData=1, Keys=0)
use Image::ExifTool::QuickTime;
$Image::ExifTool::QuickTime::Keys{PREFERRED} = 3;
# Specify default ExifTool option values
# (see the Options function documentation for available options)
%Image::ExifTool::UserDefined::Options = (
CoordFormat => '%.6f', # change default GPS coordinate format
Duplicates => 1, # make -a default for the exiftool app
GeoMaxHDOP => 4, # ignore GPS fixes with HDOP > 4
RequestAll => 3, # request additional tags not normally generated
);
#------------------------------------------------------------------------------
1; #end

View File

@ -0,0 +1,114 @@
#------------------------------------------------------------------------------
# File: fotoware.config
#
# Description: This config file defines Fotoware XMP tags for writing.
#
# Notes: Length limits are imposed according to Fotoware limitations when
# writing string values, but these may be disabled with the -n
# option or by adding a "#" to the tag name. However, beware that
# longer strings may cause unpredictable results in Fotoware
# software.
#
# Use of this file will not bring full Fotoware 'experience'.
# Fotostation writes these tags not only into XMP but also in IIM
# and even Exif spaces. Communication with older Fotoware systems
# may be broken when using only XMP.
#
# Also note that there are potential problems with character
# encoding on systems with mixed environments, depending on
# Fotoware software settings.
#
# Usage: exiftool -config fotoware.config -FOTOWARETAG=VALUE FILE ...
#
# Requires: ExifTool version 7.00 or later
#
# Revisions: 2012/09/19 - P. Harvey Created
# 2016/09/24 - Mikolaj Machowski updated with new Fotostation tags
#------------------------------------------------------------------------------
%Image::ExifTool::UserDefined = (
'Image::ExifTool::XMP::Main' => {
fwl => {
SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::fwl' },
},
fwr => {
SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::fwr' },
},
fwc => {
SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::fwc' },
},
fwu => {
SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::fwu' },
},
},
);
%Image::ExifTool::UserDefined::fwl = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-fwl', 2 => 'Image' },
NAMESPACE => { 'fwl' => 'http://ns.fotoware.com/iptcxmp-legacy/1.0/' },
WRITABLE => 'string',
# limit maximum lengths of string values
CreatedTime => { PrintConvInv => 'substr($val,0,16)' },
EditStatus => { PrintConvInv => 'substr($val,0,64)' },
FixtureIdentifier=> { PrintConvInv => 'substr($val,0,1024)' },
LocalCaption => { PrintConvInv => 'substr($val,0,2000)' },
ObjectCycle => { PrintConvInv => 'substr($val,0,32)' },
ProgramVersion => { PrintConvInv => 'substr($val,0,10)' },
ReferenceNumber => { PrintConvInv => 'substr($val,0,256)' },
ReferenceService => { PrintConvInv => 'substr($val,0,256)' },
ReferenceDate => {
Groups => { 2 => 'Time' },
Writable => 'date',
Shift => 'Time',
PrintConv => '$self->ConvertDateTime($val)',
PrintConvInv => '$self->InverseDateTime($val,undef,1)',
},
ReleaseDate => {
Groups => { 2 => 'Time' },
Writable => 'date',
Shift => 'Time',
PrintConv => '$self->ConvertDateTime($val)',
PrintConvInv => '$self->InverseDateTime($val,undef,1)',
},
ReleaseTime => { PrintConvInv => 'substr($val,0,16)' },
);
%Image::ExifTool::UserDefined::fwr = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-fwr', 2 => 'Image' },
NAMESPACE => { 'fwr' => 'http://ns.fotoware.com/iptcxmp-reserved/1.0/' },
WRITABLE => 'string',
Classify => { PrintConvInv => 'substr($val,0,256)' },
DocumentText => { PrintConvInv => 'substr($val,0,2000)' },
Exif => { PrintConvInv => 'substr($val,0,1024)' },
History => { PrintConvInv => 'substr($val,0,256)' },
ImageNotes => { PrintConvInv => 'substr($val,0,256)' },
JobId => { PrintConvInv => 'substr($val,0,256)' },
OwnerId => { PrintConvInv => 'substr($val,0,256)' },
ShortUniqeId => { PrintConvInv => 'substr($val,0,256)' },
ContentValue => { PrintConvInv => 'substr($val,0,256)' },
UniqueId => { PrintConvInv => 'substr($val,0,256)' },
MasterDocumentId => { PrintConvInv => 'substr($val,0,256)' },
);
%Image::ExifTool::UserDefined::fwc = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-fwc', 2 => 'Image' },
NAMESPACE => { 'fwc' => 'http://ns.fotoware.com/iptcxmp-custom/1.0/' },
WRITABLE => 'string',
# generate CustomField1 through CustomField20 tags
map { 'CustomField' . $_ => {
PrintConvInv => 'substr($val,0,256)',
} } (1 .. 20),
);
%Image::ExifTool::UserDefined::fwu = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-fwu', 2 => 'Image' },
NAMESPACE => { 'fwu' => 'http://ns.fotoware.com/iptcxmp-user/1.0/' },
WRITABLE => 'string',
# generate UserDefined1 through UserDefined255 tags
map { 'UserDefined' . $_ => {
PrintConvInv => 'substr($val,0,256)',
} } (1 .. 255),
);
1; #end

256
config_files/gps2utm.config Normal file
View File

@ -0,0 +1,256 @@
#------------------------------------------------------------------------------
# File: gps2utm.config
#
# Description: Generate UTM tags from GPS information
#
# Requires: ExifTool version 7.00 or later
#
# Notes: Uses GPSMapDatum, GPSLatitude and GPSLongitude to generate
# UTMCoordinates, UTMZone, UTMEasting and UTMNorthing. If
# GPSMapDatum is not available then "WGS84" is assumed.
#
# Example: > exiftool -config gps2utm.config "-utm*" t/images/GPS.jpg
# UTM Coordinates : 30U 569475.596m E 6094180.754m N
# UTM Easting : 569475.595558165
# UTM Northing : 6094180.75443061
# UTM Zone : 30U
#
# Caveats: When used to convert EXIF GPS coordinates, the reference
# direction tags (GPSLatitudeRef/GPSLongitudeRef) must exist or
# the calculated UTM coordinates may be in the wrong hemisphere
#
# Revisions: 2016/03/08 - Bryan K. Williams (aka StarGeek) Created
# 2016/03/09 - PH removed library dependency and re-organized
#------------------------------------------------------------------------------
my $deg2rad = 3.14159265358979 / 180;
sub tan($)
{
return sin($_[0]) / cos($_[0]);
}
#===============================================================================
# the following code is by Graham Crookham:
# http://search.cpan.org/~grahamc/Geo-Coordinates-UTM/ (version 0.11)
# remove all markup from an ellipsoid name, to increase the chance
# that a match is found.
sub _cleanup_name($)
{ my $copy = lc(shift);
for($copy)
{ s/\([^)]+\)//g; # remove text between parentheses
s/[\s-]//g; # no blanks or dashes
}
$copy;
}
# Ellipsoid array (name,equatorial radius,square of eccentricity)
# Same data also as hash with key eq name (in variations)
my (@Ellipsoid, %Ellipsoid);
BEGIN { # Initialize this before other modules get a chance
@Ellipsoid =
( [ "Airy", 6377563, 0.00667054]
, [ "Australian National", 6378160, 0.006694542]
, [ "Bessel 1841", 6377397, 0.006674372]
, [ "Bessel 1841 Nambia", 6377484, 0.006674372]
, [ "Clarke 1866", 6378206, 0.006768658]
, [ "Clarke 1880", 6378249, 0.006803511]
, [ "Everest 1830 India", 6377276, 0.006637847]
, [ "Fischer 1960 Mercury", 6378166, 0.006693422]
, [ "Fischer 1968", 6378150, 0.006693422]
, [ "GRS 1967", 6378160, 0.006694605]
, [ "GRS 1980", 6378137, 0.00669438]
, [ "Helmert 1906", 6378200, 0.006693422]
, [ "Hough", 6378270, 0.00672267]
, [ "International", 6378388, 0.00672267]
, [ "Krassovsky", 6378245, 0.006693422]
, [ "Modified Airy", 6377340, 0.00667054]
, [ "Modified Everest", 6377304, 0.006637847]
, [ "Modified Fischer 1960", 6378155, 0.006693422]
, [ "South American 1969", 6378160, 0.006694542]
, [ "WGS 60", 6378165, 0.006693422]
, [ "WGS 66", 6378145, 0.006694542]
, [ "WGS-72", 6378135, 0.006694318]
, [ "WGS-84", 6378137, 0.00669438 ]
, [ "Everest 1830 Malaysia", 6377299, 0.006637847]
, [ "Everest 1956 India", 6377301, 0.006637847]
, [ "Everest 1964 Malaysia and Singapore", 6377304, 0.006637847]
, [ "Everest 1969 Malaysia", 6377296, 0.006637847]
, [ "Everest Pakistan", 6377296, 0.006637534]
, [ "Indonesian 1974", 6378160, 0.006694609]
, [ "Arc 1950", 6378249.145,0.006803481]
, [ "NAD 27",6378206.4,0.006768658]
, [ "NAD 83",6378137,0.006694384]
);
# calc ecc as
# a = semi major axis
# b = semi minor axis
# e^2 = (a^2-b^2)/a^2
# For clarke 1880 (Arc1950) a=6378249.145 b=6356514.966398753
# e^2 (40682062155693.23 - 40405282518051.34) / 40682062155693.23
# e^2 = 0.0068034810178165
foreach my $el (@Ellipsoid)
{ my ($name, $eqrad, $eccsq) = @$el;
$Ellipsoid{$name} = $el;
$Ellipsoid{_cleanup_name $name} = $el;
}
}
# Returns "official" name, equator radius and square eccentricity
# The specified name can be numeric (for compatibility reasons) or
# a more-or-less exact name
# Examples: my($name, $r, $sqecc) = ellipsoid_info 'wgs84';
# my($name, $r, $sqecc) = ellipsoid_info 'WGS 84';
# my($name, $r, $sqecc) = ellipsoid_info 'WGS-84';
# my($name, $r, $sqecc) = ellipsoid_info 'WGS-84 (new specs)';
# my($name, $r, $sqecc) = ellipsoid_info 22;
sub ellipsoid_info($)
{ my $id = shift;
my $el = $id !~ m/\D/
? $Ellipsoid[$id-1] # old system counted from 1
: $Ellipsoid{$id} || $Ellipsoid{_cleanup_name $id};
defined $el ? @$el : ();
}
# Expects Ellipsoid Number or name, Latitude, Longitude
# (Latitude and Longitude in decimal degrees)
# Returns UTM Zone, UTM Easting, UTM Northing
sub latlon_to_utm(@)
{ my ($ellips, $latitude, $longitude) = @_;
die("Longitude value ($longitude) invalid\n")
if $longitude < -180 || $longitude > 180;
my $long2 = $longitude - int(($longitude + 180)/360) * 360;
my $zone = _latlon_zone_number($latitude, $long2);
_latlon_to_utm($ellips || 'WGS84', $zone, $latitude, $long2);
}
sub _latlon_zone_number
{ my ($latitude, $long2) = @_;
my $zone = int( ($long2 + 180)/6) + 1;
if($latitude >= 56.0 && $latitude < 64.0 && $long2 >= 3.0 && $long2 < 12.0)
{ $zone = 32;
}
if($latitude >= 72.0 && $latitude < 84.0) {
$zone = ($long2 >= 0.0 && $long2 < 9.0) ? 31
: ($long2 >= 9.0 && $long2 < 21.0) ? 33
: ($long2 >= 21.0 && $long2 < 33.0) ? 35
: ($long2 >= 33.0 && $long2 < 42.0) ? 37
: $zone;
}
return $zone;
}
sub _latlon_to_utm
{ my ($ellips, $zone, $latitude, $long2) = @_;
my ($name, $radius, $eccentricity) = ellipsoid_info $ellips
or die("Ellipsoid value ($ellips) invalid\n");
my $lat_radian = $deg2rad * $latitude;
my $long_radian = $deg2rad * $long2;
my $k0 = 0.9996; # scale
my $longorigin = ($zone - 1)*6 - 180 + 3;
my $longoriginradian = $deg2rad * $longorigin;
my $eccentprime = $eccentricity/(1-$eccentricity);
my $N = $radius / sqrt(1-$eccentricity * sin($lat_radian)*sin($lat_radian));
my $T = tan($lat_radian) * tan($lat_radian);
my $C = $eccentprime * cos($lat_radian)*cos($lat_radian);
my $A = cos($lat_radian) * ($long_radian - $longoriginradian);
my $M = $radius
* ( ( 1 - $eccentricity/4 - 3 * $eccentricity * $eccentricity/64
- 5 * $eccentricity * $eccentricity * $eccentricity/256
) * $lat_radian
- ( 3 * $eccentricity/8 + 3 * $eccentricity * $eccentricity/32
+ 45 * $eccentricity * $eccentricity * $eccentricity/1024
) * sin(2 * $lat_radian)
+ ( 15 * $eccentricity * $eccentricity/256 +
45 * $eccentricity * $eccentricity * $eccentricity/1024
) * sin(4 * $lat_radian)
- ( 35 * $eccentricity * $eccentricity * $eccentricity/3072
) * sin(6 * $lat_radian)
);
my $utm_easting = $k0*$N*($A+(1-$T+$C)*$A*$A*$A/6
+ (5-18*$T+$T*$T+72*$C-58*$eccentprime)*$A*$A*$A*$A*$A/120)
+ 500000.0;
my $utm_northing= $k0 * ( $M + $N*tan($lat_radian) * ( $A*$A/2+(5-$T+9*$C+4*$C*$C)*$A*$A*$A*$A/24 + (61-58*$T+$T*$T+600*$C-330*$eccentprime) * $A*$A*$A*$A*$A*$A/720));
$utm_northing += 10000000.0 if $latitude < 0;
my $utm_letter
= ( 84 >= $latitude && $latitude >= 72) ? 'X'
: ( 72 > $latitude && $latitude >= 64) ? 'W'
: ( 64 > $latitude && $latitude >= 56) ? 'V'
: ( 56 > $latitude && $latitude >= 48) ? 'U'
: ( 48 > $latitude && $latitude >= 40) ? 'T'
: ( 40 > $latitude && $latitude >= 32) ? 'S'
: ( 32 > $latitude && $latitude >= 24) ? 'R'
: ( 24 > $latitude && $latitude >= 16) ? 'Q'
: ( 16 > $latitude && $latitude >= 8) ? 'P'
: ( 8 > $latitude && $latitude >= 0) ? 'N'
: ( 0 > $latitude && $latitude >= -8) ? 'M'
: ( -8 > $latitude && $latitude >= -16) ? 'L'
: (-16 > $latitude && $latitude >= -24) ? 'K'
: (-24 > $latitude && $latitude >= -32) ? 'J'
: (-32 > $latitude && $latitude >= -40) ? 'H'
: (-40 > $latitude && $latitude >= -48) ? 'G'
: (-48 > $latitude && $latitude >= -56) ? 'F'
: (-56 > $latitude && $latitude >= -64) ? 'E'
: (-64 > $latitude && $latitude >= -72) ? 'D'
: (-72 > $latitude && $latitude >= -80) ? 'C'
: die("Latitude ($latitude) out of UTM range\n");
$zone .= $utm_letter;
($zone, $utm_easting, $utm_northing);
}
# End Graham Crookham code
#===============================================================================
%Image::ExifTool::UserDefined = (
'Image::ExifTool::Composite' => {
UTMCoordinates => {
Desire => {
0 => 'GPSMapDatum',
},
Require => {
1 => 'GPSLatitude',
2 => 'GPSLongitude',
},
ValueConv => 'join " ", latlon_to_utm(@val)',
PrintConv => 'sprintf("%s %.3fm E %.3fm N", split(" ", $val))',
},
UTMZone => {
Require => 'UTMCoordinates',
ValueConv => 'my @a=split(" ",$val); $a[0]',
},
UTMEasting => {
Require => 'UTMCoordinates',
ValueConv => 'my @a=split(" ",$val); $a[1]',
},
UTMNorthing => {
Require => 'UTMCoordinates',
ValueConv => 'my @a=split(" ",$val); $a[2]',
},
},
);
#------------------------------------------------------------------------------
1; #end

146
config_files/nksc.config Normal file
View File

@ -0,0 +1,146 @@
#------------------------------------------------------------------------------
# File: nksc.config
#
# Description: This config file contains tag definitions to extract metadata
# from RDF/XML-based Nikon ViewNX NKSC sidecar files
#
# Usage: exiftool -config nksc.config -ext nksc DIR
#
# Requires: ExifTool version 11.38 or later
#
# Revisions: 2019/04/24 - P. Harvey Created
#------------------------------------------------------------------------------
%Image::ExifTool::UserDefined = (
'Image::ExifTool::XMP::Main' => {
ast => {
SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::ast' },
},
sdc => {
SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::sdc' },
},
nine => {
SubDirectory => { TagTable => 'Image::ExifTool::UserDefined::nine' },
},
},
'Image::ExifTool::Composite' => {
GPSLatitude => {
Require => {
0 => 'XMP-ast:GPSLatitude',
1 => 'XMP-ast:GPSLatitudeRef',
},
ValueConv => '$prt[1] =~ /^S/i ? -$val[0] : $val[0]',
PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")',
},
GPSLongitude => {
Require => {
0 => 'XMP-ast:GPSLongitude',
1 => 'XMP-ast:GPSLongitudeRef',
},
ValueConv => '$prt[1] =~ /^W/i ? -$val[0] : $val[0]',
PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "E")',
},
},
);
%Image::ExifTool::UserDefined::ast = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-ast', 2 => 'Location' },
NAMESPACE => { 'ast' => 'http://ns.nikon.com/asteroid/1.0/' },
about => { Groups => { 2 => 'Image' } },
version => { Groups => { 2 => 'Image' } },
GPSVersionID => {
ValueConv => q{
my $valPt = Image::ExifTool::XMP::DecodeBase64($val);
SetByteOrder('II');
ReadValue($valPt, 0, 'int8u', 4, length($$valPt));
},
PrintConv => '$val =~ tr/ /./; $val',
},
GPSLatitude => {
ValueConv => q{
my $valPt = Image::ExifTool::XMP::DecodeBase64($val);
SetByteOrder('II');
$val = ReadValue($valPt, 0, 'double', 3, length($$valPt));
Image::ExifTool::GPS::ToDegrees($val);
},
PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val)',
},
GPSLatitudeRef => {
ValueConv => q{
my $valPt = Image::ExifTool::XMP::DecodeBase64($val);
SetByteOrder('II');
ReadValue($valPt, 0, 'int32u', 3, length($$valPt));
},
PrintConv => { 0 => 'North', 1 => 'South' },
},
GPSLongitude => {
ValueConv => q{
my $valPt = Image::ExifTool::XMP::DecodeBase64($val);
SetByteOrder('II');
$val = ReadValue($valPt, 0, 'double', 3, length($$valPt));
Image::ExifTool::GPS::ToDegrees($val);
},
PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val)',
},
GPSLongitudeRef => {
ValueConv => q{
my $valPt = Image::ExifTool::XMP::DecodeBase64($val);
SetByteOrder('II');
ReadValue($valPt, 0, 'int32u', 3, length($$valPt));
},
PrintConv => { 2 => 'East', 3 => 'West' },
},
GPSAltitude => {
ValueConv => q{
my $valPt = Image::ExifTool::XMP::DecodeBase64($val);
SetByteOrder('II');
ReadValue($valPt, 0, 'double');
},
PrintConv => '$val =~ /^(inf|undef)$/ ? $val : "$val m"',
},
GPSAltitudeRef => {
ValueConv => q{
my $valPt = Image::ExifTool::XMP::DecodeBase64($val);
ReadValue($valPt, 0, 'int8u');
},
PrintConv => {
0 => 'Above Sea Level',
1 => 'Below Sea Level',
},
},
GPSMapDatum => { },
XMLPackets => {
Name => 'XMP',
Groups => { 2 => 'Image' },
RawConv => 'Image::ExifTool::XMP::DecodeBase64($val)',
SubDirectory => { TagTable => 'Image::ExifTool::XMP::Main' },
},
IPTC => {
Name => 'IPTC',
Groups => { 2 => 'Image' },
RawConv => 'Image::ExifTool::XMP::DecodeBase64($val)',
SubDirectory => { TagTable => 'Image::ExifTool::IPTC::Main' },
},
);
%Image::ExifTool::UserDefined::sdc = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-sdc', 2 => 'Image' },
NAMESPACE => { 'sdc' => 'http://ns.nikon.com/sdc/1.0/' },
about => { },
version => { },
appversion => { },
appname => { },
);
%Image::ExifTool::UserDefined::nine = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-nine', 2 => 'Image' },
NAMESPACE => { 'nine' => 'http://ns.nikon.com/nine/1.0/' },
about => { },
version => { },
NineEdits => { Binary => 1 },
Label => { },
Rating => { },
Trim => { ValueConv => 'Image::ExifTool::XMP::DecodeBase64($val)' },
);
1; #end

View File

@ -0,0 +1,221 @@
#------------------------------------------------------------------------------
# File: photoshop_paths.config
#
# Description: This config file generates user-defined tags for Photoshop
# paths, and may be used to extract path names and/or Bezier knot
# anchor points, or copy path information from one file to
# another.
#
# The anchor points may be extracted along with the path names by
# setting the "Anchor" user parameter (ie. "-userparam anchor"),
# or by themselves with "AnchorOnly".
#
# An "AllPaths" shortcut tag is also provided represent all
# Photoshop path tags. This shortcut must be used when copying
# because these tags are marked as "Protected" so they won't be
# copied by default (also see the notes below).
#
# Path anchor points are converted to pixel coordinates by the
# Composite PathPixXXX tags, and an "AllPathPix" shortcut is
# provided to represent these tags.
#
# Finally, a Composite PathCount tag is provided to return the
# number of paths in an image, and a TotalPathPoints tag counts
# the total number of path anchor points.
#
# Notes: 1) Print conversion must be disabled to be able to copy the paths
# (via either the -n option, or by adding a "#" to the tag name,
# eg. "-tagsfromfile SRC -allpaths#").
#
# 2) When copying the paths, OriginPathInfo must also be copied
# (otherwise Photoshop may give a "program error" and refuse to
# load the image).
#
# Usage:
#
# 1) Extract Photoshop path names:
#
# exiftool -config photoshop_paths.config -allpaths FILE
#
# 2) Extract Photoshop path names and anchor points:
#
# exiftool -config photoshop_paths.config -userparam anchor -allpaths FILE
#
# 3) Extract Photoshop path anchor points only:
#
# exiftool -config photoshop_paths.config -userparam anchoronly -allpaths FILE
#
# 4) Copy all Photoshop paths from one file (SRC) to another (DST):
# (note that OriginPathInfo must also be copied when copying all paths)
#
# exiftool -config photoshop_paths.config -tagsfromfile SRC -allpaths# -originpathinfo DST
#
# 5) Extract path names and anchor points in pixel coordinates:
#
# exiftool -config photoshop_paths.config -allpathpix FILE
#
# Requires: ExifTool version 9.95 or later
#
# Notes: A "-" before a set of Bezier path points indicates a closed subpath,
# and a "+ indicates the start of an open subpath.
#
# Revisions: 2015/05/07 - P. Harvey Created
# 2016/09/14 - PH Added feature to allow extracting anchor points
# 2017/01/24 - PH Added PathCount and PathPix Composite tags
# 2017/02/02 - PH Added support for copying OriginPathInfo
# 2017/02/22 - PH Fixed problem printing some paths
# 2017/03/19 - PH Added "-" or "+" at the start of closed or open
# subpath respectively
# 2017/06/03 - PH Added TotalPathPoints
# 2017/07/17 - PH Added UniquePathPoints
# 2022/02/03 - PH Added WorkingPath and WorkingPathPix
#
# References: https://exiftool.org/forum/index.php/topic,1621.0.html
# https://exiftool.org/forum/index.php/topic,3910.0.html
# https://exiftool.org/forum/index.php/topic,6647.0.html
#------------------------------------------------------------------------------
# Print Photoshop path name and/or anchor points
# Inputs: 0) reference to Photoshop path data, 1) ExifTool object reference
# 2-3) optional image width/height to convert anchor points to pixels
# 4) optional path name
# Returns: String with name and/or Bezier knot anchor points
sub PrintPath($$;$$$)
{
my ($val, $et, $w, $h, $nm) = @_;
my ($pos, $name, @rtn);
my $len = length($$val) - 26;
# recover exiftool-added path name if it exists
if ($$val =~ m{.*/#(.{0,255})#/$}s) {
$name = $1;
$len -= length($1) + 4;
$name = $nm if defined $nm and not length $name;
} else {
$name = defined $nm ? $nm : '<none>';
}
my $anchorOnly = $et->Options(UserParam => 'AnchorOnly');
push @rtn, $name unless $anchorOnly;
# loop through path points and extract anchor points if specified
if ($anchorOnly or $et->Options(UserParam => 'Anchor') or defined $w) {
SetByteOrder('MM');
for ($pos=0; $pos<=$len; $pos+=26) {
my $type = Get16u($val, $pos);
$type == 0 and push(@rtn, '-'), next;
$type == 3 and push(@rtn, '+'), next;
# Bezier knot records are types 1, 2, 4 and 5
next unless {1=>1,2=>1,4=>1,5=>1}->{$type};
# the anchor point is at offset 10 in the Bezier knot record
# (fixed-point values with 24-bits after the decimal point)
my $y = Get32s($val, $pos+10) / 0x1000000; # (vertical component first)
my $x = Get32s($val, $pos+14) / 0x1000000;
if (defined $w and defined $h) {
push @rtn, sprintf('(%g,%g)', $x * $w, $y * $h);
} else {
push @rtn, sprintf('(%g,%g)', $x, $y);
}
}
}
return join ' ', @rtn;
}
%Image::ExifTool::Shortcuts::UserDefined = (
# create "AllPaths" shortcut for all Photoshop path tags (except WorkingPath)
AllPaths => [
map { sprintf "Path%x", $_ } (0x7d0 .. 0xbb5),
],
AllPathPix => [
map { sprintf "PathPix%x", $_ } (0x7d0 .. 0xbb5),
],
);
%Image::ExifTool::UserDefined = (
'Image::ExifTool::Photoshop::Main' => {
0xbb8 => {
Name => 'OriginPathInfo',
Flags => [ qw(Writable Protected Binary SetResourceName) ],
},
0x401 => {
Name => 'WorkingPath',
Flags => [ qw(Writable Protected Binary ConvertBinary SetResourceName) ],
PrintConv => sub {
my ($val, $et) = @_;
PrintPath($val, $et, undef, undef, 'Work Path');
},
},
# generate tags for each of the 998 possible Photoshop paths
map { $_ => {
Name => sprintf('Path%x', $_),
Description => sprintf('Path %x', $_),
Flags => [ qw(Writable Protected Binary ConvertBinary SetResourceName) ],
PrintConv => \&PrintPath,
} } (0x7d0 .. 0xbb5),
},
'Image::ExifTool::Composite' => {
PathCount => {
# (PathCount statistics do not include WorkingPath)
Desire => {
map { $_-0x7d0 => sprintf('Path%x', $_) } (0x7d0 .. 0xbb5),
},
ValueConv => sub {
my ($val, $self) = @_;
my $count = 0;
my $pts = 0;
my $uniq = 0;
my %uniq;
foreach (@$val) {
next unless defined $_;
++$count;
# determine the total number of path anchor points
my $len = length($$_) - 26;
for ($pos=0; $pos<=$len; $pos+=26) {
SetByteOrder('MM');
my $type = Get16u($_, $pos);
last if $type == 0x2f23; # (start of path name added by ExifTool)
next unless {1=>1,2=>1,4=>1,5=>1}->{$type};
my $pt = substr($$_, $pos+10, 8);
$uniq{$pt} or ++$uniq, $uniq{$pt} = 1;
++$pts;
}
}
$$self{TotalPathPoints} = $pts;
$$self{UniquePathPoints} = $uniq;
return $count;
},
},
UniquePathPoints => {
Require => 'PathCount',
ValueConv => '$$self{UniquePathPoints}',
},
TotalPathPoints => {
Require => 'PathCount',
ValueConv => '$$self{TotalPathPoints}',
},
WorkingPathPix => {
Require => {
0 => 'ImageWidth',
1 => 'ImageHeight',
2 => 'WorkingPath',
},
ValueConv => sub {
my ($val, $et) = @_;
PrintPath($$val[2], $et, $$val[0], $$val[1], 'Work Path');
},
},
map { sprintf('PathPix%x', $_) => {
Require => {
0 => 'ImageWidth',
1 => 'ImageHeight',
2 => sprintf('Path%x', $_),
},
Description => sprintf('Path Pix %x', $_),
ValueConv => sub {
my ($val, $et) = @_;
PrintPath($$val[2], $et, $$val[0], $$val[1]);
},
} } (0x7d0 .. 0xbb5),
},
);
1; #end

View File

@ -0,0 +1,382 @@
#------------------------------------------------------------------------------
# File: picasa_faces.config
#
# Description: User-defined Composite tag definitions to convert face regions
# in .picasa.ini files to MWG region tags (Metadata Working Group
# region, used by Picasa) and MP region tags (used by Microsoft
# Photo Library).
#
# Tag definitions and examples:
#
# PicasaToMWGRegion
# This will create the MWG region tag but will filter out the regions
# that are still unnamed in Picasa. Picasa defaults to naming these
# regions 'ffffffffffffffff' but normally will not save these to file.
# Example:
# exiftool -config picasa_faces.config "-RegionInfo<PicasaToMWGRegion" FILE
#
# PicasaToMPRegion
# This will create the MP region tag but will filter out the regions that
# are still unnamed in Picasa. Picasa defaults to naming these regions
# 'ffffffffffffffff' but normally will not save these to file.
# Example:
# exiftool -config picasa_faces.config "-RegionInfoMP<PicasaToMPRegion" FILE
#
# PicasaRegionNames
# Returns a list of the region names associated with the file. This
# allows copying of the region names to XMP:Subject and/or IPTC:Keywords.
# It also allows checking to see if regions need to be updated.
# Example:
# exiftool -config picasa_faces.config "-XMP:Subject<PicasaRegionNames" FILE
#
# PicasaToMWGRegionUnfiltered
# This will create the MWG region tag. This version does not filter out
# the unnamed regions. Picasa normally will filter out unnamed regions
# when it saves regions in the file.
# Example:
# exiftool -config picasa_faces.config "-RegionInfo<PicasaToMWGRegionUnfiltered" FILE
#
# PicasaToMPRegionUnfiltered
# This will create the MP region tag. This version does not filter out
# the unnamed regions. Picasa normally will filter out unnamed regions
# when it saves regions in the file.
# Example:
# exiftool -config picasa_faces.config "-RegionInfoMP<PicasaToMPRegionUnfiltered" FILE
#
# Notes: The face names are loaded from the Picasa contacts file, which
# defaults to:
#
# C:/Users/MainUser/AppData/Local/PicasaData/Google/Picasa2/contacts/contacts.xml
#
# The default contacts file may be changed by editing the value
# of $contactXML below, or on the command line with ExifTool 9.90
# or later via the -userParam option, eg:
# -userparam PicasaContactsFile=/path/to/contacts.xml
#
# Requires: ExifTool version 8.82 or later (9.90 or later for -userparam)
#
# Revisions: 2015/03/07 - Bryan K. Williams (aka StarGeek) Created
# 2015/03/12 - PH Minor changes, optimizations and reformatting
# 2015/05/11 - BKW Fix bug where Picasa writes region data for
# rotated NEF and CR2 images as if the orientation
# is not rotated.
# 2015/05/12 - PH Minor code tweaks
# 2015/10/26 - BKW Round off area sizes to 7 decimal places
# 2016/01/18 - BKW Improved rounding algorithm
# 2016/05/14 - BKW Increased rounding to 9 decimal places (Max Picasa accepts),
# moved rounding operation to subroutine
#
# References: https://exiftool.org/forum/index.php/topic,6354.0.html
#------------------------------------------------------------------------------
# Picasa contacts file name
my $contactXML = 'C:/Users/MainUser/AppData/Local/PicasaData/Google/Picasa2/contacts/contacts.xml';
# local variables
my $lastIniFile = ''; # path of last .picasa.ini file loaded
my $lastContactFile = ''; # path of last contacts.xml file loaded
# raw file types that need additional processing to get regions correct
my %isRawFile = map { $_ => 1 } qw(
3FR ARW CR2 CRW CS1 DCR DNG EIP ERF IIQ K25 KDC MEF MOS MRW NEF NRW
ORF PEF RAF RAW RW2 RWL SR2 SRF SRW X3F), 'Canon 1D RAW';
my %contactHash; # lookup for loaded contacts.xml entries
my %fileHash; # lookup for loaded .picasa.ini entries
#------------------------------------------------------------------------------
# Load Picasa's contacts.xml and .picasa.ini files.
# Inputs: 0) ExifTool object reference, 1) .picasa.ini directory
# Returns: 1 if files were loaded and parsed, undef on error
# Notes: If file has already been loaded, it isn't reloaded
sub LoadPicasaFiles($$)
{
local (*CONTACTS, *INI);
my ($et, $iniDir) = @_;
# check ExifTool version to see if there might be
# a command line setting for the contact file
my $contactFile = ($Image::ExifTool::VERSION >= 9.89 and
defined($et->Options(UserParam => 'PicasaContactsFile'))) ?
$et->Options(UserParam => 'PicasaContactsFile') : $contactXML;
# load Picasa contacts.xml file unless done already
unless ($contactFile eq $lastContactFile) {
$lastContactFile = $contactFile;
undef %contactHash;
# Picasa's default setting for unnamed faces.
$contactHash{'ffffffffffffffff'} = 'unnamed';
if (open(CONTACTS, $contactFile)) {
require Image::ExifTool::HTML;
while (<CONTACTS>) {
/name="(.*?)"/ or next;
my $name = $1;
/id="([a-f0-9]+)"/ or next;
my $id = $1;
$contactHash{$id} = Image::ExifTool::HTML::UnescapeHTML($name);
}
close(CONTACTS);
} else {
local $SIG{'__WARN__'} = undef; # stop ExifTool from catching the warning
warn "Error reading contacts file $contactFile\n";
}
}
# load .picasa.ini file from the specified directory
my $iniFile = "$iniDir/.picasa.ini";
if ($iniFile eq $lastIniFile) {
return %fileHash ? 1 : undef;
}
$lastIniFile = $iniFile;
open(INI, $iniFile) or return undef;
my $section = '';
while (<INI>) {
# Process New Section
/^\s*\[(.+)\][\n\r]*$/ and $section = $1, next;
# process entry (all we care about are the "faces" lines)
/^faces=(.*)$/ or next;
my @temp = split /;/, $1;
foreach (@temp) {
/rect64\(([\da-f]{1,16})\),([\da-f]{1,16})/ or next;
# the string in parens after "rect64" is a 64 bit number in hex,
# but Picasa doesn't add leading zeroes, so the length of the string
# cannot be assumed to be 16 bytes. Handle this as two 32-bit numbers
# for compatibility with 32-bit systems.
my $hi = hex(substr($1, 0, -8));
my $lo = hex(substr($1, -8));
my $x0 = ($hi >> 16) /65535;
my $y0 = ($hi & 0xffff)/65535;
my $x1 = ($lo >> 16) /65535;
my $y1 = ($lo & 0xffff)/65535;
push @{ $fileHash{$section} }, {
ContactID => $2,
X => $x0,
Y => $y0,
W => $x1 - $x0,
H => $y1 - $y0,
};
}
}
close(INI);
return %fileHash ? 1 : undef;
}
#------------------------------------------------------------------------------
# Rotate region to specified orientation (for RAW file types only)
# Input: 0) rectangle array ref (x,y,w,h), 1) EXIF orientation value, 2) file type
sub RotateRegion($$$)
{
my ($rect, $orientation, $fileType) = @_;
if ($orientation and $fileType and $isRawFile{$fileType}) {
my ($x,$y,$w,$h) = @$rect;
if ($orientation == 8) { # CW 90
@$rect = (1-$h-$y, $x, $h, $w);
} elsif ($orientation == 3) { # CW 180
@$rect = (1-$x-$w, 1-$y-$h, $w, $h);
} elsif ($orientation == 6) { # CW 270
@$rect = ($y, 1-$x-$w, $h, $w);
}
}
}
#------------------------------------------------------------------------------
# Rounds number to 9 decimal places, which is the limit to the number of decimal places that Picasa can read.
sub Rounded
{
my $DecAcc = 10**9;
return(int($_[0]*$DecAcc+.5)/$DecAcc);
}
#------------------------------------------------------------------------------
# User-defined tag definitions
#
%Image::ExifTool::UserDefined = (
'Image::ExifTool::Composite' => {
#
# Versions that filter out unnamed regions (ContactID=ffffffffffffffff)
#
PicasaToMWGRegion => {
Require => {
0 => 'Directory',
1 => 'FileName',
2 => 'ImageWidth',
3 => 'ImageHeight',
},
Desire => {
4 => 'Orientation',
5 => 'FileType',
},
ValueConv => sub {
my ($val, $et) = @_;
LoadPicasaFiles($et, $$val[0]) or return undef; # load contacts.xml and Picasa.ini
my $filename = $$val[1];
my @regList;
# convert to local variables for readability, and make
# sure there is a region associated with the current file
my $contactHashRef = \%contactHash;
my $tempArrayRef = $fileHash{$filename} or return undef;
foreach my $tempHash (@$tempArrayRef) {
next if $$tempHash{ContactID} eq 'ffffffffffffffff';
my $name = $$contactHashRef{$$tempHash{ContactID}};
next unless defined $name;
my @rect = @$tempHash{'X','Y','W','H'};
RotateRegion(\@rect, $$val[4], $$val[5]);
push @regList, {
Area => {
X => Rounded($rect[0] + $rect[2] / 2),
Y => Rounded($rect[1] + $rect[3] / 2),
W => Rounded($rect[2]),
H => Rounded($rect[3]),
Unit => 'normalized',
},
Name => $name,
Type => 'Face',
};
}
# make sure a region exists, otherwise return undef
return @regList ? {
AppliedToDimensions => { W => $$val[2], H => $$val[3], Unit => 'pixel' },
RegionList => \@regList,
} : undef;
},
},
PicasaToMPRegion => {
Require => {
0 => 'Directory',
1 => 'FileName',
},
Desire => {
2 => 'Orientation',
3 => 'FileType',
},
ValueConv => sub {
my ($val, $et) = @_;
LoadPicasaFiles($et, $$val[0]) or return undef; # load contacts.xml and Picasa.ini
my $filename = $$val[1];
my @regList;
# convert to local variables for readability, and make
# sure there is a region associated with the current file
my $contactHashRef = \%contactHash;
my $tempArrayRef = $fileHash{$filename} or return undef;
foreach my $tempHash (@$tempArrayRef) {
next if $$tempHash{ContactID} eq 'ffffffffffffffff';
my $name = $$contactHashRef{$$tempHash{ContactID}};
next unless defined $name;
my @rect = @$tempHash{'X','Y','W','H'};
RotateRegion(\@rect, $$val[2], $$val[3]);
@rect = map {Rounded($_)} @rect;
push @regList, {
PersonDisplayName => $name,
Rectangle => join(', ', @rect),
};
}
# make sure a region exists, otherwise return undef
return @regList ? { Regions => \@regList } : undef;
},
},
PicasaRegionNames => {
Require => {
0 => 'Directory',
1 => 'FileName',
},
ValueConv => sub {
my ($val, $et) = @_;
LoadPicasaFiles($et, $$val[0]) or return undef; # load contacts.xml and Picasa.ini
my $filename = $$val[1];
my @regList;
# convert to local variables for readability, and make
# sure there is a region associated with the current file
my $contactHashRef = \%contactHash;
my $tempArrayRef = $fileHash{$filename} or return undef;
foreach my $tempHash (@$tempArrayRef) {
next if $$tempHash{ContactID} eq 'ffffffffffffffff';
my $name = $$contactHashRef{$$tempHash{ContactID}};
push @regList, $name if defined $name;
}
# make sure a region exists, otherwise return undef
return @regList ? \@regList : undef;
},
},
#
# Versions that do not filter out unnamed regions (ContactID=ffffffffffffffff)
# Picasa normally does not add these regions when it saves names to the file.
#
PicasaToMWGRegionUnfiltered => {
Require => {
0 => 'Directory',
1 => 'FileName',
2 => 'ImageWidth',
3 => 'ImageHeight',
},
Desire => {
4 => 'Orientation',
5 => 'FileType',
},
ValueConv => sub {
my ($val, $et) = @_;
LoadPicasaFiles($et, $$val[0]) or return undef; # load contacts.xml and Picasa.ini
my $filename = $$val[1];
my @regList;
# convert to local variables for readability, and make
# sure there is a region associated with the current file
my $contactHashRef = \%contactHash;
my $tempArrayRef = $fileHash{$filename} or return undef;
foreach my $tempHash (@$tempArrayRef) {
my @rect = @$tempHash{'X','Y','W','H'};
RotateRegion(\@rect, $$val[4], $$val[5]);
push @regList, {
Area => {
X => Rounded($rect[0] + $rect[2] / 2),
Y => Rounded($rect[1] + $rect[3] / 2),
W => Rounded($rect[2]),
H => Rounded($rect[3]),
Unit => 'normalized',
},
Name => $$contactHashRef{$$tempHash{ContactID}} || 'unnamed',
Type => 'Face',
};
}
# make sure a region exists, otherwise return undef
return @regList ? {
AppliedToDimensions => { W => $$val[2], H => $$val[3], Unit => 'pixel' },
RegionList => \@regList,
} : undef;
},
},
PicasaToMPRegionUnfiltered => {
Require => {
0 => 'Directory',
1 => 'FileName',
},
Desire => {
2 => 'Orientation',
3 => 'FileType',
},
ValueConv => sub {
my ($val, $et) = @_;
LoadPicasaFiles($et, $$val[0]) or return undef; # load contacts.xml and Picasa.ini
my $filename = $$val[1];
my @regList;
# convert to local variables for readability, and make
# sure there is a region associated with the current file
my $contactHashRef = \%contactHash;
my $tempArrayRef = $fileHash{$filename} or return undef;
foreach my $tempHash (@$tempArrayRef) {
my @rect = @$tempHash{'X','Y','W','H'};
RotateRegion(\@rect, $$val[2], $$val[3]);
@rect = map {Rounded($_)} @rect;
push @regList, {
PersonDisplayName => $$contactHashRef{$$tempHash{ContactID}} || 'unnamed',
Rectangle => join(', ', @rect),
}
}
# make sure a region exists, otherwise return undef
return @regList ? { Regions => \@regList } : undef;
},
},
},
);
#------------------------------------------------------------------------------
1; #end

99
config_files/pix4d.config Normal file
View File

@ -0,0 +1,99 @@
#------------------------------------------------------------------------------
# File: pix4d.config
#
# Description: This config file contains tag definitions needed to be able
# to write Pix4D XMP-Camera tags
#
# Usage: exiftool -config pix4d.config -XMP-camera:TAG=VAL ...
#
# Requires: ExifTool version 7.00 or later
#
# References: 1) https://support.pix4d.com/hc/en-us/articles/360016450032-Specifications-of-xmpcamera-tags
#
# Revisions: 2017/12/08 - P. Harvey Created
# 2020/04/02 - PH Updated to current specification
#------------------------------------------------------------------------------
%Image::ExifTool::UserDefined = (
'Image::ExifTool::XMP::Main' => {
Camera => {
SubDirectory => {
TagTable => 'Image::ExifTool::UserDefined::Camera',
},
},
},
);
%Image::ExifTool::UserDefined::Camera = (
GROUPS => { 0 => 'XMP', 1 => 'XMP-Camera', 2 => 'Camera' },
NAMESPACE => { 'Camera' => 'http://pix4d.com/camera/1.0/' },
WRITABLE => 'string',
Yaw => { Writable => 'real' },
Pitch => { Writable => 'real' },
Roll => { Writable => 'real' },
IMUSampleSize => { Writable => 'integer' },
IMUTimeOffset => { Writable => 'integer' },
LineReadoutTime => { Writable => 'integer' },
IMUFrequency => { Writable => 'real' },
PrincipalPoint => { },
ModelType => { },
PerspectiveFocalLength => { Writable => 'real' },
PerspectiveDistortion => { },
IMULinearVelocity => { },
GPSXYAccuracy => { Writable => 'real' },
GPSZAccuracy => { Writable => 'real' },
FlightUUID => { },
CentralWaveLength => { },
BandName => { List => 'Seq' },
RigName => { },
RigCameraIndex => { Writable => 'integer' },
BandName => { List => 'Seq' },
IMUAngularVelocity => {
Binary => 1,
ValueConv => 'Image::ExifTool::XMP::DecodeBase64($val)',
ValueConvInv => 'Image::ExifTool::XMP::EncodeBase64($val)',
},
# added 2020/04/02 (ref 1)
FisheyeAffineMatrix => { },
FisheyeAffineSymmetric => { },
FisheyePolynomial => { },
RigRelatives => { },
PerspectiveFocalLengthUnits => { },
CaptureUUID => { },
CentralWavelength => { List => 'Seq' },
WavelengthFWHM => { List => 'Seq' },
BlackCurrent => { List => 'Seq' },
BandSensitivity => { List => 'Seq' },
SunSensor => { List => 'Seq' },
SunSensorExposureTime => { List => 'Seq' },
SunSensorSensitivity => { List => 'Seq' },
InvalidPixel => { List => 'Seq' },
VignettingPolynomial => { List => 'Seq' },
VignettingCenter => { List => 'Seq' },
VignettingPolynomial2DName => { List => 'Seq' },
VignettingPolynomial2D => { List => 'Seq' },
ColorTransform => { List => 'Seq' },
IsNormalized => { },
Albedo => { List => 'Seq' },
ReflectArea => { List => 'Seq' },
CalibrationPicture => { Writable => 'integer' },
GyroRate => { Writable => 'real' },
IMUPitchAccuracy => { Writable => 'real' },
IMURollAccuracy => { Writable => 'real' },
IMUYawAccuracy => { Writable => 'real' },
NominalCameraDistance => { Writable => 'real' },
AboveGroundAltitude => { Writable => 'real' },
SunSensorYaw => { Writable => 'real' },
SunSensorPitch => { Writable => 'real' },
SunSensorRoll => { Writable => 'real' },
SunSensorRelativeRotation => { Writable => 'real', List => 'Seq' },
TransformAlpha => { List => 'Seq' },
TransformBeta => { List => 'Seq' },
TransformGamma => { List => 'Seq' },
SensorBitDepth => { Writable => 'integer' },
SensorTemperature => { Writable => 'real' },
# (ref https://community.pix4d.com/t/camera-sun-irradiance-and-sun-angle-in-red-text/3290)
IrradianceRelativeRotation => { },
);
1; #end

View File

@ -0,0 +1,173 @@
#------------------------------------------------------------------------------
# File: rotate_regions.config
#
# Description: User-defined Composite tag definitions to rotate MWG region tags
# (Metadata Working Group region, used by Picasa) and MP region tags
# (used by Microsoft Photo Library).
#
# Tag definitions and examples:
#
# RotateMWGRegionCW90
# RotateMWGRegionCW180
# RotateMWGRegionCW270
# These tags will rotate a MWG Region clockwise 90, 180, or 270 degrees.
# Example:
# exiftool -config rotate_regions.config "-RegionInfo<RotateMWGRegionCW90" FILE
#
# RotateMPRegionCW90
# RotateMPRegionCW180
# RotateMPRegionCW270
# These tags will rotate a MWG Region clockwise 90, 180, or 270 degrees.
# Example:
# exiftool -config rotate_regions.config "-RegionInfoMP<RotateMPRegionCW90" FILE
#
# Revisions: 2015/05/08 - Bryan K. Williams AKA StarGeek Created
#------------------------------------------------------------------------------
%Image::ExifTool::UserDefined = (
'Image::ExifTool::Composite' => {
RotateMWGRegionCW90 =>{
Require => 'RegionInfo',
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{RegionList}}) {
my @rect = @{$$rgn{Area}}{'X','Y','W','H'};
my %newRgn = (
Area => {
X => 1-$rect[1],
Y => $rect[0],
W => $rect[3],
H => $rect[2],
Unit => 'normalized',
},
Name => $$rgn{Name},
Type => 'Face',
);
push @newRgns, \%newRgn;
}
return {
AppliedToDimensions => {
W => $val[0]{AppliedToDimensions}{W},
H => $val[0]{AppliedToDimensions}{H},
Unit => $val[0]{AppliedToDimensions}{Unit},
},
RegionList => \@newRgns,
};
},
}, #End RotateMWGRegionCW90
RotateMWGRegionCW180 =>{
Require => 'RegionInfo',
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{RegionList}}) {
my @rect = @{$$rgn{Area}}{'X','Y','W','H'};
my %newRgn = (
Area => {
X => 1-$rect[0],
Y => 1-$rect[1],
W => $rect[2],
H => $rect[3],
Unit => 'normalized',
},
Name => $$rgn{Name},
Type => 'Face',
);
push @newRgns, \%newRgn;
}
return {
AppliedToDimensions => {
W => $val[0]{AppliedToDimensions}{W},
H => $val[0]{AppliedToDimensions}{H},
Unit => $val[0]{AppliedToDimensions}{Unit},
},
RegionList => \@newRgns,
};
},
}, #End RotateMWGRegionCW180
RotateMWGRegionCW270 =>{
Require => 'RegionInfo',
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{RegionList}}) {
my @rect = @{$$rgn{Area}}{'X','Y','W','H'};
my %newRgn = (
Area => {
X => $rect[1],
Y => 1-$rect[0],
W => $rect[3],
H => $rect[2],
Unit => 'normalized',
},
Name => $$rgn{Name},
Type => 'Face',
);
push @newRgns, \%newRgn;
}
return {
AppliedToDimensions => {
W => $val[0]{AppliedToDimensions}{W},
H => $val[0]{AppliedToDimensions}{H},
Unit => $val[0]{AppliedToDimensions}{Unit},
},
RegionList => \@newRgns,
};
},
}, #End RotateMWGRegionCW270
RotateMPRegionCW90=>{
Require => 'RegionInfoMP',
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{Regions}}) {
my @rect = split /\s*,\s*/, $$rgn{Rectangle};
my $temp = $rect[0];
$rect[0] = 1-$rect[1]-$rect[3];
$rect[1] = $temp;
($rect[2], $rect[3]) = ($rect[3],$rect[2]); #Swap W and H
push @newRgns, {
PersonDisplayName => $$rgn{PersonDisplayName},
Rectangle => join(', ', @rect),
};
}
return { Regions => \@newRgns };
}
}, #end RotateMPRegionCW90
RotateMPRegionCW180=>{
Require => 'RegionInfoMP',
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{Regions}}) {
my @rect = split /\s*,\s*/, $$rgn{Rectangle};
my $tempX = $rect[0];
my $tempY = $rect[1];
$rect[0] = 1-$tempX-$rect[2];
$rect[1] = 1-$tempY-$rect[3];
push @newRgns, {
PersonDisplayName => $$rgn{PersonDisplayName},
Rectangle => join(', ', @rect),
};
}
return { Regions => \@newRgns };
}
}, #end RotateMPRegionCW180
RotateMPRegionCW270=>{
Require => 'RegionInfoMP',
ValueConv => q{
my ($rgn, @newRgns);
foreach $rgn (@{$val[0]{Regions}}) {
my @rect = split /\s*,\s*/, $$rgn{Rectangle};
my $temp = $rect[1];
$rect[1] = 1-$rect[0]-$rect[2];
$rect[0] = $temp;
($rect[2], $rect[3]) = ($rect[3],$rect[2]); #Swap W and H
push @newRgns, {
PersonDisplayName => $$rgn{PersonDisplayName},
Rectangle => join(', ', @rect),
};
}
return { Regions => \@newRgns };
}
}, #end RotateMPRegionCW270
},
);
1; #end

View File

@ -0,0 +1,121 @@
#------------------------------------------------------------------------------
# File: tiff_version.config
#
# Description: This config file contains the definition for a Composite
# TIFFVersion tag used to determine the version of a TIFF file
#
# Usage: exiftool -config tiff_version.config -tiffversion DIR
#
# Requires: ExifTool version 11.50 or later
#
# Revisions: 2019/06/06 - Bryan K. Williams (aka StarGeek) Created
# 2019/06/07 - P. Harvey added test of TIFF format types
#
# References: http://jhove.openpreservation.org/modules/tiff/#profiles
#------------------------------------------------------------------------------
# Checks if at least one the values passed are defined.
sub has_defined {
for my $i ( @_ ) {
return 1 if defined $i;
}
return 0;
}
%Image::ExifTool::UserDefined = (
'Image::ExifTool::Composite' => {
TIFFVersion => {
Require => {
0 => 'FileType'
},
Desire => {
# Version 5
1 => 'EXIF:Artist', # Artist (315/0x013b)
2 => 'EXIF:ColorMap', # ColorMap (320/0x0140)
3 => 'EXIF:ModifyDate', # DateTime (306/0x0132) Called DateTime by EXIF spec, ModifyDate by exiftool
4 => 'EXIF:HostComputer', # HostComputer (316/0x013c)
5 => 'EXIF:SubfileType', # NewSubfileType (254/0x00fe) Called NewSubfileType by TIFF spec, SubfileType by exiftool
6 => 'EXIF:Predictor', # Predictor (317/0x013d)
7 => 'EXIF:PrimaryChromaticities', # PrimaryChromaticities (319/0x013f)
8 => 'EXIF:Software', # Software (305/0x0131)
9 => 'EXIF:WhitePoint', # WhitePoint (318/0x013e)
# Version 6
10 => 'EXIF:Copyright', # Copyright (33432/0x8298)
11 => 'EXIF:DotRange', # DotRange (336/0x0150)
12 => 'EXIF:ExtraSamples', # ExtraSamples (338/0x0152)
13 => 'EXIF:HalftoneHints', # HalftoneHints (321/0x0141)
14 => 'EXIF:InkNames', # InkNames (333/0x014d)
15 => 'EXIF:InkSet', # InkSet (332/0x014c)
16 => 'EXIF:JPEGACTables', # JPEGACTables (521/0x0209)
17 => 'EXIF:JPEGDCTables', # JPEGDCTables (520/0x0208)
18 => 'EXIF:ThumbnailOffset', # JPEGInterchangeFormat (513/0x0201)
19 => 'EXIF:ThumbnailLength ', # JPEGInterchangeFormatLength (514/0x0202)
20 => 'EXIF:JPEGLosslessPredictors', # JPEGLosslessPredictors (517/0x0205)
21 => 'EXIF:JPEGPointTransforms', # JPEGPointTransforms (518/0x0206)
22 => 'EXIF:JPEGProc', # JPEGProc (512/0x0200)
23 => 'EXIF:JPEGRestartInterval', # JPEGRestartInterval (515/0x0203)
24 => 'EXIF:JPEGQTables', # JPEGQTables (519/0x0207)
25 => 'EXIF:NumberofInks', # NumberOfInks (334/0x014e)
26 => 'EXIF:ReferenceBlackWhite', # ReferenceBlackWhite (532/0x0214)
27 => 'EXIF:SampleFormat', # SampleFormat (339/0x0153)
28 => 'EXIF:SMinSampleValue', # SMinSampleValue (340/0x0154)
29 => 'EXIF:SMaxSampleValue', # SMaxSampleValue (341/0x0155)
30 => 'EXIF:TargetPrinter', # TargetPrinter (337/0x0151)
31 => 'EXIF:TileLength', # TileLength (323/0x0143)
32 => 'EXIF:TileOffsets', # TileOffsets (324/0x0144)
33 => 'EXIF:TileWidth', # TileWidth (322/0x0142)
34 => 'EXIF:TileByteCounts', # TileByteCounts (325/0x0145)
35 => 'EXIF:TransferRange', # TransferRange (342/0x0156)
36 => 'EXIF:YCbCrCoefficients', # YCbCrCoefficients (529/0x0211)
37 => 'EXIF:YCbCrPositioning', # YCbCrPositioning (531/0x0213)
38 => 'EXIF:YCbCrSubSampling', # YCbCrSubSampling (530/0x0212)
# Other tags to check
39 => 'EXIF:PhotometricInterpretation', # PhotometricInterpretation (262/0x0106)
40 => 'EXIF:Compression', # Compression (259/0x0103)
},
ValueConv => q{
if ($val[0] ne 'TIFF') {
return undef;
}
unless ($$self{SaveFormat}) {
return '<you must use the API SaveFormat option and ExifTool 11.50 or later>';
}
foreach (qw(int8s undef int16s int32s rational64s float double)) {
return '6.0' if $$self{SaveFormat}{$_};
}
if ( $val[39]=~/^(?:C(?:IELab|MYK)|YCbCr)$/ or $val[40] eq 'JPEG (old-style)' or has_defined(@val[10..38]) ) {
return '6.0';
}
if ($val[39]=~/^(?:Transparency Mask|RGB Palette)$/ or $val[40] eq 'LZW' or has_defined(@val[1..9]) ) {
return '5.0';
}
return '4.0';
},
},
},
);
# A couple of shortcuts to test for the existence of certain tags
%Image::ExifTool::UserDefined::Shortcuts = (
TiffVersion5Tags => [
'EXIF:Artist', 'EXIF:ColorMap', 'EXIF:ModifyDate', 'EXIF:HostComputer', 'EXIF:SubfileType',
'EXIF:Predictor', 'EXIF:PrimaryChromaticities', 'EXIF:Software', 'EXIF:WhitePoint',
],
TiffVersion6Tags => [
'EXIF:Copyright', 'EXIF:DotRange', 'EXIF:ExtraSamples', 'EXIF:HalftoneHints',
'EXIF:InkNames', 'EXIF:InkSet', 'EXIF:JPEGACTables', 'EXIF:JPEGDCTables',
'EXIF:ThumbnailOffset', 'EXIF:ThumbnailLength ', 'EXIF:JPEGLosslessPredictors',
'EXIF:JPEGPointTransforms', 'EXIF:JPEGProc', 'EXIF:JPEGRestartInterval',
'EXIF:JPEGQTables', 'EXIF:NumberofInks', 'EXIF:ReferenceBlackWhite', 'EXIF:SampleFormat',
'EXIF:SMinSampleValue', 'EXIF:SMaxSampleValue', 'EXIF:TargetPrinter', 'EXIF:TileLength',
'EXIF:TileOffsets', 'EXIF:TileWidth', 'EXIF:TileByteCounts', 'EXIF:TransferRange',
'EXIF:YCbCrCoefficients', 'EXIF:YCbCrPositioning', 'EXIF:YCbCrSubSampling',
],
);
# Must set undocumented SaveFormat option to provide access to the tag format types
%Image::ExifTool::UserDefined::Options = (
SaveFormat => 1,
);
1; #end

View File

@ -0,0 +1,96 @@
#------------------------------------------------------------------------------
# File: time_zone.config
#
# Description: ExifTool config file to return time zone from an image
#
# Notes: The Composite:TimeZone tag defined here attempts to determine
# the time zone for an image. If possible, the camera time zone
# is used, if that does not exist, the time zone for
# DateTimeOriginal is returned, but if this can't be determined
# then the time zone for CreateDate and then ModifyDate are used.
# If this all does not result in a time zone, the timezone of the
# TimeCreated tag is used
#
# Usage: exiftool -config time_zone.config -timezone FILE
#
# Requires: ExifTool version 7.74 or later
#
# Revisions: 2016/10/03 - P. Harvey Created
# 2016/12/12 - H. Baan Corrected tag name, added support for
# camera time zone/daylight savings info in
# MakerNotes
# 2017/01/05 - H. Baan Handle case were GPSDateStamp is missing
# 2017/01/06 - H. Baan Use QuickTime:CreationDate if available
# 2017/03/12 - H. Baan Added QuickTime:TimeZone, reordered
# Desired tags according to precedence, added
# comments
#------------------------------------------------------------------------------
%Image::ExifTool::UserDefined = (
'Image::ExifTool::Composite' => {
# Calculate the TimeZone of the picture taken
TimeZone => {
Desire => {
# TimeZone information tags ordered by precedence
0 => 'MakerNotes:TimeZone',
1 => 'MakerNotes:DaylightSavings',
2 => 'QuickTime:TimeZone',
3 => 'OffsetTimeOriginal',
4 => 'OffsetTimeDigitized',
5 => 'OffsetTime',
6 => 'TimeZoneOffset',
7 => 'GPSDateStamp',
8 => 'GPSTimeStamp',
9 => 'DateTimeOriginal',
10 => 'DateTimeDigitized',
11 => 'CreateDate',
12 => 'ModifyDate',
13 => 'QuickTime:CreationDate',
14 => 'TimeCreated',
},
RawConv => q{
# TimeZone from MakeNotes (camera setting)
return TimeZoneString($val[0] + ($val[1] ? 60 : 0)) if defined $val[0];
# TimeZone from QuickTime (camera setting)
return TimeZoneString($val[2]) if $val[2];
# TimeZone from offset fields
return $val[3] if $val[3]; # DateTimeOriginal
return $val[4] if $val[4]; # DateTimeDigitized
return $val[5] if $val[5]; # (ModifyDate)
if (defined $val[6]) { # (ModifyDate)
my $tzh = $val[6];
$tzh =~ s/ .*//;
return TimeZoneString($tzh * 60);
}
# Difference between GPS and local time as TimeZone
if (defined $val[8]) {
my $loc = $val[9] || $val[10] || $val[11] || $val[12];
if ($loc) {
my @loc = split /[: ]/, $loc;
my @gmt = split /[: ]/, ($val[7]||"$loc[0]:$loc[1]:$loc[2]") . " $val[8]";
my $tzm = 15 * sprintf("%.0f", (GetTimeZone([@loc[5,4,3,2]], [@gmt[5,4,3,2]])) / 15);
$tzm -= 1440 if $tzm > 840;
$tzm += 1440 if $tzm < -720;
return TimeZoneString($tzm);
}
}
# TimeZone from QuickTime Creation Date
if ($val[13] && $val[13] =~ /\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}([+-]\d{2})(\d{2})/) {
return TimeZoneString($1 * 60 + $2);
}
# Time Created
if ($val[14] && $val[14] =~ /\d{6}([+-]\d{2})(\d{2})/) {
return TimeZoneString($1 * 60 + $2);
}
return undef;
},
},
},
);
1; #end

7300
exiftool Executable file

File diff suppressed because it is too large Load Diff

36
fmt_files/gpx.fmt Normal file
View File

@ -0,0 +1,36 @@
#------------------------------------------------------------------------------
# File: gpx.fmt
#
# Description: Example ExifTool print format file to generate a GPX track log
#
# Usage: exiftool -p gpx.fmt -ee3 FILE [...] > out.gpx
#
# Requires: ExifTool version 10.49 or later
#
# Revisions: 2010/02/05 - P. Harvey created
# 2018/01/04 - PH Added IF to be sure position exists
# 2018/01/06 - PH Use DateFmt function instead of -d option
# 2019/10/24 - PH Preserve sub-seconds in GPSDateTime value
#
# Notes: 1) Input file(s) must contain GPSLatitude and GPSLongitude.
# 2) The -ee3 option is to extract the full track from video files.
# 3) The -fileOrder option may be used to control the order of the
# generated track points when processing multiple files.
#------------------------------------------------------------------------------
#[HEAD]<?xml version="1.0" encoding="utf-8"?>
#[HEAD]<gpx version="1.0"
#[HEAD] creator="ExifTool $ExifToolVersion"
#[HEAD] xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
#[HEAD] xmlns="http://www.topografix.com/GPX/1/0"
#[HEAD] xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd">
#[HEAD]<trk>
#[HEAD]<number>1</number>
#[HEAD]<trkseg>
#[IF] $gpslatitude $gpslongitude
#[BODY]<trkpt lat="$gpslatitude#" lon="$gpslongitude#">
#[BODY] <ele>$gpsaltitude#</ele>
#[BODY] <time>${gpsdatetime#;my ($ss)=/\.\d+/g;DateFmt("%Y-%m-%dT%H:%M:%SZ");s/Z/${ss}Z/ if $ss}</time>
#[BODY]</trkpt>
#[TAIL]</trkseg>
#[TAIL]</trk>
#[TAIL]</gpx>

40
fmt_files/gpx_wpt.fmt Normal file
View File

@ -0,0 +1,40 @@
#------------------------------------------------------------------------------
# File: gpx_wpt.fmt
#
# Description: Example ExifTool print format file to generate GPX waypoints
# with pictures
#
# Usage: exiftool -p gpx_wpt.fmt -ee3 FILE [...] > out.gpx
#
# Requires: ExifTool version 10.49 or later
#
# Revisions: 2010/03/13 - Peter Grimm created
# 2018/01/04 - PH Added IF to be sure position exists
# 2018/01/06 - PH Use DateFmt function instead of -d option
# 2019/10/24 - PH Preserve sub-seconds in GPSDateTime value
#
# Notes: 1) Input file(s) must contain GPSLatitude and GPSLongitude.
# 2) The -ee3 option is to extract the full track from video files.
# 3) The -fileOrder option may be used to control the order of the
# generated track points when processing multiple files.
#------------------------------------------------------------------------------
#[HEAD]<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
#[HEAD]<gpx version="1.1"
#[HEAD] creator="ExifTool $ExifToolVersion"
#[HEAD] xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
#[HEAD] xmlns="http://www.topografix.com/GPX/1/1"
#[HEAD] xsi:schemaLocation="http://www.topografix.com/GPX/1/1 http://www.topografix.com/GPX/1/1/gpx.xsd">
#[IF] $gpslatitude $gpslongitude
#[BODY]<wpt lat="$gpslatitude#" lon="$gpslongitude#">
#[BODY] <ele>$gpsaltitude#</ele>
#[BODY] <time>${gpsdatetime#;my ($ss)=/\.\d+/g;DateFmt("%Y-%m-%dT%H:%M:%SZ");s/Z/${ss}Z/ if $ss}</time>
#[BODY] <name>$filename</name>
#[BODY] <link href="$directory/$filename"/>
#[BODY] <sym>Scenic Area</sym>
#[BODY] <extensions>
#[BODY] <gpxx:WaypointExtension xmlns:gpxx="http://www.garmin.com/xmlschemas/GpxExtensions/v3">
#[BODY] <gpxx:DisplayMode>SymbolAndName</gpxx:DisplayMode>
#[BODY] </gpxx:WaypointExtension>
#[BODY] </extensions>
#[BODY]</wpt>
#[TAIL]</gpx>

59
fmt_files/kml.fmt Normal file
View File

@ -0,0 +1,59 @@
#------------------------------------------------------------------------------
# File: kml.fmt
#
# Description: Example ExifTool print format file for generating a
# Google Earth KML file from a collection of geotagged images
#
# Usage: exiftool -p kml.fmt -r DIR [...] > out.kml
#
# Requires: ExifTool version 10.41 or later
#
# Revisions: 2010/02/05 - P. Harvey created
# 2013/02/05 - PH Fixed camera icon to work with new Google Earth
# 2017/02/02 - PH Organize into folders based on file directory
# 2018/01/04 - PH Added IF to be sure position exists
# 2020/01/11 - F. Kotov Limited image preview size to 500px
#
# Notes: 1) Input files must contain GPSLatitude and GPSLongitude.
# 2) Add the -ee3 option to extract the full track from video files.
# 3) For Google Earth to be able to find the images, the input
# images must be specified using relative paths, and "out.kml"
# must stay in the same directory as where the command was run.
# 4) Google Earth is picky about the case of the image file extension,
# and may not be able to display the image if an upper-case
# extension is used.
# 5) The -fileOrder option may be used to control the order of the
# generated placemarks when processing multiple files.
#------------------------------------------------------------------------------
#[HEAD]<?xml version="1.0" encoding="UTF-8"?>
#[HEAD]<kml xmlns="http://earth.google.com/kml/2.0">
#[HEAD] <Document>
#[HEAD] <name>My Photos</name>
#[HEAD] <open>1</open>
#[HEAD] <Style id="Photo">
#[HEAD] <IconStyle>
#[HEAD] <Icon>
#[HEAD] <href>http://maps.google.com/mapfiles/kml/pal4/icon38.png</href>
#[HEAD] <scale>1.0</scale>
#[HEAD] </Icon>
#[HEAD] </IconStyle>
#[HEAD] </Style>
#[SECT] <Folder>
#[SECT] <name>$main:directory</name>
#[SECT] <open>0</open>
#[IF] $gpslatitude $gpslongitude
#[BODY] <Placemark>
#[BODY] <description><![CDATA[<img src='$main:directory/$main:filename'
#[BODY] style='max-width:500px;max-height:500px;'> ]]>
#[BODY] </description>
#[BODY] <Snippet/>
#[BODY] <name>$filename</name>
#[BODY] <styleUrl>#Photo</styleUrl>
#[BODY] <Point>
#[BODY] <altitudeMode>clampedToGround</altitudeMode>
#[BODY] <coordinates>$gpslongitude#,$gpslatitude#,0</coordinates>
#[BODY] </Point>
#[BODY] </Placemark>
#[ENDS] </Folder>
#[TAIL] </Document>
#[TAIL]</kml>

46
fmt_files/kml_track.fmt Normal file
View File

@ -0,0 +1,46 @@
#------------------------------------------------------------------------------
# File: kml.fmt
#
# Description: Example ExifTool print format file for generating a
# track in Google Earth KML format from a collection of
# geotagged images or timed GPS from video files
#
# Usage: From a collection of images:
#
# exiftool -p kml.fmt -r DIR [...] > out.kml
#
# From video files:
#
# exiftool -p kml.fmt -ee3 FILEorDIR [...] > out.kml
#
# Requires: ExifTool version 10.41 or later
#
# Revisions: 2019/10/29 - P. Harvey created
#
# Notes: 1) Input files must contain GPSLatitude and GPSLongitude.
# 2) The -fileOrder option may be used to control the order of the
# waypoints when processing multiple still-image files, or the
# order of the tracks when processing multiple video files.
#------------------------------------------------------------------------------
#[HEAD]<?xml version="1.0" encoding="UTF-8"?>
#[HEAD]<kml xmlns="http://earth.google.com/kml/2.0">
#[HEAD] <Document>
#[HEAD] <name>My Track</name>
#[HEAD] <open>1</open>
#[SECT] <Placemark>
#[SECT] <name>${main:directory;$_=$self->GetValue('FileName') if $self->Options('ExtractEmbedded')}</name>
#[SECT] <Style>
#[SECT] <LineStyle>
#[SECT] <color>#ff4499ff</color>
#[SECT] <width>3</width>
#[SECT] </LineStyle>
#[SECT] </Style>
#[SECT] <LineString>
#[SECT] <altitudeMode>clampToGround</altitudeMode>
#[SECT] <coordinates>
#[BODY]$gpslongitude#,$gpslatitude#,0
#[ENDS] </coordinates>
#[ENDS] </LineString>
#[ENDS] </Placemark>
#[TAIL] </Document>
#[TAIL]</kml>

2304
html/ExifTool.html Normal file

File diff suppressed because it is too large Load Diff

BIN
html/MIE1.1-20070121.pdf Normal file

Binary file not shown.

183
html/Shift.html Normal file
View File

@ -0,0 +1,183 @@
<?xml version="1.0" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>ExifTool Date/Time Shift Module</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rev="made" href="mailto:root@osx219.apple.com" />
</head>
<body style="background-color: white">
<table border="0" width="100%" cellspacing="0" cellpadding="3">
<tr><td class="_podblock_" style="background-color: #cccccc" valign="middle">
<big><strong><span class="_podblock_">&nbsp;ExifTool Date/Time Shift Module</span></strong></big>
</td></tr>
</table>
<ul id="index">
<li><a href="#NAME">NAME</a></li>
<li><a href="#DESCRIPTION">DESCRIPTION</a></li>
<li><a href="#METHODS">METHODS</a>
<ul>
<li><a href="#ShiftTime">ShiftTime</a></li>
</ul>
</li>
<li><a href="#SHIFT-STRING">SHIFT STRING</a></li>
<li><a href="#NOTES">NOTES</a></li>
<li><a href="#TRICKY">TRICKY</a></li>
<li><a href="#BUGS">BUGS</a></li>
<li><a href="#AUTHOR">AUTHOR</a></li>
<li><a href="#SEE-ALSO">SEE ALSO</a></li>
</ul>
<h1 id="NAME">NAME</h1>
<p>Image::ExifTool::Shift.pl - ExifTool time shifting routines</p>
<h1 id="DESCRIPTION">DESCRIPTION</h1>
<p>This module contains routines used by ExifTool to shift date and time values.</p>
<h1 id="METHODS">METHODS</h1>
<h2 id="ShiftTime">ShiftTime</h2>
<p>Shift date/time value</p>
<pre><code> use Image::ExifTool;
$err = Image::ExifTool::ShiftTime($dateTime, $shift);</code></pre>
<dl>
<dt id="Inputs">Inputs:</dt>
<dd>
<p>0) Date/time string in EXIF format (eg. <code>2016:01:30 11:45:00</code>).</p>
<p>1) Shift string (see below) with optional leading sign for shift direction.</p>
<p>2) [optional] Direction of shift (-1 or +1), or 0 or undef to use the sign from the shift string.</p>
<p>3) [optional] Reference to time-shift hash -- filled in by first call to <b>ShiftTime</b>, and used in subsequent calls to shift date/time values by the same relative amount (see <a href="#TRICKY">&quot;TRICKY&quot;</a> section below).</p>
<p>or</p>
<p>0) Shift string (and $_ contains the input date/time string).</p>
</dd>
<dt id="Return-value">Return value:</dt>
<dd>
<p>Error string, or undef on success and the input date/time string is shifted by the specified amount.</p>
</dd>
</dl>
<h1 id="SHIFT-STRING">SHIFT STRING</h1>
<p>Time shifts are applied to standard EXIF-formatted date/time values (eg. <code>2005:03:14 18:55:00</code>). Date-only and time-only values may also be shifted, and an optional timezone (eg. <code>-05:00</code>) is also supported. Here are some general rules and examples to explain how shift strings are interpreted:</p>
<p>Date-only values are shifted using the following formats:</p>
<pre><code> &#39;Y:M:D&#39; - shift date by &#39;Y&#39; years, &#39;M&#39; months and &#39;D&#39; days
&#39;M:D&#39; - shift months and days only
&#39;D&#39; - shift specified number of days</code></pre>
<p>Time-only values are shifted using the following formats:</p>
<pre><code> &#39;h:m:s&#39; - shift time by &#39;h&#39; hours, &#39;m&#39; minutes and &#39;s&#39; seconds
&#39;h:m&#39; - shift hours and minutes only
&#39;h&#39; - shift specified number of hours</code></pre>
<p>Timezone shifts are specified in the following formats:</p>
<pre><code> &#39;+h:m&#39; - shift timezone by &#39;h&#39; hours and &#39;m&#39; minutes
&#39;-h:m&#39; - negative shift of timezone hours and minutes
&#39;+h&#39; - shift timezone hours only
&#39;-h&#39; - negative shift of timezone hours only</code></pre>
<p>A valid shift value consists of one or two arguments, separated by a space. If only one is provided, it is assumed to be a time shift when applied to a time-only or a date/time value, or a date shift when applied to a date-only value. For example:</p>
<pre><code> &#39;1&#39; - shift by 1 hour if applied to a time or date/time
value, or by one day if applied to a date value
&#39;2:0&#39; - shift 2 hours (time, date/time), or 2 months (date)
&#39;5:0:0&#39; - shift 5 hours (time, date/time), or 5 years (date)
&#39;0:0:1&#39; - shift 1 s (time, date/time), or 1 day (date)</code></pre>
<p>If two arguments are given, the date shift is first, followed by the time shift:</p>
<pre><code> &#39;3:0:0 0&#39; - shift date by 3 years
&#39;0 15:30&#39; - shift time by 15 hours and 30 minutes
&#39;1:0:0 0:0:0+5:0&#39; - shift date by 1 year and timezone by 5 hours</code></pre>
<p>A date shift is simply ignored if applied to a time value or visa versa.</p>
<p>Numbers specified in shift fields may contain a decimal point:</p>
<pre><code> &#39;1.5&#39; - 1 hour 30 minutes (time, date/time), or 1 day (date)
&#39;2.5 0&#39; - 2 days 12 hours (date/time), 12 hours (time) or
2 days (date)</code></pre>
<p>And to save typing, a zero is assumed for any missing numbers:</p>
<pre><code> &#39;1::&#39; - shift by 1 hour (time, date/time) or 1 year (date)
&#39;26:: 0&#39; - shift date by 26 years
&#39;+:30&#39; - shift timezone by 30 minutes</code></pre>
<p>Below are some specific examples applied to real date and/or time values (&#39;Dir&#39; is the applied shift direction: &#39;+&#39; is positive, &#39;-&#39; is negative):</p>
<pre><code> Original Value Shift Dir Shifted Value
--------------------- ------- --- ---------------------
&#39;20:30:00&#39; &#39;5&#39; + &#39;01:30:00&#39;
&#39;2005:01:27&#39; &#39;5&#39; + &#39;2005:02:01&#39;
&#39;2005:01:27 20:30:00&#39; &#39;5&#39; + &#39;2005:01:28 01:30:00&#39;
&#39;11:54:00&#39; &#39;2.5 0&#39; - &#39;23:54:00&#39;
&#39;2005:11:02&#39; &#39;2.5 0&#39; - &#39;2005:10:31&#39;
&#39;2005:11:02 11:54:00&#39; &#39;2.5 0&#39; - &#39;2005:10:30 23:54:00&#39;
&#39;2004:02:28 08:00:00&#39; &#39;1 1.3&#39; + &#39;2004:02:29 09:18:00&#39;
&#39;07:00:00&#39; &#39;-5&#39; + &#39;07:00:00&#39;
&#39;07:00:00+01:00&#39; &#39;-5&#39; + &#39;07:00:00-04:00&#39;
&#39;07:00:00Z&#39; &#39;+2:30&#39; - &#39;07:00:00-02:30&#39;
&#39;1970:01:01&#39; &#39;35::&#39; + &#39;2005:01:01&#39;
&#39;2005:01:01&#39; &#39;400&#39; + &#39;2006:02:05&#39;
&#39;10:00:00.00&#39; &#39;::1.33&#39; - &#39;09:59:58.67&#39;</code></pre>
<h1 id="NOTES">NOTES</h1>
<p>The format of the original date/time value is not changed when the time shift is applied. This means that the length of the date/time string will not change, and only the numbers in the string will be modified. The only exception to this rule is that a &#39;Z&#39; timezone is changed to &#39;+00:00&#39; notation if a timezone shift is applied. A timezone will not be added to the date/time string.</p>
<h1 id="TRICKY">TRICKY</h1>
<p>This module is perhaps more complicated than it needs to be because it is designed to be very flexible in the way time shifts are specified and applied...</p>
<p>The ability to shift dates by Y years, M months, etc, conflicts with the design goal of maintaining a constant shift for all time values when applying a batch shift. This is because shifting by 1 month can be equivalent to anything from 28 to 31 days, and 1 year can be 365 or 366 days, depending on the starting date.</p>
<p>The inconsistency is handled by shifting the first tag found with the actual specified shift, then calculating the equivalent time difference in seconds for this shift and applying this difference to subsequent tags in a batch conversion. So if it works as designed, the behaviour should be both intuitive and mathematically correct, and the user shouldn&#39;t have to worry about details such as this (in keeping with Perl&#39;s &quot;do the right thing&quot; philosophy).</p>
<h1 id="BUGS">BUGS</h1>
<p>Due to the use of the standard time library functions, dates are typically limited to the range 1970 to 2038 on 32-bit systems.</p>
<h1 id="AUTHOR">AUTHOR</h1>
<p>Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)</p>
<p>This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.</p>
<h1 id="SEE-ALSO">SEE ALSO</h1>
<p><a>Image::ExifTool(3pm)</a></p>
<table border="0" width="100%" cellspacing="0" cellpadding="3">
<tr><td class="_podblock_" style="background-color: #cccccc" valign="middle">
<big><strong><span class="_podblock_">&nbsp;ExifTool Date/Time Shift Module</span></strong></big>
</td></tr>
</table>
</body>
</html>

54
html/TagNames/AFCP.html Normal file
View File

@ -0,0 +1,54 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>AFCP Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>AFCP Tags</h2>
<p>AFCP stands for AXS File Concatenation Protocol, and is a poorly designed
protocol for appending information to the end of files. This can be used as
an auxiliary technique to store IPTC information in images, but is
incompatible with some file formats.</p>
<p>ExifTool will read and write (but not create) AFCP IPTC information in JPEG
and TIFF images.</p>
<p>See
<a href="http://web.archive.org/web/20080828211305/http://www.tocarte.com/media/axs_afcp_spec.pdf">http://web.archive.org/web/20080828211305/http://www.tocarte.com/media/axs_afcp_spec.pdf</a>
for the AFCP specification.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'IPTC'</td>
<td>IPTC</td>
<td class=c>-</td>
<td>--&gt; <a href='IPTC.html'>IPTC Tags</a></td></tr>
<tr class=b>
<td>'Nail'</td>
<td>ThumbnailImage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'PrVw'</td>
<td>PreviewImage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'TEXT'</td>
<td>Text</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jul 3, 2013</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

160
html/TagNames/AIFF.html Normal file
View File

@ -0,0 +1,160 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>AIFF Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>AIFF Tags</h2>
<p>Tags extracted from Audio Interchange File Format (AIFF) files. See
<a href="http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/AIFF/AIFF.html">http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/AIFF/AIFF.html</a> for
the AIFF specification.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'(c) '</td>
<td>Copyright</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ANNO'</td>
<td>Annotation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'APPL'</td>
<td>ApplicationData</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'AUTH'</td>
<td>Author</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'COMM'</td>
<td>Common</td>
<td class=c>-</td>
<td>--&gt; <a href='AIFF.html#Common'>AIFF Common Tags</a></td></tr>
<tr class=b>
<td>'COMT'</td>
<td>Comment</td>
<td class=c>-</td>
<td>--&gt; <a href='AIFF.html#Comment'>AIFF Comment Tags</a></td></tr>
<tr>
<td>'FVER'</td>
<td>FormatVersion</td>
<td class=c>-</td>
<td>--&gt; <a href='AIFF.html#FormatVers'>AIFF FormatVers Tags</a></td></tr>
<tr class=b>
<td>'ID3 '</td>
<td>ID3</td>
<td class=c>-</td>
<td>--&gt; <a href='ID3.html'>ID3 Tags</a></td></tr>
<tr>
<td>'NAME'</td>
<td>Name</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Common'>AIFF Common Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index2</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>NumChannels</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>NumSampleFrames</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>SampleSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>SampleRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='9 = 0x9'>9</td>
<td>CompressionType</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>&#39;ACE2&#39; = ACE 2-to-1
<br>&#39;ACE8&#39; = ACE 8-to-3
<br>&#39;ALAW&#39; = A-law
<br>&#39;G722&#39; = G722
<br>&#39;G726&#39; = G726
<br>&#39;G728&#39; = G728
<br>&#39;GSM &#39; = GSM
<br>&#39;MAC3&#39; = MAC 3-to-1
<br>&#39;MAC6&#39; = MAC 6-to-1
<br>&#39;NONE&#39; = None
<br>&#39;ULAW&#39; = Mu-law
<br>&#39;alaw&#39; = a-law
<br>&#39;sowt&#39; = Little-endian, no compression
<br>&#39;ulaw&#39; = mu-law</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='11 = 0xb'>11</td>
<td>CompressorName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Comment'>AIFF Comment Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0000 = 0'>0x0000</td>
<td>CommentTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0001 = 1'>0x0001</td>
<td>MarkerID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0002 = 2'>0x0002</td>
<td>Comment</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='FormatVers'>AIFF FormatVers Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>FormatVersionTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Aug 24, 2020</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

155
html/TagNames/APE.html Normal file
View File

@ -0,0 +1,155 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>APE Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>APE Tags</h2>
<p>Tags found in Monkey&#39;s Audio (APE) information. Only a few common tags are
listed below, but ExifTool will extract any tag found. ExifTool supports
APEv1 and APEv2 tags, as well as ID3 information in APE files, and will also
read APE metadata from MP3 and MPC files.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Album'</td>
<td>Album</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Artist'</td>
<td>Artist</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'DURATION'</td>
<td>Duration</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Genre'</td>
<td>Genre</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Title'</td>
<td>Title</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Tool Name'</td>
<td>ToolName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Tool Version'</td>
<td>ToolVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Track'</td>
<td>Track</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Year'</td>
<td>Year</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='NewHeader'>APE NewHeader Tags</a></h2>
<p>APE MAC audio header for version 3.98 or later.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index2</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>CompressionLevel</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>BlocksPerFrame</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>FinalFrameBlocks</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='6 = 0x6'>6</td>
<td>TotalFrames</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>BitsPerSample</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='9 = 0x9'>9</td>
<td>Channels</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='10 = 0xa'>10</td>
<td>SampleRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='OldHeader'>APE OldHeader Tags</a></h2>
<p>APE MAC audio header for version 3.97 or earlier.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index2</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>APEVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>CompressionLevel</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>Channels</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>SampleRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='10 = 0xa'>10</td>
<td>TotalFrames</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='12 = 0xc'>12</td>
<td>FinalFrameBlocks</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jul 7, 2017</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

189
html/TagNames/APP12.html Normal file
View File

@ -0,0 +1,189 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>APP12 Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top><a name='PictureInfo'>APP12 PictureInfo Tags</a></h2>
<p>The JPEG APP12 &quot;Picture Info&quot; segment was used by some older cameras, and
contains ASCII-based meta information. Below are some tags which have been
observed Agfa and Polaroid images, however ExifTool will extract information
from any tags found in this segment.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Aperture'</td>
<td>Aperture</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ColorMode'</td>
<td>ColorMode</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ConTake'</td>
<td>ConTake</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ExpBias'</td>
<td>ExposureCompensation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'FNumber'</td>
<td>FNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'FWare'</td>
<td>FirmwareVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Flash'</td>
<td>Flash</td>
<td class=c>no</td>
<td><span class=s>0 = Off
<br>1 = On</span></td></tr>
<tr class=b>
<td>'FocusMode'</td>
<td>FocusMode</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'FocusPos'</td>
<td>FocusPos</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ID'</td>
<td>ID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ImageSize'</td>
<td>ImageSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'LightS'</td>
<td>LightS</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Macro'</td>
<td>Macro</td>
<td class=c>no</td>
<td><span class=s>0 = Off
<br>1 = On</span></td></tr>
<tr class=b>
<td>'Protect'</td>
<td>Protect</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Quality'</td>
<td>Quality</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Resolution'</td>
<td>Resolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Serial#'</td>
<td>SerialNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Shutter'</td>
<td>ExposureTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'StrobeTime'</td>
<td>StrobeTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'TimeDate'</td>
<td>DateTimeOriginal</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Type'</td>
<td>CameraType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Version'</td>
<td>Version</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Ytarget'</td>
<td>YTarget</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Zoom'</td>
<td>Zoom</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ZoomPos'</td>
<td>ZoomPos</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'shtr'</td>
<td>ExposureTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ylevel'</td>
<td>YLevel</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Ducky'>APP12 Ducky Tags</a></h2>
<p>Photoshop uses the JPEG APP12 &quot;Ducky&quot; segment to store some information in
&quot;Save for Web&quot; images.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0001 = 1'>0x0001</td>
<td>Quality</td>
<td class=c title=' / = Avoid'>int32u/</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0002 = 2'>0x0002</td>
<td>Comment</td>
<td class=c title=' / = Avoid'>string/</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0003 = 3'>0x0003</td>
<td>Copyright</td>
<td class=c title=' / = Avoid'>string/</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jan 22, 2011</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

1067
html/TagNames/ASF.html Normal file

File diff suppressed because it is too large Load Diff

97
html/TagNames/Apple.html Normal file
View File

@ -0,0 +1,97 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>Apple Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>Apple Tags</h2>
<p>Tags extracted from the maker notes of iPhone images.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0003 = 3'>0x0003</td>
<td>RunTime</td>
<td class=c>-</td>
<td>--&gt; <a href='Apple.html#RunTime'>Apple RunTime Tags</a></td></tr>
<tr class=b>
<td title='0x0008 = 8'>0x0008</td>
<td>AccelerationVector</td>
<td class=c>rational64s[3]</td>
<td><span class=s><span class=n>(XYZ coordinates of the acceleration vector in units of g. As viewed from
the front of the phone, positive X is toward the left side, positive Y is
toward the bottom, and positive Z points into the face of the phone)</span></span></td></tr>
<tr>
<td title='0x000a = 10'>0x000a</td>
<td>HDRImageType</td>
<td class=c>int32s</td>
<td><span class=s>3 = HDR Image
<br>4 = Original Image</span></td></tr>
<tr class=b>
<td title='0x000b = 11'>0x000b</td>
<td>BurstUUID</td>
<td class=c>string</td>
<td><span class=s><span class=n>(unique ID for all images in a burst)</span></span></td></tr>
<tr>
<td title='0x000c = 12'>0x000c</td>
<td>FocusDistanceRange</td>
<td class=c>rational64s[2]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0011 = 17'>0x0011</td>
<td>MediaGroupUUID</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0015 = 21'>0x0015</td>
<td>ImageUniqueID</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='RunTime'>Apple RunTime Tags</a></h2>
<p>This PLIST-format information contains the elements of a CMTime structure
representing the amount of time the phone has been running since the last
boot, not including standby time.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'epoch'</td>
<td>RunTimeEpoch</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'flags'</td>
<td>RunTimeFlags</td>
<td class=c>no</td>
<td><span class=s>Bit 0 = Valid
<br>Bit 1 = Has been rounded
<br>Bit 2 = Positive infinity
<br>Bit 3 = Negative infinity
<br>Bit 4 = Indefinite</span></td></tr>
<tr>
<td>'timescale'</td>
<td>RunTimeScale</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'value'</td>
<td>RunTimeValue</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jul 6, 2022</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

178
html/TagNames/Audible.html Normal file
View File

@ -0,0 +1,178 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>Audible Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>Audible Tags</h2>
<p>ExifTool will extract any information found in the metadata dictionary of
Audible .AA files, even if not listed in the table below.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'_chapter_count'</td>
<td>ChapterCount</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'_cover_art'</td>
<td>CoverArt</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'author'</td>
<td>Author</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'copyright'</td>
<td>Copyright</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'pub_date_start'</td>
<td>PublishDateStart</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'pubdate'</td>
<td>PublishDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='tags'>Audible tags Tags</a></h2>
<p>Information found in &quot;tags&quot; atom of Audible M4B audio books.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'cvrx'</td>
<td>Audible_cvrx</td>
<td class=c>-</td>
<td>--&gt; <a href='Audible.html#cvrx'>Audible cvrx Tags</a></td></tr>
<tr class=b>
<td>'meta'</td>
<td>Audible_meta</td>
<td class=c>-</td>
<td>--&gt; <a href='Audible.html#meta'>Audible meta Tags</a></td></tr>
<tr>
<td>'tseg'</td>
<td>Audible_tseg</td>
<td class=c>-</td>
<td>--&gt; <a href='Audible.html#tseg'>Audible tseg Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='cvrx'>Audible cvrx Tags</a></h2>
<p>Audible cover art information in M4B audio books.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>CoverArt</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>CoverArtType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='meta'>Audible meta Tags</a></h2>
<p>Information found in Audible M4B &quot;meta&quot; atom.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'ALBUMARTIST'</td>
<td>AlbumArtist</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Album'</td>
<td>Album</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Artist'</td>
<td>Artist</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Comment'</td>
<td>Comment</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Genre'</td>
<td>Genre</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'SUBTITLE'</td>
<td>Subtitle</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'TOOL'</td>
<td>CreatorTool</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Title'</td>
<td>Title</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Year'</td>
<td>Year</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'itunesmediatype'</td>
<td>iTunesMediaType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'track'</td>
<td>ChapterName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='tseg'>Audible tseg Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'meta'</td>
<td>Audible_meta2</td>
<td class=c>-</td>
<td>--&gt; <a href='Audible.html#meta'>Audible meta Tags</a></td></tr>
<tr class=b>
<td>'tshd'</td>
<td>ChapterNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Apr 30, 2019</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

234
html/TagNames/BMP.html Normal file
View File

@ -0,0 +1,234 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>BMP Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>BMP Tags</h2>
<p>There really isn&#39;t much meta information in a BMP file as such, just a bit
of image related information.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>BMPVersion</td>
<td class=c>no</td>
<td><span class=s><span class=n>(this is actually the size of the BMP header, but used to determine the BMP
version)</span>
<br>40 = Windows V3
<br>68 = AVI BMP structure?
<br>108 = Windows V4
<br>124 = Windows V5</span></td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='12 = 0xc'>12</td>
<td>Planes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='14 = 0xe'>14</td>
<td>BitDepth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='16 = 0x10'>16</td>
<td>Compression</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = None
<br>1 = 8-Bit RLE
<br>2 = 4-Bit RLE</td><td>&nbsp;&nbsp;</td>
<td>3 = Bitfields
<br>4 = JPEG
<br>5 = PNG</td></tr></table>
</td></tr>
<tr>
<td class=r title='20 = 0x14'>20</td>
<td>ImageLength</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='24 = 0x18'>24</td>
<td>PixelsPerMeterX</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='28 = 0x1c'>28</td>
<td>PixelsPerMeterY</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='32 = 0x20'>32</td>
<td>NumColors</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='36 = 0x24'>36</td>
<td>NumImportantColors</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='40 = 0x28'>40</td>
<td>RedMask</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='44 = 0x2c'>44</td>
<td>GreenMask</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='48 = 0x30'>48</td>
<td>BlueMask</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='52 = 0x34'>52</td>
<td>AlphaMask</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='56 = 0x38'>56</td>
<td>ColorSpace</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Calibrated RGB
<br>1 = Device RGB
<br>2 = Device CMYK
<br>&#39;LINK&#39; = Linked Color Profile
<br>&#39;MBED&#39; = Embedded Color Profile
<br>&#39;Win &#39; = Windows Color Space
<br>&#39;sRGB&#39; = sRGB</td></tr></table>
</td></tr>
<tr>
<td class=r title='60 = 0x3c'>60</td>
<td>RedEndpoint</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='72 = 0x48'>72</td>
<td>GreenEndpoint</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='84 = 0x54'>84</td>
<td>BlueEndpoint</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='96 = 0x60'>96</td>
<td>GammaRed</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='100 = 0x64'>100</td>
<td>GammaGreen</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='104 = 0x68'>104</td>
<td>GammaBlue</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='108 = 0x6c'>108</td>
<td>RenderingIntent</td>
<td class=c>no</td>
<td><span class=s>1 = Graphic (LCS_GM_BUSINESS)
<br>2 = Proof (LCS_GM_GRAPHICS)
<br>4 = Picture (LCS_GM_IMAGES)
<br>8 = Absolute Colorimetric (LCS_GM_ABS_COLORIMETRIC)</span></td></tr>
<tr class=b>
<td class=r title='112 = 0x70'>112</td>
<td>ProfileDataOffset</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='116 = 0x74'>116</td>
<td>ProfileSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='OS2'>BMP OS2 Tags</a></h2>
<p>Information extracted from OS/2-format BMP images.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>BMPVersion</td>
<td class=c>no</td>
<td><span class=s><span class=n>(again, the header size is used to determine the BMP version)</span>
<br>12 = OS/2 V1
<br>64 = OS/2 V2</span></td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='6 = 0x6'>6</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='8 = 0x8'>8</td>
<td>Planes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='10 = 0xa'>10</td>
<td>BitDepth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Extra'>BMP Extra Tags</a></h2>
<p>Extra information extracted from some BMP images.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>EmbeddedJPG</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>EmbeddedPNG</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>ICC_Profile</td>
<td class=c>-</td>
<td>--&gt; <a href='ICC_Profile.html'>ICC_Profile Tags</a></td></tr>
<tr class=b>
<td>LinkedProfileName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Dec 7, 2016</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

119
html/TagNames/BPG.html Normal file
View File

@ -0,0 +1,119 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>BPG Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>BPG Tags</h2>
<p>The information listed below is extracted from BPG (Better Portable
Graphics) images. See <a href="http://bellard.org/bpg/">http://bellard.org/bpg/</a> for the specification.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>PixelFormat</td>
<td class=c>no</td>
<td><span class=s>[val &gt;&gt; 13 &amp; 0x7]</span><table class=cols><tr>
<td>0 = Grayscale
<br>1 = 4:2:0 (chroma at 0.5, 0.5)
<br>2 = 4:2:2 (chroma at 0.5, 0)
<br>3 = 4:4:4
<br>4 = 4:2:0 (chroma at 0, 0.5)
<br>5 = 4:2:2 (chroma at 0, 0)</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4.1</td>
<td>Alpha</td>
<td class=c>no</td>
<td><span class=s>[val &amp; 0x1004]
<br>0x0 = No Alpha Plane
<br>0x4 = Alpha Exists (W color component)
<br>0x1000 = Alpha Exists (color not premultiplied)
<br>0x1004 = Alpha Exists (color premultiplied)</span></td></tr>
<tr>
<td class=r title='4 = 0x4'>4.2</td>
<td>BitDepth</td>
<td class=c>no</td>
<td><span class=s>[val &gt;&gt; 8 &amp; 0xf]</span></td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4.3</td>
<td>ColorSpace</td>
<td class=c>no</td>
<td><span class=s>[val &gt;&gt; 4 &amp; 0xf]</span><table class=cols><tr>
<td>0 = YCbCr (BT 601)
<br>1 = RGB
<br>2 = YCgCo
<br>3 = YCbCr (BT 709)
<br>4 = YCbCr (BT 2020)
<br>5 = BT 2020 Constant Luminance</td></tr></table>
</td></tr>
<tr>
<td class=r title='4 = 0x4'>4.4</td>
<td>Flags</td>
<td class=c>no</td>
<td><span class=s>[val &amp; 0xb]
<br>Bit 0 = Animation
<br>Bit 1 = Limited Range
<br>Bit 3 = Extension Present</span></td></tr>
<tr class=b>
<td class=r title='6 = 0x6'>6</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='7 = 0x7'>7</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='8 = 0x8'>8</td>
<td>ImageLength</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Extensions'>BPG Extensions Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0001 = 1'>0x0001</td>
<td>EXIF</td>
<td class=c>-</td>
<td>--&gt; <a href='EXIF.html'>EXIF Tags</a></td></tr>
<tr class=b>
<td title='0x0002 = 2'>0x0002</td>
<td>ICC_Profile</td>
<td class=c>-</td>
<td>--&gt; <a href='ICC_Profile.html'>ICC_Profile Tags</a></td></tr>
<tr>
<td title='0x0003 = 3'>0x0003</td>
<td>XMP</td>
<td class=c>-</td>
<td>--&gt; <a href='XMP.html'>XMP Tags</a></td></tr>
<tr class=b>
<td title='0x0004 = 4'>0x0004</td>
<td>ThumbnailBPG</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0005 = 5'>0x0005</td>
<td>AnimationControl?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Oct 24, 2018</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

62
html/TagNames/CBOR.html Normal file
View File

@ -0,0 +1,62 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>CBOR Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>CBOR Tags</h2>
<p>The tags below are extracted from CBOR (Concise Binary Object
Representation) metadata. The C2PA specification uses this format for some
metadata. As well as these tags, ExifTool will read any existing tags.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>AuthorIdentifier</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>AuthorName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>DocumentID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Format</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>InstanceID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Relationship</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>ThumbnailHash</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ThumbnailURL</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>Title</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Sep 30, 2021</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

11639
html/TagNames/Canon.html Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

564
html/TagNames/CanonRaw.html Normal file
View File

@ -0,0 +1,564 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>CanonRaw Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>CanonRaw Tags</h2>
<p>
These tags apply to CRW-format Canon RAW files and information in the APP0
&quot;CIFF&quot; segment of JPEG images. When writing CanonRaw/CIFF information, the
length of the information is preserved (and the new information is truncated
or padded as required) unless <b>Writable</b> is <code>resize</code>. Currently, only
JpgFromRaw and ThumbnailImage are allowed to change size. See
<a href="../canon_raw.html">canon_raw.html</a> for a description of the Canon CRW
format.</p>
<p>CRW images also support the addition of a CanonVRD trailer, which in turn
supports XMP. This trailer is created automatically if necessary when
ExifTool is used to write XMP to a CRW image.
</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0000 = 0'>0x0000</td>
<td>NullRecord</td>
<td class=c>undef</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0001 = 1'>0x0001</td>
<td>FreeBytes</td>
<td class=c>undef</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0032 = 50'>0x0032</td>
<td>CanonColorInfo1</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0805 = 2053'>0x0805</td>
<td>CanonFileDescription
<br>UserComment</td>
<td class=c>string[32]<br>string[256]</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x080a = 2058'>0x080a</td>
<td>CanonRawMakeModel</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html#MakeModel'>CanonRaw MakeModel Tags</a></td></tr>
<tr class=b>
<td title='0x080b = 2059'>0x080b</td>
<td>CanonFirmwareVersion</td>
<td class=c>string[32]</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x080c = 2060'>0x080c</td>
<td>ComponentVersion</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x080d = 2061'>0x080d</td>
<td>ROMOperationMode</td>
<td class=c>string[8]</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0810 = 2064'>0x0810</td>
<td>OwnerName</td>
<td class=c>string[32]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0815 = 2069'>0x0815</td>
<td>CanonImageType</td>
<td class=c>string[32]</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0816 = 2070'>0x0816</td>
<td>OriginalFileName</td>
<td class=c>string[32]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0817 = 2071'>0x0817</td>
<td>ThumbnailFileName</td>
<td class=c>string[32]</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x100a = 4106'>0x100a</td>
<td>TargetImageType</td>
<td class=c>int16u</td>
<td><span class=s>0 = Real-world Subject
<br>1 = Written Document</span></td></tr>
<tr class=b>
<td title='0x1010 = 4112'>0x1010</td>
<td>ShutterReleaseMethod</td>
<td class=c>int16u</td>
<td><span class=s>0 = Single Shot
<br>2 = Continuous Shooting</span></td></tr>
<tr>
<td title='0x1011 = 4113'>0x1011</td>
<td>ShutterReleaseTiming</td>
<td class=c>int16u</td>
<td><span class=s>0 = Priority on shutter
<br>1 = Priority on focus</span></td></tr>
<tr class=b>
<td title='0x1016 = 4118'>0x1016</td>
<td>ReleaseSetting</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x101c = 4124'>0x101c</td>
<td>BaseISO</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x1028 = 4136'>0x1028</td>
<td>CanonFlashInfo?</td>
<td class=c>int16u[4]</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x1029 = 4137'>0x1029</td>
<td>CanonFocalLength</td>
<td class=c>-</td>
<td>--&gt; <a href='Canon.html#FocalLength'>Canon FocalLength Tags</a></td></tr>
<tr class=b>
<td title='0x102a = 4138'>0x102a</td>
<td>CanonShotInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='Canon.html#ShotInfo'>Canon ShotInfo Tags</a></td></tr>
<tr>
<td title='0x102c = 4140'>0x102c</td>
<td>CanonColorInfo2</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x102d = 4141'>0x102d</td>
<td>CanonCameraSettings</td>
<td class=c>-</td>
<td>--&gt; <a href='Canon.html#CameraSettings'>Canon CameraSettings Tags</a></td></tr>
<tr>
<td title='0x1030 = 4144'>0x1030</td>
<td>WhiteSample</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html#WhiteSample'>CanonRaw WhiteSample Tags</a></td></tr>
<tr class=b>
<td title='0x1031 = 4145'>0x1031</td>
<td>SensorInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='Canon.html#SensorInfo'>Canon SensorInfo Tags</a></td></tr>
<tr>
<td title='0x1033 = 4147'>0x1033</td>
<td>CustomFunctions10D
<br>CustomFunctionsD30
<br>CustomFunctionsD60
<br>CustomFunctionsUnknown</td>
<td class=c>-<br>-<br>-<br>-</td>
<td>--&gt; <a href='CanonCustom.html#Functions10D'>CanonCustom Functions10D Tags</a>
<br>--&gt; <a href='CanonCustom.html#FunctionsD30'>CanonCustom FunctionsD30 Tags</a>
<br>--&gt; <a href='CanonCustom.html#FunctionsD30'>CanonCustom FunctionsD30 Tags</a>
<br>--&gt; <a href='CanonCustom.html#FuncsUnknown'>CanonCustom FuncsUnknown Tags</a></td></tr>
<tr class=b>
<td title='0x1038 = 4152'>0x1038</td>
<td>CanonAFInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='Canon.html#AFInfo'>Canon AFInfo Tags</a></td></tr>
<tr>
<td title='0x1093 = 4243'>0x1093</td>
<td>CanonFileInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='Canon.html#FileInfo'>Canon FileInfo Tags</a></td></tr>
<tr class=b>
<td title='0x10a9 = 4265'>0x10a9</td>
<td>ColorBalance</td>
<td class=c>-</td>
<td>--&gt; <a href='Canon.html#ColorBalance'>Canon ColorBalance Tags</a></td></tr>
<tr>
<td title='0x10ae = 4270'>0x10ae</td>
<td>ColorTemperature</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x10b4 = 4276'>0x10b4</td>
<td>ColorSpace</td>
<td class=c>int16u</td>
<td><span class=s>1 = sRGB
<br>2 = Adobe RGB
<br>65535 = Uncalibrated</span></td></tr>
<tr>
<td title='0x10b5 = 4277'>0x10b5</td>
<td>RawJpgInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html#RawJpgInfo'>CanonRaw RawJpgInfo Tags</a></td></tr>
<tr class=b>
<td title='0x1803 = 6147'>0x1803</td>
<td>ImageFormat</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html#ImageFormat'>CanonRaw ImageFormat Tags</a></td></tr>
<tr>
<td title='0x1804 = 6148'>0x1804</td>
<td>RecordID</td>
<td class=c>int32u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x1806 = 6150'>0x1806</td>
<td>SelfTimerTime</td>
<td class=c>int32u</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x1807 = 6151'>0x1807</td>
<td>TargetDistanceSetting</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x180b = 6155'>0x180b</td>
<td>SerialNumber
<br>UnknownNumber?</td>
<td class=c>int32u<br>yes</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x180e = 6158'>0x180e</td>
<td>TimeStamp</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html#TimeStamp'>CanonRaw TimeStamp Tags</a></td></tr>
<tr class=b>
<td title='0x1810 = 6160'>0x1810</td>
<td>ImageInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html#ImageInfo'>CanonRaw ImageInfo Tags</a></td></tr>
<tr>
<td title='0x1813 = 6163'>0x1813</td>
<td>FlashInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html#FlashInfo'>CanonRaw FlashInfo Tags</a></td></tr>
<tr class=b>
<td title='0x1814 = 6164'>0x1814</td>
<td>MeasuredEV</td>
<td class=c>float</td>
<td><span class=s><span class=n>(this is the Canon name for what could better be called MeasuredLV, and
should be close to the calculated LightValue for a proper exposure with most
models)</span></span></td></tr>
<tr>
<td title='0x1817 = 6167'>0x1817</td>
<td>FileNumber</td>
<td class=c>int32u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x1818 = 6168'>0x1818</td>
<td>ExposureInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html#ExposureInfo'>CanonRaw ExposureInfo Tags</a></td></tr>
<tr>
<td title='0x1834 = 6196'>0x1834</td>
<td>CanonModelID</td>
<td class=c>int32u</td>
<td>--&gt; <a href='Canon.html#CanonModelID'>Canon CanonModelID Values</a>
<br><span class='n s'>(this is the complete list of model ID numbers, but note that many of these
models do not produce CRW images)</span></td></tr>
<tr class=b>
<td title='0x1835 = 6197'>0x1835</td>
<td>DecoderTable</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html#DecoderTable'>CanonRaw DecoderTable Tags</a></td></tr>
<tr>
<td title='0x183b = 6203'>0x183b</td>
<td>SerialNumberFormat</td>
<td class=c>int32u</td>
<td><span class=s>0x90000000 = Format 1
<br>0xa0000000 = Format 2</span></td></tr>
<tr class=b>
<td title='0x2005 = 8197'>0x2005</td>
<td>RawData</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x2007 = 8199'>0x2007</td>
<td>JpgFromRaw</td>
<td class=c title=' ^ = Deletable'>resize^</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x2008 = 8200'>0x2008</td>
<td>ThumbnailImage</td>
<td class=c title=' ^ = Deletable'>resize^</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x2804 = 10244'>0x2804</td>
<td>ImageDescription</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html'>CanonRaw Tags</a></td></tr>
<tr class=b>
<td title='0x2807 = 10247'>0x2807</td>
<td>CameraObject</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html'>CanonRaw Tags</a></td></tr>
<tr>
<td title='0x3002 = 12290'>0x3002</td>
<td>ShootingRecord</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html'>CanonRaw Tags</a></td></tr>
<tr class=b>
<td title='0x3003 = 12291'>0x3003</td>
<td>MeasuredInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html'>CanonRaw Tags</a></td></tr>
<tr>
<td title='0x3004 = 12292'>0x3004</td>
<td>CameraSpecification</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html'>CanonRaw Tags</a></td></tr>
<tr class=b>
<td title='0x300a = 12298'>0x300a</td>
<td>ImageProps</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html'>CanonRaw Tags</a></td></tr>
<tr>
<td title='0x300b = 12299'>0x300b</td>
<td>ExifInformation</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html'>CanonRaw Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='MakeModel'>CanonRaw MakeModel Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>Make</td>
<td class=c>string[6]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='6 = 0x6'>6</td>
<td>Model</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='WhiteSample'>CanonRaw WhiteSample Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index2</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='1 = 0x1'>1</td>
<td>WhiteSampleWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>WhiteSampleHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>WhiteSampleLeftBorder</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>WhiteSampleTopBorder</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='5 = 0x5'>5</td>
<td>WhiteSampleBits</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='RawJpgInfo'>CanonRaw RawJpgInfo Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index2</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='1 = 0x1'>1</td>
<td>RawJpgQuality</td>
<td class=c>int16u</td>
<td><span class=s>1 = Economy
<br>2 = Normal
<br>3 = Fine
<br>5 = Superfine</span></td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>RawJpgSize</td>
<td class=c>int16u</td>
<td><span class=s>0 = Large
<br>1 = Medium
<br>2 = Small</span></td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>RawJpgWidth</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>RawJpgHeight</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ImageFormat'>CanonRaw ImageFormat Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>FileFormat</td>
<td class=c>int32u</td>
<td><span class=s>0x10000 = JPEG (lossy)
<br>0x10002 = JPEG (non-quantization)
<br>0x10003 = JPEG (lossy/non-quantization toggled)
<br>0x20001 = CRW</span></td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>TargetCompressionRatio</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='TimeStamp'>CanonRaw TimeStamp Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>DateTimeOriginal</td>
<td class=c>int32u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>TimeZoneCode</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>TimeZoneInfo</td>
<td class=c>int32u</td>
<td><span class=s><span class=n>(set to 0x80000000 if TimeZoneCode is valid)</span></span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ImageInfo'>CanonRaw ImageInfo Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>PixelAspectRatio</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>Rotation</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>ComponentBitDepth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>ColorBitDepth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='6 = 0x6'>6</td>
<td>ColorBW</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='FlashInfo'>CanonRaw FlashInfo Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>FlashGuideNumber</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>FlashThreshold</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ExposureInfo'>CanonRaw ExposureInfo Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>ExposureCompensation</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>ShutterSpeedValue</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>ApertureValue</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='DecoderTable'>CanonRaw DecoderTable Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>DecoderTableNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>CompressedDataOffset</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>CompressedDataLength</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Nov 28, 2019</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

2042
html/TagNames/CanonVRD.html Normal file

File diff suppressed because it is too large Load Diff

1607
html/TagNames/Casio.html Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,830 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>Composite Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>Composite Tags</h2>
<p>
The values of the composite tags are <b>Derived From</b> the values of other
tags. These are convenience tags which are calculated after all other
information is extracted. Only a few of these tags are writable directly,
the others are changed by writing the corresponding <b>Derived From</b> tags.
User-defined Composite tags, also useful for custom-formatting of tag
values, may created via the <a href="../config.html">ExifTool configuration file</a>.
</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Derived From</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>AdvancedSceneMode</td>
<td class=c>no</td>
<td class=n>Model
<br>SceneMode
<br>AdvancedSceneType</td>
<td>--&gt; <a href='Panasonic.html#AdvancedSceneMode'>Panasonic AdvancedSceneMode Values</a></td></tr>
<tr class=b>
<td>Aperture</td>
<td class=c>no</td>
<td class=n>FNumber
<br>ApertureValue</td>
<td>&nbsp;</td></tr>
<tr>
<td>AudioBitrate</td>
<td class=c>no</td>
<td class=n>MPEG:MPEGAudioVersion
<br>MPEG:SampleRate
<br>MPEG:VBRBytes
<br>MPEG:VBRFrames</td>
<td><span class=s><span class=n>(calculated for variable-bitrate MPEG audio)</span></span></td></tr>
<tr class=b>
<td>AutoFocus</td>
<td class=c>no</td>
<td class=n>Nikon:PhaseDetectAF
<br>Nikon:ContrastDetectAF</td>
<td><span class=s>0 = Off
<br>1 = On</span></td></tr>
<tr>
<td>AvgBitrate</td>
<td class=c>no</td>
<td class=n>QuickTime::MediaDataSize
<br>QuickTime::Duration</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>BlueBalance</td>
<td class=c>no</td>
<td class=n>WB_RGGBLevels
<br>WB_RGBGLevels
<br>WB_RBGGLevels
<br>WB_GRBGLevels
<br>WB_GRGBLevels
<br>WB_GBRGLevels
<br>WB_RGBLevels
<br>WB_GRBLevels
<br>WB_RBLevels
<br>WBBlueLevel
<br>WBGreenLevel</td>
<td>&nbsp;</td></tr>
<tr>
<td>CDDBDiscPlayTime</td>
<td class=c>no</td>
<td class=n>CDDB1Info</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>CDDBDiscTracks</td>
<td class=c>no</td>
<td class=n>CDDB1Info</td>
<td>&nbsp;</td></tr>
<tr>
<td>CFAPattern</td>
<td class=c>no</td>
<td class=n>CFARepeatPatternDim
<br>CFAPattern2</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>CircleOfConfusion</td>
<td class=c>no</td>
<td class=n>ScaleFactor35efl</td>
<td><span class=s><span class=n>(calculated as D/1440, where D is the focal plane diagonal in mm. This value
may be incorrect if the image has been resized)</span></span></td></tr>
<tr>
<td>ConditionalFEC</td>
<td class=c>no</td>
<td class=n>FlashExposureComp
<br>FlashBits</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>DOF</td>
<td class=c>no</td>
<td class=n>FocalLength
<br>Aperture
<br>CircleOfConfusion
<br>FocusDistance
<br>SubjectDistance
<br>ObjectDistance
<br>ApproximateFocusDistance
<br>FocusDistanceLower
<br>FocusDistanceUpper</td>
<td><span class=s><span class=n>(this value may be incorrect if the image has been resized)</span></span></td></tr>
<tr>
<td>DateCreated</td>
<td class=c>no</td>
<td class=n>Kodak:YearCreated
<br>Kodak:MonthDayCreated</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>DateTimeCreated</td>
<td class=c>no</td>
<td class=n>IPTC:DateCreated
<br>IPTC:TimeCreated</td>
<td>&nbsp;</td></tr>
<tr>
<td>DateTimeOriginal</td>
<td class=c>no</td>
<td class=n>DateTimeCreated
<br>DateCreated
<br>TimeCreated</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>DateTimeOriginal</td>
<td class=c>no</td>
<td class=n>ID3:RecordingTime
<br>ID3:Year
<br>ID3:Date
<br>ID3:Time</td>
<td>&nbsp;</td></tr>
<tr>
<td>DepthMapTiff</td>
<td class=c>no</td>
<td class=n>DepthMapData
<br>DepthMapWidth
<br>DepthMapHeight</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>DigitalCreationDateTime</td>
<td class=c>no</td>
<td class=n>IPTC:DigitalCreationDate
<br>IPTC:DigitalCreationTime</td>
<td>&nbsp;</td></tr>
<tr>
<td>DigitalZoom</td>
<td class=c>no</td>
<td class=n>Canon:ZoomSourceWidth
<br>Canon:ZoomTargetWidth
<br>Canon:DigitalZoom</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>DriveMode</td>
<td class=c>no</td>
<td class=n>ContinuousDrive
<br>SelfTimer</td>
<td><span class=s>0 = Continuous Shooting
<br>1 = Self-timer Operation
<br>2 = Single-frame Shooting</span></td></tr>
<tr>
<td>Duration</td>
<td class=c>no</td>
<td class=n>AIFF:SampleRate
<br>AIFF:NumSampleFrames</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Duration</td>
<td class=c>no</td>
<td class=n>APE:SampleRate
<br>APE:TotalFrames
<br>APE:BlocksPerFrame
<br>APE:FinalFrameBlocks</td>
<td>&nbsp;</td></tr>
<tr>
<td>Duration</td>
<td class=c>no</td>
<td class=n>FLAC:SampleRate
<br>FLAC:TotalSamples</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Duration</td>
<td class=c>no</td>
<td class=n>FileSize
<br>ID3Size
<br>MPEG:AudioBitrate
<br>MPEG:VideoBitrate
<br>MPEG:VBRFrames
<br>MPEG:SampleRate
<br>MPEG:MPEGAudioVersion</td>
<td>&nbsp;</td></tr>
<tr>
<td>Duration</td>
<td class=c>no</td>
<td class=n>RIFF:FrameRate
<br>RIFF:FrameCount
<br>VideoFrameRate
<br>VideoFrameCount</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Duration</td>
<td class=c>no</td>
<td class=n>RIFF:AvgBytesPerSec
<br>FileSize
<br>FrameCount
<br>VideoFrameCount</td>
<td>&nbsp;</td></tr>
<tr>
<td>Duration</td>
<td class=c>no</td>
<td class=n>Vorbis:NominalBitrate
<br>FileSize</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ExtenderStatus</td>
<td class=c>no</td>
<td class=n>Olympus:Extender
<br>Olympus:LensType
<br>MaxApertureValue</td>
<td><span class=s><span class=n>(Olympus cameras have the quirk that they may retain the extender settings
after the extender is removed until the camera is powered off. This tag is
an attempt to represent the actual status of the extender.)</span>
<br>0 = Not attached
<br>1 = Attached
<br>2 = Removed</span></td></tr>
<tr>
<td>FOV</td>
<td class=c>no</td>
<td class=n>FocalLength
<br>ScaleFactor35efl
<br>FocusDistance</td>
<td><span class=s><span class=n>(calculated for the long image dimension. This value may be incorrect for
fisheye lenses, or if the image has been resized)</span></span></td></tr>
<tr class=b>
<td>FileNumber</td>
<td class=c>yes</td>
<td class=n>DirectoryIndex
<br>FileIndex</td>
<td>&nbsp;</td></tr>
<tr>
<td>Flash</td>
<td class=c>yes</td>
<td class=n>XMP:FlashFired
<br>XMP:FlashReturn
<br>XMP:FlashMode
<br>XMP:FlashFunction
<br>XMP:FlashRedEyeMode
<br>XMP:Flash</td>
<td>--&gt; <a href='EXIF.html#Flash'>EXIF Flash Values</a>
<br><span class='n s'>(facilitates copying camera flash information between XMP and EXIF)</span></td></tr>
<tr class=b>
<td>FlashType</td>
<td class=c>no</td>
<td class=n>FlashBits</td>
<td><span class=s><span class=n>(may report &quot;Built-in Flash&quot; for some Canon cameras with external flash in
manual mode)</span>
<br>0 = Built-In Flash
<br>1 = External</span></td></tr>
<tr>
<td>FocalLength35efl</td>
<td class=c>no</td>
<td class=n>FocalLength
<br>ScaleFactor35efl</td>
<td><span class=s><span class=n>(this value may be incorrect if the image has been resized)</span></span></td></tr>
<tr class=b>
<td>FocusDistance</td>
<td class=c>no</td>
<td class=n>Sony:FocusPosition
<br>FocalLength</td>
<td><span class=s><span class=n>(distance in metres = FocusPosition * FocalLength / 1000)</span></span></td></tr>
<tr>
<td>FocusDistance2</td>
<td class=c>no</td>
<td class=n>Sony:FocusPosition2
<br>FocalLengthIn35mmFormat</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GPSAltitude</td>
<td class=c>no</td>
<td class=n>GPS:GPSAltitude
<br>GPS:GPSAltitudeRef
<br>XMP:GPSAltitude
<br>XMP:GPSAltitudeRef</td>
<td>&nbsp;</td></tr>
<tr>
<td>GPSAltitude</td>
<td class=c>no</td>
<td class=n>QuickTime:GPSCoordinates</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GPSAltitude</td>
<td class=c>no</td>
<td class=n>QuickTime:LocationInformation</td>
<td>&nbsp;</td></tr>
<tr>
<td>GPSAltitudeRef</td>
<td class=c>no</td>
<td class=n>QuickTime:GPSCoordinates</td>
<td><span class=s>0 = Above Sea Level
<br>1 = Below Sea Level</span></td></tr>
<tr class=b>
<td>GPSAltitudeRef</td>
<td class=c>no</td>
<td class=n>QuickTime:LocationInformation</td>
<td><span class=s>0 = Above Sea Level
<br>1 = Below Sea Level</span></td></tr>
<tr>
<td>GPSDateTime</td>
<td class=c>no</td>
<td class=n>GPS:GPSDateStamp
<br>GPS:GPSTimeStamp</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GPSDateTime</td>
<td class=c>no</td>
<td class=n>Parrot:GPSLatitude
<br>Main:CreateDate
<br>SampleTime</td>
<td>&nbsp;</td></tr>
<tr>
<td>GPSDateTime</td>
<td class=c>no</td>
<td class=n>Sony:GPSDateStamp
<br>Sony:GPSTimeStamp</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GPSDestLatitude</td>
<td class=c>no</td>
<td class=n>GPS:GPSDestLatitude
<br>GPS:GPSDestLatitudeRef</td>
<td>&nbsp;</td></tr>
<tr>
<td>GPSDestLatitudeRef</td>
<td class=c>no</td>
<td class=n>XMP-exif:GPSDestLatitude</td>
<td><span class=s>&#39;N&#39; = North
<br>&#39;S&#39; = South</span></td></tr>
<tr class=b>
<td>GPSDestLongitude</td>
<td class=c>no</td>
<td class=n>GPS:GPSDestLongitude
<br>GPS:GPSDestLongitudeRef</td>
<td>&nbsp;</td></tr>
<tr>
<td>GPSDestLongitudeRef</td>
<td class=c>no</td>
<td class=n>XMP-exif:GPSDestLongitude</td>
<td><span class=s>&#39;E&#39; = East
<br>&#39;W&#39; = West</span></td></tr>
<tr class=b>
<td>GPSLatitude</td>
<td class=c title=' / = Avoid'>yes/</td>
<td class=n>GPS:GPSLatitude
<br>GPS:GPSLatitudeRef</td>
<td>&nbsp;</td></tr>
<tr>
<td>GPSLatitude</td>
<td class=c>no</td>
<td class=n>QuickTime:GPSCoordinates</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GPSLatitude</td>
<td class=c>no</td>
<td class=n>QuickTime:LocationInformation</td>
<td>&nbsp;</td></tr>
<tr>
<td>GPSLatitude</td>
<td class=c>no</td>
<td class=n>Sony:GPSLatitude
<br>Sony:GPSLatitudeRef</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GPSLatitudeRef</td>
<td class=c>no</td>
<td class=n>XMP-exif:GPSLatitude</td>
<td><span class=s>&#39;N&#39; = North
<br>&#39;S&#39; = South</span></td></tr>
<tr>
<td>GPSLongitude</td>
<td class=c title=' / = Avoid'>yes/</td>
<td class=n>GPS:GPSLongitude
<br>GPS:GPSLongitudeRef</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GPSLongitude</td>
<td class=c>no</td>
<td class=n>QuickTime:GPSCoordinates</td>
<td>&nbsp;</td></tr>
<tr>
<td>GPSLongitude</td>
<td class=c>no</td>
<td class=n>QuickTime:LocationInformation</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GPSLongitude</td>
<td class=c>no</td>
<td class=n>Sony:GPSLongitude
<br>Sony:GPSLongitudeRef</td>
<td>&nbsp;</td></tr>
<tr>
<td>GPSLongitudeRef</td>
<td class=c>no</td>
<td class=n>XMP-exif:GPSLongitude</td>
<td><span class=s>&#39;E&#39; = East
<br>&#39;W&#39; = West</span></td></tr>
<tr class=b>
<td>GPSPosition</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=n>GPSLatitude
<br>GPSLongitude</td>
<td><span class=s><span class=n>(when written, writes GPSLatitude, GPSLatitudeRef, GPSLongitude and
GPSLongitudeRef. This tag may be written using the same coordinate
format as provided by Google Maps when right-clicking on a location)</span></span></td></tr>
<tr>
<td>HyperfocalDistance</td>
<td class=c>no</td>
<td class=n>FocalLength
<br>Aperture
<br>CircleOfConfusion</td>
<td><span class=s><span class=n>(this value may be incorrect if the image has been resized)</span></span></td></tr>
<tr class=b>
<td>IDCPreviewImage</td>
<td class=c>no</td>
<td class=n>IDCPreviewStart
<br>IDCPreviewLength</td>
<td>&nbsp;</td></tr>
<tr>
<td>ISO</td>
<td class=c>no</td>
<td class=n>Canon:CameraISO
<br>Canon:BaseISO
<br>Canon:AutoISO</td>
<td><span class=s><span class=n>(use CameraISO if numerical, otherwise calculate as BaseISO * AutoISO / 100)</span></span></td></tr>
<tr class=b>
<td>ImageHeight</td>
<td class=c>no</td>
<td class=n>IFD0:SensorTopBorder
<br>IFD0:SensorBottomBorder</td>
<td>&nbsp;</td></tr>
<tr>
<td>ImageHeight</td>
<td class=c>no</td>
<td class=n>Main:PostScript:ImageData
<br>PostScript:BoundingBox</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ImageSize</td>
<td class=c>no</td>
<td class=n>ImageWidth
<br>ImageHeight
<br>ExifImageWidth
<br>ExifImageHeight
<br>RawImageCroppedSize</td>
<td>&nbsp;</td></tr>
<tr>
<td>ImageWidth</td>
<td class=c>no</td>
<td class=n>IFD0:SensorLeftBorder
<br>IFD0:SensorRightBorder</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ImageWidth</td>
<td class=c>no</td>
<td class=n>Main:PostScript:ImageData
<br>PostScript:BoundingBox</td>
<td>&nbsp;</td></tr>
<tr>
<td>JpgFromRaw</td>
<td class=c>yes</td>
<td class=n>JpgFromRawStart
<br>JpgFromRawLength</td>
<td><span class=s><span class=n>(this tag is writable, and may be used to update existing embedded images,
but not create or delete them)</span></span></td></tr>
<tr class=b>
<td>Lens</td>
<td class=c>no</td>
<td class=n>Canon:MinFocalLength
<br>Canon:MaxFocalLength</td>
<td>&nbsp;</td></tr>
<tr>
<td>Lens35efl</td>
<td class=c>no</td>
<td class=n>Canon:MinFocalLength
<br>Canon:MaxFocalLength
<br>Lens
<br>ScaleFactor35efl</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>LensID</td>
<td class=c>no</td>
<td class=n>LensType
<br>FocalLength
<br>MaxAperture
<br>MaxApertureValue
<br>MinFocalLength
<br>MaxFocalLength
<br>LensModel
<br>LensFocalRange
<br>LensSpec
<br>LensType2
<br>LensType3
<br>LensFocalLength
<br>RFLensType</td>
<td><span class=s><span class=n>(attempt to identify the actual lens from all lenses with a given LensType.
Applies only to LensType values with a lookup table. May be configured
by adding user-defined lenses)</span></span></td></tr>
<tr>
<td>LensID</td>
<td class=c>no</td>
<td class=n>LensModel
<br>Lens
<br>XMP-aux:LensID
<br>Make</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>LensID</td>
<td class=c>no</td>
<td class=n>Nikon:LensIDNumber
<br>LensFStops
<br>MinFocalLength
<br>MaxFocalLength
<br>MaxApertureAtMinFocal
<br>MaxApertureAtMaxFocal
<br>MCUVersion
<br>Nikon:LensType</td>
<td>--&gt; <a href='Nikon.html#LensID'>Nikon LensID Values</a></td></tr>
<tr>
<td>LensID</td>
<td class=c>no</td>
<td class=n>Ricoh:LensFirmware</td>
<td>--&gt; <a href='Ricoh.html#LensID'>Ricoh LensID Values</a></td></tr>
<tr class=b>
<td>LensID</td>
<td class=c>no</td>
<td class=n>XMP-aux:LensID
<br>Make
<br>LensInfo
<br>FocalLength
<br>LensModel
<br>MaxApertureValue</td>
<td><span class=s><span class=n>(attempt to convert numerical XMP-aux:LensID stored by Adobe applications)</span></span></td></tr>
<tr>
<td>LensSpec</td>
<td class=c>no</td>
<td class=n>Nikon:Lens
<br>Nikon:LensType</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>LensType</td>
<td class=c>no</td>
<td class=n>LensTypeMake
<br>LensTypeModel</td>
<td>--&gt; <a href='Olympus.html#LensType'>Olympus LensType Values</a>
<br><span class='n s'>(based on tags found in some Panasonic RW2 images)</span></td></tr>
<tr>
<td>LightValue</td>
<td class=c>no</td>
<td class=n>Aperture
<br>ShutterSpeed
<br>ISO</td>
<td><span class=s><span class=n>(calculated LV = 2 * log2(Aperture) - log2(ShutterSpeed) - log2(ISO/100);
similar to exposure value but normalized to ISO 100)</span></span></td></tr>
<tr class=b>
<td>MPImage</td>
<td class=c>no</td>
<td class=n>MPImageStart
<br>MPImageLength
<br>MPImageType</td>
<td><span class=s><span class=n>(the first MPF &quot;Large Thumbnail&quot; is extracted as PreviewImage, and the rest
of the embedded MPF images are extracted as MPImage#. The <a href="../ExifTool.html#ExtractEmbedded">ExtractEmbedded</a>
option may be used to extract information from these embedded images.)</span></span></td></tr>
<tr>
<td>Megapixels</td>
<td class=c>no</td>
<td class=n>ImageSize</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>OriginalDecisionData</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=n>OriginalDecisionDataOffset</td>
<td>&nbsp;</td></tr>
<tr>
<td>OtherImage</td>
<td class=c>yes</td>
<td class=n>OtherImageStart
<br>OtherImageLength</td>
<td><span class=s><span class=n>(this tag is writable, and may be used to update existing embedded images,
but not create or delete them)</span></span></td></tr>
<tr class=b>
<td>PeakSpectralSensitivity</td>
<td class=c>no</td>
<td class=n>FLIR:PlanckB</td>
<td>&nbsp;</td></tr>
<tr>
<td>PreviewImage</td>
<td class=c>yes</td>
<td class=n>PreviewImageStart
<br>PreviewImageLength
<br>PreviewImageValid
<br>PreviewImageStart (1)
<br>PreviewImageLength (1)</td>
<td><span class=s><span class=n>(this tag is writable, and may be used to update existing embedded images,
but not create or delete them)</span></span></td></tr>
<tr class=b>
<td>PreviewImage</td>
<td class=c>no</td>
<td class=n>ScreenNail</td>
<td>&nbsp;</td></tr>
<tr>
<td>PreviewImageSize</td>
<td class=c>no</td>
<td class=n>PreviewImageWidth
<br>PreviewImageHeight</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>RedBalance</td>
<td class=c>no</td>
<td class=n>WB_RGGBLevels
<br>WB_RGBGLevels
<br>WB_RBGGLevels
<br>WB_GRBGLevels
<br>WB_GRGBLevels
<br>WB_GBRGLevels
<br>WB_RGBLevels
<br>WB_GRBLevels
<br>WB_RBLevels
<br>WBRedLevel
<br>WBGreenLevel</td>
<td>&nbsp;</td></tr>
<tr>
<td>RedEyeReduction</td>
<td class=c>no</td>
<td class=n>CanonFlashMode
<br>FlashBits</td>
<td><span class=s>0 = Off
<br>1 = On</span></td></tr>
<tr class=b>
<td>RicohPitch</td>
<td class=c>no</td>
<td class=n>Ricoh:Accelerometer</td>
<td>&nbsp;</td></tr>
<tr>
<td>RicohRoll</td>
<td class=c>no</td>
<td class=n>Ricoh:Accelerometer</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Rotation</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=n>QuickTime:MatrixStructure
<br>QuickTime:HandlerType</td>
<td><span class=s><span class=n>(writing this tag updates QuickTime MatrixStructure for all tracks with a
non-zero image size)</span></span></td></tr>
<tr>
<td>RunTimeSincePowerUp</td>
<td class=c>no</td>
<td class=n>Apple:RunTimeValue
<br>Apple:RunTimeScale</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ScaleFactor35efl</td>
<td class=c>no</td>
<td class=n>FocalLength
<br>FocalLengthIn35mmFormat
<br>Composite:DigitalZoom
<br>FocalPlaneDiagonal
<br>SensorSize
<br>FocalPlaneXSize
<br>FocalPlaneYSize
<br>FocalPlaneResolutionUnit
<br>FocalPlaneXResolution
<br>FocalPlaneYResolution
<br>ExifImageWidth
<br>ExifImageHeight
<br>CanonImageWidth
<br>CanonImageHeight
<br>ImageWidth
<br>ImageHeight</td>
<td><span class=s><span class=n>(this value and any derived values may be incorrect if the image has been
resized)</span></span></td></tr>
<tr>
<td>ShootingMode</td>
<td class=c>no</td>
<td class=n>CanonExposureMode
<br>EasyMode
<br>BulbDuration</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ShutterCurtainHack</td>
<td class=c>no</td>
<td class=n>FlashBits
<br>ShutterCurtainSync</td>
<td><span class=s>0 = 1st-curtain sync
<br>1 = 2nd-curtain sync</span></td></tr>
<tr>
<td>ShutterSpeed</td>
<td class=c>no</td>
<td class=n>ExposureTime
<br>ShutterSpeedValue
<br>BulbDuration</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>SingleShotDepthMapTiff</td>
<td class=c>no</td>
<td class=n>SingleShotDepthMap
<br>SegWidth
<br>SegHeight</td>
<td>&nbsp;</td></tr>
<tr>
<td>SubSecCreateDate</td>
<td class=c>yes</td>
<td class=n>EXIF:CreateDate
<br>SubSecTimeDigitized
<br>OffsetTimeDigitized</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>SubSecDateTimeOriginal</td>
<td class=c>yes</td>
<td class=n>EXIF:DateTimeOriginal
<br>SubSecTimeOriginal
<br>OffsetTimeOriginal</td>
<td>&nbsp;</td></tr>
<tr>
<td>SubSecModifyDate</td>
<td class=c>yes</td>
<td class=n>EXIF:ModifyDate
<br>SubSecTime
<br>OffsetTime</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ThumbnailImage</td>
<td class=c>yes</td>
<td class=n>ThumbnailOffset
<br>ThumbnailLength</td>
<td><span class=s><span class=n>(this tag is writable, and may be used to update existing thumbnails, but may
only create a thumbnail in IFD1 of certain types of files. Note that for
this and other Composite embedded-image tags the family 0 and 1 groups match
those of the originating tags)</span></span></td></tr>
<tr>
<td>ThumbnailTIFF</td>
<td class=c>no</td>
<td class=n>SubfileType
<br>Compression
<br>ImageWidth
<br>ImageHeight
<br>BitsPerSample
<br>PhotometricInterpretation
<br>StripOffsets
<br>SamplesPerPixel
<br>RowsPerStrip
<br>StripByteCounts
<br>PlanarConfiguration
<br>Orientation</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>VolumeSize</td>
<td class=c>no</td>
<td class=n>ISO:VolumeBlockCount
<br>ISO:VolumeBlockSize</td>
<td>&nbsp;</td></tr>
<tr>
<td>WB_RGBLevels</td>
<td class=c>no</td>
<td class=n>KDC_IFD:WhiteBalance
<br>WB_RGBLevelsAuto
<br>WB_RGBLevelsFluorescent
<br>WB_RGBLevelsTungsten
<br>WB_RGBLevelsDaylight
<br>WB_RGBLevels4
<br>WB_RGBLevels5
<br>WB_RGBLevelsShade</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>WB_RGBLevels</td>
<td class=c>no</td>
<td class=n>KodakIFD:WhiteBalance
<br>WB_RGBMul0
<br>WB_RGBMul1
<br>WB_RGBMul2
<br>WB_RGBMul3
<br>WB_RGBCoeffs0
<br>WB_RGBCoeffs1
<br>WB_RGBCoeffs2
<br>WB_RGBCoeffs3
<br>KodakIFD:ColorTemperature
<br>Kodak:WB_RGBLevels</td>
<td>&nbsp;</td></tr>
<tr>
<td>WB_RGGBLevels</td>
<td class=c>no</td>
<td class=n>Canon:WhiteBalance
<br>WB_RGGBLevelsAsShot
<br>WB_RGGBLevelsAuto
<br>WB_RGGBLevelsDaylight
<br>WB_RGGBLevelsCloudy
<br>WB_RGGBLevelsTungsten
<br>WB_RGGBLevelsFluorescent
<br>WB_RGGBLevelsFlash
<br>WB_RGGBLevelsCustom
<br>WB_RGGBLevelsShade
<br>WB_RGGBLevelsKelvin</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>WB_RGGBLevels</td>
<td class=c>no</td>
<td class=n>WB_RGGBLevelsUncorrected
<br>WB_RGGBLevelsBlack</td>
<td>&nbsp;</td></tr>
<tr>
<td>ZoomedPreviewImage</td>
<td class=c>no</td>
<td class=n>ZoomedPreviewStart
<br>ZoomedPreviewLength</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jul 21, 2022</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

15763
html/TagNames/DICOM.html Normal file

File diff suppressed because it is too large Load Diff

371
html/TagNames/DJI.html Normal file
View File

@ -0,0 +1,371 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>DJI Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>DJI Tags</h2>
<p>This table lists tags found in the maker notes of images from some DJI
Phantom drones.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0001 = 1'>0x0001</td>
<td>Make</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0003 = 3'>0x0003</td>
<td>SpeedX</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0004 = 4'>0x0004</td>
<td>SpeedY</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0005 = 5'>0x0005</td>
<td>SpeedZ</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0006 = 6'>0x0006</td>
<td>Pitch</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0007 = 7'>0x0007</td>
<td>Yaw</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0008 = 8'>0x0008</td>
<td>Roll</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0009 = 9'>0x0009</td>
<td>CameraPitch</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x000a = 10'>0x000a</td>
<td>CameraYaw</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x000b = 11'>0x000b</td>
<td>CameraRoll</td>
<td class=c>float</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='XMP'>DJI XMP Tags</a></h2>
<p>XMP tags used by DJI for images from drones.</p>
<p>These tags belong to the ExifTool XMP-drone-dji family 1 group.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>AbsoluteAltitude</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>CalibratedFocalLength</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr>
<td>CalibratedOpticalCenterX</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>CalibratedOpticalCenterY</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr>
<td>CamReverse</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>DewarpData</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr>
<td>DewarpFlag</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>FlightPitchDegree</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr>
<td>FlightRollDegree</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>FlightXSpeed</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr>
<td>FlightYSpeed</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>FlightYawDegree</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr>
<td>FlightZSpeed</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GPSLatitude</td>
<td class=c title=' / = Avoid'>real/</td>
<td>&nbsp;</td></tr>
<tr>
<td>GPSLongitude</td>
<td class=c title=' / = Avoid'>real/</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GPSLongtitude</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr>
<td>GimbalPitchDegree</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GimbalReverse</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr>
<td>GimbalRollDegree</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>GimbalYawDegree</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr>
<td>Latitude</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Longitude</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr>
<td>RelativeAltitude</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>RtkFlag</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr>
<td>RtkStdHgt</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>RtkStdLat</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr>
<td>RtkStdLon</td>
<td class=c>real</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>SelfData</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Info'>DJI Info Tags</a></h2>
<p>Tags written by some DJI drones.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'FlightDegree(Y,P,R)'</td>
<td>FlightDegree</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'FlightSpeed(X,Y,Z)'</td>
<td>FlightSpeed</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'GimbalDegree(Y,P,R)'</td>
<td>GimbalDegree</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'adj_dbg_info'</td>
<td>ADJDebugInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ae_dbg_info'</td>
<td>AEDebugInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ae_histogram_info'</td>
<td>AEHistogramInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ae_liveview_histogram_info'</td>
<td>AELiveViewHistogramInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ae_liveview_local_histogram'</td>
<td>AELiveViewLocalHistogram</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ae_local_histogram'</td>
<td>AELocalHistogram</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'af_dbg_info'</td>
<td>AFDebugInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'awb_dbg_info'</td>
<td>AWBDebugInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'hiso'</td>
<td>Histogram</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'hyperlapse_dbg_info'</td>
<td>HyperlapsDebugInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'sensor_id'</td>
<td>SensorID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'xidiri'</td>
<td>Xidiri</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ThermalParams'>DJI ThermalParams Tags</a></h2>
<p>Thermal parameters extracted from APP4 of DJI RJPEG files from the ZH20T.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='36 = 0x24'>36</td>
<td>K1</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='40 = 0x28'>40</td>
<td>K2</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='44 = 0x2c'>44</td>
<td>K3</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='48 = 0x30'>48</td>
<td>K4</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='52 = 0x34'>52</td>
<td>KF</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='56 = 0x38'>56</td>
<td>B1</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='60 = 0x3c'>60</td>
<td>B2</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='68 = 0x44'>68</td>
<td>ObjectDistance</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='70 = 0x46'>70</td>
<td>RelativeHumidity</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='72 = 0x48'>72</td>
<td>Emissivity</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='74 = 0x4a'>74</td>
<td>Reflection</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='76 = 0x4c'>76</td>
<td>AmbientTemperature</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='80 = 0x50'>80</td>
<td>D2</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='84 = 0x54'>84</td>
<td>KJ</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='86 = 0x56'>86</td>
<td>DB</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='88 = 0x58'>88</td>
<td>KK</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jun 1, 2022</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

312
html/TagNames/DNG.html Normal file
View File

@ -0,0 +1,312 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>DNG Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>DNG Tags</h2>
<p>
The main DNG tags are found in the EXIF table. The tables below define only
information found within structures of these main DNG tag values. See
<a href="http://www.adobe.com/products/dng/">http://www.adobe.com/products/dng/</a> for the official DNG specification.
</p>
<h2><a name='AdobeData'>DNG AdobeData Tags</a></h2>
<p>This information is found in the &quot;Adobe&quot; DNGPrivateData.</p>
<p>The maker notes (&#39;MakN&#39;) are processed by ExifTool, but some information may
have been lost by the Adobe DNG Converter. This is because the Adobe DNG
Converter (as of version 6.3) doesn&#39;t properly handle information referenced
from inside the maker notes that lies outside the original maker notes
block. This information is lost when only the maker note block is copied to
the DNG image. While this doesn&#39;t effect all makes of cameras, it is a
problem for some major brands such as Olympus and Sony.</p>
<p>Other entries in this table represent proprietary information that is
extracted from the original RAW image and restructured to a different (but
still proprietary) Adobe format.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'CRW '</td>
<td>AdobeCRW</td>
<td class=c>-</td>
<td>--&gt; <a href='CanonRaw.html'>CanonRaw Tags</a></td></tr>
<tr class=b>
<td>'Koda'</td>
<td>AdobeKoda</td>
<td class=c>-</td>
<td>--&gt; <a href='Kodak.html#IFD'>Kodak IFD Tags</a></td></tr>
<tr>
<td>'Leaf'</td>
<td>AdobeLeaf</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#SubIFD'>Leaf SubIFD Tags</a></td></tr>
<tr class=b>
<td>'MRW '</td>
<td>AdobeMRW</td>
<td class=c>-</td>
<td>--&gt; <a href='MinoltaRaw.html'>MinoltaRaw Tags</a></td></tr>
<tr>
<td>'MakN'</td>
<td>MakerNoteApple
<br>MakerNoteNikon
<br>MakerNoteCanon
<br>MakerNoteCasio
<br>MakerNoteCasio2
<br>MakerNoteDJIInfo
<br>MakerNoteDJI
<br>MakerNoteFLIR
<br>MakerNoteFujiFilm
<br>MakerNoteGE
<br>MakerNoteGE2
<br>MakerNoteHasselblad
<br>MakerNoteHP
<br>MakerNoteHP2
<br>MakerNoteHP4
<br>MakerNoteHP6
<br>MakerNoteISL
<br>MakerNoteJVC
<br>MakerNoteJVCText
<br>MakerNoteKodak1a
<br>MakerNoteKodak1b
<br>MakerNoteKodak2
<br>MakerNoteKodak3
<br>MakerNoteKodak4
<br>MakerNoteKodak5
<br>MakerNoteKodak6a
<br>MakerNoteKodak6b
<br>MakerNoteKodak7
<br>MakerNoteKodak8a
<br>MakerNoteKodak8b
<br>MakerNoteKodak8c
<br>MakerNoteKodak9
<br>MakerNoteKodak10
<br>MakerNoteKodak11
<br>MakerNoteKodak12
<br>MakerNoteKodakUnknown
<br>MakerNoteKyocera
<br>MakerNoteMinolta
<br>MakerNoteMinolta2
<br>MakerNoteMinolta3
<br>MakerNoteMotorola
<br>MakerNoteNikon2
<br>MakerNoteNikon3
<br>MakerNoteNintendo
<br>MakerNoteOlympus
<br>MakerNoteOlympus2
<br>MakerNoteOlympus3
<br>MakerNoteLeica
<br>MakerNoteLeica2
<br>MakerNoteLeica3
<br>MakerNoteLeica4
<br>MakerNoteLeica5
<br>MakerNoteLeica6
<br>MakerNoteLeica7
<br>MakerNoteLeica8
<br>MakerNoteLeica9
<br>MakerNoteLeica10
<br>MakerNotePanasonic
<br>MakerNotePanasonic2
<br>MakerNotePanasonic3
<br>MakerNotePentax
<br>MakerNotePentax2
<br>MakerNotePentax3
<br>MakerNotePentax4
<br>MakerNotePentax5
<br>MakerNotePentax6
<br>MakerNotePhaseOne
<br>MakerNoteReconyx
<br>MakerNoteReconyx2
<br>MakerNoteReconyx3
<br>MakerNoteRicohPentax
<br>MakerNoteRicoh
<br>MakerNoteRicoh2
<br>MakerNoteRicohText
<br>MakerNoteSamsung1a
<br>MakerNoteSamsung1b
<br>MakerNoteSamsung2
<br>MakerNoteSanyo
<br>MakerNoteSanyoC4
<br>MakerNoteSanyoPatch
<br>MakerNoteSigma
<br>MakerNoteSony
<br>MakerNoteSony2
<br>MakerNoteSony3
<br>MakerNoteSony4
<br>MakerNoteSony5
<br>MakerNoteSonyEricsson
<br>MakerNoteSonySRF
<br>MakerNoteUnknownText
<br>MakerNoteUnknownBinary
<br>MakerNoteUnknown</td>
<td class=c>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef<br>undef</td>
<td>--&gt; <a href='Apple.html'>Apple Tags</a>
<br>--&gt; <a href='Nikon.html'>Nikon Tags</a>
<br>--&gt; <a href='Canon.html'>Canon Tags</a>
<br>--&gt; <a href='Casio.html'>Casio Tags</a>
<br>--&gt; <a href='Casio.html#Type2'>Casio Type2 Tags</a>
<br>--&gt; <a href='DJI.html#Info'>DJI Info Tags</a>
<br>--&gt; <a href='DJI.html'>DJI Tags</a>
<br>--&gt; <a href='FLIR.html'>FLIR Tags</a>
<br>--&gt; <a href='FujiFilm.html'>FujiFilm Tags</a>
<br>--&gt; <a href='GE.html'>GE Tags</a>
<br>--&gt; <a href='FujiFilm.html'>FujiFilm Tags</a>
<br>--&gt; <a href='Unknown.html'>Unknown Tags</a>
<br>--&gt; <a href='HP.html'>HP Tags</a>
<br>--&gt; <a href='HP.html#Type2'>HP Type2 Tags</a>
<br>--&gt; <a href='HP.html#Type4'>HP Type4 Tags</a>
<br>--&gt; <a href='HP.html#Type6'>HP Type6 Tags</a>
<br>--&gt; <a href='Unknown.html'>Unknown Tags</a>
<br>--&gt; <a href='JVC.html'>JVC Tags</a>
<br>--&gt; <a href='JVC.html#Text'>JVC Text Tags</a>
<br>--&gt; <a href='Kodak.html'>Kodak Tags</a>
<br>--&gt; <a href='Kodak.html'>Kodak Tags</a>
<br>--&gt; <a href='Kodak.html#Type2'>Kodak Type2 Tags</a>
<br>--&gt; <a href='Kodak.html#Type3'>Kodak Type3 Tags</a>
<br>--&gt; <a href='Kodak.html#Type4'>Kodak Type4 Tags</a>
<br>--&gt; <a href='Kodak.html#Type5'>Kodak Type5 Tags</a>
<br>--&gt; <a href='Kodak.html#Type6'>Kodak Type6 Tags</a>
<br>--&gt; <a href='Kodak.html#Type6'>Kodak Type6 Tags</a>
<br>--&gt; <a href='Kodak.html#Type7'>Kodak Type7 Tags</a>
<br>--&gt; <a href='Kodak.html#Type8'>Kodak Type8 Tags</a>
<br>--&gt; <a href='Kodak.html#Type8'>Kodak Type8 Tags</a>
<br>--&gt; <a href='Kodak.html#Type8'>Kodak Type8 Tags</a>
<br>--&gt; <a href='Kodak.html#Type9'>Kodak Type9 Tags</a>
<br>--&gt; <a href='Kodak.html#Type10'>Kodak Type10 Tags</a>
<br>--&gt; <a href='Kodak.html#Type11'>Kodak Type11 Tags</a>
<br>--&gt; <a href='Kodak.html#Type11'>Kodak Type11 Tags</a>
<br>--&gt; <a href='Kodak.html#Unknown'>Kodak Unknown Tags</a>
<br>--&gt; <a href='Unknown.html'>Unknown Tags</a>
<br>--&gt; <a href='Minolta.html'>Minolta Tags</a>
<br>--&gt; <a href='Olympus.html'>Olympus Tags</a>
<br><span class=n>(not EXIF-based)</span>
<br>--&gt; <a href='Motorola.html'>Motorola Tags</a>
<br>--&gt; <a href='Nikon.html#Type2'>Nikon Type2 Tags</a>
<br>--&gt; <a href='Nikon.html'>Nikon Tags</a>
<br>--&gt; <a href='Nintendo.html'>Nintendo Tags</a>
<br>--&gt; <a href='Olympus.html'>Olympus Tags</a>
<br>--&gt; <a href='Olympus.html'>Olympus Tags</a>
<br>--&gt; <a href='Olympus.html'>Olympus Tags</a>
<br>--&gt; <a href='Panasonic.html'>Panasonic Tags</a>
<br>--&gt; <a href='Panasonic.html#Leica2'>Panasonic Leica2 Tags</a>
<br>--&gt; <a href='Panasonic.html#Leica3'>Panasonic Leica3 Tags</a>
<br>--&gt; <a href='Panasonic.html#Leica4'>Panasonic Leica4 Tags</a>
<br>--&gt; <a href='Panasonic.html#Leica5'>Panasonic Leica5 Tags</a>
<br>--&gt; <a href='Panasonic.html#Leica6'>Panasonic Leica6 Tags</a>
<br>--&gt; <a href='Panasonic.html#Leica6'>Panasonic Leica6 Tags</a>
<br>--&gt; <a href='Panasonic.html#Leica5'>Panasonic Leica5 Tags</a>
<br>--&gt; <a href='Panasonic.html#Leica9'>Panasonic Leica9 Tags</a>
<br>--&gt; <a href='Panasonic.html'>Panasonic Tags</a>
<br>--&gt; <a href='Panasonic.html'>Panasonic Tags</a>
<br>--&gt; <a href='Panasonic.html#Type2'>Panasonic Type2 Tags</a>
<br>--&gt; <a href='Panasonic.html'>Panasonic Tags</a>
<br>--&gt; <a href='Pentax.html'>Pentax Tags</a>
<br>--&gt; <a href='Pentax.html#Type2'>Pentax Type2 Tags</a>
<br>--&gt; <a href='Casio.html#Type2'>Casio Type2 Tags</a>
<br>--&gt; <a href='Pentax.html#Type4'>Pentax Type4 Tags</a>
<br>--&gt; <a href='Pentax.html'>Pentax Tags</a>
<br>--&gt; <a href='Pentax.html#S1'>Pentax S1 Tags</a>
<br>--&gt; <a href='PhaseOne.html'>PhaseOne Tags</a>
<br>--&gt; <a href='Reconyx.html'>Reconyx Tags</a>
<br>--&gt; <a href='Reconyx.html#Type2'>Reconyx Type2 Tags</a>
<br>--&gt; <a href='Reconyx.html#Type3'>Reconyx Type3 Tags</a>
<br>--&gt; <a href='Pentax.html'>Pentax Tags</a>
<br>--&gt; <a href='Ricoh.html'>Ricoh Tags</a>
<br>--&gt; <a href='Ricoh.html#Type2'>Ricoh Type2 Tags</a>
<br>--&gt; <a href='Ricoh.html#Text'>Ricoh Text Tags</a>
<br><span class=n>(Samsung &quot;STMN&quot; maker notes without PreviewImage)</span>
<br>--&gt; <a href='Samsung.html'>Samsung Tags</a>
<br>--&gt; <a href='Samsung.html#Type2'>Samsung Type2 Tags</a>
<br>--&gt; <a href='Sanyo.html'>Sanyo Tags</a>
<br>--&gt; <a href='Sanyo.html'>Sanyo Tags</a>
<br>--&gt; <a href='Sanyo.html'>Sanyo Tags</a>
<br>--&gt; <a href='Sigma.html'>Sigma Tags</a>
<br>--&gt; <a href='Sony.html'>Sony Tags</a>
<br>--&gt; <a href='Olympus.html'>Olympus Tags</a>
<br>--&gt; <a href='Olympus.html'>Olympus Tags</a>
<br>--&gt; <a href='Sony.html#PIC'>Sony PIC Tags</a>
<br>--&gt; <a href='Sony.html'>Sony Tags</a>
<br>--&gt; <a href='Sony.html#Ericsson'>Sony Ericsson Tags</a>
<br>--&gt; <a href='Sony.html#SRF'>Sony SRF Tags</a>
<br><span class=n>(unknown text-based maker notes)</span>
<br><span class=n>(unknown binary maker notes)</span>
<br>--&gt; <a href='Unknown.html'>Unknown Tags</a></td></tr>
<tr class=b>
<td>'Pano'</td>
<td>AdobePano</td>
<td class=c>-</td>
<td>--&gt; <a href='PanasonicRaw.html'>PanasonicRaw Tags</a></td></tr>
<tr>
<td>'RAF '</td>
<td>AdobeRAF</td>
<td class=c>-</td>
<td>--&gt; <a href='FujiFilm.html#RAF'>FujiFilm RAF Tags</a></td></tr>
<tr class=b>
<td>'SR2 '</td>
<td>AdobeSR2</td>
<td class=c>-</td>
<td>--&gt; <a href='Sony.html#SR2Private'>Sony SR2Private Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='OriginalRaw'>DNG OriginalRaw Tags</a></h2>
<p>This table defines tags extracted from the DNG OriginalRawFileData
information.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0000 = 0'>0x0000</td>
<td>OriginalRawImage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0001 = 1'>0x0001</td>
<td>OriginalRawResource</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0002 = 2'>0x0002</td>
<td>OriginalRawFileType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0003 = 3'>0x0003</td>
<td>OriginalRawCreator</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0004 = 4'>0x0004</td>
<td>OriginalTHMImage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0005 = 5'>0x0005</td>
<td>OriginalTHMResource</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0006 = 6'>0x0006</td>
<td>OriginalTHMFileType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0007 = 7'>0x0007</td>
<td>OriginalTHMCreator</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jun 1, 2022</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

300
html/TagNames/DPX.html Normal file
View File

@ -0,0 +1,300 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>DPX Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>DPX Tags</h2>
<p>Tags extracted from DPX (Digital Picture Exchange) images.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>ByteOrder</td>
<td class=c>no</td>
<td><span class=s>&#39;SDPX&#39; = Big-endian
<br>&#39;XPDS&#39; = Little-endian</span></td></tr>
<tr class=b>
<td class=r title='8 = 0x8'>8</td>
<td>HeaderVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='16 = 0x10'>16</td>
<td>DPXFileSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='20 = 0x14'>20</td>
<td>DittoKey</td>
<td class=c>no</td>
<td><span class=s>0 = Same
<br>1 = New</span></td></tr>
<tr>
<td class=r title='36 = 0x24'>36</td>
<td>ImageFileName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='136 = 0x88'>136</td>
<td>CreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='160 = 0xa0'>160</td>
<td>Creator</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='260 = 0x104'>260</td>
<td>Project</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='460 = 0x1cc'>460</td>
<td>Copyright</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='660 = 0x294'>660</td>
<td>EncryptionKey</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='768 = 0x300'>768</td>
<td>Orientation</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Horizontal (normal)
<br>1 = Mirror vertical
<br>2 = Mirror horizontal
<br>3 = Rotate 180
<br>4 = Mirror horizontal and rotate 270 CW
<br>5 = Rotate 90 CW
<br>6 = Rotate 270 CW
<br>7 = Mirror horizontal and rotate 90 CW</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='770 = 0x302'>770</td>
<td>ImageElements</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='772 = 0x304'>772</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='776 = 0x308'>776</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='780 = 0x30c'>780</td>
<td>DataSign</td>
<td class=c>no</td>
<td><span class=s>0 = Unsigned
<br>1 = Signed</span></td></tr>
<tr class=b>
<td class=r title='800 = 0x320'>800</td>
<td>ComponentsConfiguration</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = User-defined single component
<br>1 = Red (R)
<br>2 = Green (G)
<br>3 = Blue (B)
<br>4 = Alpha (matte)
<br>6 = Luminance (Y)
<br>7 = Chrominance (Cb, Cr, subsampled by two)
<br>8 = Depth (Z)
<br>9 = Composite video
<br>50 = R, G, B
<br>51 = R, G, B, Alpha
<br>52 = Alpha, B, G, R
<br>100 = Cb, Y, Cr, Y (4:2:2)
<br>101 = Cb, Y, A, Cr, Y, A (4:2:2:4)
<br>102 = Cb, Y, Cr (4:4:4)
<br>103 = Cb, Y, Cr, A (4:4:4:4)
<br>150 = User-defined 2 component element
<br>151 = User-defined 3 component element
<br>152 = User-defined 4 component element
<br>153 = User-defined 5 component element
<br>154 = User-defined 6 component element
<br>155 = User-defined 7 component element
<br>156 = User-defined 8 component element</td></tr></table>
</td></tr>
<tr>
<td class=r title='801 = 0x321'>801</td>
<td>TransferCharacteristic</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = User-defined
<br>1 = Printing density
<br>2 = Linear
<br>3 = Logarithmic
<br>4 = Unspecified video
<br>5 = SMPTE 274M
<br>6 = ITU-R 704-4
<br>7 = ITU-R 601-5 system B or G (625)
<br>8 = ITU-R 601-5 system M (525)
<br>9 = Composite video (NTSC)
<br>10 = Composite video (PAL)
<br>11 = Z (depth) - linear
<br>12 = Z (depth) - homogeneous
<br>13 = SMPTE ADX
<br>14 = ITU-R 2020 NCL
<br>15 = ITU-R 2020 CL
<br>16 = IEC 61966-2-4 xvYCC
<br>17 = ITU-R 2100 NCL/PQ
<br>18 = ITU-R 2100 ICtCp/PQ
<br>19 = ITU-R 2100 NCL/HLG
<br>20 = ITU-R 2100 ICtCp/HLG
<br>21 = RP 431-2:2011 Gama 2.6
<br>22 = IEC 61966-2-1 sRGB</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='802 = 0x322'>802</td>
<td>ColorimetricSpecification</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = User-defined
<br>1 = Printing density
<br>4 = Unspecified video
<br>5 = SMPTE 274M
<br>6 = ITU-R 704-4
<br>7 = ITU-R 601-5 system B or G (625)
<br>8 = ITU-R 601-5 system M (525)
<br>9 = Composite video (NTSC)
<br>10 = Composite video (PAL)
<br>13 = SMPTE ADX
<br>14 = ITU-R 2020
<br>15 = P3D65
<br>16 = P3DCI
<br>17 = P3D60
<br>18 = ACES</td></tr></table>
</td></tr>
<tr>
<td class=r title='803 = 0x323'>803</td>
<td>BitDepth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='820 = 0x334'>820</td>
<td>ImageDescription</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='892 = 0x37c'>892</td>
<td>Image2Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='964 = 0x3c4'>964</td>
<td>Image3Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='1036 = 0x40c'>1036</td>
<td>Image4Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1108 = 0x454'>1108</td>
<td>Image5Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='1180 = 0x49c'>1180</td>
<td>Image6Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1252 = 0x4e4'>1252</td>
<td>Image7Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='1324 = 0x52c'>1324</td>
<td>Image8Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1432 = 0x598'>1432</td>
<td>SourceFileName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='1532 = 0x5fc'>1532</td>
<td>SourceCreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1556 = 0x614'>1556</td>
<td>InputDeviceName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='1588 = 0x634'>1588</td>
<td>InputDeviceSerialNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1628 = 0x65c'>1628</td>
<td>AspectRatio</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='1724 = 0x6bc'>1724</td>
<td>OriginalFrameRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1728 = 0x6c0'>1728</td>
<td>ShutterAngle</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='1732 = 0x6c4'>1732</td>
<td>FrameID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1764 = 0x6e4'>1764</td>
<td>SlateInformation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='1920 = 0x780'>1920</td>
<td>TimeCode</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1940 = 0x794'>1940</td>
<td>FrameRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='1972 = 0x7b4'>1972</td>
<td>Reserved5?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='2048 = 0x800'>2048</td>
<td>UserID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Sep 22, 2021</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

76
html/TagNames/DV.html Normal file
View File

@ -0,0 +1,76 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>DV Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>DV Tags</h2>
<p>The following tags are extracted from DV videos.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>AspectRatio</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>AudioBitsPerSample</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>AudioChannels</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>AudioSampleRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>Colorimetry</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>DateTimeOriginal</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>Duration</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>FrameRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>TotalBitrate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>VideoFormat</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>VideoScanType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jan 3, 2011</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

File diff suppressed because it is too large Load Diff

314
html/TagNames/DjVu.html Normal file
View File

@ -0,0 +1,314 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>DjVu Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>DjVu Tags</h2>
<p>Information is extracted from the following chunks in DjVu images. See
<a href="http://www.djvu.org/">http://www.djvu.org/</a> for the DjVu specification.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'ANTa'</td>
<td>ANTa</td>
<td class=c>-</td>
<td>--&gt; <a href='DjVu.html#Ant'>DjVu Ant Tags</a></td></tr>
<tr class=b>
<td>'ANTz'</td>
<td>CompressedAnnotation</td>
<td class=c>-</td>
<td>--&gt; <a href='DjVu.html#Ant'>DjVu Ant Tags</a></td></tr>
<tr>
<td>'FORM'</td>
<td>FORM</td>
<td class=c>-</td>
<td>--&gt; <a href='DjVu.html#Form'>DjVu Form Tags</a></td></tr>
<tr class=b>
<td>'INCL'</td>
<td>IncludedFileID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'INFO'</td>
<td>INFO</td>
<td class=c>-</td>
<td>--&gt; <a href='DjVu.html#Info'>DjVu Info Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Ant'>DjVu Ant Tags</a></h2>
<p>Information extracted from annotation chunks.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'metadata'</td>
<td>Metadata</td>
<td class=c>-</td>
<td>--&gt; <a href='DjVu.html#Meta'>DjVu Meta Tags</a></td></tr>
<tr class=b>
<td>'xmp'</td>
<td>XMP</td>
<td class=c>-</td>
<td>--&gt; <a href='XMP.html'>XMP Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Meta'>DjVu Meta Tags</a></h2>
<p>This table lists the standard DjVu metadata tags, but ExifTool will extract
any tags that exist even if they don&#39;t appear here. The DjVu v3
documentation endorses tags borrowed from two standards: 1) BibTeX
bibliography system tags (all lowercase Tag ID&#39;s in the table below), and 2)
PDF DocInfo tags (capitalized Tag ID&#39;s).</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Author'</td>
<td>Author</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'CreationDate'</td>
<td>CreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Creator'</td>
<td>Creator</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Keywords'</td>
<td>Keywords</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ModDate'</td>
<td>ModifyDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Producer'</td>
<td>Producer</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Subject'</td>
<td>Subject</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Title'</td>
<td>Title</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Trapped'</td>
<td>Trapped</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'address'</td>
<td>Address</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'annote'</td>
<td>Annotation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'author'</td>
<td>Author</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'booktitle'</td>
<td>BookTitle</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'chapter'</td>
<td>Chapter</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'crossref'</td>
<td>CrossRef</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'edition'</td>
<td>Edition</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'eprint'</td>
<td>EPrint</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'howpublished'</td>
<td>HowPublished</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'institution'</td>
<td>Institution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'journal'</td>
<td>Journal</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'key'</td>
<td>Key</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'month'</td>
<td>Month</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'note'</td>
<td>Note</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'number'</td>
<td>Number</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'organization'</td>
<td>Organization</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'pages'</td>
<td>Pages</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'publisher'</td>
<td>Publisher</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'school'</td>
<td>School</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'series'</td>
<td>Series</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'title'</td>
<td>Title</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'type'</td>
<td>Type</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'url'</td>
<td>URL</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'volume'</td>
<td>Volume</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'year'</td>
<td>Year</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Form'>DjVu Form Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>SubfileType</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>&#39;BM44&#39; = Grayscale IW44
<br>&#39;DJVI&#39; = Shared component
<br>&#39;DJVM&#39; = Multi-page document
<br>&#39;DJVU&#39; = Single-page image
<br>&#39;PM44&#39; = Color IW44
<br>&#39;THUM&#39; = Thumbnail image</td></tr></table>
</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Info'>DjVu Info Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>DjVuVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='6 = 0x6'>6</td>
<td>SpatialResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>Gamma</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='9 = 0x9'>9</td>
<td>Orientation</td>
<td class=c>no</td>
<td><span class=s>[val &amp; 0x7]
<br>1 = Horizontal (normal)
<br>2 = Rotate 180
<br>5 = Rotate 90 CW
<br>6 = Rotate 270 CW</span></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Oct 24, 2018</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

766
html/TagNames/EXE.html Normal file
View File

@ -0,0 +1,766 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>EXE Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>EXE Tags</h2>
<p>This module extracts information from various types of Windows, MacOS and
Unix executable and library files. The first table below lists information
extracted from the header of Windows PE (Portable Executable) EXE files and
DLL libraries.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index2</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>MachineType</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0x14c = Intel 386 or later, and compatibles
<br>0x14d = Intel i860
<br>0x162 = MIPS R3000
<br>0x166 = MIPS little endian (R4000)
<br>0x168 = MIPS R10000
<br>0x169 = MIPS little endian WCI v2
<br>0x183 = Alpha AXP (old)
<br>0x184 = Alpha AXP
<br>0x1a2 = Hitachi SH3
<br>0x1a3 = Hitachi SH3 DSP
<br>0x1a6 = Hitachi SH4
<br>0x1a8 = Hitachi SH5
<br>0x1c0 = ARM little endian
<br>0x1c2 = Thumb
<br>0x1d3 = Matsushita AM33
<br>0x1f0 = PowerPC little endian
<br>0x1f1 = PowerPC with floating point support
<br>0x200 = Intel IA64
<br>0x266 = MIPS16
<br>0x268 = Motorola 68000 series
<br>0x284 = Alpha AXP 64-bit
<br>0x366 = MIPS with FPU
<br>0x466 = MIPS16 with FPU
<br>0xebc = EFI Byte Code
<br>0x8664 = AMD AMD64
<br>0x9041 = Mitsubishi M32R little endian
<br>0xc0ee = clr pure MSIL</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>TimeStamp</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='9 = 0x9'>9</td>
<td>ImageFileCharacteristics</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>Bit 0 = No relocs
<br>Bit 1 = Executable
<br>Bit 2 = No line numbers
<br>Bit 3 = No symbols
<br>Bit 4 = Aggressive working-set trim
<br>Bit 5 = Large address aware
<br>Bit 7 = Bytes reversed lo
<br>Bit 8 = 32-bit
<br>Bit 9 = No debug
<br>Bit 10 = Removable run from swap
<br>Bit 11 = Net run from swap
<br>Bit 12 = System file
<br>Bit 13 = DLL
<br>Bit 14 = Uniprocessor only
<br>Bit 15 = Bytes reversed hi</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='10 = 0xa'>10</td>
<td>PEType</td>
<td class=c>no</td>
<td><span class=s>0x107 = ROM Image
<br>0x10b = PE32
<br>0x20b = PE32+</span></td></tr>
<tr>
<td class=r title='11 = 0xb'>11</td>
<td>LinkerVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='12 = 0xc'>12</td>
<td>CodeSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='14 = 0xe'>14</td>
<td>InitializedDataSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='16 = 0x10'>16</td>
<td>UninitializedDataSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='18 = 0x12'>18</td>
<td>EntryPoint</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='30 = 0x1e'>30</td>
<td>OSVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='32 = 0x20'>32</td>
<td>ImageVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='34 = 0x22'>34</td>
<td>SubsystemVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='44 = 0x2c'>44</td>
<td>Subsystem</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Unknown
<br>1 = Native
<br>2 = Windows GUI
<br>3 = Windows command line
<br>5 = OS/2 command line
<br>7 = POSIX command line
<br>9 = Windows CE GUI
<br>10 = EFI application
<br>11 = EFI boot service
<br>12 = EFI runtime driver
<br>13 = EFI ROM
<br>14 = XBOX</td></tr></table>
</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='PEVersion'>EXE PEVersion Tags</a></h2>
<p>Information extracted from the VS_VERSION_INFO structure of Windows PE
files.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>FileVersionNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>ProductVersionNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='6 = 0x6'>6</td>
<td>FileFlagsMask</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='7 = 0x7'>7</td>
<td>FileFlags</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>Bit 0 = Debug
<br>Bit 1 = Pre-release
<br>Bit 2 = Patched</td><td>&nbsp;&nbsp;</td>
<td>Bit 3 = Private build
<br>Bit 4 = Info inferred
<br>Bit 5 = Special build</td></tr></table>
</td></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>FileOS</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0x1 = Win16
<br>0x2 = PM-16
<br>0x3 = PM-32
<br>0x4 = Win32
<br>0x10000 = DOS
<br>0x10001 = Windows 16-bit
<br>0x10004 = Windows 32-bit
<br>0x20000 = OS/2 16-bit
<br>0x20002 = OS/2 16-bit PM-16
<br>0x30000 = OS/2 32-bit
<br>0x30003 = OS/2 32-bit PM-32
<br>0x40000 = Windows NT
<br>0x40004 = Windows NT 32-bit</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='9 = 0x9'>9</td>
<td>ObjectFileType</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Unknown
<br>1 = Executable application
<br>2 = Dynamic link library
<br>3 = Driver
<br>4 = Font
<br>5 = VxD
<br>7 = Static library</td></tr></table>
</td></tr>
<tr>
<td class=r title='10 = 0xa'>10</td>
<td>FileSubtype</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='PEString'>EXE PEString Tags</a></h2>
<p>Resource strings found in Windows PE files. The <b>TagID</b>&#39;s are not shown
because they are the same as the <b>Tag Name</b>. ExifTool will extract any
existing StringFileInfo tags even if not listed in this table.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>BuildDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>BuildVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>CharacterSet</td>
<td class=c>no</td>
<td><span class=s><span class=n>(extracted from the StringFileInfo value)</span></span><table class=cols><tr>
<td>&#39;0000&#39; = ASCII
<br>&#39;03A4&#39; = Windows, Japan (Shift - JIS X-0208)
<br>&#39;03A8&#39; = Windows, Chinese (Simplified)
<br>&#39;03B5&#39; = Windows, Korea (Shift - KSC 5601)
<br>&#39;03B6&#39; = Windows, Taiwan (Big5)
<br>&#39;04B0&#39; = Unicode
<br>&#39;04E2&#39; = Windows, Latin2 (Eastern European)
<br>&#39;04E3&#39; = Windows, Cyrillic
<br>&#39;04E4&#39; = Windows, Latin1
<br>&#39;04E5&#39; = Windows, Greek
<br>&#39;04E6&#39; = Windows, Turkish
<br>&#39;04E7&#39; = Windows, Hebrew
<br>&#39;04E8&#39; = Windows, Arabic</td></tr></table>
</td></tr>
<tr class=b>
<td>Comments</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>CompanyName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Copyright</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>FileDescription</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>FileVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>InternalName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>LanguageCode</td>
<td class=c>no</td>
<td>--&gt; <a href='EXE.html#LanguageCode'>EXE LanguageCode Values</a>
<br><span class='n s'>(Windows code page; extracted from the StringFileInfo value)</span></td></tr>
<tr>
<td>LegalCopyright</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>LegalTrademarks</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>OriginalFileName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>PrivateBuild</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>ProductName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ProductVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>SpecialBuild</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='LanguageCode'>EXE LanguageCode Values</a></h2>
<p>See <a href="https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid">https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid</a>
for the full list of Microsoft language codes.</p>
<blockquote>
<table class=frame><tr><td>
<table class='inner sep' cellspacing=1>
<tr class=h><th>Value</th><th>LanguageCode</th><th>Value</th><th>LanguageCode</th><th>Value</th><th>LanguageCode</th></tr>
<tr><td>'0000'</td><td>= Neutral</td>
<td class=b>'0437'</td><td class=b>= Georgian</td>
<td>'040E'</td><td>= Hungarian</td>
</tr><tr><td>'0400'</td><td>= Process default</td>
<td class=b>'0438'</td><td class=b>= Faeroese</td>
<td>'040F'</td><td>= Icelandic</td>
</tr><tr><td>'0401'</td><td>= Arabic</td>
<td class=b>'0439'</td><td class=b>= Hindi</td>
<td>'041A'</td><td>= Croato-Serbian (Latin)</td>
</tr><tr><td>'0402'</td><td>= Bulgarian</td>
<td class=b>'0440'</td><td class=b>= Kyrgyz</td>
<td>'041B'</td><td>= Slovak</td>
</tr><tr><td>'0403'</td><td>= Catalan</td>
<td class=b>'0441'</td><td class=b>= Swahili</td>
<td>'041C'</td><td>= Albanian</td>
</tr><tr><td>'0404'</td><td>= Chinese (Traditional)</td>
<td class=b>'0443'</td><td class=b>= Uzbek</td>
<td>'041D'</td><td>= Swedish</td>
</tr><tr><td>'0405'</td><td>= Czech</td>
<td class=b>'0444'</td><td class=b>= Tatar</td>
<td>'041E'</td><td>= Thai</td>
</tr><tr><td>'0406'</td><td>= Danish</td>
<td class=b>'0445'</td><td class=b>= Bengali</td>
<td>'041F'</td><td>= Turkish</td>
</tr><tr><td>'0407'</td><td>= German</td>
<td class=b>'0446'</td><td class=b>= Punjabi</td>
<td>'042a'</td><td>= Vietnamese</td>
</tr><tr><td>'0408'</td><td>= Greek</td>
<td class=b>'0447'</td><td class=b>= Gujarati</td>
<td>'042b'</td><td>= Armenian</td>
</tr><tr><td>'0409'</td><td>= English (U.S.)</td>
<td class=b>'0448'</td><td class=b>= Oriya</td>
<td>'042c'</td><td>= Azeri</td>
</tr><tr><td>'0410'</td><td>= Italian</td>
<td class=b>'0449'</td><td class=b>= Tamil</td>
<td>'042d'</td><td>= Basque</td>
</tr><tr><td>'0411'</td><td>= Japanese</td>
<td class=b>'0450'</td><td class=b>= Mongolian</td>
<td>'042e'</td><td>= Sorbian</td>
</tr><tr><td>'0412'</td><td>= Korean</td>
<td class=b>'0456'</td><td class=b>= Galician</td>
<td>'042f'</td><td>= Macedonian</td>
</tr><tr><td>'0413'</td><td>= Dutch</td>
<td class=b>'0457'</td><td class=b>= Konkani</td>
<td>'043a'</td><td>= Maltese</td>
</tr><tr><td>'0414'</td><td>= Norwegian (Bokml)</td>
<td class=b>'0458'</td><td class=b>= Manipuri</td>
<td>'043b'</td><td>= Saami</td>
</tr><tr><td>'0415'</td><td>= Polish</td>
<td class=b>'0459'</td><td class=b>= Sindhi</td>
<td>'043c'</td><td>= Gaelic</td>
</tr><tr><td>'0416'</td><td>= Portuguese (Brazilian)</td>
<td class=b>'0460'</td><td class=b>= Kashmiri</td>
<td>'043e'</td><td>= Malay</td>
</tr><tr><td>'0417'</td><td>= Rhaeto-Romanic</td>
<td class=b>'0461'</td><td class=b>= Nepali</td>
<td>'043f'</td><td>= Kazak</td>
</tr><tr><td>'0418'</td><td>= Romanian</td>
<td class=b>'0465'</td><td class=b>= Divehi</td>
<td>'044a'</td><td>= Telugu</td>
</tr><tr><td>'0419'</td><td>= Russian</td>
<td class=b>'0490'</td><td class=b>= Walon</td>
<td>'044b'</td><td>= Kannada</td>
</tr><tr><td>'0420'</td><td>= Urdu</td>
<td class=b>'0491'</td><td class=b>= Cornish</td>
<td>'044c'</td><td>= Malayalam</td>
</tr><tr><td>'0421'</td><td>= Indonesian</td>
<td class=b>'0492'</td><td class=b>= Welsh</td>
<td>'044d'</td><td>= Assamese</td>
</tr><tr><td>'0422'</td><td>= Ukrainian</td>
<td class=b>'0493'</td><td class=b>= Breton</td>
<td>'044e'</td><td>= Marathi</td>
</tr><tr><td>'0423'</td><td>= Belarusian</td>
<td class=b>'0800'</td><td class=b>= Neutral 2</td>
<td>'044f'</td><td>= Sanskrit</td>
</tr><tr><td>'0424'</td><td>= Slovenian</td>
<td class=b>'0804'</td><td class=b>= Chinese (Simplified)</td>
<td>'045a'</td><td>= Syriac</td>
</tr><tr><td>'0425'</td><td>= Estonian</td>
<td class=b>'0807'</td><td class=b>= German (Swiss)</td>
<td>'047f'</td><td>= Invariant</td>
</tr><tr><td>'0426'</td><td>= Latvian</td>
<td class=b>'0809'</td><td class=b>= English (British)</td>
<td>'048f'</td><td>= Esperanto</td>
</tr><tr><td>'0427'</td><td>= Lithuanian</td>
<td class=b>'0810'</td><td class=b>= Italian (Swiss)</td>
<td>'080A'</td><td>= Spanish (Mexican)</td>
</tr><tr><td>'0428'</td><td>= Maori</td>
<td class=b>'0813'</td><td class=b>= Dutch (Belgian)</td>
<td>'080C'</td><td>= French (Belgian)</td>
</tr><tr><td>'0429'</td><td>= Farsi</td>
<td class=b>'0814'</td><td class=b>= Norwegian (Nynorsk)</td>
<td>'081A'</td><td>= Serbo-Croatian (Cyrillic)</td>
</tr><tr><td>'0430'</td><td>= Sutu</td>
<td class=b>'0816'</td><td class=b>= Portuguese</td>
<td>'0C07'</td><td>= German (Austrian)</td>
</tr><tr><td>'0431'</td><td>= Tsonga</td>
<td class=b>'1009'</td><td class=b>= English (Canadian)</td>
<td>'0C09'</td><td>= English (Australian)</td>
</tr><tr><td>'0432'</td><td>= Tswana</td>
<td class=b>'007F'</td><td class=b>= Invariant</td>
<td>'0C0A'</td><td>= Spanish (Modern)</td>
</tr><tr><td>'0433'</td><td>= Venda</td>
<td class=b>'040A'</td><td class=b>= Spanish (Castilian)</td>
<td>'0C0C'</td><td>= French (Canadian)</td>
</tr><tr><td>'0434'</td><td>= Xhosa</td>
<td class=b>'040B'</td><td class=b>= Finnish</td>
<td>'100C'</td><td>= French (Swiss)</td>
</tr><tr><td>'0435'</td><td>= Zulu</td>
<td class=b>'040C'</td><td class=b>= French</td>
<td>&nbsp;</td><td>&nbsp;</td>
</tr><tr><td>'0436'</td><td>= Afrikaans</td>
<td class=b>'040D'</td><td class=b>= Hebrew</td>
<td>&nbsp;</td><td>&nbsp;</td>
</tr></table></td></tr></table></blockquote>
<h2><a name='MachO'>EXE MachO Tags</a></h2>
<p>Information extracted from Mach-O (Mac OS X) executable files and DYLIB
libraries.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>CPUArchitecture</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>CPUByteOrder</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>CPUCount</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>CPUType</td>
<td class=c title=' + = List'>no+</td>
<td><table class=cols><tr>
<td>-1 = Any
<br>1 = VAX
<br>2 = ROMP
<br>4 = NS32032
<br>5 = NS32332
<br>6 = MC680x0
<br>7 = x86
<br>8 = MIPS
<br>9 = NS32532
<br>10 = MC98000</td><td>&nbsp;&nbsp;</td>
<td>11 = HPPA
<br>12 = ARM
<br>13 = MC88000
<br>14 = SPARC
<br>15 = i860 big endian
<br>16 = i860 little endian
<br>17 = RS6000
<br>18 = PowerPC
<br>255 = VEO</td></tr></table>
</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>CPUSubtype</td>
<td class=c title=' + = List'>no+</td>
<td><table class=cols><tr>
<td>&#39;1 0&#39; = VAX (all)
<br>&#39;1 1&#39; = VAX780
<br>&#39;1 2&#39; = VAX785
<br>&#39;1 3&#39; = VAX750
<br>&#39;1 4&#39; = VAX730
<br>&#39;1 5&#39; = UVAXI
<br>&#39;1 6&#39; = UVAXII
<br>&#39;1 7&#39; = VAX8200
<br>&#39;1 8&#39; = VAX8500
<br>&#39;1 9&#39; = VAX8600
<br>&#39;1 10&#39; = VAX8650
<br>&#39;1 11&#39; = VAX8800
<br>&#39;1 12&#39; = UVAXIII
<br>&#39;2 0&#39; = RT (all)
<br>&#39;2 1&#39; = RT PC
<br>&#39;2 2&#39; = RT APC
<br>&#39;2 3&#39; = RT 135
<br>&#39;4 0&#39; = NS32032 (all)
<br>&#39;4 1&#39; = NS32032 DPC (032 CPU)
<br>&#39;4 2&#39; = NS32032 SQT
<br>&#39;4 3&#39; = NS32032 APC FPU (32081)
<br>&#39;4 4&#39; = NS32032 APC FPA (Weitek)
<br>&#39;4 5&#39; = NS32032 XPC (532)
<br>&#39;5 0&#39; = NS32332 (all)
<br>&#39;5 1&#39; = NS32332 DPC (032 CPU)
<br>&#39;5 2&#39; = NS32332 SQT
<br>&#39;5 3&#39; = NS32332 APC FPU (32081)
<br>&#39;5 4&#39; = NS32332 APC FPA (Weitek)
<br>&#39;5 5&#39; = NS32332 XPC (532)
<br>&#39;6 1&#39; = MC680x0 (all)
<br>&#39;6 2&#39; = MC68040
<br>&#39;6 3&#39; = MC68030
<br>&#39;7 3&#39; = i386 (all)
<br>&#39;7 4&#39; = i486
<br>&#39;7 5&#39; = i586
<br>&#39;7 8&#39; = Pentium III
<br>&#39;7 9&#39; = Pentium M
<br>&#39;7 10&#39; = Pentium 4
<br>&#39;7 11&#39; = Itanium
<br>&#39;7 12&#39; = Xeon
<br>&#39;7 22&#39; = Pentium Pro
<br>&#39;7 24&#39; = Pentium III M
<br>&#39;7 26&#39; = Pentium 4 M
<br>&#39;7 27&#39; = Itanium 2
<br>&#39;7 28&#39; = Xeon MP
<br>&#39;7 40&#39; = Pentium III Xeon
<br>&#39;7 54&#39; = Pentium II M3
<br>&#39;7 86&#39; = Pentium II M5
<br>&#39;7 103&#39; = Celeron
<br>&#39;7 119&#39; = Celeron Mobile
<br>&#39;7 132&#39; = i486SX
<br>&#39;8 0&#39; = MIPS (all)
<br>&#39;8 1&#39; = MIPS R2300
<br>&#39;8 2&#39; = MIPS R2600
<br>&#39;8 3&#39; = MIPS R2800
<br>&#39;8 4&#39; = MIPS R2000a
<br>&#39;8 5&#39; = MIPS R2000
<br>&#39;8 6&#39; = MIPS R3000a
<br>&#39;8 7&#39; = MIPS R3000
<br>&#39;10 0&#39; = MC98000 (all)
<br>&#39;10 1&#39; = MC98601
<br>&#39;11 0&#39; = HPPA (all)
<br>&#39;11 1&#39; = HPPA 7100LC
<br>&#39;12 0&#39; = ARM (all)
<br>&#39;12 1&#39; = ARM A500 ARCH
<br>&#39;12 2&#39; = ARM A500
<br>&#39;12 3&#39; = ARM A440
<br>&#39;12 4&#39; = ARM M4
<br>&#39;12 5&#39; = ARM A680/V4T
<br>&#39;12 6&#39; = ARM V6
<br>&#39;12 7&#39; = ARM V5TEJ
<br>&#39;12 8&#39; = ARM XSCALE
<br>&#39;12 9&#39; = ARM V7
<br>&#39;13 0&#39; = MC88000 (all)
<br>&#39;13 1&#39; = MC88100
<br>&#39;13 2&#39; = MC88110
<br>&#39;14 0&#39; = SPARC (all)
<br>&#39;14 1&#39; = SUN 4/260
<br>&#39;14 2&#39; = SUN 4/110
<br>&#39;15 0&#39; = i860 (all)
<br>&#39;15 1&#39; = i860 860
<br>&#39;16 0&#39; = i860 little (all)
<br>&#39;16 1&#39; = i860 little
<br>&#39;17 0&#39; = RS6000 (all)
<br>&#39;17 1&#39; = RS6000
<br>&#39;18 0&#39; = PowerPC (all)
<br>&#39;18 1&#39; = PowerPC 601
<br>&#39;18 2&#39; = PowerPC 602
<br>&#39;18 3&#39; = PowerPC 603
<br>&#39;18 4&#39; = PowerPC 603e
<br>&#39;18 5&#39; = PowerPC 603ev
<br>&#39;18 6&#39; = PowerPC 604
<br>&#39;18 7&#39; = PowerPC 604e
<br>&#39;18 8&#39; = PowerPC 620
<br>&#39;18 9&#39; = PowerPC 750
<br>&#39;18 10&#39; = PowerPC 7400
<br>&#39;18 11&#39; = PowerPC 7450
<br>&#39;18 100&#39; = PowerPC 970
<br>&#39;255 1&#39; = VEO 1
<br>&#39;255 2&#39; = VEO 2</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>ObjectFileType</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>-1 = Static library
<br>0x1 = Relocatable object
<br>0x2 = Demand paged executable
<br>0x3 = Fixed VM shared library
<br>0x4 = Core
<br>0x5 = Preloaded executable
<br>0x6 = Dynamically bound shared library
<br>0x7 = Dynamic link editor
<br>0x8 = Dynamically bound bundle
<br>0x9 = Shared library stub for static linking
<br>0xa = Debug information
<br>0xb = x86_64 kexts</td></tr></table>
</td></tr>
<tr>
<td class=r title='6 = 0x6'>6</td>
<td>ObjectFlags</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>Bit 0 = No undefs
<br>Bit 1 = Incrementa link
<br>Bit 2 = Dyld link
<br>Bit 3 = Bind at load
<br>Bit 4 = Prebound
<br>Bit 5 = Split segs
<br>Bit 6 = Lazy init
<br>Bit 7 = Two level
<br>Bit 8 = Force flat
<br>Bit 9 = No multi defs
<br>Bit 10 = No fix prebinding
<br>Bit 11 = Prebindable
<br>Bit 12 = All mods bound
<br>Bit 13 = Subsections via symbols
<br>Bit 14 = Canonical
<br>Bit 15 = Weak defines
<br>Bit 16 = Binds to weak
<br>Bit 17 = Allow stack execution
<br>Bit 18 = Dead strippable dylib
<br>Bit 19 = Root safe
<br>Bit 20 = No reexported dylibs
<br>Bit 21 = Random address</td></tr></table>
</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='PEF'>EXE PEF Tags</a></h2>
<p>Information extracted from PEF (Classic MacOS) executable files and
libraries.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>CPUArchitecture</td>
<td class=c>no</td>
<td><span class=s>&#39;m68k&#39; = 68000
<br>&#39;pwpc&#39; = PowerPC</span></td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>PEFVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>TimeStamp</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ELF'>EXE ELF Tags</a></h2>
<p>Information extracted from ELF (Unix) executable files and SO libraries.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>CPUArchitecture</td>
<td class=c>no</td>
<td><span class=s>1 = 32 bit
<br>2 = 64 bit</span></td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>CPUByteOrder</td>
<td class=c>no</td>
<td><span class=s>1 = Little endian
<br>2 = Big endian</span></td></tr>
<tr>
<td class=r title='16 = 0x10'>16</td>
<td>ObjectFileType</td>
<td class=c>no</td>
<td><span class=s>0 = None
<br>1 = Relocatable file
<br>2 = Executable file
<br>3 = Shared object file
<br>4 = Core file</span></td></tr>
<tr class=b>
<td class=r title='18 = 0x12'>18</td>
<td>CPUType</td>
<td class=c>no</td>
<td><span class=s>0 = None
<br>1 = AT&amp;T WE 32100
<br>2 = SPARC
<br>3 = i386
<br>4 = Motorola 68000
<br>5 = Motorola 88000
<br>6 = i486
<br>7 = i860
<br>8 = MIPS R3000
<br>10 = MIPS R4000
<br>15 = HPPA
<br>18 = Sun v8plus
<br>20 = PowerPC
<br>21 = PowerPC 64-bit
<br>22 = IBM S/390
<br>23 = Cell BE SPU
<br>42 = SuperH
<br>43 = SPARC v9 64-bit
<br>46 = Renesas H8/300,300H,H8S
<br>50 = HP/Intel IA-64
<br>62 = AMD x86-64
<br>76 = Axis Communications 32-bit embedded processor
<br>87 = NEC v850
<br>88 = Renesas M32R
<br>21569 = Fujitsu FR-V
<br>36902 = Alpha
<br>36929 = m32r (old)
<br>36992 = v850 (old)
<br>41872 = S/390 (old)</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='AR'>EXE AR Tags</a></h2>
<p>Information extracted from static libraries.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='16 = 0x10'>16</td>
<td>CreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='CHM'>EXE CHM Tags</a></h2>
<p>Tags extracted from Microsoft Compiled HTML files.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='1 = 0x1'>1</td>
<td>CHMVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>LanguageCode</td>
<td class=c>no</td>
<td>--&gt; <a href='EXE.html#LanguageCode'>EXE LanguageCode Values</a></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Mar 19, 2020</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

3824
html/TagNames/EXIF.html Normal file

File diff suppressed because it is too large Load Diff

561
html/TagNames/Extra.html Normal file
View File

@ -0,0 +1,561 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>Extra Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>Extra Tags</h2>
<p>
The extra tags provide extra features or extra information extracted or
generated by ExifTool that is not directly associated with another tag
group. The <b>Group</b> column lists the family 1 group name when reading.
Tags with a &quot;-&quot; in this column are write-only.</p>
<p>Tags in the family 1 &quot;System&quot; group are referred to as &quot;pseudo&quot; tags because
they don&#39;t represent real metadata in the file. Instead, this information
is stored in the directory structure of the filesystem. The <b>Writable</b>
System &quot;pseudo&quot; tags in this table may be written without modifying the file
itself. The TestName tag is used for dry-run testing before writing
FileName.
</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Group</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>Adobe</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>Adobe</td>
<td><span class=s><span class=n>(the JPEG APP14 Adobe segment. Extracted only if specified. See the
<a href="JPEG.html#Adobe">JPEG Adobe Tags</a> for more information)</span></span></td></tr>
<tr class=b>
<td>BaseName</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(file name without extension. Not generated unless specifically requested or
the API <a href="../ExifTool.html#RequestAll">RequestAll</a> option is set)</span></span></td></tr>
<tr>
<td>CanonDR4</td>
<td class=c title=' ! = Unsafe
^ = Deletable'>yes!^</td>
<td class=c>CanonVRD</td>
<td><span class=s><span class=n>(the full Canon DPP version 4 DR4 block. This tag is generated only if
specifically requested)</span></span></td></tr>
<tr class=b>
<td>CanonVRD</td>
<td class=c title=' ! = Unsafe
^ = Deletable'>yes!^</td>
<td class=c>CanonVRD</td>
<td><span class=s><span class=n>(the full Canon DPP VRD trailer block. This tag is generated only if
specifically requested)</span></span></td></tr>
<tr>
<td>Comment</td>
<td class=c>yes</td>
<td class=c>File</td>
<td><span class=s><span class=n>(comment embedded in JPEG, GIF89a or PPM/PGM/PBM image)</span></span></td></tr>
<tr class=b>
<td>CurrentIPTCDigest</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(MD5 digest of existing IPTC data. All zeros if IPTC exists but Digest::MD5
is not installed. Only calculated for IPTC in the standard location as
specified by the <a href="http://www.metadataworkinggroup.org/">MWG</a>. ExifTool
automates the handling of this tag in the MWG module -- see the
<a href="MWG.html">MWG Composite Tags</a> for details)</span></span></td></tr>
<tr>
<td>Directory</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>System</td>
<td><span class=s><span class=n>(the directory of the file as specified in the call to ExifTool, or &quot;.&quot; if no
directory was specified. May be written to move the file to another
directory that will be created if doesn&#39;t already exist)</span></span></td></tr>
<tr class=b>
<td>EXIF</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>EXIF</td>
<td><span class=s><span class=n>(the full EXIF data block from JPEG, PNG, JP2, MIE and MIFF images. This tag
is generated only if specifically requested)</span></span></td></tr>
<tr>
<td>EmbeddedVideo</td>
<td class=c>no</td>
<td class=c>File</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Error</td>
<td class=c>no</td>
<td class=c>ExifTool</td>
<td><span class=s><span class=n>(returns errors that may have occurred while reading or writing a file. Any
Error will prevent the file from being processed. Minor errors may be
downgraded to warnings with the -m or <a href="../ExifTool.html#IgnoreMinorErrors">IgnoreMinorErrors</a> option)</span></span></td></tr>
<tr>
<td>ExifByteOrder</td>
<td class=c>yes</td>
<td class=c>File</td>
<td><span class=s><span class=n>(represents the byte order of EXIF information. May be written to set the
byte order only for newly created EXIF segments)</span>
<br>&#39;II&#39; = Little-endian (Intel, II)
<br>&#39;MM&#39; = Big-endian (Motorola, MM)</span></td></tr>
<tr class=b>
<td>ExifToolVersion</td>
<td class=c>no</td>
<td class=c>ExifTool</td>
<td><span class=s><span class=n>(the version of ExifTool currently running)</span></span></td></tr>
<tr>
<td>ExifUnicodeByteOrder</td>
<td class=c>yes</td>
<td class=c>-</td>
<td><span class=s><span class=n>(specifies the byte order to use when writing EXIF Unicode text. The EXIF
specification is particularly vague about this byte ordering, and different
applications use different conventions. By default ExifTool writes Unicode
text in EXIF byte order, but this write-only tag may be used to force a
specific order. Applies to the EXIF UserComment tag when writing special
characters)</span>
<br>&#39;II&#39; = Little-endian (Intel, II)
<br>&#39;MM&#39; = Big-endian (Motorola, MM)</span></td></tr>
<tr class=b>
<td>FileAccessDate</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(the date/time of last access of the file. Note that this access time is
updated whenever any software, including ExifTool, reads the file)</span></span></td></tr>
<tr>
<td>FileAttributes</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(extracted only if specifically requested or the <a href="../ExifTool.html#SystemTags">SystemTags</a> or <a href="../ExifTool.html#RequestAll">RequestAll</a> API
option is set. 2 or 3 values: 0. File type, 1. Attribute bits, 2. Windows
attribute bits if Win32API::File is available)</span>
<br>[Value 0]</span><table class=cols><tr>
<td>0x0 = Unknown
<br>0x1000 = FIFO
<br>0x2000 = Character
<br>0x3000 = Mux Character
<br>0x4000 = Directory
<br>0x5000 = XENIX Named
<br>0x6000 = Block
<br>0x7000 = Mux Block</td><td>&nbsp;&nbsp;</td>
<td>0x8000 = Regular
<br>0x9000 = VxFS Compressed
<br>0xa000 = Symbolic Link
<br>0xb000 = Solaris Shadow Inode
<br>0xc000 = Socket
<br>0xd000 = Solaris Door
<br>0xe000 = BSD Whiteout</td></tr></table>
<span class=s>[Value 1]</span><table class=cols><tr>
<td>Bit 9 = Sticky
<br>Bit 10 = Set Group ID</td><td>&nbsp;&nbsp;</td>
<td>Bit 11 = Set User ID</td></tr></table>
<span class=s>[Value 2]</span><table class=cols><tr>
<td>Bit 0 = Read Only
<br>Bit 1 = Hidden
<br>Bit 2 = System
<br>Bit 3 = Volume Label
<br>Bit 4 = Directory
<br>Bit 5 = Archive
<br>Bit 6 = Device
<br>Bit 7 = Normal</td><td>&nbsp;&nbsp;</td>
<td>Bit 8 = Temporary
<br>Bit 9 = Sparse File
<br>Bit 10 = Reparse Point
<br>Bit 11 = Compressed
<br>Bit 12 = Offline
<br>Bit 13 = Not Content Indexed
<br>Bit 14 = Encrypted</td></tr></table>
</td></tr>
<tr class=b>
<td>FileBlockCount</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(extracted only if specifically requested or the <a href="../ExifTool.html#SystemTags">SystemTags</a> or <a href="../ExifTool.html#RequestAll">RequestAll</a> API
option is set)</span></span></td></tr>
<tr>
<td>FileBlockSize</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(extracted only if specifically requested or the <a href="../ExifTool.html#SystemTags">SystemTags</a> or <a href="../ExifTool.html#RequestAll">RequestAll</a> API
option is set)</span></span></td></tr>
<tr class=b>
<td>FileCreateDate</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>System</td>
<td><span class=s><span class=n>(the filesystem creation date/time. Windows/Mac only. In Windows, the file
creation date/time is preserved by default when writing if Win32API::File
and Win32::API are available. On Mac, this tag is extracted only if it or
the MacOS group is specifically requested or the API <a href="../ExifTool.html#RequestAll">RequestAll</a> option is
set to 2 or higher. Requires &quot;setfile&quot; for writing on Mac, which may be
installed by typing <code>xcode-select --install</code> in the Terminal)</span></span></td></tr>
<tr>
<td>FileDeviceID</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(extracted only if specifically requested or the <a href="../ExifTool.html#SystemTags">SystemTags</a> or <a href="../ExifTool.html#RequestAll">RequestAll</a> API
option is set)</span></span></td></tr>
<tr class=b>
<td>FileDeviceNumber</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(extracted only if specifically requested or the <a href="../ExifTool.html#SystemTags">SystemTags</a> or <a href="../ExifTool.html#RequestAll">RequestAll</a> API
option is set)</span></span></td></tr>
<tr>
<td>FileGroupID</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>System</td>
<td><span class=s><span class=n>(extracted only if specifically requested or the <a href="../ExifTool.html#SystemTags">SystemTags</a> or <a href="../ExifTool.html#RequestAll">RequestAll</a> API
option is set. Returns group ID number with the -n option, or name
otherwise. May be written with either group name or number)</span></span></td></tr>
<tr class=b>
<td>FileHardLinks</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(extracted only if specifically requested or the <a href="../ExifTool.html#SystemTags">SystemTags</a> or <a href="../ExifTool.html#RequestAll">RequestAll</a> API
option is set)</span></span></td></tr>
<tr>
<td>FileInodeChangeDate</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(the date/time when the file&#39;s directory information was last changed.
Non-Windows systems only)</span></span></td></tr>
<tr class=b>
<td>FileInodeNumber</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(extracted only if specifically requested or the <a href="../ExifTool.html#SystemTags">SystemTags</a> or <a href="../ExifTool.html#RequestAll">RequestAll</a> API
option is set)</span></span></td></tr>
<tr>
<td>FileModifyDate</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>System</td>
<td><span class=s><span class=n>(the filesystem modification date/time. Note that ExifTool may not be able
to handle filesystem dates before 1970 depending on the limitations of the
system&#39;s standard libraries)</span></span></td></tr>
<tr class=b>
<td>FileName</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>System</td>
<td><span class=s><span class=n>(may be written with a full path name to set FileName and Directory in one
operation. This is such a powerful feature that a TestName tag is provided
to allow dry-run tests before actually writing the file name. See
<a href="../filename.html">filename.html</a> for more information on writing the
FileName, Directory and TestName tags)</span></span></td></tr>
<tr>
<td>FilePath</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(absolute path of source file. Not generated unless specifically requested or
the API <a href="../ExifTool.html#RequestAll">RequestAll</a> option is set. Does not support Windows Unicode file
names)</span></span></td></tr>
<tr class=b>
<td>FilePermissions</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>System</td>
<td><span class=s><span class=n>(r=read, w=write and x=execute permissions for the file owner, group and
others. The ValueConv value is an octal number so bit test operations on
this value should be done in octal, eg. &#39;oct($filePermissions#) &amp; 0200&#39;)</span></span></td></tr>
<tr>
<td>FileSequence</td>
<td class=c>no</td>
<td class=c>ExifTool</td>
<td><span class=s><span class=n>(sequence number for each source file when extracting or copying information,
including files that fail the -if condition of the command-line application,
beginning at 0 for the first file. Not generated unless specifically
requested or the API <a href="../ExifTool.html#RequestAll">RequestAll</a> option is set)</span></span></td></tr>
<tr class=b>
<td>FileSize</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(note that the print conversion for this tag uses historic prefixes: 1 kB =
1024 bytes, etc.)</span></span></td></tr>
<tr>
<td>FileType</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(a short description of the file type. For many file types this is the just
the uppercase file extension)</span></span></td></tr>
<tr class=b>
<td>FileTypeExtension</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(a common lowercase extension for this file type, or uppercase with the -n
option)</span></span></td></tr>
<tr>
<td>FileUserID</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>System</td>
<td><span class=s><span class=n>(extracted only if specifically requested or the <a href="../ExifTool.html#SystemTags">SystemTags</a> or <a href="../ExifTool.html#RequestAll">RequestAll</a> API
option is set. Returns user ID number with the -n option, or name
otherwise. May be written with either user name or number)</span></span></td></tr>
<tr class=b>
<td>ForceWrite</td>
<td class=c>yes</td>
<td class=c>-</td>
<td><span class=s><span class=n>(write-only tag used to force metadata in a file to be rewritten even if no
tag values are changed. May be set to &quot;EXIF&quot;, &quot;IPTC&quot;, &quot;XMP&quot; or &quot;PNG&quot; to
force the corresponding metadata type to be rewritten, &quot;FixBase&quot; to cause
EXIF to be rewritten only if the MakerNotes offset base was fixed, or &quot;All&quot;
to rewrite all of these metadata types. Values are case insensitive, and
multiple values may be separated with commas, eg. <code>-ForceWrite=exif,xmp</code>)</span></span></td></tr>
<tr>
<td>Geosync</td>
<td class=c>yes</td>
<td class=c>-</td>
<td><span class=s><span class=n>(this write-only tag specifies a time difference to add to Geotime for
synchronization with the GPS clock. For example, set this to &quot;-12&quot; if the
camera clock is 12 seconds faster than GPS time. Input format is
&quot;[+-][[[DD ]HH:]MM:]SS[.ss]&quot;. Additional features allow calculation of time
differences and time drifts, and extraction of synchronization times from
image files. See the <a href="../geotag.html">geotagging documentation</a> for details)</span></span></td></tr>
<tr class=b>
<td>Geotag</td>
<td class=c>yes</td>
<td class=c>-</td>
<td><span class=s><span class=n>(this write-only tag is used to define the GPS track log data or track log
file name. Currently supported track log formats are GPX, NMEA RMC/GGA/GLL,
KML, IGC, Garmin XML and TCX, Magellan PMGNTRK, Honeywell PTNTHPR, Winplus
Beacon text, and Bramor gEO log files. May be set to the special value of
&quot;DATETIMEONLY&quot; (all caps) to set GPS date/time tags if no input track points
are available. See <a href="../geotag.html">geotag.html</a> for details)</span></span></td></tr>
<tr>
<td>Geotime</td>
<td class=c>yes</td>
<td class=c>-</td>
<td><span class=s><span class=n>(this write-only tag is used to define a date/time for interpolating a
position in the GPS track specified by the Geotag tag. Writing this tag
causes GPS information to be written into the EXIF or XMP of the target
files. The local system timezone is assumed if the date/time value does not
contain a timezone. May be deleted to delete associated GPS tags. A group
name of &quot;EXIF&quot; or &quot;XMP&quot; may be specified to write or delete only EXIF or XMP
GPS tags)</span></span></td></tr>
<tr class=b>
<td>HardLink</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>-</td>
<td><span class=s><span class=n>(this write-only tag is used to create a hard link with the specified name to
the source file. If the source file is edited, copied, renamed or moved in
the same operation as writing HardLink, then the link is made to the updated
file. Note that subsequent editing of either hard-linked file by exiftool
will break the link unless the -overwrite_original_in_place option is used)</span></span></td></tr>
<tr>
<td>ICC_Profile</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>ICC_Profile</td>
<td><span class=s><span class=n>(the full ICC_Profile data block. This tag is generated only if specifically
requested)</span></span></td></tr>
<tr class=b>
<td>ID3Size</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(size of the ID3 data block)</span></span></td></tr>
<tr>
<td>IPTC</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>IPTC</td>
<td><span class=s><span class=n>(the full IPTC data block. This tag is generated only if specifically
requested)</span></span></td></tr>
<tr class=b>
<td>ImageHeight</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(the height of the image in number of pixels)</span></span></td></tr>
<tr>
<td>ImageWidth</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(the width of the image in number of pixels)</span></span></td></tr>
<tr class=b>
<td>JPEGDigest</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(an MD5 digest of the JPEG quantization tables is combined with the component
sub-sampling values to generate the value of this tag. The result is
compared to known values in an attempt to deduce the originating software
based only on the JPEG image data. For performance reasons, this tag is
generated only if specifically requested or the API <a href="../ExifTool.html#RequestAll">RequestAll</a> option is set
to 3 or higher)</span></span></td></tr>
<tr>
<td>JPEGImageLength</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(byte length of JPEG image without metadata. For performance reasons, this
tag is generated only if specifically requested or the API <a href="../ExifTool.html#RequestAll">RequestAll</a> option
is set to 3 or higher)</span></span></td></tr>
<tr class=b>
<td>JPEGQualityEstimate</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(an estimate of the IJG JPEG quality setting for the image, calculated from
the quantization tables. For performance reasons, this tag is generated
only if specifically requested or the API <a href="../ExifTool.html#RequestAll">RequestAll</a> option is set to 3 or
higher)</span></span></td></tr>
<tr>
<td>MIMEType</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(the MIME type of the source file)</span></span></td></tr>
<tr class=b>
<td>MaxVal</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(maximum pixel value in PPM or PGM image)</span></span></td></tr>
<tr>
<td>NewGUID</td>
<td class=c>no</td>
<td class=c>ExifTool</td>
<td><span class=s><span class=n>(generates a new, random GUID with format
YYYYmmdd-HHMM-SSNN-PPPP-RRRRRRRRRRRR, where Y=year, m=month, d=day, H=hour,
M=minute, S=second, N=file sequence number in hex, P=process ID in hex, and
R=random hex number; without dashes with the -n option. Not generated
unless specifically requested or the API <a href="../ExifTool.html#RequestAll">RequestAll</a> option is set)</span></span></td></tr>
<tr class=b>
<td>Now</td>
<td class=c>no</td>
<td class=c>ExifTool</td>
<td><span class=s><span class=n>(the current date/time. Useful when setting the tag values, eg.
<code>&quot;-modifydate&lt;now&quot;</code>. Not generated unless specifically requested or the
API <a href="../ExifTool.html#RequestAll">RequestAll</a> option is set)</span></span></td></tr>
<tr>
<td>OtherImage</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(other JPEG-format embedded image)</span></span></td></tr>
<tr class=b>
<td>PageCount</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(the number of pages in a multi-page TIFF document)</span></span></td></tr>
<tr>
<td>PreviewImage</td>
<td class=c>yes</td>
<td class=c>File</td>
<td><span class=s><span class=n>(JPEG-format embedded preview image)</span></span></td></tr>
<tr class=b>
<td>PreviewPDF</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(PDF-format embedded preview image)</span></span></td></tr>
<tr>
<td>PreviewPNG</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(PNG-format embedded preview image)</span></span></td></tr>
<tr class=b>
<td>PreviewTIFF</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(TIFF-format embedded preview image)</span></span></td></tr>
<tr>
<td>PreviewWMF</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(WMF-format embedded preview image)</span></span></td></tr>
<tr class=b>
<td>ProcessingTime</td>
<td class=c>no</td>
<td class=c>ExifTool</td>
<td><span class=s><span class=n>(the clock time in seconds taken by ExifTool to extract information from this
file. Not generated unless specifically requested or the <a href="../ExifTool.html#RequestAll">RequestAll</a> API
option is set. Requires Time::HiRes)</span></span></td></tr>
<tr>
<td>RAFVersion</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(RAF file version number)</span></span></td></tr>
<tr class=b>
<td>ResourceForkSize</td>
<td class=c>no</td>
<td class=c>System</td>
<td><span class=s><span class=n>(size of the file&#39;s resource fork if it contains data. Mac OS only. If this
tag is generated the <a href="../ExifTool.html#ExtractEmbedded">ExtractEmbedded</a> option may be used to extract
resource-fork information as a sub-document. When writing, the resource
fork is preserved by default, but it may be deleted with <code>-rsrc:all=</code> on
the command line)</span></span></td></tr>
<tr>
<td>SymLink</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>-</td>
<td><span class=s><span class=n>(this write-only tag is used to create a symbolic link with the specified
name to the source file. If the source file is edited, copied, renamed or
moved in the same operation as writing SymLink, then the link is made to the
updated file. The link uses an absolute path unless it is created in the
current working directory. Valid only for file systems that support
symbolic links. Note that subsequent editing of the file via the symbolic
link by exiftool will cause the link to be replaced by the edited file
without changing the original unless the -overwrite_original_in_place option
is used)</span></span></td></tr>
<tr class=b>
<td>TestName</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>-</td>
<td><span class=s><span class=n>(this write-only tag may be used instead of FileName for dry-run tests of the
file renaming feature. Writing this tag prints the old and new file names
to the console, but does not affect the file itself)</span></span></td></tr>
<tr>
<td>ThumbnailImage</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(JPEG-format embedded thumbnail image)</span></span></td></tr>
<tr class=b>
<td>Trailer</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>File</td>
<td><span class=s><span class=n>(the full JPEG trailer data block. Extracted only if specifically requested
or the API RequestAll option is set to 3 or higher)</span></span></td></tr>
<tr>
<td>Validate</td>
<td class=c>no</td>
<td class=c>ExifTool</td>
<td><span class=s><span class=n>(generated only if specifically requested. Requesting this tag automatically
enables the API <a href="../ExifTool.html#Validate">Validate</a> option, imposing
additional validation checks when extracting metadata. Returns the number
of errors, warnings and minor warnings encountered. Note that the Validate
feature focuses mainly on validation of EXIF/TIFF metadata)</span>
<br>&#39;0 0 0&#39; = OK</span></td></tr>
<tr class=b>
<td>Warning</td>
<td class=c>no</td>
<td class=c>ExifTool</td>
<td><span class=s><span class=n>(returns warnings that may have occurred while reading or writing a file.
Use the -a or <a href="../ExifTool.html#Duplicates">Duplicates</a> option to see all warnings if more than one
occurred. Minor warnings may be ignored with the -m or <a href="../ExifTool.html#IgnoreMinorErrors">IgnoreMinorErrors</a>
option. Minor warnings with a capital &quot;M&quot; in the &quot;[Minor]&quot; designation
indicate that the processing is affected by ignoring the warning)</span></span></td></tr>
<tr>
<td>XML</td>
<td class=c>no</td>
<td class=c>XML</td>
<td><span class=s><span class=n>(the XML data block, extracted for some file types)</span></span></td></tr>
<tr class=b>
<td>XMP</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>XMP</td>
<td><span class=s><span class=n>(the XMP data block, but note that extended XMP in JPEG images may be split
into multiple blocks. This tag is generated only if specifically requested)</span></span></td></tr>
<tr>
<td>XResolution</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(the horizontal pixel resolution)</span></span></td></tr>
<tr class=b>
<td>YResolution</td>
<td class=c>no</td>
<td class=c>File</td>
<td><span class=s><span class=n>(the vertical pixel resolution)</span></span></td></tr>
<tr>
<td>ZoneIdentifier</td>
<td class=c title=' ! = Unsafe'>yes!</td>
<td class=c>System</td>
<td><span class=s><span class=n>(Windows only. Existence indicates that the file has a Zone.Identifier
alternate data stream, which is used by some Windows browsers to mark
downloaded files as possibly unsafe to run. May be deleted to remove this
stream. Requires Win32API::File)</span></span></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Feb 9, 2022</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

96
html/TagNames/FITS.html Normal file
View File

@ -0,0 +1,96 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>FITS Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>FITS Tags</h2>
<p>This table lists some standard Flexible Image Transport System (FITS) tags,
but ExifTool will extract any other tags found. See
<a href="https://fits.gsfc.nasa.gov/fits_standard.html">https://fits.gsfc.nasa.gov/fits_standard.html</a> for the specification.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'AUTHOR'</td>
<td>Author</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'BACKGRND'</td>
<td>Background</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'COMMENT'</td>
<td>Comment</td>
<td class=c>no</td>
<td><span class=s><span class=n>(leading spaces are removed if <a href="../ExifTool.html#PrintConv">PrintConv</a> is enabled)</span></span></td></tr>
<tr class=b>
<td>'DATE'</td>
<td>CreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'DATE-END'</td>
<td>ObservationDateEnd</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'DATE-OBS'</td>
<td>ObservationDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'HISTORY'</td>
<td>History</td>
<td class=c>no</td>
<td><span class=s><span class=n>(leading spaces are removed if <a href="../ExifTool.html#PrintConv">PrintConv</a> is enabled)</span></span></td></tr>
<tr class=b>
<td>'INSTRUME'</td>
<td>Instrument</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'OBJECT'</td>
<td>Object</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'OBSERVER'</td>
<td>Observer</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'REFERENC'</td>
<td>Reference</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'TELESCOP'</td>
<td>Telescope</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'TIME-END'</td>
<td>ObservationTimeEnd</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'TIME-OBS'</td>
<td>ObservationTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Feb 23, 2021</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

189
html/TagNames/FLAC.html Normal file
View File

@ -0,0 +1,189 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>FLAC Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>FLAC Tags</h2>
<p>Free Lossless Audio Codec (FLAC) meta information. ExifTool also extracts
ID3 information from these files.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0000 = 0'>0x0000</td>
<td>StreamInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='FLAC.html#StreamInfo'>FLAC StreamInfo Tags</a></td></tr>
<tr class=b>
<td title='0x0001 = 1'>0x0001</td>
<td>Padding?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0002 = 2'>0x0002</td>
<td>Application?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0003 = 3'>0x0003</td>
<td>SeekTable?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0004 = 4'>0x0004</td>
<td>VorbisComment</td>
<td class=c>-</td>
<td>--&gt; <a href='Vorbis.html#Comments'>Vorbis Comments Tags</a></td></tr>
<tr class=b>
<td title='0x0005 = 5'>0x0005</td>
<td>CueSheet?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0006 = 6'>0x0006</td>
<td>Picture</td>
<td class=c>-</td>
<td>--&gt; <a href='FLAC.html#Picture'>FLAC Picture Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='StreamInfo'>FLAC StreamInfo Tags</a></h2>
<p>FLAC is big-endian, so bit 0 is the high-order bit in this table.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Bit000-015'</td>
<td>BlockSizeMin</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Bit016-031'</td>
<td>BlockSizeMax</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Bit032-055'</td>
<td>FrameSizeMin</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Bit056-079'</td>
<td>FrameSizeMax</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Bit080-099'</td>
<td>SampleRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Bit100-102'</td>
<td>Channels</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Bit103-107'</td>
<td>BitsPerSample</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Bit108-143'</td>
<td>TotalSamples</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Bit144-271'</td>
<td>MD5Signature</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Picture'>FLAC Picture Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>PictureType</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Other
<br>1 = 32x32 PNG Icon
<br>2 = Other Icon
<br>3 = Front Cover
<br>4 = Back Cover
<br>5 = Leaflet
<br>6 = Media
<br>7 = Lead Artist
<br>8 = Artist
<br>9 = Conductor
<br>10 = Band
<br>11 = Composer
<br>12 = Lyricist
<br>13 = Recording Studio or Location
<br>14 = Recording Session
<br>15 = Performance
<br>16 = Capture from Movie or Video
<br>17 = Bright(ly) Colored Fish
<br>18 = Illustration
<br>19 = Band Logo
<br>20 = Publisher Logo</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>PictureMIMEType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>PictureDescription</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>PictureWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>PictureHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>PictureBitsPerPixel</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='6 = 0x6'>6</td>
<td>PictureIndexedColors</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='7 = 0x7'>7</td>
<td>PictureLength</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>Picture</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Oct 4, 2017</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

85
html/TagNames/FLIF.html Normal file
View File

@ -0,0 +1,85 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>FLIF Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>FLIF Tags</h2>
<p>Information extracted from Free Lossless Image Format files. See
<a href="http://flif.info/">http://flif.info/</a> for more information.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>ImageType</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>1 = Grayscale (non-interlaced)
<br>3 = RGB (non-interlaced)
<br>4 = RGBA (non-interlaced)
<br>&#39;A&#39; = Grayscale (interlaced)
<br>&#39;C&#39; = RGB (interlaced)
<br>&#39;D&#39; = RGBA (interlaced)
<br>&#39;Q&#39; = Grayscale Animation (non-interlaced)
<br>&#39;S&#39; = RGB Animation (non-interlaced)
<br>&#39;T&#39; = RGBA Animation (non-interlaced)
<br>&#39;a&#39; = Grayscale Animation (interlaced)
<br>&#39;c&#39; = RGB Animation (interlaced)
<br>&#39;d&#39; = RGBA Animation (interlaced)</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>BitDepth</td>
<td class=c>no</td>
<td><span class=s>0 = Custom
<br>1 = 8
<br>2 = 16</span></td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>AnimationFrames</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>Encoding</td>
<td class=c>no</td>
<td><span class=s>0 = FLIF16</span></td></tr>
<tr>
<td>'eXif'</td>
<td>EXIF</td>
<td class=c>-</td>
<td>--&gt; <a href='EXIF.html'>EXIF Tags</a></td></tr>
<tr class=b>
<td>'eXmp'</td>
<td>XMP</td>
<td class=c>-</td>
<td>--&gt; <a href='XMP.html'>XMP Tags</a></td></tr>
<tr>
<td>'iCCP'</td>
<td>ICC_Profile</td>
<td class=c>-</td>
<td>--&gt; <a href='ICC_Profile.html'>ICC_Profile Tags</a></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Nov 2, 2016</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

1433
html/TagNames/FLIR.html Normal file

File diff suppressed because it is too large Load Diff

420
html/TagNames/Flash.html Normal file
View File

@ -0,0 +1,420 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>Flash Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>Flash Tags</h2>
<p>The information below is extracted from SWF (Shockwave Flash) files. Tags
with string ID&#39;s represent information extracted from the file header.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Compressed'</td>
<td>Compressed</td>
<td class=c>no</td>
<td><span class=s>0 = False
<br>1 = True</span></td></tr>
<tr class=b>
<td>'Duration'</td>
<td>Duration</td>
<td class=c>no</td>
<td><span class=s><span class=n>(calculated from FrameRate and FrameCount)</span></span></td></tr>
<tr>
<td>'FlashVersion'</td>
<td>FlashVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'FrameCount'</td>
<td>FrameCount</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'FrameRate'</td>
<td>FrameRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ImageHeight'</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ImageWidth'</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0045 = 69'>0x0045</td>
<td>FlashAttributes</td>
<td class=c>no</td>
<td><span class=s>Bit 0 = UseNetwork
<br>Bit 3 = ActionScript3
<br>Bit 4 = HasMetadata</span></td></tr>
<tr>
<td title='0x004d = 77'>0x004d</td>
<td>XMP</td>
<td class=c>-</td>
<td>--&gt; <a href='XMP.html'>XMP Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='FLV'>Flash FLV Tags</a></h2>
<p>Information is extracted from the following packets in FLV (Flash Video)
files.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0008 = 8'>0x0008</td>
<td>Audio</td>
<td class=c>-</td>
<td>--&gt; <a href='Flash.html#Audio'>Flash Audio Tags</a></td></tr>
<tr class=b>
<td title='0x0009 = 9'>0x0009</td>
<td>Video</td>
<td class=c>-</td>
<td>--&gt; <a href='Flash.html#Video'>Flash Video Tags</a></td></tr>
<tr>
<td title='0x0012 = 18'>0x0012</td>
<td>Meta</td>
<td class=c>-</td>
<td>--&gt; <a href='Flash.html#Meta'>Flash Meta Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Audio'>Flash Audio Tags</a></h2>
<p>Information extracted from the Flash Audio header.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Bit0-3'</td>
<td>AudioEncoding</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = PCM-BE (uncompressed)
<br>1 = ADPCM
<br>2 = MP3
<br>3 = PCM-LE (uncompressed)
<br>4 = Nellymoser 16kHz Mono
<br>5 = Nellymoser 8kHz Mono
<br>6 = Nellymoser
<br>7 = G.711 A-law logarithmic PCM
<br>8 = G.711 mu-law logarithmic PCM
<br>10 = AAC
<br>11 = Speex
<br>13 = MP3 8-Khz
<br>15 = Device-specific sound</td></tr></table>
</td></tr>
<tr class=b>
<td>'Bit4-5'</td>
<td>AudioSampleRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Bit6'</td>
<td>AudioBitsPerSample</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Bit7'</td>
<td>AudioChannels</td>
<td class=c>no</td>
<td><span class=s>1 = 1 (mono)
<br>2 = 2 (stereo)</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Video'>Flash Video Tags</a></h2>
<p>Information extracted from the Flash Video header.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Bit4-7'</td>
<td>VideoEncoding</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>1 = JPEG
<br>2 = Sorensen H.263
<br>3 = Screen Video
<br>4 = On2 VP6</td><td>&nbsp;&nbsp;</td>
<td>5 = On2 VP6 Alpha
<br>6 = Screen Video 2
<br>7 = H.264</td></tr></table>
</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Meta'>Flash Meta Tags</a></h2>
<p>Below are a few observed FLV Meta tags, but ExifTool will attempt to extract
information from any tag found.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'audiocodecid'</td>
<td>AudioCodecID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'audiodatarate'</td>
<td>AudioBitrate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'audiodelay'</td>
<td>AudioDelay</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'audiosamplerate'</td>
<td>AudioSampleRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'audiosamplesize'</td>
<td>AudioSampleSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'audiosize'</td>
<td>AudioSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'bytelength'</td>
<td>ByteLength</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'canSeekToEnd'</td>
<td>CanSeekToEnd</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'canseekontime'</td>
<td>CanSeekOnTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'createdby'</td>
<td>CreatedBy</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'creationdate'</td>
<td>CreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'cuePoints'</td>
<td>CuePoint</td>
<td class=c>-</td>
<td>--&gt; <a href='Flash.html#CuePoint'>Flash CuePoint Tags</a></td></tr>
<tr>
<td>'datasize'</td>
<td>DataSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'duration'</td>
<td>Duration</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'filesize'</td>
<td>FileSizeBytes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'framerate'</td>
<td>FrameRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'hasAudio'</td>
<td>HasAudio</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'hasCuePoints'</td>
<td>HasCuePoints</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'hasKeyframes'</td>
<td>HasKeyFrames</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'hasMetadata'</td>
<td>HasMetadata</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'hasVideo'</td>
<td>HasVideo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'height'</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'httphostheader'</td>
<td>HTTPHostHeader</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'keyframesFilepositions'</td>
<td>KeyFramePositions</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'keyframesTimes'</td>
<td>KeyFramesTimes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'lastkeyframetimestamp'</td>
<td>LastKeyFrameTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'lasttimestamp'</td>
<td>LastTimeStamp</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'liveXML'</td>
<td>XMP</td>
<td class=c>-</td>
<td>--&gt; <a href='XMP.html'>XMP Tags</a></td></tr>
<tr>
<td>'metadatacreator'</td>
<td>MetadataCreator</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'metadatadate'</td>
<td>MetadataDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'pmsg'</td>
<td>Message</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'purl'</td>
<td>URL</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'sourcedata'</td>
<td>SourceData</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'starttime'</td>
<td>StartTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'stereo'</td>
<td>Stereo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'totaldatarate'</td>
<td>TotalDataRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'totalduration'</td>
<td>TotalDuration</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'videocodecid'</td>
<td>VideoCodecID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'videodatarate'</td>
<td>VideoBitrate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'videosize'</td>
<td>VideoSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'width'</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='CuePoint'>Flash CuePoint Tags</a></h2>
<p>These tag names are added to the CuePoint name to generate complete tag
names like &quot;CuePoint0Name&quot;.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'name'</td>
<td>Name</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'parameters'</td>
<td>Parameter</td>
<td class=c>-</td>
<td>--&gt; <a href='Flash.html#Parameter'>Flash Parameter Tags</a></td></tr>
<tr>
<td>'time'</td>
<td>Time</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'type'</td>
<td>Type</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Parameter'>Flash Parameter Tags</a></h2>
<p>There are no pre-defined parameter tags, but ExifTool will extract any
existing parameters, with tag names like &quot;CuePoint0ParameterXxx&quot;.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr><td colspan=4 class=c><i>[no tags known]</i></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jul 9, 2015</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

1689
html/TagNames/FlashPix.html Normal file

File diff suppressed because it is too large Load Diff

486
html/TagNames/Font.html Normal file
View File

@ -0,0 +1,486 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>Font Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>Font Tags</h2>
<p>This table contains a collection of tags found in font files of various
formats. ExifTool current recognizes OTF, TTF, TTC, DFONT, PFA, PFB, PFM,
AFM, ACFM and AMFM font files.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'AFM'</td>
<td>AFM</td>
<td class=c>-</td>
<td>--&gt; <a href='Font.html#AFM'>Font AFM Tags</a></td></tr>
<tr class=b>
<td>'PFM'</td>
<td>PFMHeader</td>
<td class=c>-</td>
<td>--&gt; <a href='Font.html#PFM'>Font PFM Tags</a></td></tr>
<tr>
<td>'PSInfo'</td>
<td>PSFontInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='Font.html#PSInfo'>Font PSInfo Tags</a></td></tr>
<tr class=b>
<td>'fontname'</td>
<td>FontName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'name'</td>
<td>Name</td>
<td class=c>-</td>
<td>--&gt; <a href='Font.html#Name'>Font Name Tags</a></td></tr>
<tr class=b>
<td>'numfonts'</td>
<td>NumFonts</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'postfont'</td>
<td>PostScriptFontName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='AFM'>Font AFM Tags</a></h2>
<p>Tags extracted from Adobe Font Metrics files (AFM, ACFM and AMFM).</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Ascender'</td>
<td>Ascender</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'CapHeight'</td>
<td>CapHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'CharacterSet'</td>
<td>CharacterSet</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Characters'</td>
<td>Characters</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Creation Date'</td>
<td>CreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Descender'</td>
<td>Descender</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'EncodingScheme'</td>
<td>EncodingScheme</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'EscChar'</td>
<td>EscChar</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'FamilyName'</td>
<td>FontFamily</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'FontName'</td>
<td>FontName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'FullName'</td>
<td>FullName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'IsBaseFont'</td>
<td>IsBaseFont</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'IsFixedV'</td>
<td>IsFixedV</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'MappingScheme'</td>
<td>MappingScheme</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Notice'</td>
<td>Notice</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Version'</td>
<td>Version</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Weight'</td>
<td>Weight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'XHeight'</td>
<td>XHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='PFM'>Font PFM Tags</a></h2>
<p>Tags extracted from the PFM file header.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>PFMVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='6 = 0x6'>6</td>
<td>Copyright</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='66 = 0x42'>66</td>
<td>FontType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='68 = 0x44'>68</td>
<td>PointSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='70 = 0x46'>70</td>
<td>YResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='72 = 0x48'>72</td>
<td>XResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='74 = 0x4a'>74</td>
<td>Ascent</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='76 = 0x4c'>76</td>
<td>InternalLeading</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='78 = 0x4e'>78</td>
<td>ExternalLeading</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='80 = 0x50'>80</td>
<td>Italic</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='81 = 0x51'>81</td>
<td>Underline</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='82 = 0x52'>82</td>
<td>Strikeout</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='83 = 0x53'>83</td>
<td>Weight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='85 = 0x55'>85</td>
<td>CharacterSet</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='86 = 0x56'>86</td>
<td>PixWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='88 = 0x58'>88</td>
<td>PixHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='90 = 0x5a'>90</td>
<td>PitchAndFamily</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='91 = 0x5b'>91</td>
<td>AvgWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='93 = 0x5d'>93</td>
<td>MaxWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='95 = 0x5f'>95</td>
<td>FirstChar</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='96 = 0x60'>96</td>
<td>LastChar</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='97 = 0x61'>97</td>
<td>DefaultChar</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='98 = 0x62'>98</td>
<td>BreakChar</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='99 = 0x63'>99</td>
<td>WidthBytes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='PSInfo'>Font PSInfo Tags</a></h2>
<p>Tags extracted from PostScript font files (PFA and PFB).</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Copyright'</td>
<td>Copyright</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'FSType'</td>
<td>FSType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'FamilyName'</td>
<td>FontFamily</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'FontName'</td>
<td>FontName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'FontType'</td>
<td>FontType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'FullName'</td>
<td>FullName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ItalicAngle'</td>
<td>ItalicAngle</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Notice'</td>
<td>Notice</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'UnderlinePosition'</td>
<td>UnderlinePosition</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'UnderlineThickness'</td>
<td>UnderlineThickness</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Weight'</td>
<td>Weight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'isFixedPitch'</td>
<td>IsFixedPitch</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'version'</td>
<td>Version</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Name'>Font Name Tags</a></h2>
<p>The following tags are extracted from the TrueType font &quot;name&quot; table found
in OTF, TTF, TTC and DFONT files. These tags support localized languages by
adding a hyphen followed by a language code to the end of the tag name (eg.
&quot;Copyright-fr&quot; or &quot;License-en-US&quot;). Tags with no language code use the
default language of &quot;en&quot;.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0000 = 0'>0x0000</td>
<td>Copyright</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0001 = 1'>0x0001</td>
<td>FontFamily</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0002 = 2'>0x0002</td>
<td>FontSubfamily</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0003 = 3'>0x0003</td>
<td>FontSubfamilyID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0004 = 4'>0x0004</td>
<td>FontName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0005 = 5'>0x0005</td>
<td>NameTableVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0006 = 6'>0x0006</td>
<td>PostScriptFontName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0007 = 7'>0x0007</td>
<td>Trademark</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0008 = 8'>0x0008</td>
<td>Manufacturer</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0009 = 9'>0x0009</td>
<td>Designer</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x000a = 10'>0x000a</td>
<td>Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x000b = 11'>0x000b</td>
<td>VendorURL</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x000c = 12'>0x000c</td>
<td>DesignerURL</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x000d = 13'>0x000d</td>
<td>License</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x000e = 14'>0x000e</td>
<td>LicenseInfoURL</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0010 = 16'>0x0010</td>
<td>PreferredFamily</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0011 = 17'>0x0011</td>
<td>PreferredSubfamily</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0012 = 18'>0x0012</td>
<td>CompatibleFontName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0013 = 19'>0x0013</td>
<td>SampleText</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0014 = 20'>0x0014</td>
<td>PostScriptFontName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0015 = 21'>0x0015</td>
<td>WWSFamilyName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0016 = 22'>0x0016</td>
<td>WWSSubfamilyName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jan 31, 2012</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

View File

@ -0,0 +1,104 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>FotoStation Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>FotoStation Tags</h2>
<p>The following tables define information found in the FotoWare FotoStation
trailer.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0001 = 1'>0x0001</td>
<td>IPTC</td>
<td class=c>-</td>
<td>--&gt; <a href='IPTC.html'>IPTC Tags</a></td></tr>
<tr class=b>
<td title='0x0002 = 2'>0x0002</td>
<td>SoftEdit</td>
<td class=c>-</td>
<td>--&gt; <a href='FotoStation.html#SoftEdit'>FotoStation SoftEdit Tags</a></td></tr>
<tr>
<td title='0x0003 = 3'>0x0003</td>
<td>ThumbnailImage</td>
<td class=c>yes</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0004 = 4'>0x0004</td>
<td>PreviewImage</td>
<td class=c>yes</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='SoftEdit'>FotoStation SoftEdit Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>OriginalImageWidth</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>OriginalImageHeight</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>ColorPlanes</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>XYResolution</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>Rotation</td>
<td class=c>int32s</td>
<td><span class=s><span class=n>(rotations are stored as degrees CCW * 100, but converted to degrees CW by
ExifTool)</span></span></td></tr>
<tr class=b>
<td class=r title='6 = 0x6'>6</td>
<td>CropLeft</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='7 = 0x7'>7</td>
<td>CropTop</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='8 = 0x8'>8</td>
<td>CropRight</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='9 = 0x9'>9</td>
<td>CropBottom</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='11 = 0xb'>11</td>
<td>CropRotation</td>
<td class=c>int32s</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Oct 20, 2006</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

1242
html/TagNames/FujiFilm.html Normal file

File diff suppressed because it is too large Load Diff

41
html/TagNames/GE.html Normal file
View File

@ -0,0 +1,41 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>GE Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>GE Tags</h2>
<p>This table lists tags found in the maker notes of some General Imaging
camera models.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0202 = 514'>0x0202</td>
<td>Macro</td>
<td class=c>int16u</td>
<td><span class=s>0 = Off
<br>1 = On</span></td></tr>
<tr class=b>
<td title='0x0207 = 519'>0x0207</td>
<td>GEModel</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0300 = 768'>0x0300</td>
<td>GEMake</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Dec 15, 2010</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

191
html/TagNames/GIF.html Normal file
View File

@ -0,0 +1,191 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>GIF Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>GIF Tags</h2>
<p>This table lists information extracted from GIF images. See
<a href="http://www.w3.org/Graphics/GIF/spec-gif89a.txt">http://www.w3.org/Graphics/GIF/spec-gif89a.txt</a> for the official GIF89a
specification.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>Comment</td>
<td class=c>yes</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Duration</td>
<td class=c>no</td>
<td><span class=s><span class=n>(duration of a single animation iteration)</span></span></td></tr>
<tr>
<td>Extensions</td>
<td class=c>-</td>
<td>--&gt; <a href='GIF.html#Extensions'>GIF Extensions Tags</a></td></tr>
<tr class=b>
<td>FrameCount</td>
<td class=c>no</td>
<td><span class=s><span class=n>(number of animated images)</span></span></td></tr>
<tr>
<td>GIFVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ScreenDescriptor</td>
<td class=c>-</td>
<td>--&gt; <a href='GIF.html#Screen'>GIF Screen Tags</a></td></tr>
<tr>
<td>Text</td>
<td class=c>no</td>
<td><span class=s><span class=n>(text displayed in image)</span></span></td></tr>
<tr class=b>
<td>TransparentColor</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Extensions'>GIF Extensions Tags</a></h2>
<p>Tags extracted from GIF89a application extensions.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'ICCRGBG1/012'</td>
<td>ICC_Profile</td>
<td class=c>yes</td>
<td>--&gt; <a href='ICC_Profile.html'>ICC_Profile Tags</a></td></tr>
<tr class=b>
<td>'MIDICTRL/Jon'</td>
<td>MIDIControl</td>
<td class=c>-</td>
<td>--&gt; <a href='GIF.html#MIDIControl'>GIF MIDIControl Tags</a></td></tr>
<tr>
<td>'MIDISONG/Dm7'</td>
<td>MIDISong</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'NETSCAPE/2.0'</td>
<td>Animation</td>
<td class=c>-</td>
<td>--&gt; <a href='GIF.html#Animation'>GIF Animation Tags</a></td></tr>
<tr>
<td>'XMP Data/XMP'</td>
<td>XMP</td>
<td class=c>yes</td>
<td>--&gt; <a href='XMP.html'>XMP Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='MIDIControl'>GIF MIDIControl Tags</a></h2>
<p>Information extracted from the MIDI control block extension.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>MIDIControlVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>SequenceNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>MelodicPolyphony</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>PercussivePolyphony</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>ChannelUsage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='6 = 0x6'>6</td>
<td>DelayTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Animation'>GIF Animation Tags</a></h2>
<p>Information extracted from the &quot;NETSCAPE2.0&quot; animation extension.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='1 = 0x1'>1</td>
<td>AnimationIterations</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Screen'>GIF Screen Tags</a></h2>
<p>Information extracted from the GIF logical screen descriptor.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4.1</td>
<td>HasColorMap</td>
<td class=c>no</td>
<td><span class=s>[val &gt;&gt; 7 &amp; 0x1]
<br>0 = No
<br>1 = Yes</span></td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4.2</td>
<td>ColorResolutionDepth</td>
<td class=c>no</td>
<td><span class=s>[val &gt;&gt; 4 &amp; 0x7]</span></td></tr>
<tr>
<td class=r title='4 = 0x4'>4.3</td>
<td>BitsPerPixel</td>
<td class=c>no</td>
<td><span class=s>[val &amp; 0x7]</span></td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>BackgroundColor</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='6 = 0x6'>6</td>
<td>PixelAspectRatio</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Dec 8, 2021</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

159
html/TagNames/GIMP.html Normal file
View File

@ -0,0 +1,159 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>GIMP Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>GIMP Tags</h2>
<p>The GNU Image Manipulation Program (GIMP) writes these tags in its native
XCF (eXperimental Computing Facilty) images.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'header'</td>
<td>Header</td>
<td class=c>-</td>
<td>--&gt; <a href='GIMP.html#Header'>GIMP Header Tags</a></td></tr>
<tr class=b>
<td title='0x0011 = 17'>0x0011</td>
<td>Compression</td>
<td class=c>no</td>
<td><span class=s>0 = None
<br>1 = RLE Encoding
<br>2 = Zlib
<br>3 = Fractal</span></td></tr>
<tr>
<td title='0x0013 = 19'>0x0013</td>
<td>Resolution</td>
<td class=c>-</td>
<td>--&gt; <a href='GIMP.html#Resolution'>GIMP Resolution Tags</a></td></tr>
<tr class=b>
<td title='0x0014 = 20'>0x0014</td>
<td>Tattoo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0015 = 21'>0x0015</td>
<td>Parasites</td>
<td class=c>-</td>
<td>--&gt; <a href='GIMP.html#Parasite'>GIMP Parasite Tags</a></td></tr>
<tr class=b>
<td title='0x0016 = 22'>0x0016</td>
<td>Units</td>
<td class=c>no</td>
<td><span class=s>1 = Inches
<br>2 = mm
<br>3 = Points
<br>4 = Picas</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Header'>GIMP Header Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='9 = 0x9'>9</td>
<td>XCFVersion</td>
<td class=c>no</td>
<td><span class=s>&#39;file&#39; = 0
<br>&#39;v001&#39; = 1
<br>&#39;v002&#39; = 2</span></td></tr>
<tr class=b>
<td class=r title='14 = 0xe'>14</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='18 = 0x12'>18</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='22 = 0x16'>22</td>
<td>ColorMode</td>
<td class=c>no</td>
<td><span class=s>0 = RGB Color
<br>1 = Grayscale
<br>2 = Indexed Color</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Resolution'>GIMP Resolution Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>XResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>YResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Parasite'>GIMP Parasite Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'exif-data'</td>
<td>ExifData</td>
<td class=c>-</td>
<td>--&gt; <a href='EXIF.html'>EXIF Tags</a></td></tr>
<tr class=b>
<td>'gimp-comment'</td>
<td>Comment</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'gimp-image-metadata'</td>
<td>XML</td>
<td class=c>-</td>
<td>--&gt; <a href='XMP.html#XML'>XMP XML Tags</a></td></tr>
<tr class=b>
<td>'gimp-metadata'</td>
<td>XMP</td>
<td class=c>-</td>
<td>--&gt; <a href='XMP.html'>XMP Tags</a></td></tr>
<tr>
<td>'icc-profile'</td>
<td>ICC_Profile</td>
<td class=c>-</td>
<td>--&gt; <a href='ICC_Profile.html'>ICC_Profile Tags</a></td></tr>
<tr class=b>
<td>'icc-profile-name'</td>
<td>ICCProfileName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'iptc-data'</td>
<td>IPTCData</td>
<td class=c>-</td>
<td>--&gt; <a href='IPTC.html'>IPTC Tags</a></td></tr>
<tr class=b>
<td>'jpeg-exif-data'</td>
<td>JPEGExifData</td>
<td class=c>-</td>
<td>--&gt; <a href='EXIF.html'>EXIF Tags</a></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Aug 21, 2018</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

231
html/TagNames/GPS.html Normal file
View File

@ -0,0 +1,231 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>GPS Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>GPS Tags</h2>
<p>
These GPS tags are part of the EXIF standard, and are stored in a separate
IFD within the EXIF information.</p>
<p>ExifTool is very flexible about the input format when writing lat/long
coordinates, and will accept from 1 to 3 floating point numbers (for decimal
degrees, degrees and minutes, or degrees, minutes and seconds) separated by
just about anything, and will format them properly according to the EXIF
specification.</p>
<p>Some GPS tags have values which are fixed-length strings. For these, the
indicated string lengths include a null terminator which is added
automatically by ExifTool. Remember that the descriptive values are used
when writing (eg. &#39;Above Sea Level&#39;, not &#39;0&#39;) unless the print conversion is
disabled (with &#39;-n&#39; on the command line or the <a href="../ExifTool.html#PrintConv">PrintConv</a> option in the API,
or by suffixing the tag name with a <code>#</code> character).</p>
<p>When adding GPS information to an image, it is important to set all of the
following tags: GPSLatitude, GPSLatitudeRef, GPSLongitude, GPSLongitudeRef,
and GPSAltitude and GPSAltitudeRef if the altitude is known. ExifTool will
write the required GPSVersionID tag automatically if new a GPS IFD is added
to an image.
</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0000 = 0'>0x0000</td>
<td>GPSVersionID</td>
<td class=c title=' : = Mandatory'>int8u[4]:</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0001 = 1'>0x0001</td>
<td>GPSLatitudeRef</td>
<td class=c>string[2]</td>
<td><span class=s><span class=n>(tags 0x0001-0x0006 used for camera location according to MWG 2.0. ExifTool
will also accept a number when writing GPSLatitudeRef, positive for north
latitudes or negative for south, or a string containing N, North, S or South)</span>
<br>&#39;N&#39; = North
<br>&#39;S&#39; = South</span></td></tr>
<tr>
<td title='0x0002 = 2'>0x0002</td>
<td>GPSLatitude</td>
<td class=c>rational64u[3]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0003 = 3'>0x0003</td>
<td>GPSLongitudeRef</td>
<td class=c>string[2]</td>
<td><span class=s><span class=n>(ExifTool will also accept a number when writing this tag, positive for east
longitudes or negative for west, or a string containing E, East, W or West)</span>
<br>&#39;E&#39; = East
<br>&#39;W&#39; = West</span></td></tr>
<tr>
<td title='0x0004 = 4'>0x0004</td>
<td>GPSLongitude</td>
<td class=c>rational64u[3]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0005 = 5'>0x0005</td>
<td>GPSAltitudeRef</td>
<td class=c>int8u</td>
<td><span class=s><span class=n>(ExifTool will also accept number when writing this tag, with negative
numbers indicating below sea level)</span>
<br>0 = Above Sea Level
<br>1 = Below Sea Level</span></td></tr>
<tr>
<td title='0x0006 = 6'>0x0006</td>
<td>GPSAltitude</td>
<td class=c>rational64u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0007 = 7'>0x0007</td>
<td>GPSTimeStamp</td>
<td class=c>rational64u[3]</td>
<td><span class=s><span class=n>(UTC time of GPS fix. When writing, date is stripped off if present, and
time is adjusted to UTC if it includes a timezone)</span></span></td></tr>
<tr>
<td title='0x0008 = 8'>0x0008</td>
<td>GPSSatellites</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0009 = 9'>0x0009</td>
<td>GPSStatus</td>
<td class=c>string[2]</td>
<td><span class=s>&#39;A&#39; = Measurement Active
<br>&#39;V&#39; = Measurement Void</span></td></tr>
<tr>
<td title='0x000a = 10'>0x000a</td>
<td>GPSMeasureMode</td>
<td class=c>string[2]</td>
<td><span class=s>2 = 2-Dimensional Measurement
<br>3 = 3-Dimensional Measurement</span></td></tr>
<tr class=b>
<td title='0x000b = 11'>0x000b</td>
<td>GPSDOP</td>
<td class=c>rational64u</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x000c = 12'>0x000c</td>
<td>GPSSpeedRef</td>
<td class=c>string[2]</td>
<td><span class=s>&#39;K&#39; = km/h
<br>&#39;M&#39; = mph
<br>&#39;N&#39; = knots</span></td></tr>
<tr class=b>
<td title='0x000d = 13'>0x000d</td>
<td>GPSSpeed</td>
<td class=c>rational64u</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x000e = 14'>0x000e</td>
<td>GPSTrackRef</td>
<td class=c>string[2]</td>
<td><span class=s>&#39;M&#39; = Magnetic North
<br>&#39;T&#39; = True North</span></td></tr>
<tr class=b>
<td title='0x000f = 15'>0x000f</td>
<td>GPSTrack</td>
<td class=c>rational64u</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0010 = 16'>0x0010</td>
<td>GPSImgDirectionRef</td>
<td class=c>string[2]</td>
<td><span class=s>&#39;M&#39; = Magnetic North
<br>&#39;T&#39; = True North</span></td></tr>
<tr class=b>
<td title='0x0011 = 17'>0x0011</td>
<td>GPSImgDirection</td>
<td class=c>rational64u</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0012 = 18'>0x0012</td>
<td>GPSMapDatum</td>
<td class=c>string</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0013 = 19'>0x0013</td>
<td>GPSDestLatitudeRef</td>
<td class=c>string[2]</td>
<td><span class=s><span class=n>(tags 0x0013-0x001a used for subject location according to MWG 2.0)</span>
<br>&#39;N&#39; = North
<br>&#39;S&#39; = South</span></td></tr>
<tr>
<td title='0x0014 = 20'>0x0014</td>
<td>GPSDestLatitude</td>
<td class=c>rational64u[3]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0015 = 21'>0x0015</td>
<td>GPSDestLongitudeRef</td>
<td class=c>string[2]</td>
<td><span class=s>&#39;E&#39; = East
<br>&#39;W&#39; = West</span></td></tr>
<tr>
<td title='0x0016 = 22'>0x0016</td>
<td>GPSDestLongitude</td>
<td class=c>rational64u[3]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0017 = 23'>0x0017</td>
<td>GPSDestBearingRef</td>
<td class=c>string[2]</td>
<td><span class=s>&#39;M&#39; = Magnetic North
<br>&#39;T&#39; = True North</span></td></tr>
<tr>
<td title='0x0018 = 24'>0x0018</td>
<td>GPSDestBearing</td>
<td class=c>rational64u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0019 = 25'>0x0019</td>
<td>GPSDestDistanceRef</td>
<td class=c>string[2]</td>
<td><span class=s>&#39;K&#39; = Kilometers
<br>&#39;M&#39; = Miles
<br>&#39;N&#39; = Nautical Miles</span></td></tr>
<tr>
<td title='0x001a = 26'>0x001a</td>
<td>GPSDestDistance</td>
<td class=c>rational64u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x001b = 27'>0x001b</td>
<td>GPSProcessingMethod</td>
<td class=c>undef</td>
<td><span class=s><span class=n>(values of &quot;GPS&quot;, &quot;CELLID&quot;, &quot;WLAN&quot; or &quot;MANUAL&quot; by the EXIF spec.)</span></span></td></tr>
<tr>
<td title='0x001c = 28'>0x001c</td>
<td>GPSAreaInformation</td>
<td class=c>undef</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x001d = 29'>0x001d</td>
<td>GPSDateStamp</td>
<td class=c>string[11]</td>
<td><span class=s><span class=n>(when writing, time is stripped off if present, after adjusting date/time to
UTC if time includes a timezone. Format is YYYY:mm:dd)</span></span></td></tr>
<tr>
<td title='0x001e = 30'>0x001e</td>
<td>GPSDifferential</td>
<td class=c>int16u</td>
<td><span class=s>0 = No Correction
<br>1 = Differential Corrected</span></td></tr>
<tr class=b>
<td title='0x001f = 31'>0x001f</td>
<td>GPSHPositioningError</td>
<td class=c>rational64u</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Mar 17, 2021</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

2301
html/TagNames/GeoTiff.html Normal file

File diff suppressed because it is too large Load Diff

589
html/TagNames/GoPro.html Normal file
View File

@ -0,0 +1,589 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>GoPro Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top><a name='GPMF'>GoPro GPMF Tags</a></h2>
<p>Tags extracted from the GPMF box of GoPro MP4 videos, the APP6 &quot;GoPro&quot;
segment of JPEG files, and from the &quot;gpmd&quot; timed metadata if the
<a href="../ExifTool.html#ExtractEmbedded">ExtractEmbedded</a> (-ee) option is enabled. Many more tags exist, but are
currently unknown and extracted only with the <a href="../ExifTool.html#Unknown">Unknown</a> (-u) option. Please
let me know if you discover the meaning of any of these unknown tags. See
<a href="https://github.com/gopro/gpmf-parser">https://github.com/gopro/gpmf-parser</a> for details about this format.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'ACCL'</td>
<td>Accelerometer</td>
<td class=c>no</td>
<td><span class=s><span class=n>(accelerator readings in m/s2)</span></span></td></tr>
<tr class=b>
<td>'ALLD'</td>
<td>AutoLowLightDuration</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ATTD'</td>
<td>Attitude</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ATTR'</td>
<td>AttitudeTarget</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'AUDO'</td>
<td>AudioSetting</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'BPOS'</td>
<td>Controller?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'CASN'</td>
<td>CameraSerialNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'CSEN'</td>
<td>CoyoteSense</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'CYTS'</td>
<td>CoyoteStatus</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'DEVC'</td>
<td>DeviceContainer</td>
<td class=c>-</td>
<td>--&gt; <a href='GoPro.html#GPMF'>GoPro GPMF Tags</a></td></tr>
<tr>
<td>'DVID'</td>
<td>DeviceID?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'DVNM'</td>
<td>DeviceName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'DZOM'</td>
<td>DigitalZoom</td>
<td class=c>no</td>
<td><span class=s>&#39;N&#39; = No
<br>&#39;Y&#39; = Yes</span></td></tr>
<tr class=b>
<td>'EISA'</td>
<td>ElectronicImageStabilization</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'EMPT'</td>
<td>Empty?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ESCS'</td>
<td>EscapeStatus?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'EXPT'</td>
<td>MaximumShutterAngle</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'FACE'</td>
<td>FaceDetected</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'FCNM'</td>
<td>FaceNumbers</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'FMWR'</td>
<td>FirmwareVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'FWVS'</td>
<td>OtherFirmware</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'GLPI'</td>
<td>GPSPos</td>
<td class=c>-</td>
<td>--&gt; <a href='GoPro.html#GLPI'>GoPro GLPI Tags</a></td></tr>
<tr>
<td>'GPRI'</td>
<td>GPSRaw?</td>
<td class=c>-</td>
<td>--&gt; <a href='GoPro.html#GPRI'>GoPro GPRI Tags</a></td></tr>
<tr class=b>
<td>'GPS5'</td>
<td>GPSInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='GoPro.html#GPS5'>GoPro GPS5 Tags</a></td></tr>
<tr>
<td>'GPSF'</td>
<td>GPSMeasureMode</td>
<td class=c>no</td>
<td><span class=s>2 = 2-Dimensional Measurement
<br>3 = 3-Dimensional Measurement</span></td></tr>
<tr class=b>
<td>'GPSP'</td>
<td>GPSHPositioningError</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'GPSU'</td>
<td>GPSDateTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'GYRO'</td>
<td>Gyroscope</td>
<td class=c>no</td>
<td><span class=s><span class=n>(gyroscope readings in rad/s)</span></span></td></tr>
<tr>
<td>'ISOE'</td>
<td>ISOSpeeds</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ISOG'</td>
<td>ImageSensorGain</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'KBAT'</td>
<td>BatteryStatus</td>
<td class=c>-</td>
<td>--&gt; <a href='GoPro.html#KBAT'>GoPro KBAT Tags</a></td></tr>
<tr class=b>
<td>'LNED'</td>
<td>LocalPositionNED</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'MAGN'</td>
<td>Magnetometer</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'MINF'</td>
<td>Model</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'MTRX'</td>
<td>AccelerometerMatrix</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'MUID'</td>
<td>MediaUniqueID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'OREN'</td>
<td>AutoRotation</td>
<td class=c>no</td>
<td><span class=s>&#39;A&#39; = Auto
<br>&#39;D&#39; = Down
<br>&#39;U&#39; = Up</span></td></tr>
<tr class=b>
<td>'ORIN'</td>
<td>InputOrientation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ORIO'</td>
<td>OutputOrientation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'PHDR'</td>
<td>HDRSetting</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'PIMN'</td>
<td>AutoISOMin</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'PIMX'</td>
<td>AutoISOMax</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'PRES'</td>
<td>PhotoResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'PRTN'</td>
<td>ProTune</td>
<td class=c>no</td>
<td><span class=s>&#39;N&#39; = Off
<br>&#39;Y&#39; = On</span></td></tr>
<tr>
<td>'PTCL'</td>
<td>ColorMode</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'PTEV'</td>
<td>ExposureCompensation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'PTSH'</td>
<td>Sharpness</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'PTWB'</td>
<td>WhiteBalance</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'RATE'</td>
<td>Rate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'RMRK'</td>
<td>Comments</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'SCAL'</td>
<td>ScaleFactor?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'SCPR'</td>
<td>ScaledPressure</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'SHUT'</td>
<td>ExposureTimes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'SIMU'</td>
<td>ScaledIMU</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'SIUN'</td>
<td>SIUnits?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'SROT'</td>
<td>SensorReadoutTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'STMP'</td>
<td>TimeStamp</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'STNM'</td>
<td>StreamName?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'STRM'</td>
<td>NestedSignalStream</td>
<td class=c>-</td>
<td>--&gt; <a href='GoPro.html#GPMF'>GoPro GPMF Tags</a></td></tr>
<tr class=b>
<td>'SYST'</td>
<td>SystemTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'TMPC'</td>
<td>CameraTemperature</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'TSMP'</td>
<td>TotalSamples?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'TYPE'</td>
<td>StructureType?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'UNIF'</td>
<td>InputUniformity</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'UNIT'</td>
<td>Units?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'VERS'</td>
<td>MetadataVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'VFOV'</td>
<td>FieldOfView</td>
<td class=c>no</td>
<td><span class=s>&#39;L&#39; = Linear
<br>&#39;S&#39; = Super View
<br>&#39;W&#39; = Wide</span></td></tr>
<tr class=b>
<td>'VFRH'</td>
<td>VisualFlightRulesHUD</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'WBAL'</td>
<td>ColorTemperatures</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'WRGB'</td>
<td>WhiteBalanceRGB</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='GLPI'>GoPro GLPI Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>GPSDateTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>GPSLatitude</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>GPSLongitude</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>GPSAltitude</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='5 = 0x5'>5</td>
<td>GPSSpeedX</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='6 = 0x6'>6</td>
<td>GPSSpeedY</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='7 = 0x7'>7</td>
<td>GPSSpeedZ</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='8 = 0x8'>8</td>
<td>GPSTrack</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='GPRI'>GoPro GPRI Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>GPSDateTimeRaw</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>GPSLatitudeRaw</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>GPSLongitudeRaw</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>GPSAltitudeRaw</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='6 = 0x6'>6</td>
<td>GPSSpeedRaw</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='7 = 0x7'>7</td>
<td>GPSTrackRaw</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='GPS5'>GoPro GPS5 Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>GPSLatitude</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>GPSLongitude</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>GPSAltitude</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>GPSSpeed</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>GPSSpeed3D</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='KBAT'>GoPro KBAT Tags</a></h2>
<p>Battery status information found in GoPro Karma videos.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>BatteryCurrent</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>BatteryCapacity</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>BatteryTemperature</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>BatteryVoltage1</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='5 = 0x5'>5</td>
<td>BatteryVoltage2</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='6 = 0x6'>6</td>
<td>BatteryVoltage3</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='7 = 0x7'>7</td>
<td>BatteryVoltage4</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='8 = 0x8'>8</td>
<td>BatteryTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='14 = 0xe'>14</td>
<td>BatteryLevel</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='fdsc'>GoPro fdsc Tags</a></h2>
<p>Tags extracted from the MP4 &quot;fdsc&quot; timed metadata when the <a href="../ExifTool.html#ExtractEmbedded">ExtractEmbedded</a>
(-ee) option is used.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>FirmwareVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='23 = 0x17'>23</td>
<td>SerialNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='87 = 0x57'>87</td>
<td>OtherSerialNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='102 = 0x66'>102</td>
<td>Model</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Sep 22, 2021</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

399
html/TagNames/H264.html Normal file
View File

@ -0,0 +1,399 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>H264 Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>H264 Tags</h2>
<p>Tags extracted from H.264 video streams. The metadata for AVCHD videos is
stored in this stream.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>MDPM</td>
<td class=c>-</td>
<td>--&gt; <a href='H264.html#MDPM'>H264 MDPM Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='MDPM'>H264 MDPM Tags</a></h2>
<p>The following tags are decoded from the Modified Digital Video Pack Metadata
(MDPM) of the unregistered user data with UUID
17ee8c60f84d11d98cd60800200c9a66 in the H.264 Supplemental Enhancement
Information (SEI). <i>[Yes, this description is confusing, but nothing
compared to the challenge of actually decoding the data!]</i> This information
may exist at regular intervals through the entire video, but only the first
occurrence is extracted unless the <a href="../ExifTool.html#ExtractEmbedded">ExtractEmbedded</a> (-ee) option is used (in
which case subsequent occurrences are extracted as sub-documents).</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0013 = 19'>0x0013</td>
<td>TimeCode</td>
<td class=c>no</td>
<td><span class=s><span class=n>(hours:minutes:seconds:frames)</span></span></td></tr>
<tr class=b>
<td title='0x0018 = 24'>0x0018</td>
<td>DateTimeOriginal</td>
<td class=c>no</td>
<td><span class=s><span class=n>(combined with tag 0x19)</span></span></td></tr>
<tr>
<td title='0x0070 = 112'>0x0070</td>
<td>Camera1</td>
<td class=c>-</td>
<td>--&gt; <a href='H264.html#Camera1'>H264 Camera1 Tags</a></td></tr>
<tr class=b>
<td title='0x0071 = 113'>0x0071</td>
<td>Camera2</td>
<td class=c>-</td>
<td>--&gt; <a href='H264.html#Camera2'>H264 Camera2 Tags</a></td></tr>
<tr>
<td title='0x007f = 127'>0x007f</td>
<td>Shutter</td>
<td class=c>-</td>
<td>--&gt; <a href='H264.html#Shutter'>H264 Shutter Tags</a></td></tr>
<tr class=b>
<td title='0x00a0 = 160'>0x00a0</td>
<td>ExposureTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x00a1 = 161'>0x00a1</td>
<td>FNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x00a2 = 162'>0x00a2</td>
<td>ExposureProgram</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Not Defined
<br>1 = Manual
<br>2 = Program AE
<br>3 = Aperture-priority AE
<br>4 = Shutter speed priority AE
<br>5 = Creative (Slow speed)
<br>6 = Action (High speed)
<br>7 = Portrait
<br>8 = Landscape</td></tr></table>
</td></tr>
<tr>
<td title='0x00a3 = 163'>0x00a3</td>
<td>BrightnessValue</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x00a4 = 164'>0x00a4</td>
<td>ExposureCompensation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x00a5 = 165'>0x00a5</td>
<td>MaxApertureValue</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x00a6 = 166'>0x00a6</td>
<td>Flash</td>
<td class=c>no</td>
<td>--&gt; <a href='EXIF.html#Flash'>EXIF Flash Values</a></td></tr>
<tr>
<td title='0x00a7 = 167'>0x00a7</td>
<td>CustomRendered</td>
<td class=c>no</td>
<td><span class=s>0 = Normal
<br>1 = Custom</span></td></tr>
<tr class=b>
<td title='0x00a8 = 168'>0x00a8</td>
<td>WhiteBalance</td>
<td class=c>no</td>
<td><span class=s>0 = Auto
<br>1 = Manual</span></td></tr>
<tr>
<td title='0x00a9 = 169'>0x00a9</td>
<td>FocalLengthIn35mmFormat</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x00aa = 170'>0x00aa</td>
<td>SceneCaptureType</td>
<td class=c>no</td>
<td><span class=s>0 = Standard
<br>1 = Landscape
<br>2 = Portrait
<br>3 = Night</span></td></tr>
<tr>
<td title='0x00b0 = 176'>0x00b0</td>
<td>GPSVersionID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x00b1 = 177'>0x00b1</td>
<td>GPSLatitudeRef</td>
<td class=c>no</td>
<td><span class=s>&#39;N&#39; = North
<br>&#39;S&#39; = South</span></td></tr>
<tr>
<td title='0x00b2 = 178'>0x00b2</td>
<td>GPSLatitude</td>
<td class=c>no</td>
<td><span class=s><span class=n>(combined with tags 0xb3 and 0xb4)</span></span></td></tr>
<tr class=b>
<td title='0x00b5 = 181'>0x00b5</td>
<td>GPSLongitudeRef</td>
<td class=c>no</td>
<td><span class=s>&#39;E&#39; = East
<br>&#39;W&#39; = West</span></td></tr>
<tr>
<td title='0x00b6 = 182'>0x00b6</td>
<td>GPSLongitude</td>
<td class=c>no</td>
<td><span class=s><span class=n>(combined with tags 0xb7 and 0xb8)</span></span></td></tr>
<tr class=b>
<td title='0x00b9 = 185'>0x00b9</td>
<td>GPSAltitudeRef</td>
<td class=c>no</td>
<td><span class=s>0 = Above Sea Level
<br>1 = Below Sea Level</span></td></tr>
<tr>
<td title='0x00ba = 186'>0x00ba</td>
<td>GPSAltitude</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x00bb = 187'>0x00bb</td>
<td>GPSTimeStamp</td>
<td class=c>no</td>
<td><span class=s><span class=n>(combined with tags 0xbc and 0xbd)</span></span></td></tr>
<tr>
<td title='0x00be = 190'>0x00be</td>
<td>GPSStatus</td>
<td class=c>no</td>
<td><span class=s>&#39;A&#39; = Measurement Active
<br>&#39;V&#39; = Measurement Void</span></td></tr>
<tr class=b>
<td title='0x00bf = 191'>0x00bf</td>
<td>GPSMeasureMode</td>
<td class=c>no</td>
<td><span class=s>2 = 2-Dimensional Measurement
<br>3 = 3-Dimensional Measurement</span></td></tr>
<tr>
<td title='0x00c0 = 192'>0x00c0</td>
<td>GPSDOP</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x00c1 = 193'>0x00c1</td>
<td>GPSSpeedRef</td>
<td class=c>no</td>
<td><span class=s>&#39;K&#39; = km/h
<br>&#39;M&#39; = mph
<br>&#39;N&#39; = knots</span></td></tr>
<tr>
<td title='0x00c2 = 194'>0x00c2</td>
<td>GPSSpeed</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x00c3 = 195'>0x00c3</td>
<td>GPSTrackRef</td>
<td class=c>no</td>
<td><span class=s>&#39;M&#39; = Magnetic North
<br>&#39;T&#39; = True North</span></td></tr>
<tr>
<td title='0x00c4 = 196'>0x00c4</td>
<td>GPSTrack</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x00c5 = 197'>0x00c5</td>
<td>GPSImgDirectionRef</td>
<td class=c>no</td>
<td><span class=s>&#39;M&#39; = Magnetic North
<br>&#39;T&#39; = True North</span></td></tr>
<tr>
<td title='0x00c6 = 198'>0x00c6</td>
<td>GPSImgDirection</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x00c7 = 199'>0x00c7</td>
<td>GPSMapDatum</td>
<td class=c>no</td>
<td><span class=s><span class=n>(combined with tag 0xc8)</span></span></td></tr>
<tr>
<td title='0x00ca = 202'>0x00ca</td>
<td>GPSDateStamp</td>
<td class=c>no</td>
<td><span class=s><span class=n>(combined with tags 0xcb and 0xcc)</span></span></td></tr>
<tr class=b>
<td title='0x00e0 = 224'>0x00e0</td>
<td>MakeModel</td>
<td class=c>-</td>
<td>--&gt; <a href='H264.html#MakeModel'>H264 MakeModel Tags</a></td></tr>
<tr>
<td title='0x00e1 = 225'>0x00e1</td>
<td>RecInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='H264.html#RecInfo'>H264 RecInfo Tags</a>
<br><span class='n s'>(Canon only)</span></td></tr>
<tr class=b>
<td title='0x00e4 = 228'>0x00e4</td>
<td>Model</td>
<td class=c>no</td>
<td><span class=s><span class=n>(Sony only, combined with tags 0xe5 and 0xe6)</span></span></td></tr>
<tr>
<td title='0x00ee = 238'>0x00ee</td>
<td>FrameInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='H264.html#FrameInfo'>H264 FrameInfo Tags</a>
<br><span class='n s'>(Canon only)</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Camera1'>H264 Camera1 Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>ApertureSetting</td>
<td class=c>no</td>
<td><span class=s>0xfe = Closed
<br>0xff = Auto</span></td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>Gain</td>
<td class=c>no</td>
<td><span class=s>[val &amp; 0xf]</span></td></tr>
<tr>
<td class=r title='1 = 0x1'>1.1</td>
<td>ExposureProgram</td>
<td class=c>no</td>
<td><span class=s>[val &gt;&gt; 4 &amp; 0xf]
<br>0 = Program AE
<br>1 = Gain
<br>2 = Shutter speed priority AE
<br>3 = Aperture-priority AE
<br>4 = Manual</span></td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2.1</td>
<td>WhiteBalance</td>
<td class=c>no</td>
<td><span class=s>[val &gt;&gt; 5 &amp; 0x7]
<br>0 = Auto
<br>1 = Hold
<br>2 = 1-Push
<br>3 = Daylight</span></td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>Focus</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Camera2'>H264 Camera2 Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='1 = 0x1'>1</td>
<td>ImageStabilization</td>
<td class=c>no</td>
<td><span class=s>0x0 = Off
<br>0x3f = On (0x3f)
<br>0xbf = Off (0xbf)
<br>0xff = n/a</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Shutter'>H264 Shutter Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index2</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='1 = 0x1'>1.1</td>
<td>ExposureTime</td>
<td class=c>no</td>
<td><span class=s>[val &amp; 0x7fff]</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='MakeModel'>H264 MakeModel Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index2</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>Make</td>
<td class=c>no</td>
<td><span class=s>0x103 = Panasonic
<br>0x108 = Sony
<br>0x1011 = Canon
<br>0x1104 = JVC</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='RecInfo'>H264 RecInfo Tags</a></h2>
<p>Recording information stored by some Canon video cameras.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>RecordingMode</td>
<td class=c>no</td>
<td><span class=s>2 = XP+
<br>4 = SP
<br>5 = LP
<br>6 = FXP
<br>7 = MXP</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='FrameInfo'>H264 FrameInfo Tags</a></h2>
<p>Frame rate information stored by some Canon video cameras.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>CaptureFrameRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>VideoFrameRate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Feb 3, 2021</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

156
html/TagNames/HP.html Normal file
View File

@ -0,0 +1,156 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>HP Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>HP Tags</h2>
<p>These tables list tags found in the maker notes of some Hewlett-Packard
camera models.</p>
<p>The first table lists tags found in the EXIF-format maker notes of the
PhotoSmart 720 (also used by the Vivitar ViviCam 3705, 3705B and 3715).</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0e00 = 3584'>0x0e00</td>
<td>PrintIM</td>
<td class=c>-</td>
<td>--&gt; <a href='PrintIM.html'>PrintIM Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Type2'>HP Type2 Tags</a></h2>
<p>These tags are used by the PhotoSmart E427.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Lens Shading'</td>
<td>LensShading</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'PreviewImage'</td>
<td>PreviewImage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Serial Number'</td>
<td>SerialNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Type4'>HP Type4 Tags</a></h2>
<p>These tags are used by the PhotoSmart M627.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='12 = 0xc'>12</td>
<td>MaxAperture</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='16 = 0x10'>16</td>
<td>ExposureTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='20 = 0x14'>20</td>
<td>CameraDateTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='52 = 0x34'>52</td>
<td>ISO</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='92 = 0x5c'>92</td>
<td>SerialNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Type6'>HP Type6 Tags</a></h2>
<p>These tags are used by the PhotoSmart M425, M525 and M527.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='12 = 0xc'>12</td>
<td>FNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='16 = 0x10'>16</td>
<td>ExposureTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='20 = 0x14'>20</td>
<td>CameraDateTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='52 = 0x34'>52</td>
<td>ISO</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='88 = 0x58'>88</td>
<td>SerialNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='TDHD'>HP TDHD Tags</a></h2>
<p>These tags are extracted from the APP6 &quot;TDHD&quot; segment of Photosmart R837
JPEG images. Many other unknown tags exist in is data, and can be seen with
the <a href="../ExifTool.html#Unknown">Unknown</a> (-u) option.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'CMSN'</td>
<td>SerialNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'FWRV'</td>
<td>FirmwareVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'LSLV'</td>
<td>LSLV</td>
<td class=c>-</td>
<td>--&gt; <a href='HP.html#TDHD'>HP TDHD Tags</a></td></tr>
<tr class=b>
<td>'TDHD'</td>
<td>TDHD</td>
<td class=c>-</td>
<td>--&gt; <a href='HP.html#TDHD'>HP TDHD Tags</a></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised May 31, 2010</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

667
html/TagNames/HTML.html Normal file
View File

@ -0,0 +1,667 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>HTML Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>HTML Tags</h2>
<p>Meta information extracted from the header of HTML and XHTML files. This is
a mix of information found in the <code>META</code> elements, <code>XML</code> element, and the
<code>TITLE</code> element.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'abstract'</td>
<td>Abstract</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'author'</td>
<td>Author</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'classification'</td>
<td>Classification</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'content-language'</td>
<td>ContentLanguage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'copyright'</td>
<td>Copyright</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'dc'</td>
<td>DC</td>
<td class=c>-</td>
<td>--&gt; <a href='HTML.html#dc'>HTML dc Tags</a></td></tr>
<tr>
<td>'description'</td>
<td>Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'distribution'</td>
<td>Distribution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'doc-class'</td>
<td>DocClass</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'doc-rights'</td>
<td>DocRights</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'doc-type'</td>
<td>DocType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'formatter'</td>
<td>Formatter</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'generator'</td>
<td>Generator</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'generatorversion'</td>
<td>GeneratorVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'googlebot'</td>
<td>GoogleBot</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'http-equiv'</td>
<td>HTTP-equiv</td>
<td class=c>-</td>
<td>--&gt; <a href='HTML.html#equiv'>HTML equiv Tags</a></td></tr>
<tr>
<td>'keywords'</td>
<td>Keywords</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'mssmarttagspreventparsing'</td>
<td>NoMSSmartTags</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ncc'</td>
<td>NCC</td>
<td class=c>-</td>
<td>--&gt; <a href='HTML.html#ncc'>HTML ncc Tags</a></td></tr>
<tr class=b>
<td>'o'</td>
<td>Office</td>
<td class=c>-</td>
<td>--&gt; <a href='HTML.html#Office'>HTML Office Tags</a></td></tr>
<tr>
<td>'originator'</td>
<td>Originator</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'owner'</td>
<td>Owner</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'prod'</td>
<td>Prod</td>
<td class=c>-</td>
<td>--&gt; <a href='HTML.html#prod'>HTML prod Tags</a></td></tr>
<tr class=b>
<td>'progid'</td>
<td>ProgID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'rating'</td>
<td>Rating</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'refresh'</td>
<td>Refresh</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'resource-type'</td>
<td>ResourceType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'revisit-after'</td>
<td>RevisitAfter</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'robots'</td>
<td>Robots</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'title'</td>
<td>Title</td>
<td class=c>no</td>
<td><span class=s><span class=n>(the only extracted tag which isn&#39;t from an HTML META element)</span></span></td></tr>
<tr>
<td>'vw96'</td>
<td>VW96</td>
<td class=c>-</td>
<td>--&gt; <a href='HTML.html#vw96'>HTML vw96 Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='dc'>HTML dc Tags</a></h2>
<p>Dublin Core schema tags (also used in XMP).</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'contributor'</td>
<td>Contributor</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'coverage'</td>
<td>Coverage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'creator'</td>
<td>Creator</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'date'</td>
<td>Date</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
<tr>
<td>'description'</td>
<td>Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'format'</td>
<td>Format</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'identifier'</td>
<td>Identifier</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'language'</td>
<td>Language</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
<tr>
<td>'publisher'</td>
<td>Publisher</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'relation'</td>
<td>Relation</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
<tr>
<td>'rights'</td>
<td>Rights</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'source'</td>
<td>Source</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'subject'</td>
<td>Subject</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'title'</td>
<td>Title</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'type'</td>
<td>Type</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='equiv'>HTML equiv Tags</a></h2>
<p>These tags have a family 1 group name of &quot;HTTP-equiv&quot;.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'cache-control'</td>
<td>CacheControl</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'content-disposition'</td>
<td>ContentDisposition</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'content-language'</td>
<td>ContentLanguage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'content-script-type'</td>
<td>ContentScriptType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'content-style-type'</td>
<td>ContentStyleType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'content-type'</td>
<td>ContentType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'default-style'</td>
<td>DefaultStyle</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'expires'</td>
<td>Expires</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ext-cache'</td>
<td>ExtCache</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'imagetoolbar'</td>
<td>ImageToolbar</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'lotus'</td>
<td>Lotus</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'page-enter'</td>
<td>PageEnter</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'page-exit'</td>
<td>PageExit</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'pics-label'</td>
<td>PicsLabel</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'pragma'</td>
<td>Pragma</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'refresh'</td>
<td>Refresh</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'reply-to'</td>
<td>ReplyTo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'set-cookie'</td>
<td>SetCookie</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'site-enter'</td>
<td>SiteEnter</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'site-exit'</td>
<td>SiteExit</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'vary'</td>
<td>Vary</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'window-target'</td>
<td>WindowTarget</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ncc'>HTML ncc Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'charset'</td>
<td>CharacterSet</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'depth'</td>
<td>Depth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'files'</td>
<td>Files</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'footnotes'</td>
<td>Footnotes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'generator'</td>
<td>Generator</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'kbytesize'</td>
<td>KByteSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'maxpagenormal'</td>
<td>MaxPageNormal</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'multimediatype'</td>
<td>MultimediaType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'narrator'</td>
<td>Narrator</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'pagefront'</td>
<td>PageFront</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'pagenormal'</td>
<td>PageNormal</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'pagespecial'</td>
<td>PageSpecial</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'prodnotes'</td>
<td>ProdNotes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'produceddate'</td>
<td>ProducedDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'producer'</td>
<td>Producer</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'revision'</td>
<td>Revision</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'revisiondate'</td>
<td>RevisionDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'setinfo'</td>
<td>SetInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'sidebars'</td>
<td>Sidebars</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'sourcedate'</td>
<td>SourceDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'sourceedition'</td>
<td>SourceEdition</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'sourcepublisher'</td>
<td>SourcePublisher</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'sourcerights'</td>
<td>SourceRights</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'sourcetitle'</td>
<td>SourceTitle</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'tocitems'</td>
<td>TOCItems</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'totaltime'</td>
<td>Duration</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Office'>HTML Office Tags</a></h2>
<p>Tags written by Microsoft Office applications.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Author'</td>
<td>Author</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Category'</td>
<td>Category</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Characters'</td>
<td>Characters</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'CharactersWithSpaces'</td>
<td>CharactersWithSpaces</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Company'</td>
<td>Company</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Created'</td>
<td>CreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Description'</td>
<td>Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Keywords'</td>
<td>Keywords</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'LastAuthor'</td>
<td>LastAuthor</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'LastPrinted'</td>
<td>LastPrinted</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'LastSaved'</td>
<td>ModifyDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Lines'</td>
<td>Lines</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Manager'</td>
<td>Manager</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Pages'</td>
<td>Pages</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Paragraphs'</td>
<td>Paragraphs</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Revision'</td>
<td>RevisionNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Subject'</td>
<td>Subject</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Template'</td>
<td>Template</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'TotalTime'</td>
<td>TotalEditTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'Version'</td>
<td>RevisionNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'Words'</td>
<td>Words</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='prod'>HTML prod Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'recengineer'</td>
<td>RecEngineer</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'reclocation'</td>
<td>RecLocation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='vw96'>HTML vw96 Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'objecttype'</td>
<td>ObjectType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jun 30, 2012</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

File diff suppressed because it is too large Load Diff

1679
html/TagNames/ID3.html Normal file

File diff suppressed because it is too large Load Diff

904
html/TagNames/IPTC.html Normal file
View File

@ -0,0 +1,904 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>IPTC Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>IPTC Tags</h2>
<p>
The tags listed below are part of the International Press Telecommunications
Council (IPTC) and the Newspaper Association of America (NAA) Information
Interchange Model (IIM). This is an older meta information format, slowly
being phased out in favor of XMP -- the newer IPTCCore specification uses
XMP format. IPTC information may be found in JPG, TIFF, PNG, MIFF, PS, PDF,
PSD, XCF and DNG images.</p>
<p>IPTC information is separated into different records, each of which has its
own set of tags. See
<a href="http://www.iptc.org/std/IIM/4.1/specification/IIMV4.1.pdf">http://www.iptc.org/std/IIM/4.1/specification/IIMV4.1.pdf</a> for the
official IPTC IIM specification.</p>
<p>This specification dictates a length for ASCII (<code>string</code> or <code>digits</code>) and
binary (<code>undef</code>) values. These lengths are given in square brackets after
the <b>Writable</b> format name. For tags where a range of lengths is allowed,
the minimum and maximum lengths are separated by a comma within the
brackets. When writing, ExifTool issues a minor warning and truncates the
value if it is longer than allowed by the IPTC specification. Minor errors
may be ignored with the <a href="../ExifTool.html#IgnoreMinorErrors">IgnoreMinorErrors</a> (-m) option, allowing longer
values to be written, but beware that values like this may cause problems
for some other IPTC readers. ExifTool will happily read IPTC values of any
length.</p>
<p>Separate IPTC date and time tags may be written with a combined date/time
value and ExifTool automagically takes the appropriate part of the date/time
string depending on whether a date or time tag is being written. This is
very useful when copying date/time values to IPTC from other metadata
formats.</p>
<p>IPTC time values include a timezone offset. If written with a value which
doesn&#39;t include a timezone then the current local timezone offset is used
(unless written with a combined date/time, in which case the local timezone
offset at the specified date/time is used, which may be different due to
changes in daylight savings time).</p>
<p>Note that it is not uncommon for IPTC to be found in non-standard locations
in JPEG and TIFF-based images. When reading, the family 1 group name has a
number added for non-standard IPTC (&quot;IPTC2&quot;, &quot;IPTC3&quot;, etc), but when writing
only &quot;IPTC&quot; may be specified as the group. To keep the IPTC consistent,
ExifTool updates tags in all existing IPTC locations, but will create a new
IPTC group only in the standard location.
</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Record</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='1 = 0x1'>1</td>
<td>IPTCEnvelope</td>
<td class=c>-</td>
<td>--&gt; <a href='IPTC.html#EnvelopeRecord'>IPTC EnvelopeRecord Tags</a></td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>IPTCApplication</td>
<td class=c>-</td>
<td>--&gt; <a href='IPTC.html#ApplicationRecord'>IPTC ApplicationRecord Tags</a></td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>IPTCNewsPhoto</td>
<td class=c>-</td>
<td>--&gt; <a href='IPTC.html#NewsPhoto'>IPTC NewsPhoto Tags</a></td></tr>
<tr class=b>
<td class=r title='7 = 0x7'>7</td>
<td>IPTCPreObjectData</td>
<td class=c>-</td>
<td>--&gt; <a href='IPTC.html#PreObjectData'>IPTC PreObjectData Tags</a></td></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>IPTCObjectData</td>
<td class=c>-</td>
<td>--&gt; <a href='IPTC.html#ObjectData'>IPTC ObjectData Tags</a></td></tr>
<tr class=b>
<td class=r title='9 = 0x9'>9</td>
<td>IPTCPostObjectData</td>
<td class=c>-</td>
<td>--&gt; <a href='IPTC.html#PostObjectData'>IPTC PostObjectData Tags</a></td></tr>
<tr>
<td class=r title='240 = 0xf0'>240</td>
<td>IPTCFotoStation</td>
<td class=c>-</td>
<td>--&gt; <a href='IPTC.html#FotoStation'>IPTC FotoStation Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='EnvelopeRecord'>IPTC EnvelopeRecord Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>EnvelopeRecordVersion</td>
<td class=c title=' : = Mandatory'>int16u:</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>Destination</td>
<td class=c title=' + = List'>string[0,1024]+</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='20 = 0x14'>20</td>
<td>FileFormat</td>
<td class=c>int16u</td>
<td><span class=s>0 = No ObjectData
<br>1 = IPTC-NAA Digital Newsphoto Parameter Record
<br>2 = IPTC7901 Recommended Message Format
<br>3 = Tagged Image File Format (Adobe/Aldus Image data)
<br>4 = Illustrator (Adobe Graphics data)
<br>5 = AppleSingle (Apple Computer Inc)
<br>6 = NAA 89-3 (ANPA 1312)
<br>7 = MacBinary II
<br>8 = IPTC Unstructured Character Oriented File Format (UCOFF)
<br>9 = United Press International ANPA 1312 variant
<br>10 = United Press International Down-Load Message
<br>11 = JPEG File Interchange (JFIF)
<br>12 = Photo-CD Image-Pac (Eastman Kodak)
<br>13 = Bit Mapped Graphics File [.BMP] (Microsoft)
<br>14 = Digital Audio File [.WAV] (Microsoft &amp; Creative Labs)
<br>15 = Audio plus Moving Video [.AVI] (Microsoft)
<br>16 = PC DOS/Windows Executable Files [.COM][.EXE]
<br>17 = Compressed Binary File [.ZIP] (PKWare Inc)
<br>18 = Audio Interchange File Format AIFF (Apple Computer Inc)
<br>19 = RIFF Wave (Microsoft Corporation)
<br>20 = Freehand (Macromedia/Aldus)
<br>21 = Hypertext Markup Language [.HTML] (The Internet Society)
<br>22 = MPEG 2 Audio Layer 2 (Musicom), ISO/IEC
<br>23 = MPEG 2 Audio Layer 3, ISO/IEC
<br>24 = Portable Document File [.PDF] Adobe
<br>25 = News Industry Text Format (NITF)
<br>26 = Tape Archive [.TAR]
<br>27 = Tidningarnas Telegrambyra NITF version (TTNITF DTD)
<br>28 = Ritzaus Bureau NITF version (RBNITF DTD)
<br>29 = Corel Draw [.CDR]</span></td></tr>
<tr class=b>
<td class=r title='22 = 0x16'>22</td>
<td>FileVersion</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='30 = 0x1e'>30</td>
<td>ServiceIdentifier</td>
<td class=c>string[0,10]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='40 = 0x28'>40</td>
<td>EnvelopeNumber</td>
<td class=c>digits[8]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='50 = 0x32'>50</td>
<td>ProductID</td>
<td class=c title=' + = List'>string[0,32]+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='60 = 0x3c'>60</td>
<td>EnvelopePriority</td>
<td class=c>digits[1]</td>
<td><table class=cols><tr>
<td>0 = 0 (reserved)
<br>1 = 1 (most urgent)
<br>2 = 2
<br>3 = 3
<br>4 = 4
<br>5 = 5 (normal urgency)
<br>6 = 6
<br>7 = 7
<br>8 = 8 (least urgent)
<br>9 = 9 (user-defined priority)</td></tr></table>
</td></tr>
<tr>
<td class=r title='70 = 0x46'>70</td>
<td>DateSent</td>
<td class=c>digits[8]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='80 = 0x50'>80</td>
<td>TimeSent</td>
<td class=c>string[11]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='90 = 0x5a'>90</td>
<td>CodedCharacterSet</td>
<td class=c title=' ! = Unsafe'>string[0,32]!</td>
<td><span class=s><span class=n>(values are entered in the form &quot;ESC X Y[, ...]&quot;. The escape sequence for
UTF-8 character coding is &quot;ESC % G&quot;, but this is displayed as &quot;UTF8&quot; for
convenience. Either string may be used when writing. The value of this tag
affects the decoding of string values in the Application and NewsPhoto
records. This tag is marked as &quot;unsafe&quot; to prevent it from being copied by
default in a group operation because existing tags in the destination image
may use a different encoding. When creating a new IPTC record from scratch,
it is suggested that this be set to &quot;UTF8&quot; if special characters are a
possibility)</span></span></td></tr>
<tr class=b>
<td class=r title='100 = 0x64'>100</td>
<td>UniqueObjectName</td>
<td class=c>string[14,80]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='120 = 0x78'>120</td>
<td>ARMIdentifier</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='122 = 0x7a'>122</td>
<td>ARMVersion</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ApplicationRecord'>IPTC ApplicationRecord Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>ApplicationRecordVersion</td>
<td class=c title=' : = Mandatory'>int16u:</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>ObjectTypeReference</td>
<td class=c>string[3,67]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>ObjectAttributeReference</td>
<td class=c title=' + = List'>string[4,68]+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>ObjectName</td>
<td class=c>string[0,64]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='7 = 0x7'>7</td>
<td>EditStatus</td>
<td class=c>string[0,64]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='8 = 0x8'>8</td>
<td>EditorialUpdate</td>
<td class=c>digits[2]</td>
<td><span class=s>01 = Additional language</span></td></tr>
<tr>
<td class=r title='10 = 0xa'>10</td>
<td>Urgency</td>
<td class=c>digits[1]</td>
<td><table class=cols><tr>
<td>0 = 0 (reserved)
<br>1 = 1 (most urgent)
<br>2 = 2
<br>3 = 3
<br>4 = 4
<br>5 = 5 (normal urgency)
<br>6 = 6
<br>7 = 7
<br>8 = 8 (least urgent)
<br>9 = 9 (user-defined priority)</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='12 = 0xc'>12</td>
<td>SubjectReference</td>
<td class=c title=' + = List'>string[13,236]+</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='15 = 0xf'>15</td>
<td>Category</td>
<td class=c>string[0,3]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='20 = 0x14'>20</td>
<td>SupplementalCategories</td>
<td class=c title=' + = List'>string[0,32]+</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='22 = 0x16'>22</td>
<td>FixtureIdentifier</td>
<td class=c>string[0,32]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='25 = 0x19'>25</td>
<td>Keywords</td>
<td class=c title=' + = List'>string[0,64]+</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='26 = 0x1a'>26</td>
<td>ContentLocationCode</td>
<td class=c title=' + = List'>string[3]+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='27 = 0x1b'>27</td>
<td>ContentLocationName</td>
<td class=c title=' + = List'>string[0,64]+</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='30 = 0x1e'>30</td>
<td>ReleaseDate</td>
<td class=c>digits[8]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='35 = 0x23'>35</td>
<td>ReleaseTime</td>
<td class=c>string[11]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='37 = 0x25'>37</td>
<td>ExpirationDate</td>
<td class=c>digits[8]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='38 = 0x26'>38</td>
<td>ExpirationTime</td>
<td class=c>string[11]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='40 = 0x28'>40</td>
<td>SpecialInstructions</td>
<td class=c>string[0,256]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='42 = 0x2a'>42</td>
<td>ActionAdvised</td>
<td class=c>digits[2]</td>
<td><span class=s>01 = Object Kill
<br>02 = Object Replace
<br>03 = Object Append
<br>04 = Object Reference</span></td></tr>
<tr>
<td class=r title='45 = 0x2d'>45</td>
<td>ReferenceService</td>
<td class=c title=' + = List'>string[0,10]+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='47 = 0x2f'>47</td>
<td>ReferenceDate</td>
<td class=c title=' + = List'>digits[8]+</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='50 = 0x32'>50</td>
<td>ReferenceNumber</td>
<td class=c title=' + = List'>digits[8]+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='55 = 0x37'>55</td>
<td>DateCreated</td>
<td class=c>digits[8]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='60 = 0x3c'>60</td>
<td>TimeCreated</td>
<td class=c>string[11]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='62 = 0x3e'>62</td>
<td>DigitalCreationDate</td>
<td class=c>digits[8]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='63 = 0x3f'>63</td>
<td>DigitalCreationTime</td>
<td class=c>string[11]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='65 = 0x41'>65</td>
<td>OriginatingProgram</td>
<td class=c>string[0,32]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='70 = 0x46'>70</td>
<td>ProgramVersion</td>
<td class=c>string[0,10]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='75 = 0x4b'>75</td>
<td>ObjectCycle</td>
<td class=c>string[1]</td>
<td><span class=s>&#39;a&#39; = Morning
<br>&#39;b&#39; = Both Morning and Evening
<br>&#39;p&#39; = Evening</span></td></tr>
<tr>
<td class=r title='80 = 0x50'>80</td>
<td>By-line</td>
<td class=c title=' + = List'>string[0,32]+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='85 = 0x55'>85</td>
<td>By-lineTitle</td>
<td class=c title=' + = List'>string[0,32]+</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='90 = 0x5a'>90</td>
<td>City</td>
<td class=c>string[0,32]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='92 = 0x5c'>92</td>
<td>Sub-location</td>
<td class=c>string[0,32]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='95 = 0x5f'>95</td>
<td>Province-State</td>
<td class=c>string[0,32]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='100 = 0x64'>100</td>
<td>Country-PrimaryLocationCode</td>
<td class=c>string[3]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='101 = 0x65'>101</td>
<td>Country-PrimaryLocationName</td>
<td class=c>string[0,64]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='103 = 0x67'>103</td>
<td>OriginalTransmissionReference</td>
<td class=c>string[0,32]</td>
<td><span class=s><span class=n>(now used as a job identifier)</span></span></td></tr>
<tr>
<td class=r title='105 = 0x69'>105</td>
<td>Headline</td>
<td class=c>string[0,256]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='110 = 0x6e'>110</td>
<td>Credit</td>
<td class=c>string[0,32]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='115 = 0x73'>115</td>
<td>Source</td>
<td class=c>string[0,32]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='116 = 0x74'>116</td>
<td>CopyrightNotice</td>
<td class=c>string[0,128]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='118 = 0x76'>118</td>
<td>Contact</td>
<td class=c title=' + = List'>string[0,128]+</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='120 = 0x78'>120</td>
<td>Caption-Abstract</td>
<td class=c>string[0,2000]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='121 = 0x79'>121</td>
<td>LocalCaption</td>
<td class=c>string[0,256]</td>
<td><span class=s><span class=n>(I haven&#39;t found a reference for the format of tags 121, 184-188 and
225-232, so I have just make them writable as strings with
reasonable length. Beware that if this is wrong, other utilities
may not be able to read these tags as written by ExifTool)</span></span></td></tr>
<tr class=b>
<td class=r title='122 = 0x7a'>122</td>
<td>Writer-Editor</td>
<td class=c title=' + = List'>string[0,32]+</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='125 = 0x7d'>125</td>
<td>RasterizedCaption</td>
<td class=c>undef[7360]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='130 = 0x82'>130</td>
<td>ImageType</td>
<td class=c>string[2]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='131 = 0x83'>131</td>
<td>ImageOrientation</td>
<td class=c>string[1]</td>
<td><span class=s>&#39;L&#39; = Landscape
<br>&#39;P&#39; = Portrait
<br>&#39;S&#39; = Square</span></td></tr>
<tr class=b>
<td class=r title='135 = 0x87'>135</td>
<td>LanguageIdentifier</td>
<td class=c>string[2,3]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='150 = 0x96'>150</td>
<td>AudioType</td>
<td class=c>string[2]</td>
<td><table class=cols><tr>
<td>&#39;0T&#39; = Text Only
<br>&#39;1A&#39; = Mono Actuality
<br>&#39;1C&#39; = Mono Question and Answer Session
<br>&#39;1M&#39; = Mono Music
<br>&#39;1Q&#39; = Mono Response to a Question
<br>&#39;1R&#39; = Mono Raw Sound
<br>&#39;1S&#39; = Mono Scener
<br>&#39;1V&#39; = Mono Voicer
<br>&#39;1W&#39; = Mono Wrap
<br>&#39;2A&#39; = Stereo Actuality
<br>&#39;2C&#39; = Stereo Question and Answer Session
<br>&#39;2M&#39; = Stereo Music
<br>&#39;2Q&#39; = Stereo Response to a Question
<br>&#39;2R&#39; = Stereo Raw Sound
<br>&#39;2S&#39; = Stereo Scener
<br>&#39;2V&#39; = Stereo Voicer
<br>&#39;2W&#39; = Stereo Wrap</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='151 = 0x97'>151</td>
<td>AudioSamplingRate</td>
<td class=c>digits[6]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='152 = 0x98'>152</td>
<td>AudioSamplingResolution</td>
<td class=c>digits[2]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='153 = 0x99'>153</td>
<td>AudioDuration</td>
<td class=c>digits[6]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='154 = 0x9a'>154</td>
<td>AudioOutcue</td>
<td class=c>string[0,64]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='184 = 0xb8'>184</td>
<td>JobID</td>
<td class=c>string[0,64]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='185 = 0xb9'>185</td>
<td>MasterDocumentID</td>
<td class=c>string[0,256]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='186 = 0xba'>186</td>
<td>ShortDocumentID</td>
<td class=c>string[0,64]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='187 = 0xbb'>187</td>
<td>UniqueDocumentID</td>
<td class=c>string[0,128]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='188 = 0xbc'>188</td>
<td>OwnerID</td>
<td class=c>string[0,128]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='200 = 0xc8'>200</td>
<td>ObjectPreviewFileFormat</td>
<td class=c>int16u</td>
<td><span class=s>0 = No ObjectData
<br>1 = IPTC-NAA Digital Newsphoto Parameter Record
<br>2 = IPTC7901 Recommended Message Format
<br>3 = Tagged Image File Format (Adobe/Aldus Image data)
<br>4 = Illustrator (Adobe Graphics data)
<br>5 = AppleSingle (Apple Computer Inc)
<br>6 = NAA 89-3 (ANPA 1312)
<br>7 = MacBinary II
<br>8 = IPTC Unstructured Character Oriented File Format (UCOFF)
<br>9 = United Press International ANPA 1312 variant
<br>10 = United Press International Down-Load Message
<br>11 = JPEG File Interchange (JFIF)
<br>12 = Photo-CD Image-Pac (Eastman Kodak)
<br>13 = Bit Mapped Graphics File [.BMP] (Microsoft)
<br>14 = Digital Audio File [.WAV] (Microsoft &amp; Creative Labs)
<br>15 = Audio plus Moving Video [.AVI] (Microsoft)
<br>16 = PC DOS/Windows Executable Files [.COM][.EXE]
<br>17 = Compressed Binary File [.ZIP] (PKWare Inc)
<br>18 = Audio Interchange File Format AIFF (Apple Computer Inc)
<br>19 = RIFF Wave (Microsoft Corporation)
<br>20 = Freehand (Macromedia/Aldus)
<br>21 = Hypertext Markup Language [.HTML] (The Internet Society)
<br>22 = MPEG 2 Audio Layer 2 (Musicom), ISO/IEC
<br>23 = MPEG 2 Audio Layer 3, ISO/IEC
<br>24 = Portable Document File [.PDF] Adobe
<br>25 = News Industry Text Format (NITF)
<br>26 = Tape Archive [.TAR]
<br>27 = Tidningarnas Telegrambyra NITF version (TTNITF DTD)
<br>28 = Ritzaus Bureau NITF version (RBNITF DTD)
<br>29 = Corel Draw [.CDR]</span></td></tr>
<tr class=b>
<td class=r title='201 = 0xc9'>201</td>
<td>ObjectPreviewFileVersion</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='202 = 0xca'>202</td>
<td>ObjectPreviewData</td>
<td class=c>undef[0,256000]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='221 = 0xdd'>221</td>
<td>Prefs</td>
<td class=c>string[0,64]</td>
<td><span class=s><span class=n>(PhotoMechanic preferences)</span></span></td></tr>
<tr>
<td class=r title='225 = 0xe1'>225</td>
<td>ClassifyState</td>
<td class=c>string[0,64]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='228 = 0xe4'>228</td>
<td>SimilarityIndex</td>
<td class=c>string[0,32]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='230 = 0xe6'>230</td>
<td>DocumentNotes</td>
<td class=c>string[0,1024]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='231 = 0xe7'>231</td>
<td>DocumentHistory</td>
<td class=c>string[0,256]</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='232 = 0xe8'>232</td>
<td>ExifCameraInfo</td>
<td class=c>string[0,4096]</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='255 = 0xff'>255</td>
<td>CatalogSets</td>
<td class=c title=' + = List'>string[0,256]+</td>
<td><span class=s><span class=n>(written by iView MediaPro)</span></span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='NewsPhoto'>IPTC NewsPhoto Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>NewsPhotoVersion</td>
<td class=c title=' : = Mandatory'>int16u:</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='10 = 0xa'>10</td>
<td>IPTCPictureNumber</td>
<td class=c>string[16]</td>
<td><span class=s><span class=n>(4 numbers: 1-Manufacturer ID, 2-Equipment ID, 3-Date, 4-Sequence)</span></span></td></tr>
<tr>
<td class=r title='20 = 0x14'>20</td>
<td>IPTCImageWidth</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='30 = 0x1e'>30</td>
<td>IPTCImageHeight</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='40 = 0x28'>40</td>
<td>IPTCPixelWidth</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='50 = 0x32'>50</td>
<td>IPTCPixelHeight</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='55 = 0x37'>55</td>
<td>SupplementalType</td>
<td class=c>int8u</td>
<td><span class=s>0 = Main Image
<br>1 = Reduced Resolution Image
<br>2 = Logo
<br>3 = Rasterized Caption</span></td></tr>
<tr class=b>
<td class=r title='60 = 0x3c'>60</td>
<td>ColorRepresentation</td>
<td class=c>int16u</td>
<td><span class=s>0x0 = No Image, Single Frame
<br>0x100 = Monochrome, Single Frame
<br>0x300 = 3 Components, Single Frame
<br>0x301 = 3 Components, Frame Sequential in Multiple Objects
<br>0x302 = 3 Components, Frame Sequential in One Object
<br>0x303 = 3 Components, Line Sequential
<br>0x304 = 3 Components, Pixel Sequential
<br>0x305 = 3 Components, Special Interleaving
<br>0x400 = 4 Components, Single Frame
<br>0x401 = 4 Components, Frame Sequential in Multiple Objects
<br>0x402 = 4 Components, Frame Sequential in One Object
<br>0x403 = 4 Components, Line Sequential
<br>0x404 = 4 Components, Pixel Sequential
<br>0x405 = 4 Components, Special Interleaving</span></td></tr>
<tr>
<td class=r title='64 = 0x40'>64</td>
<td>InterchangeColorSpace</td>
<td class=c>int8u</td>
<td><table class=cols><tr>
<td>1 = X,Y,Z CIE
<br>2 = RGB SMPTE
<br>3 = Y,U,V (K) (D65)
<br>4 = RGB Device Dependent
<br>5 = CMY (K) Device Dependent
<br>6 = Lab (K) CIE
<br>7 = YCbCr
<br>8 = sRGB</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='65 = 0x41'>65</td>
<td>ColorSequence</td>
<td class=c>int8u</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='66 = 0x42'>66</td>
<td>ICC_Profile</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='70 = 0x46'>70</td>
<td>ColorCalibrationMatrix</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='80 = 0x50'>80</td>
<td>LookupTable</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='84 = 0x54'>84</td>
<td>NumIndexEntries</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='85 = 0x55'>85</td>
<td>ColorPalette</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='86 = 0x56'>86</td>
<td>IPTCBitsPerSample</td>
<td class=c>int8u</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='90 = 0x5a'>90</td>
<td>SampleStructure</td>
<td class=c>int8u</td>
<td><span class=s>0 = OrthogonalConstangSampling
<br>1 = Orthogonal4-2-2Sampling
<br>2 = CompressionDependent</span></td></tr>
<tr class=b>
<td class=r title='100 = 0x64'>100</td>
<td>ScanningDirection</td>
<td class=c>int8u</td>
<td><table class=cols><tr>
<td>0 = L-R, Top-Bottom
<br>1 = R-L, Top-Bottom
<br>2 = L-R, Bottom-Top
<br>3 = R-L, Bottom-Top</td><td>&nbsp;&nbsp;</td>
<td>4 = Top-Bottom, L-R
<br>5 = Bottom-Top, L-R
<br>6 = Top-Bottom, R-L
<br>7 = Bottom-Top, R-L</td></tr></table>
</td></tr>
<tr>
<td class=r title='102 = 0x66'>102</td>
<td>IPTCImageRotation</td>
<td class=c>int8u</td>
<td><span class=s>0 = 0
<br>1 = 90
<br>2 = 180
<br>3 = 270</span></td></tr>
<tr class=b>
<td class=r title='110 = 0x6e'>110</td>
<td>DataCompressionMethod</td>
<td class=c>int32u</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='120 = 0x78'>120</td>
<td>QuantizationMethod</td>
<td class=c>int8u</td>
<td><table class=cols><tr>
<td>0 = Linear Reflectance/Transmittance
<br>1 = Linear Density
<br>2 = IPTC Ref B
<br>3 = Linear Dot Percent
<br>4 = AP Domestic Analogue
<br>5 = Compression Method Specific
<br>6 = Color Space Specific
<br>7 = Gamma Compensated</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='125 = 0x7d'>125</td>
<td>EndPoints</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='130 = 0x82'>130</td>
<td>ExcursionTolerance</td>
<td class=c>int8u</td>
<td><span class=s>0 = Not Allowed
<br>1 = Allowed</span></td></tr>
<tr class=b>
<td class=r title='135 = 0x87'>135</td>
<td>BitsPerComponent</td>
<td class=c>int8u</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='140 = 0x8c'>140</td>
<td>MaximumDensityRange</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='145 = 0x91'>145</td>
<td>GammaCompensatedValue</td>
<td class=c>int16u</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='PreObjectData'>IPTC PreObjectData Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='10 = 0xa'>10</td>
<td>SizeMode</td>
<td class=c>no</td>
<td><span class=s>0 = Size Not Known
<br>1 = Size Known</span></td></tr>
<tr class=b>
<td class=r title='20 = 0x14'>20</td>
<td>MaxSubfileSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='90 = 0x5a'>90</td>
<td>ObjectSizeAnnounced</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='95 = 0x5f'>95</td>
<td>MaximumObjectSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ObjectData'>IPTC ObjectData Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='10 = 0xa'>10</td>
<td>SubFile</td>
<td class=c title=' + = List'>no+</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='PostObjectData'>IPTC PostObjectData Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='10 = 0xa'>10</td>
<td>ConfirmedObjectSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='FotoStation'>IPTC FotoStation Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr><td colspan=4 class=c><i>[no tags known]</i></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Oct 2, 2020</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

160
html/TagNames/ISO.html Normal file
View File

@ -0,0 +1,160 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>ISO Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>ISO Tags</h2>
<p>Tags extracted from ISO 9660 disk images.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0000 = 0'>0x0000</td>
<td>BootRecord</td>
<td class=c>-</td>
<td>--&gt; <a href='ISO.html#BootRecord'>ISO BootRecord Tags</a></td></tr>
<tr class=b>
<td title='0x0001 = 1'>0x0001</td>
<td>PrimaryVolume</td>
<td class=c>-</td>
<td>--&gt; <a href='ISO.html#PrimaryVolume'>ISO PrimaryVolume Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='BootRecord'>ISO BootRecord Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='7 = 0x7'>7</td>
<td>BootSystem</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='39 = 0x27'>39</td>
<td>BootIdentifier</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='PrimaryVolume'>ISO PrimaryVolume Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>System</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='40 = 0x28'>40</td>
<td>VolumeName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='80 = 0x50'>80</td>
<td>VolumeBlockCount</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='120 = 0x78'>120</td>
<td>VolumeSetDiskCount?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='124 = 0x7c'>124</td>
<td>VolumeSetDiskNumber?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='128 = 0x80'>128</td>
<td>VolumeBlockSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='132 = 0x84'>132</td>
<td>PathTableSize?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='140 = 0x8c'>140</td>
<td>PathTableLocation?</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='174 = 0xae'>174</td>
<td>RootDirectoryCreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='190 = 0xbe'>190</td>
<td>VolumeSetName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='318 = 0x13e'>318</td>
<td>Publisher</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='446 = 0x1be'>446</td>
<td>DataPreparer</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='574 = 0x23e'>574</td>
<td>Software</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='702 = 0x2be'>702</td>
<td>CopyrightFileName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='740 = 0x2e4'>740</td>
<td>AbstractFileName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='776 = 0x308'>776</td>
<td>BibligraphicFileName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='813 = 0x32d'>813</td>
<td>VolumeCreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='830 = 0x33e'>830</td>
<td>VolumeModifyDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='847 = 0x34f'>847</td>
<td>VolumeExpirationDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='864 = 0x360'>864</td>
<td>VolumeEffectiveDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Apr 12, 2016</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

91
html/TagNames/ITC.html Normal file
View File

@ -0,0 +1,91 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>ITC Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>ITC Tags</h2>
<p>This information is found in iTunes Cover Flow data files.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'data'</td>
<td>ImageData</td>
<td class=c>no</td>
<td><span class=s><span class=n>(embedded JPEG or PNG image, depending on ImageType)</span></span></td></tr>
<tr class=b>
<td>'itch'</td>
<td>Itch</td>
<td class=c>-</td>
<td>--&gt; <a href='ITC.html#Header'>ITC Header Tags</a></td></tr>
<tr>
<td>'item'</td>
<td>Item</td>
<td class=c>-</td>
<td>--&gt; <a href='ITC.html#Item'>ITC Item Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Header'>ITC Header Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='16 = 0x10'>16</td>
<td>DataType</td>
<td class=c>no</td>
<td><span class=s>&#39;artw&#39; = Artwork</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Item'>ITC Item Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>LibraryID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>TrackID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='4 = 0x4'>4</td>
<td>DataLocation</td>
<td class=c>no</td>
<td><span class=s>&#39;down&#39; = Downloaded Separately
<br>&#39;locl&#39; = Local Music File</span></td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>ImageType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='7 = 0x7'>7</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='8 = 0x8'>8</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Nov 9, 2011</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

89
html/TagNames/JFIF.html Normal file
View File

@ -0,0 +1,89 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>JFIF Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>JFIF Tags</h2>
<p>
The following information is extracted from the JPEG JFIF header. See
<a href="https://www.w3.org/Graphics/JPEG/jfif3.pdf">https://www.w3.org/Graphics/JPEG/jfif3.pdf</a> for the JFIF 1.02
specification.
</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>JFIFVersion</td>
<td class=c title=' : = Mandatory'>no:</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>ResolutionUnit</td>
<td class=c title=' : = Mandatory'>int8u:</td>
<td><span class=s>0 = None
<br>1 = inches
<br>2 = cm</span></td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>XResolution</td>
<td class=c title=' : = Mandatory'>int16u:</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>YResolution</td>
<td class=c title=' : = Mandatory'>int16u:</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='7 = 0x7'>7</td>
<td>ThumbnailWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='8 = 0x8'>8</td>
<td>ThumbnailHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='9 = 0x9'>9</td>
<td>ThumbnailTIFF</td>
<td class=c>no</td>
<td><span class=s><span class=n>(raw RGB thumbnail data, extracted as a TIFF image)</span></span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Extension'>JFIF Extension Tags</a></h2>
<p>Thumbnail images extracted from the JFXX segment.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0010 = 16'>0x0010</td>
<td>ThumbnailImage</td>
<td class=c>no</td>
<td><span class=s><span class=n>(JPEG-format thumbnail image)</span></span></td></tr>
<tr class=b>
<td title='0x0011 = 17'>0x0011</td>
<td>ThumbnailTIFF</td>
<td class=c>no</td>
<td><span class=s><span class=n>(raw palette-color thumbnail data, extracted as a TIFF image)</span></span></td></tr>
<tr>
<td title='0x0013 = 19'>0x0013</td>
<td>ThumbnailTIFF</td>
<td class=c>no</td>
<td><span class=s><span class=n>(raw RGB thumbnail data, extracted as a TIFF image)</span></span></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jul 21, 2017</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

674
html/TagNames/JPEG.html Normal file
View File

@ -0,0 +1,674 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>JPEG Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>JPEG Tags</h2>
<p>This table lists information extracted by ExifTool from JPEG images. See
<a href="https://www.w3.org/Graphics/JPEG/jfif3.pdf">https://www.w3.org/Graphics/JPEG/jfif3.pdf</a> for the JPEG specification.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'APP0'</td>
<td>JFIF
<br>JFXX
<br>CIFF
<br>AVI1
<br>Ocad</td>
<td class=c>-<br>-<br>-<br>-<br>-</td>
<td>--&gt; <a href='JFIF.html'>JFIF Tags</a>
<br>--&gt; <a href='JFIF.html#Extension'>JFIF Extension Tags</a>
<br>--&gt; <a href='CanonRaw.html'>CanonRaw Tags</a>
<br>--&gt; <a href='JPEG.html#AVI1'>JPEG AVI1 Tags</a>
<br>--&gt; <a href='JPEG.html#Ocad'>JPEG Ocad Tags</a></td></tr>
<tr class=b>
<td>'APP1'</td>
<td>EXIF
<br>ExtendedXMP
<br>XMP
<br>QVCI
<br>FLIR
<br>RawThermalImage</td>
<td class=c>-<br>-<br>-<br>-<br>-<br>no</td>
<td>--&gt; <a href='EXIF.html'>EXIF Tags</a>
<br>--&gt; <a href='XMP.html'>XMP Tags</a>
<br>--&gt; <a href='XMP.html'>XMP Tags</a>
<br>--&gt; <a href='Casio.html#QVCI'>Casio QVCI Tags</a>
<br>--&gt; <a href='FLIR.html#FFF'>FLIR FFF Tags</a>
<br><span class=n>(thermal image from Parrot Bebop-Pro Thermal drone)</span></td></tr>
<tr>
<td>'APP2'</td>
<td>ICC_Profile
<br>FPXR
<br>MPF
<br>PreviewImage</td>
<td class=c>-<br>-<br>-<br>no</td>
<td>--&gt; <a href='ICC_Profile.html'>ICC_Profile Tags</a>
<br>--&gt; <a href='FlashPix.html'>FlashPix Tags</a>
<br>--&gt; <a href='MPF.html'>MPF Tags</a>
<br><span class=n>(Samsung APP2 preview image)</span></td></tr>
<tr class=b>
<td>'APP3'</td>
<td>Meta
<br>Stim
<br>JPS
<br>ThermalData
<br>PreviewImage</td>
<td class=c>-<br>-<br>-<br>no<br>no</td>
<td>--&gt; <a href='Kodak.html#Meta'>Kodak Meta Tags</a>
<br>--&gt; <a href='Stim.html'>Stim Tags</a>
<br>--&gt; <a href='JPEG.html#JPS'>JPEG JPS Tags</a>
<br><span class=n>(DJI raw thermal data)</span>
<br><span class=n>(Samsung/HP preview image)</span></td></tr>
<tr>
<td>'APP4'</td>
<td>Scalado
<br>FPXR
<br>ThermalParams
<br>PreviewImage</td>
<td class=c>-<br>-<br>-<br>no</td>
<td>--&gt; <a href='Scalado.html'>Scalado Tags</a>
<br>--&gt; <a href='FlashPix.html'>FlashPix Tags</a>
<br>--&gt; <a href='DJI.html#ThermalParams'>DJI ThermalParams Tags</a>
<br><span class=n>(continued from APP3)</span></td></tr>
<tr class=b>
<td>'APP5'</td>
<td>RMETA
<br>SamsungUniqueID
<br>ThermalCalibration
<br>PreviewImage</td>
<td class=c>-<br>-<br>no<br>no</td>
<td>--&gt; <a href='Ricoh.html#RMETA'>Ricoh RMETA Tags</a>
<br>--&gt; <a href='Samsung.html#APP5'>Samsung APP5 Tags</a>
<br><span class=n>(DJI thermal calibration data)</span>
<br><span class=n>(continued from APP4)</span></td></tr>
<tr>
<td>'APP6'</td>
<td>EPPIM
<br>NITF
<br>HP_TDHD
<br>GoPro
<br>DJI_DTAT</td>
<td class=c>-<br>-<br>-<br>-<br>no</td>
<td>--&gt; <a href='JPEG.html#EPPIM'>JPEG EPPIM Tags</a>
<br>--&gt; <a href='JPEG.html#NITF'>JPEG NITF Tags</a>
<br>--&gt; <a href='HP.html#TDHD'>HP TDHD Tags</a>
<br>--&gt; <a href='GoPro.html#GPMF'>GoPro GPMF Tags</a>
<br><span class=n>(DJI Thermal Analysis Tool record)</span></td></tr>
<tr class=b>
<td>'APP7'</td>
<td>Pentax
<br>Huawei
<br>Qualcomm</td>
<td class=c>-<br>-<br>-</td>
<td>--&gt; <a href='Pentax.html'>Pentax Tags</a>
<br>--&gt; <a href='Unknown.html'>Unknown Tags</a>
<br>--&gt; <a href='Qualcomm.html'>Qualcomm Tags</a></td></tr>
<tr>
<td>'APP8'</td>
<td>SPIFF</td>
<td class=c>-</td>
<td>--&gt; <a href='JPEG.html#SPIFF'>JPEG SPIFF Tags</a></td></tr>
<tr class=b>
<td>'APP9'</td>
<td>MediaJukebox</td>
<td class=c>-</td>
<td>--&gt; <a href='JPEG.html#MediaJukebox'>JPEG MediaJukebox Tags</a></td></tr>
<tr>
<td>'APP10'</td>
<td>Comment</td>
<td class=c>no</td>
<td><span class=s><span class=n>(PhotoStudio Unicode comment)</span></span></td></tr>
<tr class=b>
<td>'APP11'</td>
<td>JPEG-HDR
<br>JUMBF</td>
<td class=c>-<br>-</td>
<td>--&gt; <a href='JPEG.html#HDR'>JPEG HDR Tags</a>
<br>--&gt; <a href='Jpeg2000.html'>Jpeg2000 Tags</a></td></tr>
<tr>
<td>'APP12'</td>
<td>PictureInfo
<br>Ducky</td>
<td class=c>-<br>-</td>
<td>--&gt; <a href='APP12.html#PictureInfo'>APP12 PictureInfo Tags</a>
<br>--&gt; <a href='APP12.html#Ducky'>APP12 Ducky Tags</a></td></tr>
<tr class=b>
<td>'APP13'</td>
<td>Photoshop
<br>Adobe_CM</td>
<td class=c>-<br>-</td>
<td>--&gt; <a href='Photoshop.html'>Photoshop Tags</a>
<br>--&gt; <a href='JPEG.html#AdobeCM'>JPEG AdobeCM Tags</a></td></tr>
<tr>
<td>'APP14'</td>
<td>Adobe</td>
<td class=c>yes</td>
<td>--&gt; <a href='JPEG.html#Adobe'>JPEG Adobe Tags</a></td></tr>
<tr class=b>
<td>'APP15'</td>
<td>GraphicConverter</td>
<td class=c>-</td>
<td>--&gt; <a href='JPEG.html#GraphConv'>JPEG GraphConv Tags</a></td></tr>
<tr>
<td>'COM'</td>
<td>Comment</td>
<td class=c>yes</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'DQT'</td>
<td>DefineQuantizationTable</td>
<td class=c>no</td>
<td><span class=s><span class=n>(used to calculate the Extra JPEGDigest tag value)</span></span></td></tr>
<tr>
<td>'SOF'</td>
<td>StartOfFrame</td>
<td class=c>-</td>
<td>--&gt; <a href='JPEG.html#SOF'>JPEG SOF Tags</a></td></tr>
<tr class=b>
<td>'Trailer'</td>
<td>AFCP
<br>CanonVRD
<br>FotoStation
<br>PhotoMechanic
<br>MIE
<br>Samsung
<br>EmbeddedVideo
<br>Insta360
<br>NikonApp
<br>PreviewImage</td>
<td class=c>-<br>-<br>-<br>-<br>-<br>-<br>no<br>no<br>no<br>yes</td>
<td>--&gt; <a href='AFCP.html'>AFCP Tags</a>
<br>--&gt; <a href='CanonVRD.html'>CanonVRD Tags</a>
<br>--&gt; <a href='FotoStation.html'>FotoStation Tags</a>
<br>--&gt; <a href='PhotoMechanic.html'>PhotoMechanic Tags</a>
<br>--&gt; <a href='MIE.html'>MIE Tags</a>
<br>--&gt; <a href='Samsung.html#Trailer'>Samsung Trailer Tags</a>
<br><span class=n>(extracted only when ExtractEmbedded option is used)</span>
<br><span class=n>(contains editing information in XMP format)</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='AVI1'>JPEG AVI1 Tags</a></h2>
<p>This information may be found in APP0 of JPEG image data from AVI videos.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>InterleavedField</td>
<td class=c>no</td>
<td><span class=s>0 = Not Interleaved
<br>1 = Odd
<br>2 = Even</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Ocad'>JPEG Ocad Tags</a></h2>
<p>Tags extracted from the JPEG APP0 &quot;Ocad&quot; segment (found in Photobucket
images).</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Rev'</td>
<td>OcadRevision</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='JPS'>JPEG JPS Tags</a></h2>
<p>Tags found in JPEG Stereo (JPS) images.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='10 = 0xa'>10</td>
<td>JPSSeparation</td>
<td class=c>no</td>
<td><span class=s><span class=n>(stereo only)</span></span></td></tr>
<tr class=b>
<td class=r title='11 = 0xb'>11</td>
<td>JPSFlags</td>
<td class=c>no</td>
<td><span class=s>Bit 0 = Half height
<br>Bit 1 = Half width
<br>Bit 2 = Left field first</span></td></tr>
<tr>
<td class=r title='12 = 0xc'>12</td>
<td>JPSLayout</td>
<td class=c>no</td>
<td><span class=s><span class=n>(mono)</span>
<br>0 = Both Eyes
<br>1 = Left Eye
<br>2 = Right Eye
<br><span class=n>(stereo)</span>
<br>1 = Interleaved
<br>2 = Side By Side
<br>3 = Over Under
<br>4 = Anaglyph</span></td></tr>
<tr class=b>
<td class=r title='13 = 0xd'>13</td>
<td>JPSType</td>
<td class=c>no</td>
<td><span class=s>0 = Mono
<br>1 = Stereo</span></td></tr>
<tr>
<td class=r title='16 = 0x10'>16</td>
<td>JPSComment</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='EPPIM'>JPEG EPPIM Tags</a></h2>
<p>APP6 is used in by the Toshiba PDR-M700 to store a TIFF structure containing
PrintIM information.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0xc4a5 = 50341'>0xc4a5</td>
<td>PrintIM</td>
<td class=c>-</td>
<td>--&gt; <a href='PrintIM.html'>PrintIM Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='NITF'>JPEG NITF Tags</a></h2>
<p>Information in APP6 used by the National Imagery Transmission Format. See
<a href="http://www.gwg.nga.mil/ntb/baseline/docs/n010697/bwcguide25aug98.pdf">http://www.gwg.nga.mil/ntb/baseline/docs/n010697/bwcguide25aug98.pdf</a> for
the official specification.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>NITFVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>ImageFormat</td>
<td class=c>no</td>
<td><span class=s>&#39;B&#39; = IMode B</span></td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>BlocksPerRow</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='5 = 0x5'>5</td>
<td>BlocksPerColumn</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='7 = 0x7'>7</td>
<td>ImageColor</td>
<td class=c>no</td>
<td><span class=s>0 = Monochrome</span></td></tr>
<tr class=b>
<td class=r title='8 = 0x8'>8</td>
<td>BitDepth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='9 = 0x9'>9</td>
<td>ImageClass</td>
<td class=c>no</td>
<td><span class=s>0 = General Purpose
<br>4 = Tactical Imagery</span></td></tr>
<tr class=b>
<td class=r title='10 = 0xa'>10</td>
<td>JPEGProcess</td>
<td class=c>no</td>
<td><span class=s>1 = Baseline sequential DCT, Huffman coding, 8-bit samples
<br>4 = Extended sequential DCT, Huffman coding, 12-bit samples</span></td></tr>
<tr>
<td class=r title='11 = 0xb'>11</td>
<td>Quality</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='12 = 0xc'>12</td>
<td>StreamColor</td>
<td class=c>no</td>
<td><span class=s>0 = Monochrome</span></td></tr>
<tr>
<td class=r title='13 = 0xd'>13</td>
<td>StreamBitDepth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='14 = 0xe'>14</td>
<td>Flags</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='SPIFF'>JPEG SPIFF Tags</a></h2>
<p>This information is found in APP8 of SPIFF-style JPEG images (the &quot;official&quot;
yet rarely used JPEG file format standard: Still Picture Interchange File
Format). See <a href="http://www.jpeg.org/public/spiff.pdf">http://www.jpeg.org/public/spiff.pdf</a> for the official
specification.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>SPIFFVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='2 = 0x2'>2</td>
<td>ProfileID</td>
<td class=c>no</td>
<td><span class=s>0 = Not Specified
<br>1 = Continuous-tone Base
<br>2 = Continuous-tone Progressive
<br>3 = Bi-level Facsimile
<br>4 = Continuous-tone Facsimile</span></td></tr>
<tr>
<td class=r title='3 = 0x3'>3</td>
<td>ColorComponents</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='6 = 0x6'>6</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td><span class=s><span class=n>(at index 4 in specification, but there are 2 extra bytes here in my only
SPIFF sample, version 1.2)</span></span></td></tr>
<tr>
<td class=r title='10 = 0xa'>10</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='14 = 0xe'>14</td>
<td>ColorSpace</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Bi-level
<br>1 = YCbCr, ITU-R BT 709, video
<br>2 = No color space specified
<br>3 = YCbCr, ITU-R BT 601-1, RGB
<br>4 = YCbCr, ITU-R BT 601-1, video
<br>8 = Gray-scale
<br>9 = PhotoYCC
<br>10 = RGB
<br>11 = CMY
<br>12 = CMYK
<br>13 = YCCK
<br>14 = CIELab</td></tr></table>
</td></tr>
<tr>
<td class=r title='15 = 0xf'>15</td>
<td>BitsPerSample</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='16 = 0x10'>16</td>
<td>Compression</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Uncompressed, interleaved, 8 bits per sample
<br>1 = Modified Huffman
<br>2 = Modified READ
<br>3 = Modified Modified READ
<br>4 = JBIG
<br>5 = JPEG</td></tr></table>
</td></tr>
<tr>
<td class=r title='17 = 0x11'>17</td>
<td>ResolutionUnit</td>
<td class=c>no</td>
<td><span class=s>0 = None
<br>1 = inches
<br>2 = cm</span></td></tr>
<tr class=b>
<td class=r title='18 = 0x12'>18</td>
<td>YResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='22 = 0x16'>22</td>
<td>XResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='MediaJukebox'>JPEG MediaJukebox Tags</a></h2>
<p>Tags found in the XML metadata of the APP9 &quot;Media Jukebox&quot; segment.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>Album</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Caption</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>Date</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Keywords</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>Name</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>People</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>Places</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>Tool_Name</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>Tool_Version</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='HDR'>JPEG HDR Tags</a></h2>
<p>Information extracted from APP11 of a JPEG-HDR image.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'RatioImage'</td>
<td>RatioImage</td>
<td class=c>no</td>
<td><span class=s><span class=n>(the embedded JPEG-compressed ratio image)</span></span></td></tr>
<tr class=b>
<td>'alp'</td>
<td>Alpha</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'bet'</td>
<td>Beta</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'cor'</td>
<td>CorrectionMethod</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ln0'</td>
<td>Ln0</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ln1'</td>
<td>Ln1</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'s2n'</td>
<td>S2n</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ver'</td>
<td>JPEG-HDRVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='AdobeCM'>JPEG AdobeCM Tags</a></h2>
<p>The APP13 &quot;Adobe_CM&quot; segment presumably contains color management
information, but the meaning of the data is currently unknown. If anyone
has an idea about what this means, please let me know.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index2</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>AdobeCMType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Adobe'>JPEG Adobe Tags</a></h2>
<p>The APP14 &quot;Adobe&quot; segment stores image encoding information for DCT filters.
This segment may be copied or deleted as a block using the Extra &quot;Adobe&quot;
tag, but note that it is not deleted by default when deleting all metadata
because it may affect the appearance of the image.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index2</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>DCTEncodeVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>APP14Flags0</td>
<td class=c>no</td>
<td><span class=s>0x0 = (none)
<br>Bit 15 = Encoded with Blend=1 downsampling</span></td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>APP14Flags1</td>
<td class=c>no</td>
<td><span class=s>0x0 = (none)</span></td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>ColorTransform</td>
<td class=c>no</td>
<td><span class=s>0 = Unknown (RGB or CMYK)
<br>1 = YCbCr
<br>2 = YCCK</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='GraphConv'>JPEG GraphConv Tags</a></h2>
<p>APP15 is used by GraphicConverter to store JPEG quality.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Q'</td>
<td>Quality</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='SOF'>JPEG SOF Tags</a></h2>
<p>This information is extracted from the JPEG Start Of Frame segment.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>BitsPerSample</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ColorComponents</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>EncodingProcess</td>
<td class=c>no</td>
<td><span class=s>0x0 = Baseline DCT, Huffman coding
<br>0x1 = Extended sequential DCT, Huffman coding
<br>0x2 = Progressive DCT, Huffman coding
<br>0x3 = Lossless, Huffman coding
<br>0x5 = Sequential DCT, differential Huffman coding
<br>0x6 = Progressive DCT, differential Huffman coding
<br>0x7 = Lossless, Differential Huffman coding
<br>0x9 = Extended sequential DCT, arithmetic coding
<br>0xa = Progressive DCT, arithmetic coding
<br>0xb = Lossless, arithmetic coding
<br>0xd = Sequential DCT, differential arithmetic coding
<br>0xe = Progressive DCT, differential arithmetic coding
<br>0xf = Lossless, differential arithmetic coding</span></td></tr>
<tr class=b>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>YCbCrSubSampling</td>
<td class=c>no</td>
<td><span class=s><span class=n>(calculated from components table)</span></span><table class=cols><tr>
<td>&#39;1 1&#39; = YCbCr4:4:4 (1 1)
<br>&#39;1 2&#39; = YCbCr4:4:0 (1 2)
<br>&#39;1 4&#39; = YCbCr4:4:1 (1 4)
<br>&#39;2 1&#39; = YCbCr4:2:2 (2 1)
<br>&#39;2 2&#39; = YCbCr4:2:0 (2 2)
<br>&#39;2 4&#39; = YCbCr4:2:1 (2 4)
<br>&#39;4 1&#39; = YCbCr4:1:1 (4 1)
<br>&#39;4 2&#39; = YCbCr4:1:0 (4 2)</td></tr></table>
</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jan 13, 2022</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

58
html/TagNames/JSON.html Normal file
View File

@ -0,0 +1,58 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>JSON Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>JSON Tags</h2>
<p>Other than a few tags in the table below, JSON tags have not been
pre-defined. However, ExifTool will read any existing tags from basic
JSON-formatted files.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>ON1_SettingsData</td>
<td class=c>-</td>
<td>--&gt; <a href='PLIST.html'>PLIST Tags</a></td></tr>
<tr class=b>
<td>ON1_SettingsMetadataCreated</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>ON1_SettingsMetadataModified</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ON1_SettingsMetadataName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>ON1_SettingsMetadataPluginID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ON1_SettingsMetadataTimestamp</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>ON1_SettingsMetadataUsage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ON1_SettingsMetadataVisibleToUser</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Oct 29, 2020</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

57
html/TagNames/JVC.html Normal file
View File

@ -0,0 +1,57 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>JVC Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>JVC Tags</h2>
<p>JVC EXIF maker note tags.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0002 = 2'>0x0002</td>
<td>CPUVersions</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0003 = 3'>0x0003</td>
<td>Quality</td>
<td class=c>no</td>
<td><span class=s>0 = Low
<br>1 = Normal
<br>2 = Fine</span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Text'>JVC Text Tags</a></h2>
<p>JVC/Victor text-based maker note tags.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'QTY'</td>
<td>Quality</td>
<td class=c>no</td>
<td><span class=s>&#39;FINE&#39; = Fine
<br>&#39;STD&#39; = Normal
<br>&#39;STND&#39; = Normal</span></td></tr>
<tr class=b>
<td>'VER'</td>
<td>MakerNoteVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Dec 22, 2005</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

570
html/TagNames/Jpeg2000.html Normal file
View File

@ -0,0 +1,570 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>Jpeg2000 Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>Jpeg2000 Tags</h2>
<p>The tags below are found in JPEG 2000 images and the JUMBF metadata in JPEG
images, but not all of these are extracted. Note that ExifTool currently
writes only EXIF, IPTC and XMP tags in Jpeg2000 images.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Exif'</td>
<td>EXIF</td>
<td class=c>-</td>
<td>--&gt; <a href='EXIF.html'>EXIF Tags</a></td></tr>
<tr class=b>
<td>'asoc'</td>
<td>Association</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html'>Jpeg2000 Tags</a></td></tr>
<tr>
<td>'bfdb'</td>
<td>BinaryDataType</td>
<td class=c>no</td>
<td><span class=s><span class=n>(JUMBF, MIME type and optional file name)</span></span></td></tr>
<tr class=b>
<td>'bfil'</td>
<td>BinaryFilter</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'bidb'</td>
<td>BinaryData</td>
<td class=c>no</td>
<td><span class=s><span class=n>(JUMBF)</span></span></td></tr>
<tr class=b>
<td>'bpcc'</td>
<td>BitsPerComponent</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'cbor'</td>
<td>CBORData</td>
<td class=c>-</td>
<td>--&gt; <a href='CBOR.html'>CBOR Tags</a></td></tr>
<tr class=b>
<td>'cdef'</td>
<td>ComponentDefinition</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'cgrp'</td>
<td>ColorGroup</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'chck'</td>
<td>DigitalSignature</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'cmap'</td>
<td>ComponentMapping</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'colr'</td>
<td>ColorSpecification</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html#ColorSpec'>Jpeg2000 ColorSpec Tags</a></td></tr>
<tr>
<td>'comp'</td>
<td>Composition</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'copt'</td>
<td>CompositionOptions</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'cref'</td>
<td>Cross-Reference</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'creg'</td>
<td>CodestreamRegistration</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'drep'</td>
<td>DesiredReproductions</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'dtbl'</td>
<td>DataReference</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'flst'</td>
<td>FragmentList</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'free'</td>
<td>Free</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'ftbl'</td>
<td>FragmentTable</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ftyp'</td>
<td>FileType</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html#FileType'>Jpeg2000 FileType Tags</a></td></tr>
<tr>
<td>'gtso'</td>
<td>GraphicsTechnologyStandardOutput</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'ihdr'</td>
<td>ImageHeader</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html#ImageHeader'>Jpeg2000 ImageHeader Tags</a></td></tr>
<tr>
<td>'inst'</td>
<td>InstructionSet</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'jP '</td>
<td>JP2Signature</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'jp2c'</td>
<td>ContiguousCodestream
<br>PreviewImage</td>
<td class=c>no<br>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'jp2h'</td>
<td>JP2Header</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html'>Jpeg2000 Tags</a></td></tr>
<tr>
<td>'jp2i'</td>
<td>IntellectualProperty</td>
<td class=c>-</td>
<td>--&gt; <a href='XMP.html'>XMP Tags</a></td></tr>
<tr class=b>
<td>'jpch'</td>
<td>CodestreamHeader</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html'>Jpeg2000 Tags</a></td></tr>
<tr>
<td>'jplh'</td>
<td>CompositingLayerHeader</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html'>Jpeg2000 Tags</a></td></tr>
<tr class=b>
<td>'json'</td>
<td>JSONData</td>
<td class=c>-</td>
<td>--&gt; <a href='JSON.html'>JSON Tags</a>
<br><span class='n s'>(by default, data in this tag is parsed using the ExifTool JSON module to to
allow individual tags to be accessed when reading, but it may also be
extracted as a block via the &quot;JSONData&quot; tag or by setting the API
BlockExtract option)</span></td></tr>
<tr>
<td>'jumb'</td>
<td>JUMBFBox</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html'>Jpeg2000 Tags</a></td></tr>
<tr class=b>
<td>'jumd'</td>
<td>JUMBFDescr</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html#JUMD'>Jpeg2000 JUMD Tags</a></td></tr>
<tr>
<td>'jxlc'</td>
<td>JXLCodestream</td>
<td class=c>no</td>
<td><span class=s><span class=n>(Codestream in JPEG XL image. Currently processed only to determine
ImageSize)</span></span></td></tr>
<tr class=b>
<td>'lbl '</td>
<td>Label</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'mdat'</td>
<td>MediaData</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'mp7b'</td>
<td>MPEG7Binary</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'nlst'</td>
<td>NumberList</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'opct'</td>
<td>Opacity</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'pclr'</td>
<td>Palette</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'prfl'</td>
<td>Profile</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'res '</td>
<td>Resolution</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html'>Jpeg2000 Tags</a></td></tr>
<tr class=b>
<td>'resc'</td>
<td>CaptureResolution</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html#CaptureResolution'>Jpeg2000 CaptureResolution Tags</a></td></tr>
<tr>
<td>'resd'</td>
<td>DisplayResolution</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html#DisplayResolution'>Jpeg2000 DisplayResolution Tags</a></td></tr>
<tr class=b>
<td>'roid'</td>
<td>ROIDescription</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'rreq'</td>
<td>ReaderRequirements</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'uinf'</td>
<td>UUIDInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='Jpeg2000.html'>Jpeg2000 Tags</a></td></tr>
<tr>
<td>'ulst'</td>
<td>UUIDList</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'url '</td>
<td>URL</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'uuid'</td>
<td>UUID-EXIF
<br>UUID-EXIF2
<br>UUID-EXIF_bad
<br>UUID-IPTC
<br>UUID-IPTC2
<br>UUID-XMP
<br>UUID-GeoJP2
<br>UUID-Photoshop
<br>UUID-Signature
<br>UUID-C2PAClaimSignature
<br>UUID-Unknown</td>
<td class=c>-<br>-<br>-<br>-<br>-<br>-<br>-<br>-<br>no<br>-<br>no</td>
<td>--&gt; <a href='EXIF.html'>EXIF Tags</a>
<br>--&gt; <a href='EXIF.html'>EXIF Tags</a>
<br>--&gt; <a href='EXIF.html'>EXIF Tags</a>
<br>--&gt; <a href='IPTC.html'>IPTC Tags</a>
<br>--&gt; <a href='IPTC.html'>IPTC Tags</a>
<br>--&gt; <a href='XMP.html'>XMP Tags</a>
<br>--&gt; <a href='EXIF.html'>EXIF Tags</a>
<br>--&gt; <a href='Photoshop.html'>Photoshop Tags</a>
<br>--&gt; <a href='CBOR.html'>CBOR Tags</a></td></tr>
<tr class=b>
<td>'xml '</td>
<td>XML
<br>XMP</td>
<td class=c title=' ! = Unsafe
+ = List'>undef!+<br>-</td>
<td><span class=n>(by default, the XML data in this tag is parsed using the ExifTool XMP module
to to allow individual tags to be accessed when reading, but it may also be
extracted as a block via the &quot;XML&quot; tag, which is also how this tag is
written and copied. It may also be extracted as a block by setting the API
BlockExtract option. This is a List-type tag because multiple XML blocks
may exist)</span>
<br>--&gt; <a href='XMP.html#XML'>XMP XML Tags</a>
<br><span class=n>(used for XMP in JPEG XL files)</span>
<br>--&gt; <a href='XMP.html'>XMP Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ColorSpec'>Jpeg2000 ColorSpec Tags</a></h2>
<p>The table below contains tags in the color specification (colr) box. This
box may be rewritten by writing either ICC_Profile, ColorSpace or
ColorSpecData. When writing, any existing colr boxes are replaced with the
newly created colr box.</p>
<p><b>NOTE</b>: Care must be taken when writing this color specification because
writing a specification that is incompatible with the image data may make
the image undisplayable.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>ColorSpecMethod</td>
<td class=c title=' ! = Unsafe'>int8s!</td>
<td><span class=s><span class=n>(default for writing is 2 when writing ICC_Profile, 1 when writing
ColorSpace, or 4 when writing ColorSpecData)</span>
<br>1 = Enumerated
<br>2 = Restricted ICC
<br>3 = Any ICC
<br>4 = Vendor Color</span></td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>ColorSpecPrecedence</td>
<td class=c title=' ! = Unsafe'>int8s!</td>
<td><span class=s><span class=n>(default for writing is 0)</span></span></td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>ColorSpecApproximation</td>
<td class=c title=' ! = Unsafe'>int8s!</td>
<td><span class=s><span class=n>(default for writing is 0)</span>
<br>0 = Not Specified
<br>1 = Accurate
<br>2 = Exceptional Quality
<br>3 = Reasonable Quality
<br>4 = Poor Quality</span></td></tr>
<tr class=b>
<td class=r title='3 = 0x3'>3</td>
<td>ICC_Profile
<br>ColorSpace
<br>ColorSpecData</td>
<td class=c title=' ! = Unsafe'>-<br>int32u!<br>undef!</td>
<td>--&gt; <a href='ICC_Profile.html'>ICC_Profile Tags</a>
<br><table class=cols><tr>
<td>0 = Bi-level
<br>1 = YCbCr(1)
<br>3 = YCbCr(2)
<br>4 = YCbCr(3)
<br>9 = PhotoYCC
<br>11 = CMY
<br>12 = CMYK
<br>13 = YCCK
<br>14 = CIELab
<br>15 = Bi-level(2)</td><td>&nbsp;&nbsp;</td>
<td>16 = sRGB
<br>17 = Grayscale
<br>18 = sYCC
<br>19 = CIEJab
<br>20 = e-sRGB
<br>21 = ROMM-RGB
<br>22 = YPbPr(1125/60)
<br>23 = YPbPr(1250/50)
<br>24 = e-sYCC</td></tr></table>
</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='FileType'>Jpeg2000 FileType Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index4</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>MajorBrand</td>
<td class=c>no</td>
<td><span class=s>&#39;jp2 &#39; = JPEG 2000 Image (.JP2)
<br>&#39;jpm &#39; = JPEG 2000 Compound Image (.JPM)
<br>&#39;jpx &#39; = JPEG 2000 with extensions (.JPX)
<br>&#39;jxl &#39; = JPEG XL Image (.JXL)</span></td></tr>
<tr class=b>
<td class=r title='1 = 0x1'>1</td>
<td>MinorVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='2 = 0x2'>2</td>
<td>CompatibleBrands</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ImageHeader'>Jpeg2000 ImageHeader Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>ImageHeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>ImageWidth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>NumberOfComponents</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='10 = 0xa'>10</td>
<td>BitsPerComponent</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='11 = 0xb'>11</td>
<td>Compression</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Uncompressed
<br>1 = Modified Huffman
<br>2 = Modified READ
<br>3 = Modified Modified READ
<br>4 = JBIG
<br>5 = JPEG
<br>6 = JPEG-LS
<br>7 = JPEG 2000
<br>8 = JBIG2</td></tr></table>
</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='JUMD'>Jpeg2000 JUMD Tags</a></h2>
<p>Information extracted from the JUMBF description box.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'id'</td>
<td>JUMDID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'label'</td>
<td>JUMDLabel</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'sig'</td>
<td>JUMDSignature</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'toggles'</td>
<td>JUMDToggles?</td>
<td class=c>no</td>
<td><span class=s>Bit 0 = Requestable
<br>Bit 1 = Label
<br>Bit 2 = ID
<br>Bit 3 = Signature</span></td></tr>
<tr>
<td>'type'</td>
<td>JUMDType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='CaptureResolution'>Jpeg2000 CaptureResolution Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>CaptureYResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>CaptureXResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>CaptureYResolutionUnit</td>
<td class=c>no</td>
<td>--&gt; <a href='Jpeg2000.html#ResolutionUnit'>Jpeg2000 ResolutionUnit Values</a></td></tr>
<tr class=b>
<td class=r title='9 = 0x9'>9</td>
<td>CaptureXResolutionUnit</td>
<td class=c>no</td>
<td>--&gt; <a href='Jpeg2000.html#ResolutionUnit'>Jpeg2000 ResolutionUnit Values</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ResolutionUnit'>Jpeg2000 ResolutionUnit Values</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class='inner sep' cellspacing=1>
<tr class=h><th>Value</th><th>ResolutionUnit</th><th>Value</th><th>ResolutionUnit</th><th>Value</th><th>ResolutionUnit</th></tr>
<tr><td>-3</td><td>= km</td>
<td class=b>1</td><td class=b>= 10 cm</td>
<td>5</td><td>= 0.01 mm</td>
</tr><tr><td>-2</td><td>= 100 m</td>
<td class=b>2</td><td class=b>= cm</td>
<td>6</td><td>= um</td>
</tr><tr><td>-1</td><td>= 10 m</td>
<td class=b>3</td><td class=b>= mm</td>
<td>&nbsp;</td><td>&nbsp;</td>
</tr><tr><td>0</td><td>= m</td>
<td class=b>4</td><td class=b>= 0.1 mm</td>
<td>&nbsp;</td><td>&nbsp;</td>
</tr></table></td></tr></table></blockquote>
<h2><a name='DisplayResolution'>Jpeg2000 DisplayResolution Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='0 = 0x0'>0</td>
<td>DisplayYResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='4 = 0x4'>4</td>
<td>DisplayXResolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>DisplayYResolutionUnit</td>
<td class=c>no</td>
<td>--&gt; <a href='Jpeg2000.html#ResolutionUnit'>Jpeg2000 ResolutionUnit Values</a></td></tr>
<tr class=b>
<td class=r title='9 = 0x9'>9</td>
<td>DisplayXResolutionUnit</td>
<td class=c>no</td>
<td>--&gt; <a href='Jpeg2000.html#ResolutionUnit'>Jpeg2000 ResolutionUnit Values</a></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Nov 11, 2021</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

5735
html/TagNames/Kodak.html Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,93 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>KyoceraRaw Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>KyoceraRaw Tags</h2>
<p>Tags for Kyocera Contax N Digital RAW images.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='1 = 0x1'>1</td>
<td>FirmwareVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='12 = 0xc'>12</td>
<td>Model</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='25 = 0x19'>25</td>
<td>Make</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='33 = 0x21'>33</td>
<td>DateTimeOriginal</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='52 = 0x34'>52</td>
<td>ISO</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>7 = 25
<br>8 = 32
<br>9 = 40
<br>10 = 50</td><td>&nbsp;&nbsp;</td>
<td>11 = 64
<br>12 = 80
<br>13 = 100
<br>14 = 125</td><td>&nbsp;&nbsp;</td>
<td>15 = 160
<br>16 = 200
<br>17 = 250
<br>18 = 320</td><td>&nbsp;&nbsp;</td>
<td>19 = 400</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='56 = 0x38'>56</td>
<td>ExposureTime</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='60 = 0x3c'>60</td>
<td>WB_RGGBLevels</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='88 = 0x58'>88</td>
<td>FNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='104 = 0x68'>104</td>
<td>MaxAperture</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='112 = 0x70'>112</td>
<td>FocalLength</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='124 = 0x7c'>124</td>
<td>Lens</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Feb 17, 2006</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

30
html/TagNames/LIF.html Normal file
View File

@ -0,0 +1,30 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>LIF Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>LIF Tags</h2>
<p>Tags extracted from Leica Image Format (LIF) imaging files. As well as the
tags listed below, all available information is extracted from the
XML-format metadata in the LIF header.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>TimeStampList</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Jun 22, 2021</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

479
html/TagNames/LNK.html Normal file
View File

@ -0,0 +1,479 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>LNK Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>LNK Tags</h2>
<p>Information extracted from MS Shell Link (Windows shortcut) files.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0014 = 20'>0x0014</td>
<td>Flags</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>Bit 0 = IDList
<br>Bit 1 = LinkInfo
<br>Bit 2 = Description
<br>Bit 3 = RelativePath
<br>Bit 4 = WorkingDir
<br>Bit 5 = CommandArgs
<br>Bit 6 = IconFile
<br>Bit 7 = Unicode
<br>Bit 8 = NoLinkInfo
<br>Bit 9 = ExpString
<br>Bit 10 = SeparateProc
<br>Bit 12 = DarwinID
<br>Bit 13 = RunAsUser
<br>Bit 14 = ExpIcon
<br>Bit 15 = NoPidAlias
<br>Bit 17 = RunWithShim
<br>Bit 18 = NoLinkTrack
<br>Bit 19 = TargetMetadata
<br>Bit 20 = NoLinkPathTracking
<br>Bit 21 = NoKnownFolderTracking
<br>Bit 22 = NoKnownFolderAlias
<br>Bit 23 = LinkToLink
<br>Bit 24 = UnaliasOnSave
<br>Bit 25 = PreferEnvPath
<br>Bit 26 = KeepLocalIDList</td></tr></table>
</td></tr>
<tr class=b>
<td title='0x0018 = 24'>0x0018</td>
<td>FileAttributes</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>Bit 0 = Read-only
<br>Bit 1 = Hidden
<br>Bit 2 = System
<br>Bit 3 = Volume
<br>Bit 4 = Directory
<br>Bit 5 = Archive
<br>Bit 6 = Encrypted?
<br>Bit 7 = Normal</td><td>&nbsp;&nbsp;</td>
<td>Bit 8 = Temporary
<br>Bit 9 = Sparse
<br>Bit 10 = Reparse point
<br>Bit 11 = Compressed
<br>Bit 12 = Offline
<br>Bit 13 = Not indexed
<br>Bit 14 = Encrypted</td></tr></table>
</td></tr>
<tr>
<td title='0x001c = 28'>0x001c</td>
<td>CreateDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0024 = 36'>0x0024</td>
<td>AccessDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x002c = 44'>0x002c</td>
<td>ModifyDate</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x0034 = 52'>0x0034</td>
<td>TargetFileSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x0038 = 56'>0x0038</td>
<td>IconIndex</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x003c = 60'>0x003c</td>
<td>RunWindow</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Hide
<br>1 = Normal
<br>2 = Show Minimized
<br>3 = Show Maximized
<br>4 = Show No Activate
<br>5 = Show
<br>6 = Minimized
<br>7 = Show Minimized No Activate
<br>8 = Show NA
<br>9 = Restore
<br>10 = Show Default</td></tr></table>
</td></tr>
<tr>
<td title='0x0040 = 64'>0x0040</td>
<td>HotKey</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0x0 = (none)
<br>0x90 = Num Lock
<br>0x91 = Scroll Lock
<br>0x100 = Shift
<br>0x200 = Control</td><td>&nbsp;&nbsp;</td>
<td>0x400 = Alt
<br>&#39;0x30&#39;-&#39;0x39&#39; = 0-9
<br>&#39;0x41&#39;-&#39;0x5a&#39; = A-Z
<br>&#39;0x70&#39;-&#39;0x87&#39; = F1-F24</td></tr></table>
</td></tr>
<tr class=b>
<td title='0x10000 = 65536'>0x10000</td>
<td>ItemID</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#ItemID'>LNK ItemID Tags</a></td></tr>
<tr>
<td title='0x20000 = 131072'>0x20000</td>
<td>LinkInfo</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#LinkInfo'>LNK LinkInfo Tags</a></td></tr>
<tr class=b>
<td title='0x30004 = 196612'>0x30004</td>
<td>Description</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x30008 = 196616'>0x30008</td>
<td>RelativePath</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x30010 = 196624'>0x30010</td>
<td>WorkingDirectory</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x30020 = 196640'>0x30020</td>
<td>CommandLineArguments</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x30040 = 196672'>0x30040</td>
<td>IconFileName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0xa0000000 = 2684354560'>0xa0000000</td>
<td>UnknownData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#UnknownData'>LNK UnknownData Tags</a></td></tr>
<tr class=b>
<td title='0xa0000001 = 2684354561'>0xa0000001</td>
<td>EnvVarData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#UnknownData'>LNK UnknownData Tags</a></td></tr>
<tr>
<td title='0xa0000002 = 2684354562'>0xa0000002</td>
<td>ConsoleData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#ConsoleData'>LNK ConsoleData Tags</a></td></tr>
<tr class=b>
<td title='0xa0000003 = 2684354563'>0xa0000003</td>
<td>TrackerData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#TrackerData'>LNK TrackerData Tags</a></td></tr>
<tr>
<td title='0xa0000004 = 2684354564'>0xa0000004</td>
<td>ConsoleFEData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#ConsoleFEData'>LNK ConsoleFEData Tags</a></td></tr>
<tr class=b>
<td title='0xa0000005 = 2684354565'>0xa0000005</td>
<td>SpecialFolderData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#UnknownData'>LNK UnknownData Tags</a></td></tr>
<tr>
<td title='0xa0000006 = 2684354566'>0xa0000006</td>
<td>DarwinData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#UnknownData'>LNK UnknownData Tags</a></td></tr>
<tr class=b>
<td title='0xa0000007 = 2684354567'>0xa0000007</td>
<td>IconEnvData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#UnknownData'>LNK UnknownData Tags</a></td></tr>
<tr>
<td title='0xa0000008 = 2684354568'>0xa0000008</td>
<td>ShimData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#UnknownData'>LNK UnknownData Tags</a></td></tr>
<tr class=b>
<td title='0xa0000009 = 2684354569'>0xa0000009</td>
<td>PropertyStoreData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#UnknownData'>LNK UnknownData Tags</a></td></tr>
<tr>
<td title='0xa000000b = 2684354571'>0xa000000b</td>
<td>KnownFolderData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#UnknownData'>LNK UnknownData Tags</a></td></tr>
<tr class=b>
<td title='0xa000000c = 2684354572'>0xa000000c</td>
<td>VistaIDListData</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#UnknownData'>LNK UnknownData Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ItemID'>LNK ItemID Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td title='0x0032 = 50'>0x0032</td>
<td>Item0032</td>
<td class=c>-</td>
<td>--&gt; <a href='LNK.html#Item0032'>LNK Item0032 Tags</a></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Item0032'>LNK Item0032 Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='14 = 0xe'>14</td>
<td>TargetFileDOSName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='LinkInfo'>LNK LinkInfo Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>CommonNetworkRelLink</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>CommonPathSuffix</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>DeviceName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>DriveSerialNumber</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>DriveType</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0 = Unknown
<br>1 = Invalid Root Path
<br>2 = Removable Media
<br>3 = Fixed Disk</td><td>&nbsp;&nbsp;</td>
<td>4 = Remote Drive
<br>5 = CD-ROM
<br>6 = Ram Disk</td></tr></table>
</td></tr>
<tr class=b>
<td>LocalBasePath</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>NetName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>NetProviderType</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0x1a0000 = AVID
<br>0x1b0000 = DOCUSPACE
<br>0x1c0000 = MANGOSOFT
<br>0x1d0000 = SERNET
<br>0x1e0000 = RIVERFRONT1
<br>0x1f0000 = RIVERFRONT2
<br>0x200000 = DECORB
<br>0x210000 = PROTSTOR
<br>0x220000 = FJ_REDIR
<br>0x230000 = DISTINCT
<br>0x240000 = TWINS
<br>0x250000 = RDR2SAMPLE
<br>0x260000 = CSC
<br>0x270000 = 3IN1
<br>0x290000 = EXTENDNET
<br>0x2a0000 = STAC
<br>0x2b0000 = FOXBAT</td><td>&nbsp;&nbsp;</td>
<td>0x2c0000 = YAHOO
<br>0x2d0000 = EXIFS
<br>0x2e0000 = DAV
<br>0x2f0000 = KNOWARE
<br>0x300000 = OBJECT_DIRE
<br>0x310000 = MASFAX
<br>0x320000 = HOB_NFS
<br>0x330000 = SHIVA
<br>0x340000 = IBMAL
<br>0x350000 = LOCK
<br>0x360000 = TERMSRV
<br>0x370000 = SRT
<br>0x380000 = QUINCY
<br>0x390000 = OPENAFS
<br>0x3a0000 = AVID1
<br>0x3b0000 = DFS</td></tr></table>
</td></tr>
<tr>
<td>VolumeID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>VolumeLabel</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='UnknownData'>LNK UnknownData Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr><td colspan=4 class=c><i>[no tags known]</i></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ConsoleData'>LNK ConsoleData Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>FillAttributes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='10 = 0xa'>10</td>
<td>PopupFillAttributes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='12 = 0xc'>12</td>
<td>ScreenBufferSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='16 = 0x10'>16</td>
<td>WindowSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='20 = 0x14'>20</td>
<td>WindowOrigin</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='32 = 0x20'>32</td>
<td>FontSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='36 = 0x24'>36</td>
<td>FontFamily</td>
<td class=c>no</td>
<td><table class=cols><tr>
<td>0x0 = Don&#39;t Care
<br>0x10 = Roman
<br>0x20 = Swiss</td><td>&nbsp;&nbsp;</td>
<td>0x30 = Modern
<br>0x40 = Script
<br>0x50 = Decorative</td></tr></table>
</td></tr>
<tr class=b>
<td class=r title='40 = 0x28'>40</td>
<td>FontWeight</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='44 = 0x2c'>44</td>
<td>FontName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='108 = 0x6c'>108</td>
<td>CursorSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='112 = 0x70'>112</td>
<td>FullScreen</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='116 = 0x74'>116</td>
<td>QuickEdit</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='120 = 0x78'>120</td>
<td>InsertMode</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='124 = 0x7c'>124</td>
<td>WindowOriginAuto</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='128 = 0x80'>128</td>
<td>HistoryBufferSize</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td class=r title='132 = 0x84'>132</td>
<td>NumHistoryBuffers</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td class=r title='136 = 0x88'>136</td>
<td>RemoveHistoryDuplicates</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='TrackerData'>LNK TrackerData Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='16 = 0x10'>16</td>
<td>MachineID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ConsoleFEData'>LNK ConsoleFEData Tags</a></h2>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Index1</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td class=r title='8 = 0x8'>8</td>
<td>CodePage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Mar 17, 2012</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

872
html/TagNames/Leaf.html Normal file
View File

@ -0,0 +1,872 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- (this file generated automatically by Image::ExifTool::BuildTagLookup) -->
<head>
<title>Leaf Tags</title>
<link rel=stylesheet type='text/css' href='style.css' title='Style'>
</head>
<body>
<h2 class=top>Leaf Tags</h2>
<p>These tags are found in .MOS images from Leaf digital camera backs as
written by Creo Leaf Capture. They exist within the Leaf-specific directory
structure of EXIF tag 0x8606. The tables below list observed Leaf tags,
however ExifTool will extract any tags found in the Leaf directories even if
they don&#39;t appear in these tables.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'JPEG_preview_data'</td>
<td>PreviewImage</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'JPEG_preview_info'</td>
<td>PreviewInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'PDA_histogram_data'</td>
<td>PDAHistogram</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'back_serial_number'</td>
<td>BackSerial</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'camera_profile'</td>
<td>CameraProfile</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#CameraProfile'>Leaf CameraProfile Tags</a></td></tr>
<tr class=b>
<td>'icc_camera_profile'</td>
<td>ICC_Profile</td>
<td class=c>-</td>
<td>--&gt; <a href='ICC_Profile.html'>ICC_Profile Tags</a></td></tr>
<tr>
<td>'icc_camera_to_tone_matrix'</td>
<td>ToneMatrix</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'icc_camera_to_tone_space_flow'</td>
<td>ToneSpaceFlow</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'icc_rgb_ws_profile'</td>
<td>RGB_Profile</td>
<td class=c>-</td>
<td>--&gt; <a href='ICC_Profile.html'>ICC_Profile Tags</a></td></tr>
<tr class=b>
<td>'image_offset'</td>
<td>ImageOffset</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'pattern_ratation_angle'</td>
<td>PatternAngle</td>
<td class=c>no</td>
<td><span class=s><span class=n>(&quot;ratation&quot; is not a typo)</span></span></td></tr>
</table></td></tr></table></blockquote>
<h2><a name='CameraProfile'>Leaf CameraProfile Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;CamProf_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'back_type'</td>
<td>CameraBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'capture_profile'</td>
<td>CaptureProfile</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#CaptureProfile'>Leaf CaptureProfile Tags</a></td></tr>
<tr>
<td>'image_profile'</td>
<td>ImageProfile</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#ImageProfile'>Leaf ImageProfile Tags</a></td></tr>
<tr class=b>
<td>'name'</td>
<td>CameraName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'type'</td>
<td>CameraType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'version'</td>
<td>CameraProfileVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='CaptureProfile'>Leaf CaptureProfile Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;CaptProf_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'CCD_rect'</td>
<td>CCDRect</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'CCD_valid_rect'</td>
<td>CCDValidRect</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'CCD_video_rect'</td>
<td>CCDVideoRect</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'back_type'</td>
<td>CaptProfBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'center_dark_rect'</td>
<td>CenterDarkRect</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'color_averages'</td>
<td>ColorAverages</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'color_matrix'</td>
<td>ColorMatrix</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'dark_correction_type'</td>
<td>DarkCorrectionType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'image_bounds'</td>
<td>ImageBounds</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'image_fields'</td>
<td>ImageFields</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'image_offset'</td>
<td>ImageOffset</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'left_dark_rect'</td>
<td>LeftDarkRect</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'luminance_consts'</td>
<td>LuminanceConsts</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'mosaic_pattern'</td>
<td>MosaicPattern</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'name'</td>
<td>CaptProfName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'number_of_planes'</td>
<td>NumberOfPlanes</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'raw_data_rotation'</td>
<td>RawDataRotation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'reconstruction_type'</td>
<td>ReconstructionType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'right_dark_rect'</td>
<td>RightDarkRect</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'serial_number'</td>
<td>CaptureSerial</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'type'</td>
<td>CaptProfType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'version'</td>
<td>CaptProfVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'xy_offset_info'</td>
<td>XYOffsetInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ImageProfile'>Leaf ImageProfile Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;ImgProf_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'back_type'</td>
<td>ImgProfBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'image_status'</td>
<td>ImageStatus</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'name'</td>
<td>ImgProfName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'rotation_angle'</td>
<td>RotationAngle</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'shoot_setup'</td>
<td>ShootSetup</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#ShootSetup'>Leaf ShootSetup Tags</a></td></tr>
<tr class=b>
<td>'type'</td>
<td>ImgProfType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'version'</td>
<td>ImgProfVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ShootSetup'>Leaf ShootSetup Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;ShootObj_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'back_type'</td>
<td>ShootObjBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'camera_setup'</td>
<td>CameraSetup</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#CameraSetup'>Leaf CameraSetup Tags</a></td></tr>
<tr>
<td>'capture_setup'</td>
<td>CaptureSetup</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#CaptureSetup'>Leaf CaptureSetup Tags</a></td></tr>
<tr class=b>
<td>'color_setup'</td>
<td>ColorSetup</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#ColorSetup'>Leaf ColorSetup Tags</a></td></tr>
<tr>
<td>'look_header'</td>
<td>LookHeader</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#LookHeader'>Leaf LookHeader Tags</a></td></tr>
<tr class=b>
<td>'name'</td>
<td>ShootObjName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'save_setup'</td>
<td>SaveSetup</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#SaveSetup'>Leaf SaveSetup Tags</a></td></tr>
<tr class=b>
<td>'type'</td>
<td>ShootObjType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'version'</td>
<td>ShootObjVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='CameraSetup'>Leaf CameraSetup Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;CameraObj_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'ISO_speed'</td>
<td>ISOSpeed</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'back_type'</td>
<td>CameraObjBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'camera_type'</td>
<td>CameraType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'lens_ID'</td>
<td>LensID</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'lens_type'</td>
<td>LensType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'name'</td>
<td>CameraObjName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'strobe'</td>
<td>Strobe</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'type'</td>
<td>CameraObjType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'version'</td>
<td>CameraObjVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='CaptureSetup'>Leaf CaptureSetup Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;CaptureObj_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'Multi_quality'</td>
<td>MultiQuality</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'back_type'</td>
<td>CaptureObjBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'name'</td>
<td>CaptureObjName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'neutals'</td>
<td>Neutals</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#Neutrals'>Leaf Neutrals Tags</a></td></tr>
<tr>
<td>'selection'</td>
<td>Selection</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#Selection'>Leaf Selection Tags</a></td></tr>
<tr class=b>
<td>'sharpness'</td>
<td>Sharpness</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#Sharpness'>Leaf Sharpness Tags</a></td></tr>
<tr>
<td>'single_quality'</td>
<td>SingleQuality</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'tone_curve'</td>
<td>ToneCurve</td>
<td class=c>-</td>
<td>--&gt; <a href='Leaf.html#ToneCurve'>Leaf ToneCurve Tags</a></td></tr>
<tr>
<td>'type'</td>
<td>CaptureObjType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'version'</td>
<td>CaptureObjVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Neutrals'>Leaf Neutrals Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;NeutObj_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'back_type'</td>
<td>NeutObjBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'color_casts'</td>
<td>ColorCasts</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'highlight_end_points'</td>
<td>HighlightEndPoints</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'name'</td>
<td>NeutObjName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'neutrals'</td>
<td>Neutrals</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'shadow_end_points'</td>
<td>ShadowEndPoints</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'type'</td>
<td>NeutObjType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'version'</td>
<td>NeutObjVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Selection'>Leaf Selection Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;SelObj_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'back_type'</td>
<td>SelObjBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'locks'</td>
<td>Locks</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'name'</td>
<td>SelObjName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'orientation'</td>
<td>Orientation</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'rect'</td>
<td>Rect</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'resolution'</td>
<td>Resolution</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'scale'</td>
<td>Scale</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'type'</td>
<td>SelObjType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'version'</td>
<td>SelObjVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='Sharpness'>Leaf Sharpness Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;SharpObj_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'back_type'</td>
<td>SharpObjBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'data_len'</td>
<td>DataLen</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'name'</td>
<td>SharpObjName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'sharp_info'</td>
<td>SharpInfo</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'sharp_method'</td>
<td>SharpMethod</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'type'</td>
<td>SharpObjType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'version'</td>
<td>SharpObjVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ToneCurve'>Leaf ToneCurve Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;ToneObj_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'back_type'</td>
<td>ToneObjBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'gamma'</td>
<td>Gamma</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'name'</td>
<td>ToneObjName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'npts'</td>
<td>Npts</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'tones'</td>
<td>Tones</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'type'</td>
<td>ToneObjType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'version'</td>
<td>ToneObjVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='ColorSetup'>Leaf ColorSetup Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;ColorObj_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'back_type'</td>
<td>ColorObjBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'color_mode'</td>
<td>ColorMode</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'color_type'</td>
<td>ColorType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'has_ICC'</td>
<td>HasICC</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'input_profile'</td>
<td>InputProfile</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'name'</td>
<td>ColorObjName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'output_profile'</td>
<td>OutputProfile</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'type'</td>
<td>ColorObjType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'version'</td>
<td>ColorObjVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='LookHeader'>Leaf LookHeader Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;LookHead_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'back_type'</td>
<td>LookHeadBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'name'</td>
<td>LookHeadName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'type'</td>
<td>LookHeadType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'version'</td>
<td>LookHeadVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='SaveSetup'>Leaf SaveSetup Tags</a></h2>
<p>All <b>Tag ID</b>&#39;s in the following table have a leading &#39;SaveObj_&#39; which
has been removed.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr>
<td>'back_type'</td>
<td>SaveObjBackType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'leaf_auto_active'</td>
<td>LeafAutoActive</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'leaf_auto_base_name'</td>
<td>LeafAutoBaseName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'leaf_hot_folder'</td>
<td>LeafHotFolder</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'leaf_open_proc_HDR'</td>
<td>LeafOpenProcHDR</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'leaf_output_file_type'</td>
<td>LeafOutputFileType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'leaf_save_selection'</td>
<td>LeafSaveSelection</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'name'</td>
<td>SaveObjName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'std_auto_active'</td>
<td>StdAutoActive</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'std_base_name'</td>
<td>StdBaseName</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'std_hot_folder'</td>
<td>StdHotFolder</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'std_open_in_photoshop'</td>
<td>StdOpenInPhotoshop</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'std_output_bit_depth'</td>
<td>StdOutputBitDepth</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'std_output_color_mode'</td>
<td>StdOutputColorMode</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'std_output_file_type'</td>
<td>StdOutputFileType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'std_oxygen'</td>
<td>StdOxygen</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'std_save_selection'</td>
<td>StdSaveSelection</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'std_scaled_output'</td>
<td>StdScaledOutput</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'std_sharpen_output'</td>
<td>StdSharpenOutput</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>'type'</td>
<td>SaveObjType</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
<tr>
<td>'version'</td>
<td>SaveObjVersion</td>
<td class=c>no</td>
<td>&nbsp;</td></tr>
</table></td></tr></table></blockquote>
<h2><a name='SubIFD'>Leaf SubIFD Tags</a></h2>
<p>Leaf writes a TIFF-format sub-IFD inside IFD0 of a MOS image. No tags in
this sub-IFD are currently known, except for tags 0x8602 and 0x8606 which
really shouldn&#39;t be here anyway (so they don&#39;t appear in the table below)
because they duplicate references to the same data from tags with the same
ID in IFD0.</p>
<blockquote>
<table class=frame><tr><td>
<table class=inner cellspacing=1>
<tr class=h><th>Tag&nbsp;ID</th><th>Tag Name</th>
<th>Writable</th><th>Values / <span class=n>Notes</span></th></tr>
<tr><td colspan=4 class=c><i>[no tags known]</i></td></tr>
</table></td></tr></table></blockquote>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Dec 11, 2019</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

Some files were not shown because too many files have changed in this diff Show More