exiftool_vendored 12.37.0 → 12.41.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (206) hide show
  1. checksums.yaml +4 -4
  2. data/bin/Changes +73 -0
  3. data/bin/MANIFEST +2 -0
  4. data/bin/META.json +1 -1
  5. data/bin/META.yml +1 -1
  6. data/bin/README +45 -45
  7. data/bin/arg_files/exif2xmp.args +5 -0
  8. data/bin/arg_files/xmp2exif.args +6 -0
  9. data/bin/config_files/acdsee.config +6 -6
  10. data/bin/config_files/photoshop_paths.config +30 -7
  11. data/bin/config_files/picasa_faces.config +1 -1
  12. data/bin/config_files/pix4d.config +2 -2
  13. data/bin/config_files/tiff_version.config +2 -2
  14. data/bin/exiftool +100 -67
  15. data/bin/lib/File/RandomAccess.pm +1 -1
  16. data/bin/lib/File/RandomAccess.pod +2 -2
  17. data/bin/lib/Image/ExifTool/AES.pm +1 -1
  18. data/bin/lib/Image/ExifTool/AFCP.pm +1 -1
  19. data/bin/lib/Image/ExifTool/AIFF.pm +1 -1
  20. data/bin/lib/Image/ExifTool/APE.pm +1 -1
  21. data/bin/lib/Image/ExifTool/APP12.pm +1 -1
  22. data/bin/lib/Image/ExifTool/ASF.pm +1 -1
  23. data/bin/lib/Image/ExifTool/Apple.pm +1 -1
  24. data/bin/lib/Image/ExifTool/Audible.pm +1 -1
  25. data/bin/lib/Image/ExifTool/BMP.pm +1 -1
  26. data/bin/lib/Image/ExifTool/BPG.pm +1 -1
  27. data/bin/lib/Image/ExifTool/BZZ.pm +1 -1
  28. data/bin/lib/Image/ExifTool/BigTIFF.pm +1 -1
  29. data/bin/lib/Image/ExifTool/BuildTagLookup.pm +6 -4
  30. data/bin/lib/Image/ExifTool/CBOR.pm +1 -1
  31. data/bin/lib/Image/ExifTool/Canon.pm +79 -5
  32. data/bin/lib/Image/ExifTool/CanonCustom.pm +13 -3
  33. data/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
  34. data/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
  35. data/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
  36. data/bin/lib/Image/ExifTool/Casio.pm +1 -1
  37. data/bin/lib/Image/ExifTool/Charset.pm +1 -1
  38. data/bin/lib/Image/ExifTool/DICOM.pm +1 -1
  39. data/bin/lib/Image/ExifTool/DJI.pm +1 -1
  40. data/bin/lib/Image/ExifTool/DNG.pm +1 -1
  41. data/bin/lib/Image/ExifTool/DPX.pm +1 -1
  42. data/bin/lib/Image/ExifTool/DV.pm +1 -1
  43. data/bin/lib/Image/ExifTool/DarwinCore.pm +1 -1
  44. data/bin/lib/Image/ExifTool/DjVu.pm +1 -1
  45. data/bin/lib/Image/ExifTool/EXE.pm +1 -1
  46. data/bin/lib/Image/ExifTool/Exif.pm +53 -21
  47. data/bin/lib/Image/ExifTool/FITS.pm +1 -1
  48. data/bin/lib/Image/ExifTool/FLAC.pm +1 -1
  49. data/bin/lib/Image/ExifTool/FLIF.pm +1 -1
  50. data/bin/lib/Image/ExifTool/FLIR.pm +16 -4
  51. data/bin/lib/Image/ExifTool/Fixup.pm +1 -1
  52. data/bin/lib/Image/ExifTool/Flash.pm +1 -1
  53. data/bin/lib/Image/ExifTool/FlashPix.pm +1 -1
  54. data/bin/lib/Image/ExifTool/Font.pm +1 -1
  55. data/bin/lib/Image/ExifTool/FotoStation.pm +1 -1
  56. data/bin/lib/Image/ExifTool/FujiFilm.pm +1 -1
  57. data/bin/lib/Image/ExifTool/GE.pm +1 -1
  58. data/bin/lib/Image/ExifTool/GIF.pm +1 -1
  59. data/bin/lib/Image/ExifTool/GIMP.pm +1 -1
  60. data/bin/lib/Image/ExifTool/GPS.pm +1 -1
  61. data/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
  62. data/bin/lib/Image/ExifTool/Geotag.pm +4 -3
  63. data/bin/lib/Image/ExifTool/GoPro.pm +1 -1
  64. data/bin/lib/Image/ExifTool/H264.pm +1 -1
  65. data/bin/lib/Image/ExifTool/HP.pm +1 -1
  66. data/bin/lib/Image/ExifTool/HTML.pm +1 -1
  67. data/bin/lib/Image/ExifTool/HtmlDump.pm +1 -1
  68. data/bin/lib/Image/ExifTool/ICC_Profile.pm +1 -1
  69. data/bin/lib/Image/ExifTool/ID3.pm +1 -1
  70. data/bin/lib/Image/ExifTool/IPTC.pm +1 -1
  71. data/bin/lib/Image/ExifTool/ISO.pm +1 -1
  72. data/bin/lib/Image/ExifTool/ITC.pm +1 -1
  73. data/bin/lib/Image/ExifTool/Import.pm +1 -1
  74. data/bin/lib/Image/ExifTool/InDesign.pm +1 -1
  75. data/bin/lib/Image/ExifTool/JPEG.pm +6 -2
  76. data/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
  77. data/bin/lib/Image/ExifTool/JSON.pm +1 -1
  78. data/bin/lib/Image/ExifTool/JVC.pm +1 -1
  79. data/bin/lib/Image/ExifTool/Jpeg2000.pm +1 -1
  80. data/bin/lib/Image/ExifTool/Kodak.pm +1 -1
  81. data/bin/lib/Image/ExifTool/KyoceraRaw.pm +1 -1
  82. data/bin/lib/Image/ExifTool/LIF.pm +1 -1
  83. data/bin/lib/Image/ExifTool/LNK.pm +1 -1
  84. data/bin/lib/Image/ExifTool/Lang/cs.pm +1 -1
  85. data/bin/lib/Image/ExifTool/Lang/de.pm +1 -1
  86. data/bin/lib/Image/ExifTool/Lang/en_ca.pm +1 -1
  87. data/bin/lib/Image/ExifTool/Lang/en_gb.pm +1 -1
  88. data/bin/lib/Image/ExifTool/Lang/es.pm +1 -1
  89. data/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
  90. data/bin/lib/Image/ExifTool/Lang/fr.pm +1 -1
  91. data/bin/lib/Image/ExifTool/Lang/it.pm +1 -1
  92. data/bin/lib/Image/ExifTool/Lang/ja.pm +1 -1
  93. data/bin/lib/Image/ExifTool/Lang/ko.pm +1 -1
  94. data/bin/lib/Image/ExifTool/Lang/nl.pm +1 -1
  95. data/bin/lib/Image/ExifTool/Lang/pl.pm +1 -1
  96. data/bin/lib/Image/ExifTool/Lang/ru.pm +1 -1
  97. data/bin/lib/Image/ExifTool/Lang/sv.pm +1 -1
  98. data/bin/lib/Image/ExifTool/Lang/tr.pm +1 -1
  99. data/bin/lib/Image/ExifTool/Lang/zh_cn.pm +1 -1
  100. data/bin/lib/Image/ExifTool/Lang/zh_tw.pm +1 -1
  101. data/bin/lib/Image/ExifTool/Leaf.pm +1 -1
  102. data/bin/lib/Image/ExifTool/Lytro.pm +1 -1
  103. data/bin/lib/Image/ExifTool/M2TS.pm +1 -1
  104. data/bin/lib/Image/ExifTool/MIE.pm +1 -1
  105. data/bin/lib/Image/ExifTool/MIEUnits.pod +1 -1
  106. data/bin/lib/Image/ExifTool/MIFF.pm +1 -1
  107. data/bin/lib/Image/ExifTool/MNG.pm +1 -1
  108. data/bin/lib/Image/ExifTool/MOI.pm +1 -1
  109. data/bin/lib/Image/ExifTool/MPC.pm +1 -1
  110. data/bin/lib/Image/ExifTool/MPEG.pm +1 -1
  111. data/bin/lib/Image/ExifTool/MPF.pm +1 -1
  112. data/bin/lib/Image/ExifTool/MRC.pm +1 -1
  113. data/bin/lib/Image/ExifTool/MWG.pm +1 -1
  114. data/bin/lib/Image/ExifTool/MXF.pm +1 -1
  115. data/bin/lib/Image/ExifTool/MacOS.pm +10 -10
  116. data/bin/lib/Image/ExifTool/MakerNotes.pm +13 -2
  117. data/bin/lib/Image/ExifTool/Matroska.pm +9 -5
  118. data/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
  119. data/bin/lib/Image/ExifTool/Minolta.pm +1 -1
  120. data/bin/lib/Image/ExifTool/MinoltaRaw.pm +1 -1
  121. data/bin/lib/Image/ExifTool/Motorola.pm +1 -1
  122. data/bin/lib/Image/ExifTool/Nikon.pm +1062 -189
  123. data/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
  124. data/bin/lib/Image/ExifTool/NikonCustom.pm +519 -6
  125. data/bin/lib/Image/ExifTool/NikonSettings.pm +17 -18
  126. data/bin/lib/Image/ExifTool/Nintendo.pm +1 -1
  127. data/bin/lib/Image/ExifTool/OOXML.pm +1 -1
  128. data/bin/lib/Image/ExifTool/Ogg.pm +1 -1
  129. data/bin/lib/Image/ExifTool/Olympus.pm +8 -7
  130. data/bin/lib/Image/ExifTool/OpenEXR.pm +5 -3
  131. data/bin/lib/Image/ExifTool/Opus.pm +1 -1
  132. data/bin/lib/Image/ExifTool/Other.pm +1 -1
  133. data/bin/lib/Image/ExifTool/PCX.pm +1 -1
  134. data/bin/lib/Image/ExifTool/PDF.pm +1 -1
  135. data/bin/lib/Image/ExifTool/PGF.pm +1 -1
  136. data/bin/lib/Image/ExifTool/PICT.pm +1 -1
  137. data/bin/lib/Image/ExifTool/PLIST.pm +1 -1
  138. data/bin/lib/Image/ExifTool/PLUS.pm +1 -1
  139. data/bin/lib/Image/ExifTool/PNG.pm +28 -8
  140. data/bin/lib/Image/ExifTool/PPM.pm +1 -1
  141. data/bin/lib/Image/ExifTool/PSP.pm +1 -1
  142. data/bin/lib/Image/ExifTool/Palm.pm +1 -1
  143. data/bin/lib/Image/ExifTool/Panasonic.pm +1 -1
  144. data/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
  145. data/bin/lib/Image/ExifTool/Parrot.pm +1 -1
  146. data/bin/lib/Image/ExifTool/Pentax.pm +3 -2
  147. data/bin/lib/Image/ExifTool/PhaseOne.pm +1 -1
  148. data/bin/lib/Image/ExifTool/PhotoCD.pm +1 -1
  149. data/bin/lib/Image/ExifTool/PhotoMechanic.pm +1 -1
  150. data/bin/lib/Image/ExifTool/Photoshop.pm +1 -1
  151. data/bin/lib/Image/ExifTool/PostScript.pm +1 -1
  152. data/bin/lib/Image/ExifTool/PrintIM.pm +1 -1
  153. data/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
  154. data/bin/lib/Image/ExifTool/QuickTime.pm +10 -6
  155. data/bin/lib/Image/ExifTool/QuickTimeStream.pl +16 -5
  156. data/bin/lib/Image/ExifTool/RIFF.pm +1 -1
  157. data/bin/lib/Image/ExifTool/RSRC.pm +1 -1
  158. data/bin/lib/Image/ExifTool/RTF.pm +1 -1
  159. data/bin/lib/Image/ExifTool/Radiance.pm +1 -1
  160. data/bin/lib/Image/ExifTool/Rawzor.pm +1 -1
  161. data/bin/lib/Image/ExifTool/Real.pm +1 -1
  162. data/bin/lib/Image/ExifTool/Reconyx.pm +1 -1
  163. data/bin/lib/Image/ExifTool/Red.pm +1 -1
  164. data/bin/lib/Image/ExifTool/Ricoh.pm +1 -1
  165. data/bin/lib/Image/ExifTool/Samsung.pm +6 -2
  166. data/bin/lib/Image/ExifTool/Sanyo.pm +1 -1
  167. data/bin/lib/Image/ExifTool/Scalado.pm +1 -1
  168. data/bin/lib/Image/ExifTool/Shift.pl +3 -1
  169. data/bin/lib/Image/ExifTool/Shortcuts.pm +3 -2
  170. data/bin/lib/Image/ExifTool/Sigma.pm +1 -1
  171. data/bin/lib/Image/ExifTool/SigmaRaw.pm +1 -1
  172. data/bin/lib/Image/ExifTool/Sony.pm +11 -5
  173. data/bin/lib/Image/ExifTool/SonyIDC.pm +1 -1
  174. data/bin/lib/Image/ExifTool/Stim.pm +1 -1
  175. data/bin/lib/Image/ExifTool/TagInfoXML.pm +2 -2
  176. data/bin/lib/Image/ExifTool/TagLookup.pm +6385 -6290
  177. data/bin/lib/Image/ExifTool/TagNames.pod +361 -22
  178. data/bin/lib/Image/ExifTool/Text.pm +1 -1
  179. data/bin/lib/Image/ExifTool/Theora.pm +1 -1
  180. data/bin/lib/Image/ExifTool/Torrent.pm +1 -1
  181. data/bin/lib/Image/ExifTool/Unknown.pm +1 -1
  182. data/bin/lib/Image/ExifTool/VCard.pm +1 -1
  183. data/bin/lib/Image/ExifTool/Validate.pm +1 -1
  184. data/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
  185. data/bin/lib/Image/ExifTool/WTV.pm +1 -1
  186. data/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
  187. data/bin/lib/Image/ExifTool/WriteExif.pl +1 -1
  188. data/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
  189. data/bin/lib/Image/ExifTool/WritePDF.pl +1 -1
  190. data/bin/lib/Image/ExifTool/WritePNG.pl +30 -10
  191. data/bin/lib/Image/ExifTool/WritePhotoshop.pl +1 -1
  192. data/bin/lib/Image/ExifTool/WritePostScript.pl +1 -1
  193. data/bin/lib/Image/ExifTool/WriteQuickTime.pl +9 -4
  194. data/bin/lib/Image/ExifTool/WriteXMP.pl +3 -1
  195. data/bin/lib/Image/ExifTool/Writer.pl +6 -5
  196. data/bin/lib/Image/ExifTool/XMP.pm +51 -25
  197. data/bin/lib/Image/ExifTool/XMP2.pl +3 -2
  198. data/bin/lib/Image/ExifTool/XMPStruct.pl +22 -8
  199. data/bin/lib/Image/ExifTool/ZIP.pm +10 -2
  200. data/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
  201. data/bin/lib/Image/ExifTool/iWork.pm +1 -1
  202. data/bin/lib/Image/ExifTool.pm +23 -6
  203. data/bin/lib/Image/ExifTool.pod +71 -69
  204. data/bin/perl-Image-ExifTool.spec +43 -43
  205. data/lib/exiftool_vendored/version.rb +1 -1
  206. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 76b6a0d2fdfef75ff151b28b383281cd0e5cbff7b324c7529b5972eea00fa2ab
