Browse Source

Update to 10.28

pull/17/head 10.28
exiftool 6 years ago
parent
commit
a935da119f
  1. 16
      Changes
  2. 2
      MANIFEST
  3. 6
      README
  4. 14
      arg_files/xmp2exif.args
  5. 520
      config_files/bibble.config
  6. 114
      config_files/fotoware.config
  7. 4
      exiftool
  8. 8
      html/TagNames/Canon.html
  9. 17
      html/TagNames/Composite.html
  10. 534
      html/TagNames/EXIF.html
  11. 78
      html/TagNames/Minolta.html
  12. 3
      html/TagNames/Olympus.html
  13. 3
      html/TagNames/Pentax.html
  14. 157
      html/TagNames/Sony.html
  15. 2
      html/TagNames/XMP.html
  16. 2
      html/exiftool_pod.html
  17. 17
      html/history.html
  18. 14
      html/index.html
  19. 22
      html/install.html
  20. 8
      html/standards.html
  21. 2
      lib/Image/ExifTool.pm
  22. 62
      lib/Image/ExifTool/BuildTagLookup.pm
  23. 8
      lib/Image/ExifTool/Canon.pm
  24. 125
      lib/Image/ExifTool/Exif.pm
  25. 84
      lib/Image/ExifTool/Minolta.pm
  26. 3
      lib/Image/ExifTool/Olympus.pm
  27. 3
      lib/Image/ExifTool/Pentax.pm
  28. 9
      lib/Image/ExifTool/README
  29. 4
      lib/Image/ExifTool/Sony.pm
  30. 24
      lib/Image/ExifTool/TagLookup.pm
  31. 24
      lib/Image/ExifTool/TagNames.pod
  32. 2
      lib/Image/ExifTool/WriteExif.pl
  33. 2
      perl-Image-ExifTool.spec
  34. 12
      t/Writer_11.out
  35. 12
      t/Writer_13.out
  36. 10
      t/Writer_19.out
  37. 10
      t/Writer_25.out
  38. 16
      t/Writer_46.out
  39. 12
      t/Writer_53.out
  40. 4
      windows_exiftool

16
Changes

@ -7,6 +7,19 @@ RSS feed: http://owl.phy.queensu.ca/~phil/exiftool/rss.xml
Note: The most recent production release is Version 10.20. (Other versions are
considered development releases, and are not uploaded to CPAN.)
Sept. xx, 2016 - Version 10.28 - "EXIF 2.31"
- Added support for new EXIF 2.31 tags
- Added some new Canon LensType values (thanks Norbert Wasser for one)
- Added a new Olympus LensType (thanks LibRaw and Niels Kristian Bech Jensen)
- Added a new Sony LensType and SonyModelID (thanks Jos Roost)
- Added a new Pentax LensType
- Added fotoware.config and bibble.config files to the distribution
- Made Composite SubSecDateTimeOriginal, SubSecCreateDate and SubSecModifyDate
tags writable, and expanded to include new EXIF 2.31 time zone tags
- Fixed problem writing user-defined structured tag elements with a dot (.) in
their tag ID
Sept. 23, 2016 - Version 10.27
- Added a new CanonModelID (thanks LibRaw)
@ -21,11 +34,10 @@ Sept. 23, 2016 - Version 10.27
specified
- Fixed Timecode printout in -v3 output for M2TS videos (thanks Ken Neighbors)
- Fixed some problems with the new "-progress:TITLE" feature
- Fixed problem where _exiftool_tmp file could be left around after a failed
- Fixed problem where "_exiftool_tmp" file could be left around after a failed
write attempt
- Fixed potential "isn't numeric" runtime error when reading a PDF file with
the -ee option
- Added read support for GSpherical metadata in MP4 videos
Sept. 15, 2016 - Version 10.26

2
MANIFEST

@ -14,8 +14,10 @@ arg_files/xmp2exif.args
arg_files/xmp2gps.args
arg_files/xmp2iptc.args
arg_files/xmp2pdf.args
config_files/bibble.config
config_files/convert_regions.config
config_files/example.config
config_files/fotoware.config
config_files/gps2utm.config
config_files/photoshop_paths.config
config_files/picasa_faces.config

6
README