4
- data.tar.gz: 15f2d5ff22bb9eebdbe7e843d61c8e60ae3cc17d50d212c59e05411baa221937
3
+ metadata.gz: 71c2e8314b54966900545a4af41762c9c6d8974544187d914e82eb7c71b4ab3c
4
+ data.tar.gz: f277eb099be9d35e2979e80ce97629f824acb338059360ca7f41ef15e1d43fbe
5
5
  SHA512:
6
- metadata.gz: '05955adc090e482158e1c5e55f4aa6205434c9433e8b5369c45f4c030f59088e8efe5e91df54cf6cd44f973ad845e8436a958948ca2baa25bc1aea371a311d74'
7
- data.tar.gz: 7a6c12e5f45dcd7efed082469de08ddb6e4eb21596f73f3c6abde5f6faf5318be5fe53e0f6aa6a88391f9e088d68c06682e042cd94f3f4f08656a6a2d76fa404
6
+ metadata.gz: 7fac789e834098bd6506929bac1aef023b5573d08d67cdda9b521884d1d946bc875e9ff7d19ad3a68d46c098030bb43e14bb7510d7233a5f0f842d5f3c712047
7
+ data.tar.gz: 3d18856320e32e9c86258212c1ff7c909b388747604f8b7fbe8cf2e001cb12d672affc8986acc82a8c03f1a61ecd447a556b44b63670b659180d5ab2de3664b4
data/bin/Changes CHANGED
@@ -7,6 +7,79 @@ RSS feed: https://exiftool.org/rss.xml
7
7
  Note: The most recent production release is Version 12.30. (Other versions are
8
8
  considered development releases, and are not uploaded to MetaCPAN.)
9
9
 
10
+ Apr. 7, 2022 - Version 12.41
11
+
12
+ - Added support for "OM SYSTEM" maker notes
13
+ - Added 2 new Sony LensType values (thanks Jos Roost)
14
+ - Added some new Canon lenses (thanks LibRaw)
15
+ - Added a new Nikon LensID (thanks Bert Ligtvoet)
16
+ - Added a new Canon ContinuousDrive value (thanks Wolfgang Gulcker)
17
+ - Enhanced -v0 option to also print new file name when renaming, moving or
18
+ copying a file
19
+ - Updated xmp2exif.args and exif2xmp.args helper files to reflect the IPTC
20
+ Photometadata Mapping Guidelines version 2202.1
21
+ - Made "Invalid Xxx data" a minor warning for MakerNote data
22
+ - Patched to allow writing of MP4 videos which have other tracks with a
23
+ missing sample description entry
24
+ - Patched MacOS version to specify directory for external utilities (setfile,
25
+ xattr, stat, mdls and osascript from /usr/bin, and tag from /usr/local/bin)
26
+ - Fixed long-standing problem where Windows version could behave differently
27
+ for -if conditions containing undefined tags
28
+ - Fixed problem where -W+! combined with -j or -X produced invalid JSON or XML
29
+ when processing multiple files
30
+ - Fixed potential "uninitialized value $time in division" runtime warning when
31
+ reading MP4 videos
32
+
33
+ Feb. 9, 2022 - Version 12.40
34
+
35
+ - Added PageCount tag to return the number of pages in a multi-page TIFF
36
+ - Added a new Nikon LensID (thanks Wolfgang Exler)
37
+ - Added a few more Sony LensTypes (thanks Jos Roost)
38
+ - Decode some new Canon tags (thanks Mark Reid)
39
+ - Decode another Nikon Z9 tag (thanks Warren Hatch)
40
+ - Decode Nikon NKSC GPSImgDirection (thanks Olaf)
41
+ - Improved handling of empty XMP structures in lists
42
+ - Tolerate leading UTF-8 BOM in -geotag log files
43
+ - Updated photoshop_paths.config to include WorkingPath
44
+ - Patched to allow writing of MP4 videos which have url tracks with a missing
45
+ sample description entry
46
+ - Fixed deep recursion error when reading multi-page TIFF images with more
47
+ than 100 pages
48
+ - Fixed potential deep recursion runtime error when writing nested XMP
49
+ structures
50
+ - Fixed warning which could be generated when writing new
51
+ Composite:GPSCoordinates tag
52
+ - Fixed description of GPR (General Purpose RAW) file type
53
+ - Fixed typo in the name of a new Nikon tag (thanks Herb)
54
+
55
+ Jan. 13, 2022 - Version 12.39
56
+
57
+ - Added a new Pentax LensType (thanks Christian Shulz)
58
+ - Added a couple of new Nikon LensID's
59
+ - Added support for Nikon NKSC sidecar files
60
+ - Decode more tags for the Nikon Z7 and Z9 (thanks Warren Hatch)
61
+ - Decode a couple more FLIR tags
62
+ - Extract ZIP file comments
63
+ - Made PNG ProfileName, SRGBRendering and Gamma writable
64
+ - Patched to avoid possible problem running "more" to show documentation in
65
+ Windows version
66
+ - Fixed problem writing Composite:GPSPosition with coordinates in DMS format,
67
+ and made this tag protected when writing
68
+ - Fixed bug where invalid date/time tags could be written to PNG files when
69
+ attempting to shift a non-existent date/time tag
70
+ - Fixed spelling of a few Matroska tag names (thanks Martin Hoppenheit)
71
+
72
+ Dec. 20, 2021 - Version 12.38
73
+
74
+ - Decode a number of new tags for the Nikon Z9 (thanks Warren Hatch)
75
+ - Patched incorrect decoding of AEBShotCount for the Canon EOS 90D
76
+ - Patched EXR reader to support long tag names
77
+ - Patched security issue (thanks Joe Lothan)
78
+ - Fixed an incorrect tag ID for a new Nikon MakerNote tag (github #108)
79
+ - Fixed XMP-exif:GPSMeasureMode conversions to match EXIF
80
+ - Fixed problem where some namespaces may be undeclared in the -X output when
81
+ using the -struct option
82
+
10
83
  Dec. 8, 2021 - Version 12.37
11
84
 
12
85
  - Decode timed GPS from Vantrue S1 dashcam MP4 videos
data/bin/MANIFEST CHANGED
@@ -194,6 +194,7 @@ html/idiosyncracies.html
194
194
  html/index.html
195
195
  html/install.html
196
196
  html/metafiles.html
197
+ html/mistakes.html
197
198
  html/overview.png
198
199
  html/standards.html
199
200
  html/struct.html
@@ -739,6 +740,7 @@ t/PNG_3.out
739
740
  t/PNG_4.out
740
741
  t/PNG_5.out
741
742
  t/PNG_6.out
743
+ t/PNG_7.out
742
744
  t/PPM.t
743
745
  t/PPM_2.out
744
746
  t/PPM_3.out
data/bin/META.json CHANGED
@@ -47,5 +47,5 @@
47
47
  }