@ -101,8 +101,8 @@ 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-10.27.tar.gz | tar -xf -
cd Image-ExifTool-10.27
gzip -dc Image-ExifTool-10.28.tar.gz | tar -xf -
cd Image-ExifTool-10.28
./exiftool t/images/ExifTool.jpg
Note: These commands extract meta information from one of the test images.
@ -180,8 +180,10 @@ distribution package:
xmp2iptc.args - Arguments for converting XMP to IPTC
xmp2pdf.args - Arguments for converting XMP to PDF
config_files/ - Sample ExifTool configuration files:
bibble.config - Definitions for writing Bibble XMP tags
convert_regions.config - Convert between MWG and MP face regions
example.config - General example showing config features
fotoware.config - Definitions for writing Fotoware XMP tags
gps2utm.config - Generate UTM coordinate tags from GPS info
photoshop_paths.config - For extracting or copying Photoshop paths
picasa_faces.config - Convert from Picasa to MWG/MP face regions

14
arg_files/xmp2exif.args

@ -5,12 +5,13 @@
#
# Usage: exiftool -tagsFromFile SRCFILE -@ xmp2exif.args DSTFILE
#
# Requires: ExifTool version 8.60 or later
# Requires: ExifTool version 10.28 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
#
# References: http://www.metadataworkinggroup.org/specs/
#
@ -27,12 +28,11 @@
-EXIF:all < XMP-tiff:all
-EXIF:ImageDescription < XMP-dc:Description
-EXIF:DateTimeOriginal < XMP-photoshop:DateCreated
# magically extracts sub-seconds from date/time value if available
-EXIF:SubSecTimeOriginal < XMP-photoshop:DateCreated
-EXIF:CreateDate < XMP-xmp:CreateDate
-EXIF:SubSecTimeDigitized < XMP-xmp:CreateDate
-EXIF:ModifyDate < XMP-xmp:ModifyDate
-EXIF:SubSecTime < XMP-xmp:ModifyDate
# the following 3 SubSec tags also write/delete the corresponding EXIF
# SubSecTime and OffsetTime tags as appropriate
-EXIF:SubSecDateTimeOriginal < XMP-photoshop:DateCreated
-EXIF:SubSecCreateDate < XMP-xmp:CreateDate
-EXIF:SubSecModifyDate < XMP-xmp:ModifyDate
-EXIF:Software < -XMP-xmp:CreatorTool
-EXIF:Copyright < XMP-dc:Rights
-EXIF:Artist < XMP-dc:Creator

520
config_files/bibble.config

@ -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: 2012/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

114
config_files/fotoware.config

@ -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

4
exiftool

@ -12,7 +12,7 @@
use strict;
require 5.004;
my $version = '10.27';
my $version = '10.28';
# add our 'lib' directory to the include list BEFORE 'use Image::ExifTool'
my $exeDir;
@ -4799,7 +4799,7 @@ with this command:
produces output like this:
-- Generated by ExifTool 10.27 --
-- Generated by ExifTool 10.28 --
File: a.jpg - 2003:10:31 15:44:19
(f/5.6, 1/60s, ISO 100)
File: b.jpg - 2006:05:23 11:57:38

8
html/TagNames/Canon.html