48
48
  },
49
49
  "release_status" : "stable",
50
- "version" : "12.37"
50
+ "version" : "12.41"
51
51
  }
data/bin/META.yml CHANGED
@@ -28,4 +28,4 @@ recommends:
28
28
  Time::HiRes: 0
29
29
  requires:
30
30
  perl: 5.004
31
- version: 12.37
31
+ version: 12.41
data/bin/README CHANGED
@@ -14,48 +14,48 @@ supported by ExifTool (r = read, w = write, c = create):
14
14
 
15
15
  File Types
16
16
  ------------+-------------+-------------+-------------+------------
17
- 360 r/w | DR4 r/w/c | JNG r/w | ODP r | RIFF r
18
- 3FR r | DSS r | JP2 r/w | ODS r | RSRC r
19
- 3G2 r/w | DV r | JPEG r/w | ODT r | RTF r
20
- 3GP r/w | DVB r/w | JSON r | OFR r | RW2 r/w
21
- A r | DVR-MS r | JXL r | OGG r | RWL r/w
22
- AA r | DYLIB r | K25 r | OGV r | RWZ r
23
- AAE r | EIP r | KDC r | ONP r | RM r
24
- AAX r/w | EPS r/w | KEY r | OPUS r | SEQ r
25
- ACR r | EPUB r | LA r | ORF r/w | SKETCH r
26
- AFM r | ERF r/w | LFP r | ORI r/w | SO r
27
- AI r/w | EXE r | LIF r | OTF r | SR2 r/w
28
- AIFF r | EXIF r/w/c | LNK r | PAC r | SRF r
29
- APE r | EXR r | LRV r/w | PAGES r | SRW r/w
30
- ARQ r/w | EXV r/w/c | M2TS r | PBM r/w | SVG r
31
- ARW r/w | F4A/V r/w | M4A/V r/w | PCD r | SWF r
32
- ASF r | FFF r/w | MACOS r | PCX r | THM r/w
33
- AVI r | FITS r | MAX r | PDB r | TIFF r/w
34
- AVIF r/w | FLA r | MEF r/w | PDF r/w | TORRENT r
35
- AZW r | FLAC r | MIE r/w/ | PEF r/w | TTC r
36
- BMP r | FLIF r/w | MIFF r c | PFA r | TTF r
37
- BPG r | FLV r | MKA r | PFB r | TXT r
38
- BTF r | FPF r | MKS r | PFM r | VCF r
39
- CHM r | FPX r | MKV r | PGF r | VRD r/w/c
40
- COS r | GIF r/w | MNG r/w | PGM r/w | VSD r
41
- CR2 r/w | GPR r/w | MOBI r | PLIST r | WAV r
42
- CR3 r/w | GZ r | MODD r | PICT r | WDP r/w
43
- CRM r/w | HDP r/w | MOI r | PMP r | WEBP r
44
- CRW r/w | HDR r | MOS r/w | PNG r/w | WEBM r
45
- CS1 r/w | HEIC r/w | MOV r/w | PPM r/w | WMA r
46
- CSV r | HEIF r/w | MP3 r | PPT r | WMV r
47
- CZI r | HTML r | MP4 r/w | PPTX r | WTV r
48
- DCM r | ICC r/w/c | MPC r | PS r/w | WV r
49
- DCP r/w | ICS r | MPG r | PSB r/w | X3F r/w
50
- DCR r | IDML r | MPO r/w | PSD r/w | XCF r
51
- DFONT r | IIQ r/w | MQV r/w | PSP r | XLS r
52
- DIVX r | IND r/w | MRC r | QTIF r/w | XLSX r
53
- DJVU r | INSP r/w | MRW r/w | R3D r | XMP r/w/c
54
- DLL r | INSV r | MXF r | RA r | ZIP r
55
- DNG r/w | INX r | NEF r/w | RAF r/w |
56
- DOC r | ISO r | NRW r/w | RAM r |
57
- DOCX r | ITC r | NUMBERS r | RAR r |
58
- DPX r | J2C r | O r | RAW r/w |
17
+ 360 r/w | DR4 r/w/c | JNG r/w | O r | RAW r/w
18
+ 3FR r | DSS r | JP2 r/w | ODP r | RIFF r
19
+ 3G2 r/w | DV r | JPEG r/w | ODS r | RSRC r
20
+ 3GP r/w | DVB r/w | JSON r | ODT r | RTF r
21
+ A r | DVR-MS r | JXL r | OFR r | RW2 r/w
22
+ AA r | DYLIB r | K25 r | OGG r | RWL r/w
23
+ AAE r | EIP r | KDC r | OGV r | RWZ r
24
+ AAX r/w | EPS r/w | KEY r | ONP r | RM r
25
+ ACR r | EPUB r | LA r | OPUS r | SEQ r
26
+ AFM r | ERF r/w | LFP r | ORF r/w | SKETCH r
27
+ AI r/w | EXE r | LIF r | ORI r/w | SO r
28
+ AIFF r | EXIF r/w/c | LNK r | OTF r | SR2 r/w
29
+ APE r | EXR r | LRV r/w | PAC r | SRF r
30
+ ARQ r/w | EXV r/w/c | M2TS r | PAGES r | SRW r/w
31
+ ARW r/w | F4A/V r/w | M4A/V r/w | PBM r/w | SVG r
32
+ ASF r | FFF r/w | MACOS r | PCD r | SWF r
33
+ AVI r | FITS r | MAX r | PCX r | THM r/w
34
+ AVIF r/w | FLA r | MEF r/w | PDB r | TIFF r/w
35
+ AZW r | FLAC r | MIE r/w/ | PDF r/w | TORRENT r
36
+ BMP r | FLIF r/w | MIFF r c | PEF r/w | TTC r
37
+ BPG r | FLV r | MKA r | PFA r | TTF r
38
+ BTF r | FPF r | MKS r | PFB r | TXT r
39
+ CHM r | FPX r | MKV r | PFM r | VCF r
40
+ COS r | GIF r/w | MNG r/w | PGF r | VRD r/w/c
41
+ CR2 r/w | GPR r/w | MOBI r | PGM r/w | VSD r
42
+ CR3 r/w | GZ r | MODD r | PLIST r | WAV r
43
+ CRM r/w | HDP r/w | MOI r | PICT r | WDP r/w
44
+ CRW r/w | HDR r | MOS r/w | PMP r | WEBP r
45
+ CS1 r/w | HEIC r/w | MOV r/w | PNG r/w | WEBM r
46
+ CSV r | HEIF r/w | MP3 r | PPM r/w | WMA r
47
+ CZI r | HTML r | MP4 r/w | PPT r | WMV r
48
+ DCM r | ICC r/w/c | MPC r | PPTX r | WTV r
49
+ DCP r/w | ICS r | MPG r | PS r/w | WV r
50
+ DCR r | IDML r | MPO r/w | PSB r/w | X3F r/w
51
+ DFONT r | IIQ r/w | MQV r/w | PSD r/w | XCF r
52
+ DIVX r | IND r/w | MRC r | PSP r | XLS r
53
+ DJVU r | INSP r/w | MRW r/w | QTIF r/w | XLSX r
54
+ DLL r | INSV r | MXF r | R3D r | XMP r/w/c
55
+ DNG r/w | INX r | NEF r/w | RA r | ZIP r
56
+ DOC r | ISO r | NKSC r/w | RAF r/w |
57
+ DOCX r | ITC r | NRW r/w | RAM r |
58
+ DPX r | J2C r | NUMBERS r | RAR r |
59
59
 