@ -1595,7 +1595,7 @@ attempting to identify the specific lens model.</p>
</tr><tr><td>252</td><td>= Canon EF 70-200mm f/2.8L IS II USM + 1.4x</td>
</tr><tr><td>253</td><td>= Canon EF 70-200mm f/2.8L IS II USM + 2x</td>
</tr><tr><td>254</td><td>= Canon EF 100mm f/2.8L Macro IS USM</td>
</tr><tr><td>255</td><td>= Sigma 24-105mm f/4 DG OS HSM | A or Other Sigma Lens</td>
</tr><tr><td>255</td><td>= Sigma 24-105mm f/4 DG OS HSM | A or Sigma Lens</td>
</tr><tr><td>255.1</td><td>= Sigma 180mm f/2.8 EX DG OS HSM APO Macro</td>
</tr><tr><td>488</td><td>= Canon EF-S 15-85mm f/3.5-5.6 IS USM</td>
</tr><tr><td>489</td><td>= Canon EF 70-300mm f/4-5.6L IS USM</td>
@ -1615,7 +1615,8 @@ attempting to identify the specific lens model.</p>
</tr><tr><td>506</td><td>= Canon EF 400mm f/4 DO IS II USM</td>
</tr><tr><td>507</td><td>= Canon EF 16-35mm f/4L IS USM</td>
</tr><tr><td>508</td><td>= Canon EF 11-24mm f/4L USM</td>
</tr><tr><td>747</td><td>= Canon EF 100-400mm f/4.5-5.6L IS II USM</td>
</tr><tr><td>747</td><td>= Canon EF 100-400mm f/4.5-5.6L IS II USM or Tamron Lens</td>
</tr><tr><td>747.1</td><td>= Tamron SP 150-600mm F5-6.3 Di VC USD G2</td>
</tr><tr><td>748</td><td>= Canon EF 100-400mm f/4.5-5.6L IS II USM + 1.4x</td>
</tr><tr><td>750</td><td>= Canon EF 35mm f/1.4L II USM</td>
</tr><tr><td>751</td><td>= Canon EF 16-35mm f/2.8L III USM</td>
@ -1635,6 +1636,7 @@ attempting to identify the specific lens model.</p>
</tr><tr><td>4154</td><td>= Canon EF-S 24mm f/2.8 STM</td>
</tr><tr><td>4155</td><td>= Canon EF-M 28mm f/3.5 Macro IS STM</td>
</tr><tr><td>4156</td><td>= Canon EF 50mm f/1.8 STM</td>
</tr><tr><td>4157</td><td>= Canon EF-M 18-150mm 1:3.5-6.3 IS STM</td>
</tr><tr><td>36912</td><td>= Canon EF-S 18-135mm f/3.5-5.6 IS USM</td>
</tr><tr><td>65535</td><td>= n/a</td>
</tr></table></td></tr></table></blockquote>
@ -9731,7 +9733,7 @@ SX280.</p>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised Sep 19, 2016</i>
<br><i>Last revised Sep 26, 2016</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

17
html/TagNames/Composite.html

@ -628,21 +628,24 @@ resized)</span></span></td></tr>
<td>&nbsp;</td></tr>
<tr>
<td>SubSecCreateDate</td>
<td class=c>N</td>
<td class=c>Y</td>
<td class=n>EXIF:CreateDate
<br>SubSecTimeDigitized</td>
<br>SubSecTimeDigitized
<br>OffsetTimeDigitized</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>SubSecDateTimeOriginal</td>
<td class=c>N</td>
<td class=c>Y</td>
<td class=n>EXIF:DateTimeOriginal
<br>SubSecTimeOriginal</td>
<br>SubSecTimeOriginal
<br>OffsetTimeOriginal</td>
<td>&nbsp;</td></tr>
<tr>
<td>SubSecModifyDate</td>
<td class=c>N</td>
<td class=c>Y</td>
<td class=n>EXIF:ModifyDate
<br>SubSecTime</td>
<br>SubSecTime
<br>OffsetTime</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td>ThumbnailImage</td>
@ -730,7 +733,7 @@ resized)</span></span></td></tr>
<hr>
(This document generated automatically by Image::ExifTool::BuildTagLookup)
<br><i>Last revised May 6, 2016</i>
<br><i>Last revised Sep 26, 2016</i>
<p class=lf><a href='index.html'>&lt;-- ExifTool Tag Names</a></p>
</body>
</html>

534
html/TagNames/EXIF.html