60
60
  Meta Information
61
61
  ----------------------+----------------------+---------------------
@@ -107,8 +107,8 @@ your home directory, then you would type the following commands in a
107
107
  terminal window to extract and run ExifTool:
108
108
 
109
109
  cd ~/Desktop
110
- gzip -dc Image-ExifTool-12.37.tar.gz | tar -xf -
111
- cd Image-ExifTool-12.37
110
+ gzip -dc Image-ExifTool-12.41.tar.gz | tar -xf -
111
+ cd Image-ExifTool-12.41
112
112
  ./exiftool t/images/ExifTool.jpg
113
113
 
114
114
  Note: These commands extract meta information from one of the test images.
@@ -162,7 +162,7 @@ for calculating digest values and providing other features listed below:
162
162
 
163
163
  COPYRIGHT AND LICENSE
164
164
 
165
- Copyright 2003-2021, Phil Harvey
165
+ Copyright 2003-2022, Phil Harvey
166
166
 
167
167
  This is free software; you can redistribute it and/or modify it under the
168
168
  same terms as Perl itself.
@@ -12,8 +12,10 @@
12
12
  # 2013/06/12 - PH Additions for the Exif 2.3 for XMP spec
13
13
  # 2015/01/12 - PH Avoid copying to non-standard namespaces
14
14
  # 2018/05/07 - PH Added support for GPSDestXxxRef tags
15
+ # 2022/03/31 - PH IPTC Photometadata Mapping Guidelines 2202.1 update
15
16
  #
16
17
  # References: http://www.metadataworkinggroup.org/specs/
18
+ # https://iptc.org/std/photometadata/documentation/mappingguidelines/
17
19
  #
18
20
  # Notes: 1) The first three arguments copy most of the EXIF and GPS tags to
19
21
  # XMP-exif/XMP-tiff, and the remaining arguments handle tags
@@ -22,6 +24,8 @@
22
24
  # 2) These arguments will not delete existing XMP tags which are
23
25
  # missing from the EXIF. The XMP tags should be deleted
24
26
  # beforehand if required.
27
+ #
28
+ # 3) EXIF:SubjectArea is not currently mapped into XMP-iptcExt:ImageRegion
25
29
  #------------------------------------------------------------------------------
26
30
  -XMP-exif:all < EXIF:all
27
31
  -XMP-exifEX:all < EXIF:all
@@ -37,6 +41,7 @@
37
41
  -XMP-xmp:CreatorTool < EXIF:Software
38
42
  -XMP-dc:Rights < EXIF:Copyright
39
43
  -XMP-dc:Creator < EXIF:Artist
44
+ -XMP-iptcExt:DigitalImageGUID < EXIF:DigImageGUID
40
45
  # XMP flash information is translated by the Composite Flash tag
41
46
  -Composite:Flash < EXIF:Flash
42
47
  # overwrite GPS tags which have different formats in XMP
@@ -14,8 +14,10 @@
14
14
  # 2016/09/26 - PH Write Composite SubSec tags
15
15
  # 2018/05/07 - PH Added support for GPSDestXxxRef tags
16
16
  # 2021/09/30 - PH Removed erroneous "-" when copying CreatorTool
17
+ # 2022/03/31 - PH IPTC Photometadata Mapping Guidelines 2202.1 update
17
18
  #
18
19
  # References: http://www.metadataworkinggroup.org/specs/
20
+ # https://iptc.org/std/photometadata/documentation/mappingguidelines/
19
21
  #
20
22
  # Notes: 1) The first three arguments copy the bulk of the EXIF and GPS
21
23
  # information, and the remaining arguments handle the tags