@ -20,11 +20,11 @@ ExifTool family 1 group names. When writing EXIF information, the default
<p>The table below lists all EXIF tags. Also listed are TIFF, DNG, HDP and
other tags which are not part of the EXIF specification, but may co-exist
with EXIF tags in some images. Tags which are part of the EXIF 2.3
with EXIF tags in some images. Tags which are part of the EXIF 2.31
specification have an underlined <b>Tag Name</b> in the HTML version of this
documentation. See
<a href="http://www.cipa.jp/std/documents/e/DC-008-2012_E.pdf">http://www.cipa.jp/std/documents/e/DC-008-2012_E.pdf</a> for the official
EXIF 2.3 specification.
<a href="http://www.cipa.jp/std/documents/e/DC-008-Translation-2016-E.pdf">http://www.cipa.jp/std/documents/e/DC-008-Translation-2016-E.pdf</a> for the
official EXIF 2.31 specification.
</p>
<blockquote>
<table class=frame><tr><td>
@ -1534,6 +1534,24 @@ hours, 2. If present, the time zone offset of ModifyDate)</span></span></td></tr
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr>
<td title='0x9010 = 36880'>0x9010</td>
<td><u>OffsetTime</u></td>
<td class=c>string</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(time zone for ModifyDate)</span></span></td></tr>
<tr class=b>
<td title='0x9011 = 36881'>0x9011</td>
<td><u>OffsetTimeOriginal</u></td>
<td class=c>string</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(time zone for DateTimeOriginal)</span></span></td></tr>
<tr>
<td title='0x9012 = 36882'>0x9012</td>
<td><u>OffsetTimeDigitized</u></td>
<td class=c>string</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(time zone for CreateDate)</span></span></td></tr>
<tr class=b>
<td title='0x9101 = 37121'>0x9101</td>
<td><u>ComponentsConfiguration</u></td>
<td class=c title=' ! = Unsafe
@ -1548,49 +1566,49 @@ hours, 2. If present, the time zone offset of ModifyDate)</span></span></td></tr
<br>5 = G
<br>6 = B</td></tr></table>
</td></tr>
<tr class=b>
<tr>
<td title='0x9102 = 37122'>0x9102</td>
<td><u>CompressedBitsPerPixel</u></td>
<td class=c title=' ! = Unsafe'>rational64u!</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x9201 = 37377'>0x9201</td>
<td><u>ShutterSpeedValue</u></td>
<td class=c>rational64s</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(displayed in seconds, but stored as an APEX value)</span></span></td></tr>
<tr class=b>
<tr>
<td title='0x9202 = 37378'>0x9202</td>
<td><u>ApertureValue</u></td>
<td class=c>rational64u</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(displayed as an F number, but stored as an APEX value)</span></span></td></tr>
<tr>
<tr class=b>
<td title='0x9203 = 37379'>0x9203</td>
<td><u>BrightnessValue</u></td>
<td class=c>rational64s</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x9204 = 37380'>0x9204</td>
<td><u>ExposureCompensation</u></td>
<td class=c>rational64s</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(called ExposureBiasValue by the EXIF spec.)</span></span></td></tr>
<tr>
<tr class=b>
<td title='0x9205 = 37381'>0x9205</td>
<td><u>MaxApertureValue</u></td>
<td class=c>rational64u</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(displayed as an F number, but stored as an APEX value)</span></span></td></tr>
<tr class=b>
<tr>
<td title='0x9206 = 37382'>0x9206</td>
<td><u>SubjectDistance</u></td>
<td class=c>rational64u</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x9207 = 37383'>0x9207</td>
<td><u>MeteringMode</u></td>
<td class=c>int16u</td>
@ -1605,55 +1623,55 @@ hours, 2. If present, the time zone offset of ModifyDate)</span></span></td></tr
<br>6 = Partial
<br>255 = Other</td></tr></table>
</td></tr>
<tr class=b>
<tr>
<td title='0x9208 = 37384'>0x9208</td>
<td><u>LightSource</u></td>
<td class=c>int16u</td>
<td class=c>ExifIFD</td>
<td>--&gt; <a href='EXIF.html#LightSource'>EXIF LightSource Values</a></td></tr>
<tr>
<tr class=b>
<td title='0x9209 = 37385'>0x9209</td>
<td><u>Flash</u></td>
<td class=c>int16u</td>
<td class=c>ExifIFD</td>
<td>--&gt; <a href='EXIF.html#Flash'>EXIF Flash Values</a></td></tr>
<tr class=b>
<tr>
<td title='0x920a = 37386'>0x920a</td>
<td><u>FocalLength</u></td>
<td class=c>rational64u</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x920b = 37387'>0x920b</td>
<td>FlashEnergy</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x920c = 37388'>0x920c</td>
<td>SpatialFrequencyResponse</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x920d = 37389'>0x920d</td>
<td>Noise</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x920e = 37390'>0x920e</td>
<td>FocalPlaneXResolution</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x920f = 37391'>0x920f</td>
<td>FocalPlaneYResolution</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x9210 = 37392'>0x9210</td>
<td>FocalPlaneResolutionUnit</td>
<td class=c>N</td>
@ -1663,13 +1681,13 @@ hours, 2. If present, the time zone offset of ModifyDate)</span></span></td></tr
<br>3 = cm
<br>4 = mm
<br>5 = um</span></td></tr>
<tr>
<tr class=b>
<td title='0x9211 = 37393'>0x9211</td>
<td>ImageNumber</td>
<td class=c>int32u</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x9212 = 37394'>0x9212</td>
<td>SecurityClassification</td>
<td class=c>string</td>
@ -1679,31 +1697,31 @@ hours, 2. If present, the time zone offset of ModifyDate)</span></span></td></tr
<br>&#39;S&#39; = Secret
<br>&#39;T&#39; = Top Secret
<br>&#39;U&#39; = Unclassified</span></td></tr>
<tr>
<tr class=b>
<td title='0x9213 = 37395'>0x9213</td>
<td>ImageHistory</td>
<td class=c>string</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x9214 = 37396'>0x9214</td>
<td><u>SubjectArea</u></td>
<td class=c>int16u[n]</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x9215 = 37397'>0x9215</td>
<td>ExposureIndex</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x9216 = 37398'>0x9216</td>
<td>TIFF-EPStandardID</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x9217 = 37399'>0x9217</td>
<td>SensingMethod</td>
<td class=c>N</td>
@ -1718,31 +1736,31 @@ hours, 2. If present, the time zone offset of ModifyDate)</span></span></td></tr
<br>7 = Trilinear
<br>8 = Color sequential linear</td></tr></table>
</td></tr>
<tr class=b>
<tr>
<td title='0x923a = 37434'>0x923a</td>
<td>CIP3DataFile</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x923b = 37435'>0x923b</td>
<td>CIP3Sheet</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x923c = 37436'>0x923c</td>
<td>CIP3Side</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x923f = 37439'>0x923f</td>
<td>StoNits</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x927c = 37500'>0x927c</td>
<td>MakerNoteApple
<br>MakerNoteNikon
@ -1912,55 +1930,91 @@ hours, 2. If present, the time zone offset of ModifyDate)</span></span></td></tr
<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>
<tr class=b>
<td title='0x9286 = 37510'>0x9286</td>
<td><u>UserComment</u></td>
<td class=c>undef</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x9290 = 37520'>0x9290</td>
<td><u>SubSecTime</u></td>
<td class=c>string</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr>
<td><span class=s><span class=n>(fractional seconds for ModifyDate)</span></span></td></tr>
<tr class=b>
<td title='0x9291 = 37521'>0x9291</td>
<td><u>SubSecTimeOriginal</u></td>
<td class=c>string</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td><span class=s><span class=n>(fractional seconds for DateTimeOriginal)</span></span></td></tr>
<tr>
<td title='0x9292 = 37522'>0x9292</td>
<td><u>SubSecTimeDigitized</u></td>
<td class=c>string</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr>
<td><span class=s><span class=n>(fractional seconds for CreateDate)</span></span></td></tr>
<tr class=b>
<td title='0x932f = 37679'>0x932f</td>
<td>MSDocumentText</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x9330 = 37680'>0x9330</td>
<td>MSPropertySetStorage</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x9331 = 37681'>0x9331</td>
<td>MSDocumentTextPosition</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0x935c = 37724'>0x935c</td>
<td>ImageSourceData</td>
<td class=c title=' ! = Unsafe'>undef!</td>
<td class=c>IFD0</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x9400 = 37888'>0x9400</td>
<td><u>AmbientTemperature</u></td>
<td class=c>rational64s</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(ambient temperature in degrees C, called Temperature by the EXIF spec.)</span></span></td></tr>
<tr>
<td title='0x9401 = 37889'>0x9401</td>
<td><u>Humidity</u></td>
<td class=c>rational64u</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x9402 = 37890'>0x9402</td>
<td><u>Pressure</u></td>
<td class=c>rational64u</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(air pressure in hPa or mbar)</span></span></td></tr>
<tr>
<td title='0x9403 = 37891'>0x9403</td>
<td><u>WaterDepth</u></td>
<td class=c>rational64s</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(depth under water in metres, negative for above water)</span></span></td></tr>
<tr class=b>
<td title='0x9404 = 37892'>0x9404</td>
<td><u>Acceleration</u></td>
<td class=c>rational64u</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(directionless camera acceleration in units of mGal, or 10-5 m/s2)</span></span></td></tr>
<tr>
<td title='0x9405 = 37893'>0x9405</td>
<td><u>CameraElevationAngle</u></td>
<td class=c>rational64s</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr class=b>
<td title='0x9c9b = 40091'>0x9c9b</td>
<td>XPTitle</td>
<td class=c>int8u</td>
@ -1969,37 +2023,37 @@ hours, 2. If present, the time zone offset of ModifyDate)</span></span></td></tr
in these values are converted to UTF-8 by default, or Windows Latin1
with the -L option. XPTitle is ignored by Windows Explorer if
ImageDescription exists)</span></span></td></tr>
<tr class=b>
<tr>
<td title='0x9c9c = 40092'>0x9c9c</td>
<td>XPComment</td>
<td class=c>int8u</td>
<td class=c>IFD0</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x9c9d = 40093'>0x9c9d</td>
<td>XPAuthor</td>
<td class=c>int8u</td>
<td class=c>IFD0</td>
<td><span class=s><span class=n>(ignored by Windows Explorer if Artist exists)</span></span></td></tr>
<tr class=b>
<tr>
<td title='0x9c9e = 40094'>0x9c9e</td>
<td>XPKeywords</td>
<td class=c>int8u</td>
<td class=c>IFD0</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0x9c9f = 40095'>0x9c9f</td>
<td>XPSubject</td>
<td class=c>int8u</td>
<td class=c>IFD0</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0xa000 = 40960'>0xa000</td>
<td><u>FlashpixVersion</u></td>
<td class=c title=' : = Mandatory'>undef:</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0xa001 = 40961'>0xa001</td>
<td><u>ColorSpace</u></td>
<td class=c title=' : = Mandatory'>int16u:</td>
@ -2012,85 +2066,85 @@ indicated by &quot;Uncalibrated&quot; with an InteropIndex of &quot;R03&quot;.
<br>0xfffd = Wide Gamut RGB
<br>0xfffe = ICC Profile
<br>0xffff = Uncalibrated</span></td></tr>
<tr class=b>
<tr>
<td title='0xa002 = 40962'>0xa002</td>
<td><u>ExifImageWidth</u></td>
<td class=c title=' : = Mandatory'>int16u:</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(called PixelXDimension by the EXIF spec.)</span></span></td></tr>
<tr>
<tr class=b>
<td title='0xa003 = 40963'>0xa003</td>
<td><u>ExifImageHeight</u></td>
<td class=c title=' : = Mandatory'>int16u:</td>
<td class=c>ExifIFD</td>
<td><span class=s><span class=n>(called PixelYDimension by the EXIF spec.)</span></span></td></tr>
<tr class=b>
<tr>
<td title='0xa004 = 40964'>0xa004</td>
<td><u>RelatedSoundFile</u></td>
<td class=c>string</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0xa005 = 40965'>0xa005</td>
<td><u>InteropOffset</u></td>
<td class=c>-</td>
<td class=c>-</td>
<td>--&gt; <a href='EXIF.html'>EXIF Tags</a></td></tr>
<tr class=b>
<tr>
<td title='0xa010 = 40976'>0xa010</td>
<td>SamsungRawPointersOffset</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0xa011 = 40977'>0xa011</td>
<td>SamsungRawPointersLength</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0xa101 = 41217'>0xa101</td>
<td>SamsungRawByteOrder</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr>
<tr class=b>
<td title='0xa102 = 41218'>0xa102</td>
<td>SamsungRawUnknown?</td>
<td class=c>N</td>
<td class=c>-</td>
<td>&nbsp;</td></tr>
<tr class=b>
<tr>
<td title='0xa20b = 41483'>0xa20b</td>
<td><u>FlashEnergy</u></td>
<td class=c>rational64u[n]</td>
<td class=c>ExifIFD</td>
<td>&nbsp;</td></tr>