@@ -24,6 +26,8 @@
24
26
  # 2) These arguments will not delete existing EXIF tags which are
25
27
  # missing from the XMP. The EXIF tags should be deleted
26
28
  # beforehand if required.
29
+ #
30
+ # 3) XMP-iptcExt:ImageRegion is not currently mapped into EXIF:SubjectArea
27
31
  #------------------------------------------------------------------------------
28
32
  -EXIF:all < XMP-exif:all
29
33
  -EXIF:all < XMP-exifEX:all
@@ -37,7 +41,9 @@
37
41
  -Composite:SubSecModifyDate < XMP-xmp:ModifyDate
38
42
  -EXIF:Software < XMP-xmp:CreatorTool
39
43
  -EXIF:Copyright < XMP-dc:Rights
44
+ -EXIF:Artist < XMP-plus:ImageCreatorName
40
45
  -EXIF:Artist < XMP-dc:Creator
46
+ -EXIF:DigImageGUID < XMP-iptcExt:DigitalImageGUID
41
47
  # XMP flash information is translated by the Composite Flash tag
42
48
  -EXIF:Flash < Composite:Flash
43
49
  # generate GPS tags which have been combined into other XMP tags
@@ -97,8 +97,8 @@ my %sACDSeeRegionStruct = (
97
97
  # new XMP namespaces for ACDSee regions
98
98
  'Image::ExifTool::XMP::Main' => {
99
99
  'acdsee-rs' => { # <-- must be the same as the NAMESPACE prefix
100
- SubDirectory => {
101
- TagTable => 'Image::ExifTool::UserDefined::ACDSeeRegions'
100
+ SubDirectory => {
101
+ TagTable => 'Image::ExifTool::UserDefined::ACDSeeRegions'
102
102
  },
103
103
  },
104
104
  },
@@ -147,7 +147,7 @@ my %sACDSeeRegionStruct = (
147
147
  },
148
148
  ValueConv => q{
149
149
  my ($rgn, @newRgns);
150
- my $rgns = ref $val[0] eq 'ARRAY' ? $val[0] : [ $val[0] ];
150
+ my $rgns = ref $val[0] eq 'ARRAY' ? $val[0] : [ $val[0] ];
151
151
  foreach $rgn (@$rgns) {
152
152
  my %newRgn = ( Type => 'Face' );
153
153
  if ($$rgn{RegionBoundary} and $$rgn{RegionBoundary}{RbShape} eq 'rectangle') {
@@ -220,13 +220,13 @@ my %sACDSeeRegionStruct = (
220
220
  # the "Struct" entry defines the structure fields
221
221
  Struct => {
222
222
  # optional structure name (used for warning messages only)
223
- STRUCT_NAME => 'ACDSee RegionInfo',
223
+ STRUCT_NAME => 'ACDSee RegionInfo',
224
224
  RegionList => {
225
225
  FlatName => 'Region',
226
226
  Struct => \%sACDSeeRegionStruct,
227
227
  List => 'Bag',
228
228
  },
229
- AppliedToDimensions => {
229
+ AppliedToDimensions => {
230
230
  FlatName => 'RegionAppliedToDimensions',Struct => \%sACDSeeDimensions },
231
231
  },
232
232
  },
@@ -239,7 +239,7 @@ my %sACDSeeRegionStruct = (
239
239
  RegionInfoACDSeeAppliedToDimensionsW => 'ACDSeeRegionAppliedToDimensionsW',
240
240
  RegionInfoACDSeeRegionListDLYAreaH => 'ACDSeeRegionDLYAreaH',
241
241
  RegionInfoACDSeeRegionListDLYAreaW => 'ACDSeeRegionDLYAreaW',
242
- RegionInfoACDSeeRegionListDLYAreaX => 'ACDSeeRegionDLYAreaX',
242
+ RegionInfoACDSeeRegionListDLYAreaX => 'ACDSeeRegionDLYAreaX',
243
243
  RegionInfoACDSeeRegionListDLYAreaY => 'ACDSeeRegionDLYAreaY',
244
244
  RegionInfoACDSeeRegionListALGAreaH => 'ACDSeeRegionALGAreaH',
245
245
  RegionInfoACDSeeRegionListALGAreaW => 'ACDSeeRegionALGAreaW',
@@ -34,15 +34,15 @@
34
34
  # Usage:
35
35
  #
36
36
  # 1) Extract Photoshop path names:
37
- #
37
+ #
38
38
  # exiftool -config photoshop_paths.config -allpaths FILE
39
39
  #
40
40
  # 2) Extract Photoshop path names and anchor points:
41
- #
41
+ #
42
42
  # exiftool -config photoshop_paths.config -userparam anchor -allpaths FILE
43
43
  #
44
44
  # 3) Extract Photoshop path anchor points only:
45
- #
45
+ #
46
46
  # exiftool -config photoshop_paths.config -userparam anchoronly -allpaths FILE
47
47
  #
48
48
  # 4) Copy all Photoshop paths from one file (SRC) to another (DST):
@@ -68,6 +68,7 @@
68
68
  # subpath respectively
69
69
  # 2017/06/03 - PH Added TotalPathPoints
70
70
  # 2017/07/17 - PH Added UniquePathPoints
71
+ # 2022/02/03 - PH Added WorkingPath and WorkingPathPix
71
72
  #
72
73
  # References: https://exiftool.org/forum/index.php/topic,1621.0.html
73
74
  # https://exiftool.org/forum/index.php/topic,3910.0.html
@@ -77,10 +78,11 @@
77
78
  # Print Photoshop path name and/or anchor points
78
79
  # Inputs: 0) reference to Photoshop path data, 1) ExifTool object reference
79
80
  # 2-3) optional image width/height to convert anchor points to pixels
81
+ # 4) optional path name
80
82
  # Returns: String with name and/or Bezier knot anchor points
81
- sub PrintPath($$;$$)
83
+ sub PrintPath($$;$$$)
82
84
  {
83
- my ($val, $et, $w, $h) = @_;
85
+ my ($val, $et, $w, $h, $nm) = @_;
84
86
  my ($pos, $name, @rtn);
85
87
  my $len = length($$val) - 26;
86
88
 
@@ -88,8 +90,9 @@ sub PrintPath($$;$$)
88
90
  if ($$val =~ m{.*/#(.{0,255})#/$}s) {
89
91
  $name = $1;
90
92
  $len -= length($1) + 4;
93
+ $name = $nm if defined $nm and not length $name;
91
94
  } else {
92
- $name = '<none>';
95
+ $name = defined $nm ? $nm : '<none>';
93
96
  }
94
97
  my $anchorOnly = $et->Options(UserParam => 'AnchorOnly');
95
98
  push @rtn, $name unless $anchorOnly;
@@ -118,7 +121,7 @@ sub PrintPath($$;$$)
118
121
  }
119
122
 
120
123
  %Image::ExifTool::Shortcuts::UserDefined = (
121
- # create "AllPaths" shortcut for all Photoshop path tags
124
+ # create "AllPaths" shortcut for all Photoshop path tags (except WorkingPath)
122
125
  AllPaths => [
123
126
  map { sprintf "Path%x", $_ } (0x7d0 .. 0xbb5),
124
127
  ],
@@ -133,6 +136,14 @@ sub PrintPath($$;$$)
133
136
  Name => 'OriginPathInfo',
134
137
  Flags => [ qw(Writable Protected Binary SetResourceName) ],
135
138
  },
139
+ 0x401 => {
140
+ Name => 'WorkingPath',
141
+ Flags => [ qw(Writable Protected Binary ConvertBinary SetResourceName) ],
142
+ PrintConv => sub {
143
+ my ($val, $et) = @_;
144
+ PrintPath($val, $et, undef, undef, 'Work Path');
145
+ },
146
+ },
136
147
  # generate tags for each of the 998 possible Photoshop paths
137
148
  map { $_ => {
138
149
  Name => sprintf('Path%x', $_),
@@ -143,6 +154,7 @@ sub PrintPath($$;$$)
143
154
  },
144
155
  'Image::ExifTool::Composite' => {
145
156
  PathCount => {
157
+ # (PathCount statistics do not include WorkingPath)
146
158
  Desire => {
147
159
  map { $_-0x7d0 => sprintf('Path%x', $_) } (0x7d0 .. 0xbb5),
148
160
  },
@@ -180,6 +192,17 @@ sub PrintPath($$;$$)
180
192
  Require => 'PathCount',
181
193
  ValueConv => '$$self{TotalPathPoints}',
182
194
  },
195
+ WorkingPathPix => {
196
+ Require => {
197
+ 0 => 'ImageWidth',
198
+ 1 => 'ImageHeight',
199
+ 2 => 'WorkingPath',
200
+ },
201
+ ValueConv => sub {
202
+ my ($val, $et) = @_;
203
+ PrintPath($$val[2], $et, $$val[0], $$val[1], 'Work Path');
204
+ },
205
+ },
183
206
  map { sprintf('PathPix%x', $_) => {
184
207
  Require => {
185
208
  0 => 'ImageWidth',
@@ -63,7 +63,7 @@
63
63
  # 2015/05/12 - PH Minor code tweaks
64
64
  # 2015/10/26 - BKW Round off area sizes to 7 decimal places
65
65
  # 2016/01/18 - BKW Improved rounding algorithm
66
- # 2016/05/14 - BKW Increased rounding to 9 decimal places (Max Picasa accepts),
66
+ # 2016/05/14 - BKW Increased rounding to 9 decimal places (Max Picasa accepts),
67
67
  # moved rounding operation to subroutine
68
68
  #
69
69
  # References: https://exiftool.org/forum/index.php/topic,6354.0.html
@@ -16,13 +16,13 @@
16
16
 
17
17
  %Image::ExifTool::UserDefined = (
18
18
  'Image::ExifTool::XMP::Main' => {
19
- Camera => {
19
+ Camera => {
20
20
  SubDirectory => {
21
21
  TagTable => 'Image::ExifTool::UserDefined::Camera',
22
22
  },
23
23
  },
24
24
  },
25
- );
25
+ );
26
26
 
27
27
  %Image::ExifTool::UserDefined::Camera = (
28
28
  GROUPS => { 0 => 'XMP', 1 => 'XMP-Camera', 2 => 'Camera' },
@@ -68,9 +68,9 @@ sub has_defined {
68
68
  35 => 'EXIF:TransferRange', # TransferRange (342/0x0156)
69
69
  36 => 'EXIF:YCbCrCoefficients', # YCbCrCoefficients (529/0x0211)
70
70
  37 => 'EXIF:YCbCrPositioning', # YCbCrPositioning (531/0x0213)
71
- 38 => 'EXIF:YCbCrSubSampling', # YCbCrSubSampling (530/0x0212)
71
+ 38 => 'EXIF:YCbCrSubSampling', # YCbCrSubSampling (530/0x0212)
72
72
  # Other tags to check
73
- 39 => 'EXIF:PhotometricInterpretation', # PhotometricInterpretation (262/0x0106)
73
+ 39 => 'EXIF:PhotometricInterpretation', # PhotometricInterpretation (262/0x0106)
74
74
  40 => 'EXIF:Compression', # Compression (259/0x0103)
75
75
  },
76
76
  ValueConv => q{