exiftool-vendored.pl 12.38.0 → 12.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (199) hide show
  1. package/LICENSE +10 -3
  2. package/bin/Changes +17 -0
  3. package/bin/MANIFEST +1 -0
  4. package/bin/META.json +1 -1
  5. package/bin/META.yml +1 -1
  6. package/bin/README +45 -45
  7. package/bin/exiftool +46 -46
  8. package/bin/lib/File/RandomAccess.pm +1 -1
  9. package/bin/lib/File/RandomAccess.pod +2 -2
  10. package/bin/lib/Image/ExifTool/AES.pm +1 -1
  11. package/bin/lib/Image/ExifTool/AFCP.pm +1 -1
  12. package/bin/lib/Image/ExifTool/AIFF.pm +1 -1
  13. package/bin/lib/Image/ExifTool/APE.pm +1 -1
  14. package/bin/lib/Image/ExifTool/APP12.pm +1 -1
  15. package/bin/lib/Image/ExifTool/ASF.pm +1 -1
  16. package/bin/lib/Image/ExifTool/Apple.pm +1 -1
  17. package/bin/lib/Image/ExifTool/Audible.pm +1 -1
  18. package/bin/lib/Image/ExifTool/BMP.pm +1 -1
  19. package/bin/lib/Image/ExifTool/BPG.pm +1 -1
  20. package/bin/lib/Image/ExifTool/BZZ.pm +1 -1
  21. package/bin/lib/Image/ExifTool/BigTIFF.pm +1 -1
  22. package/bin/lib/Image/ExifTool/BuildTagLookup.pm +6 -4
  23. package/bin/lib/Image/ExifTool/CBOR.pm +1 -1
  24. package/bin/lib/Image/ExifTool/Canon.pm +1 -1
  25. package/bin/lib/Image/ExifTool/CanonCustom.pm +1 -1
  26. package/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
  27. package/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
  28. package/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
  29. package/bin/lib/Image/ExifTool/Casio.pm +1 -1
  30. package/bin/lib/Image/ExifTool/Charset.pm +1 -1
  31. package/bin/lib/Image/ExifTool/DICOM.pm +1 -1
  32. package/bin/lib/Image/ExifTool/DJI.pm +1 -1
  33. package/bin/lib/Image/ExifTool/DNG.pm +1 -1
  34. package/bin/lib/Image/ExifTool/DPX.pm +1 -1
  35. package/bin/lib/Image/ExifTool/DV.pm +1 -1
  36. package/bin/lib/Image/ExifTool/DarwinCore.pm +1 -1
  37. package/bin/lib/Image/ExifTool/DjVu.pm +1 -1
  38. package/bin/lib/Image/ExifTool/EXE.pm +1 -1
  39. package/bin/lib/Image/ExifTool/Exif.pm +9 -1
  40. package/bin/lib/Image/ExifTool/FITS.pm +1 -1
  41. package/bin/lib/Image/ExifTool/FLAC.pm +1 -1
  42. package/bin/lib/Image/ExifTool/FLIF.pm +1 -1
  43. package/bin/lib/Image/ExifTool/FLIR.pm +16 -4
  44. package/bin/lib/Image/ExifTool/Fixup.pm +1 -1
  45. package/bin/lib/Image/ExifTool/Flash.pm +1 -1
  46. package/bin/lib/Image/ExifTool/FlashPix.pm +1 -1
  47. package/bin/lib/Image/ExifTool/Font.pm +1 -1
  48. package/bin/lib/Image/ExifTool/FotoStation.pm +1 -1
  49. package/bin/lib/Image/ExifTool/FujiFilm.pm +1 -1
  50. package/bin/lib/Image/ExifTool/GE.pm +1 -1
  51. package/bin/lib/Image/ExifTool/GIF.pm +1 -1
  52. package/bin/lib/Image/ExifTool/GIMP.pm +1 -1
  53. package/bin/lib/Image/ExifTool/GPS.pm +1 -1
  54. package/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
  55. package/bin/lib/Image/ExifTool/Geotag.pm +1 -1
  56. package/bin/lib/Image/ExifTool/GoPro.pm +1 -1
  57. package/bin/lib/Image/ExifTool/H264.pm +1 -1
  58. package/bin/lib/Image/ExifTool/HP.pm +1 -1
  59. package/bin/lib/Image/ExifTool/HTML.pm +1 -1
  60. package/bin/lib/Image/ExifTool/HtmlDump.pm +1 -1
  61. package/bin/lib/Image/ExifTool/ICC_Profile.pm +1 -1
  62. package/bin/lib/Image/ExifTool/ID3.pm +1 -1
  63. package/bin/lib/Image/ExifTool/IPTC.pm +1 -1
  64. package/bin/lib/Image/ExifTool/ISO.pm +1 -1
  65. package/bin/lib/Image/ExifTool/ITC.pm +1 -1
  66. package/bin/lib/Image/ExifTool/Import.pm +1 -1
  67. package/bin/lib/Image/ExifTool/InDesign.pm +1 -1
  68. package/bin/lib/Image/ExifTool/JPEG.pm +6 -2
  69. package/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
  70. package/bin/lib/Image/ExifTool/JSON.pm +1 -1
  71. package/bin/lib/Image/ExifTool/JVC.pm +1 -1
  72. package/bin/lib/Image/ExifTool/Jpeg2000.pm +1 -1
  73. package/bin/lib/Image/ExifTool/Kodak.pm +1 -1
  74. package/bin/lib/Image/ExifTool/KyoceraRaw.pm +1 -1
  75. package/bin/lib/Image/ExifTool/LIF.pm +1 -1
  76. package/bin/lib/Image/ExifTool/LNK.pm +1 -1
  77. package/bin/lib/Image/ExifTool/Lang/cs.pm +1 -1
  78. package/bin/lib/Image/ExifTool/Lang/de.pm +1 -1
  79. package/bin/lib/Image/ExifTool/Lang/en_ca.pm +1 -1
  80. package/bin/lib/Image/ExifTool/Lang/en_gb.pm +1 -1
  81. package/bin/lib/Image/ExifTool/Lang/es.pm +1 -1
  82. package/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
  83. package/bin/lib/Image/ExifTool/Lang/fr.pm +1 -1
  84. package/bin/lib/Image/ExifTool/Lang/it.pm +1 -1
  85. package/bin/lib/Image/ExifTool/Lang/ja.pm +1 -1
  86. package/bin/lib/Image/ExifTool/Lang/ko.pm +1 -1
  87. package/bin/lib/Image/ExifTool/Lang/nl.pm +1 -1
  88. package/bin/lib/Image/ExifTool/Lang/pl.pm +1 -1
  89. package/bin/lib/Image/ExifTool/Lang/ru.pm +1 -1
  90. package/bin/lib/Image/ExifTool/Lang/sv.pm +1 -1
  91. package/bin/lib/Image/ExifTool/Lang/tr.pm +1 -1
  92. package/bin/lib/Image/ExifTool/Lang/zh_cn.pm +1 -1
  93. package/bin/lib/Image/ExifTool/Lang/zh_tw.pm +1 -1
  94. package/bin/lib/Image/ExifTool/Leaf.pm +1 -1
  95. package/bin/lib/Image/ExifTool/Lytro.pm +1 -1
  96. package/bin/lib/Image/ExifTool/M2TS.pm +1 -1
  97. package/bin/lib/Image/ExifTool/MIE.pm +1 -1
  98. package/bin/lib/Image/ExifTool/MIEUnits.pod +1 -1
  99. package/bin/lib/Image/ExifTool/MIFF.pm +1 -1
  100. package/bin/lib/Image/ExifTool/MNG.pm +1 -1
  101. package/bin/lib/Image/ExifTool/MOI.pm +1 -1
  102. package/bin/lib/Image/ExifTool/MPC.pm +1 -1
  103. package/bin/lib/Image/ExifTool/MPEG.pm +1 -1
  104. package/bin/lib/Image/ExifTool/MPF.pm +1 -1
  105. package/bin/lib/Image/ExifTool/MRC.pm +1 -1
  106. package/bin/lib/Image/ExifTool/MWG.pm +1 -1
  107. package/bin/lib/Image/ExifTool/MXF.pm +1 -1
  108. package/bin/lib/Image/ExifTool/MacOS.pm +1 -1
  109. package/bin/lib/Image/ExifTool/MakerNotes.pm +1 -1
  110. package/bin/lib/Image/ExifTool/Matroska.pm +9 -5
  111. package/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
  112. package/bin/lib/Image/ExifTool/Minolta.pm +1 -1
  113. package/bin/lib/Image/ExifTool/MinoltaRaw.pm +1 -1
  114. package/bin/lib/Image/ExifTool/Motorola.pm +1 -1
  115. package/bin/lib/Image/ExifTool/Nikon.pm +897 -184
  116. package/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
  117. package/bin/lib/Image/ExifTool/NikonCustom.pm +519 -6
  118. package/bin/lib/Image/ExifTool/NikonSettings.pm +17 -18
  119. package/bin/lib/Image/ExifTool/Nintendo.pm +1 -1
  120. package/bin/lib/Image/ExifTool/OOXML.pm +1 -1
  121. package/bin/lib/Image/ExifTool/Ogg.pm +1 -1
  122. package/bin/lib/Image/ExifTool/Olympus.pm +1 -1
  123. package/bin/lib/Image/ExifTool/OpenEXR.pm +1 -1
  124. package/bin/lib/Image/ExifTool/Opus.pm +1 -1
  125. package/bin/lib/Image/ExifTool/Other.pm +1 -1
  126. package/bin/lib/Image/ExifTool/PCX.pm +1 -1
  127. package/bin/lib/Image/ExifTool/PDF.pm +1 -1
  128. package/bin/lib/Image/ExifTool/PGF.pm +1 -1
  129. package/bin/lib/Image/ExifTool/PICT.pm +1 -1
  130. package/bin/lib/Image/ExifTool/PLIST.pm +1 -1
  131. package/bin/lib/Image/ExifTool/PLUS.pm +1 -1
  132. package/bin/lib/Image/ExifTool/PNG.pm +28 -8
  133. package/bin/lib/Image/ExifTool/PPM.pm +1 -1
  134. package/bin/lib/Image/ExifTool/PSP.pm +1 -1
  135. package/bin/lib/Image/ExifTool/Palm.pm +1 -1
  136. package/bin/lib/Image/ExifTool/Panasonic.pm +1 -1
  137. package/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
  138. package/bin/lib/Image/ExifTool/Parrot.pm +1 -1
  139. package/bin/lib/Image/ExifTool/Pentax.pm +3 -2
  140. package/bin/lib/Image/ExifTool/PhaseOne.pm +1 -1
  141. package/bin/lib/Image/ExifTool/PhotoCD.pm +1 -1
  142. package/bin/lib/Image/ExifTool/PhotoMechanic.pm +1 -1
  143. package/bin/lib/Image/ExifTool/Photoshop.pm +1 -1
  144. package/bin/lib/Image/ExifTool/PostScript.pm +1 -1
  145. package/bin/lib/Image/ExifTool/PrintIM.pm +1 -1
  146. package/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
  147. package/bin/lib/Image/ExifTool/QuickTime.pm +1 -1
  148. package/bin/lib/Image/ExifTool/QuickTimeStream.pl +14 -3
  149. package/bin/lib/Image/ExifTool/RIFF.pm +1 -1
  150. package/bin/lib/Image/ExifTool/RSRC.pm +1 -1
  151. package/bin/lib/Image/ExifTool/RTF.pm +1 -1
  152. package/bin/lib/Image/ExifTool/Radiance.pm +1 -1
  153. package/bin/lib/Image/ExifTool/Rawzor.pm +1 -1
  154. package/bin/lib/Image/ExifTool/Real.pm +1 -1
  155. package/bin/lib/Image/ExifTool/Reconyx.pm +1 -1
  156. package/bin/lib/Image/ExifTool/Red.pm +1 -1
  157. package/bin/lib/Image/ExifTool/Ricoh.pm +1 -1
  158. package/bin/lib/Image/ExifTool/Samsung.pm +1 -1
  159. package/bin/lib/Image/ExifTool/Sanyo.pm +1 -1
  160. package/bin/lib/Image/ExifTool/Scalado.pm +1 -1
  161. package/bin/lib/Image/ExifTool/Shift.pl +3 -1
  162. package/bin/lib/Image/ExifTool/Shortcuts.pm +1 -1
  163. package/bin/lib/Image/ExifTool/Sigma.pm +1 -1
  164. package/bin/lib/Image/ExifTool/SigmaRaw.pm +1 -1
  165. package/bin/lib/Image/ExifTool/Sony.pm +1 -1
  166. package/bin/lib/Image/ExifTool/SonyIDC.pm +1 -1
  167. package/bin/lib/Image/ExifTool/Stim.pm +1 -1
  168. package/bin/lib/Image/ExifTool/TagInfoXML.pm +2 -2
  169. package/bin/lib/Image/ExifTool/TagLookup.pm +4560 -4474
  170. package/bin/lib/Image/ExifTool/TagNames.pod +320 -21
  171. package/bin/lib/Image/ExifTool/Text.pm +1 -1
  172. package/bin/lib/Image/ExifTool/Theora.pm +1 -1
  173. package/bin/lib/Image/ExifTool/Torrent.pm +1 -1
  174. package/bin/lib/Image/ExifTool/Unknown.pm +1 -1
  175. package/bin/lib/Image/ExifTool/VCard.pm +1 -1
  176. package/bin/lib/Image/ExifTool/Validate.pm +1 -1
  177. package/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
  178. package/bin/lib/Image/ExifTool/WTV.pm +1 -1
  179. package/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
  180. package/bin/lib/Image/ExifTool/WriteExif.pl +1 -1
  181. package/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
  182. package/bin/lib/Image/ExifTool/WritePDF.pl +1 -1
  183. package/bin/lib/Image/ExifTool/WritePNG.pl +30 -10
  184. package/bin/lib/Image/ExifTool/WritePhotoshop.pl +1 -1
  185. package/bin/lib/Image/ExifTool/WritePostScript.pl +1 -1
  186. package/bin/lib/Image/ExifTool/WriteQuickTime.pl +2 -1
  187. package/bin/lib/Image/ExifTool/WriteXMP.pl +1 -1
  188. package/bin/lib/Image/ExifTool/Writer.pl +6 -5
  189. package/bin/lib/Image/ExifTool/XMP.pm +40 -22
  190. package/bin/lib/Image/ExifTool/XMP2.pl +3 -2
  191. package/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
  192. package/bin/lib/Image/ExifTool/ZIP.pm +10 -2
  193. package/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
  194. package/bin/lib/Image/ExifTool/iWork.pm +1 -1
  195. package/bin/lib/Image/ExifTool.pm +11 -3
  196. package/bin/lib/Image/ExifTool.pod +64 -63
  197. package/bin/perl-Image-ExifTool.spec +43 -43
  198. package/bin/pp_build_exe.args +5 -5
  199. package/package.json +2 -2
@@ -17,7 +17,7 @@ use strict;
17
17
  use vars qw($VERSION);
18
18
  use Image::ExifTool qw(:DataAccess :Utils);
19
19
 
20
- $VERSION = '1.06';
20
+ $VERSION = '1.07';
21
21
 
22
22
  sub ProcessNikonSettings($$$);
23
23
 
@@ -948,7 +948,7 @@ my %infoZSeries = (
948
948
  Name => 'MovieShutterButton',
949
949
  PrintConv => {
950
950
  1 => 'Take Photo',
951
- 2 => 'Record Movies',
951
+ 2 => 'Record Movie',
952
952
  },
953
953
  },
954
954
  0x063 => { # Settings menu # (D6,Z7_2)
@@ -1425,7 +1425,7 @@ my %infoZSeries = (
1425
1425
  7 => 'Zoom (Low)',
1426
1426
  8 => 'Zoom (1:1)',
1427
1427
  9 => 'Zoom (High)',
1428
- 10 => 'Record Movies',
1428
+ 10 => 'Record Movie',
1429
1429
  11 => 'None',
1430
1430
  },
1431
1431
  %infoD6,
@@ -1442,7 +1442,7 @@ my %infoZSeries = (
1442
1442
  8 => 'Zoom (Low)',
1443
1443
  9 => 'Zoom (1:1)',
1444
1444
  10 => 'Zoom (High)',
1445
- 11 => 'Record Movies',
1445
+ 11 => 'Record Movie',
1446
1446
  12 => 'Image Area',
1447
1447
  13 => 'None',
1448
1448
  },
@@ -1479,14 +1479,13 @@ my %infoZSeries = (
1479
1479
  4 => 'Off',
1480
1480
  },
1481
1481
  },
1482
- 0x0e9 => { # CSf2-i # need to confirm with a Z series lens # (Z7_2)
1482
+ 0x0ea => { # CSf2-i #option for 'Focus (M/A)' is documented, but not available from camera menu
1483
1483
  Name => 'LensControlRing',
1484
1484
  PrintConv => {
1485
- 1 => 'Focus (M/A)',
1486
- 2 => 'Aperture',
1487
- 3 => 'Exposure Compensation',
1488
- 4 => 'ISO Sensitivity',
1489
- 5 => 'None (Disabled)',
1485
+ 1 => 'Aperture',
1486
+ 2 => 'Exposure Compensation',
1487
+ 3 => 'ISO Sensitivity',
1488
+ 4 => 'None (Disabled)',
1490
1489
  },
1491
1490
  },
1492
1491
  # 0x0eb MovieLensControlRing ? # (Z7_2)
@@ -1498,7 +1497,7 @@ my %infoZSeries = (
1498
1497
  2 => 'Zoom (Low)',
1499
1498
  3 => 'Zoom (1:1)',
1500
1499
  4 => 'Zoom (High)',
1501
- 5 => 'Record Movies',
1500
+ 5 => 'Record Movie',
1502
1501
  6 => 'None',
1503
1502
  },
1504
1503
  %infoD6,
@@ -1509,7 +1508,7 @@ my %infoZSeries = (
1509
1508
  2 => 'Zoom (Low)',
1510
1509
  3 => 'Zoom (1:1)',
1511
1510
  4 => 'Zoom (High)',
1512
- 5 => 'Record Movies',
1511
+ 5 => 'Record Movie',
1513
1512
  6 => 'None',
1514
1513
  },
1515
1514
  }],
@@ -1561,7 +1560,7 @@ my %infoZSeries = (
1561
1560
  8 => 'Zoom (Low)',
1562
1561
  9 => 'Zoom (1:1)',
1563
1562
  10 => 'Zoom (High)',
1564
- 11 => 'Record Movies',
1563
+ 11 => 'Record Movie',
1565
1564
  12 => 'None',
1566
1565
  },
1567
1566
  },
@@ -1587,7 +1586,7 @@ my %infoZSeries = (
1587
1586
  3 => 'Off',
1588
1587
  },
1589
1588
  },
1590
- 0x104 => { # valid for 10 bit with either N-Log or HDR/HLG selected (Z7_2)
1589
+ 0x104 => { # valid for 10 bit with either N-Log or HDR/HLG selected CSg5 (Z7_2)
1591
1590
  Name => 'HDMIViewAssist',
1592
1591
  Condition => '$$self{HDMIBitDepth} == 2',
1593
1592
  PrintConv => \%onOff
@@ -1856,7 +1855,7 @@ my %infoZSeries = (
1856
1855
  0x13d => { # CSg2-d (D6)
1857
1856
  Name => 'MovieFunc3Button',
1858
1857
  PrintConv => {
1859
- 1 => 'Record Movies',
1858
+ 1 => 'Record Movie',
1860
1859
  2 => 'My Menu',
1861
1860
  3 => 'My Menu Top Item',
1862
1861
  4 => 'None',
@@ -1925,7 +1924,7 @@ my %infoZSeries = (
1925
1924
  Name => 'VerticalMovieFuncButton',
1926
1925
  PrintConv => {
1927
1926
  1 => 'LiveView Info Display On/Off',
1928
- 2 => 'Record Movies',
1927
+ 2 => 'Record Movie',
1929
1928
  3 => 'Exposure Compensation',
1930
1929
  4 => 'ISO',
1931
1930
  5 => 'None',
@@ -1945,7 +1944,7 @@ my %infoZSeries = (
1945
1944
  9 => 'Zoom (Low)',
1946
1945
  10 => 'Zoom (1:1)',
1947
1946
  11 => 'Zoom (High)',
1948
- 12 => 'Record Movies',
1947
+ 12 => 'Record Movie',
1949
1948
  13 => 'None',
1950
1949
  },
1951
1950
  },
@@ -2076,7 +2075,7 @@ Nikon cameras such as the D6 and Z7mk2.
2076
2075
 
2077
2076
  =head1 AUTHOR
2078
2077
 
2079
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2078
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
2080
2079
 
2081
2080
  This library is free software; you can redistribute it and/or modify it
2082
2081
  under the same terms as Perl itself.
@@ -107,7 +107,7 @@ interpret Nintendo maker notes EXIF meta information.
107
107
 
108
108
  =head1 AUTHOR
109
109
 
110
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
110
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
111
111
 
112
112
  This library is free software; you can redistribute it and/or modify it
113
113
  under the same terms as Perl itself.
@@ -395,7 +395,7 @@ archives of XML files.
395
395
 
396
396
  =head1 AUTHOR
397
397
 
398
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
398
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
399
399
 
400
400
  This library is free software; you can redistribute it and/or modify it
401
401
  under the same terms as Perl itself.
@@ -214,7 +214,7 @@ information from Ogg bitstream container files.
214
214
 
215
215
  =head1 AUTHOR
216
216
 
217
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
217
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
218
218
 
219
219
  This library is free software; you can redistribute it and/or modify it
220
220
  under the same terms as Perl itself.
@@ -4071,7 +4071,7 @@ Olympus or Epson maker notes in EXIF information.
4071
4071
 
4072
4072
  =head1 AUTHOR
4073
4073
 
4074
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
4074
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
4075
4075
 
4076
4076
  This library is free software; you can redistribute it and/or modify it
4077
4077
  under the same terms as Perl itself.
@@ -304,7 +304,7 @@ information from OpenEXR images.
304
304
 
305
305
  =head1 AUTHOR
306
306
 
307
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
307
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
308
308
 
309
309
  This library is free software; you can redistribute it and/or modify it
310
310
  under the same terms as Perl itself.
@@ -69,7 +69,7 @@ information from Ogg Opus audio files.
69
69
 
70
70
  =head1 AUTHOR
71
71
 
72
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
72
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
73
73
 
74
74
  This library is free software; you can redistribute it and/or modify it
75
75
  under the same terms as Perl itself.
@@ -71,7 +71,7 @@ information from Portable FloatMap (PFM) images.
71
71
 
72
72
  =head1 AUTHOR
73
73
 
74
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
74
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
75
75
 
76
76
  This library is free software; you can redistribute it and/or modify it
77
77
  under the same terms as Perl itself.
@@ -114,7 +114,7 @@ information from PC Paintbrush (PCX) files.
114
114
 
115
115
  =head1 AUTHOR
116
116
 
117
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
117
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
118
118
 
119
119
  This library is free software; you can redistribute it and/or modify it
120
120
  under the same terms as Perl itself.
@@ -2388,7 +2388,7 @@ including AESV2 (AES-128) and AESV3 (AES-256).
2388
2388
 
2389
2389
  =head1 AUTHOR
2390
2390
 
2391
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2391
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
2392
2392
 
2393
2393
  This library is free software; you can redistribute it and/or modify it
2394
2394
  under the same terms as Perl itself.
@@ -119,7 +119,7 @@ information from Progressive Graphics File (PGF) images.
119
119
 
120
120
  =head1 AUTHOR
121
121
 
122
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
122
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
123
123
 
124
124
  This library is free software; you can redistribute it and/or modify it
125
125
  under the same terms as Perl itself.
@@ -1236,7 +1236,7 @@ Verbose or the Unknown option.
1236
1236
 
1237
1237
  =head1 AUTHOR
1238
1238
 
1239
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
1239
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
1240
1240
 
1241
1241
  This library is free software; you can redistribute it and/or modify it
1242
1242
  under the same terms as Perl itself.
@@ -438,7 +438,7 @@ This module decodes both the binary and XML-based PLIST format.
438
438
 
439
439
  =head1 AUTHOR
440
440
 
441
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
441
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
442
442
 
443
443
  This library is free software; you can redistribute it and/or modify it
444
444
  under the same terms as Perl itself.
@@ -2586,7 +2586,7 @@ Definitions for PLUS (Picture Licensing Universal System) tags.
2586
2586
 
2587
2587
  =head1 AUTHOR
2588
2588
 
2589
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2589
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
2590
2590
 
2591
2591
  This library is free software; you can redistribute it and/or modify it
2592
2592
  under the same terms as Perl itself.
@@ -36,7 +36,7 @@ use strict;
36
36
  use vars qw($VERSION $AUTOLOAD %stdCase);
37
37
  use Image::ExifTool qw(:DataAccess :Utils);
38
38
 
39
- $VERSION = '1.59';
39
+ $VERSION = '1.60';
40
40
 
41
41
  sub ProcessPNG_tEXt($$$);
42
42
  sub ProcessPNG_iTXt($$$);
@@ -142,11 +142,14 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
142
142
  },
143
143
  gAMA => {
144
144
  Name => 'Gamma',
145
+ Writable => 1,
146
+ Protected => 1,
145
147
  Notes => q{
146
148
  ExifTool reports the gamma for decoding the image, which is consistent with
147
149
  the EXIF convention, but is the inverse of the stored encoding gamma
148
150
  },
149
151
  ValueConv => 'my $a=unpack("N",$val);$a ? int(1e9/$a+0.5)/1e4 : $val',
152
+ ValueConvInv => 'pack("N", int(1e5/$val+0.5))',
150
153
  },
151
154
  gIFg => {
152
155
  Name => 'GIFGraphicControlExtension',
@@ -166,7 +169,10 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
166
169
  },
167
170
  iCCP => {
168
171
  Name => 'ICC_Profile',
169
- Notes => 'this is where ExifTool will write a new ICC_Profile',
172
+ Notes => q{
173
+ this is where ExifTool will write a new ICC_Profile. When creating a new
174
+ ICC_Profile, the SRGBRendering tag should be deleted if it exists
175
+ },
170
176
  SubDirectory => {
171
177
  TagTable => 'Image::ExifTool::ICC_Profile::Main',
172
178
  ProcessProc => \&ProcessPNG_Compressed,
@@ -174,7 +180,12 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
174
180
  },
175
181
  'iCCP-name' => {
176
182
  Name => 'ProfileName',
177
- Notes => 'not a real tag ID, this tag represents the iCCP profile name',
183
+ Writable => 1,
184
+ FakeTag => 1, # (not a real PNG tag, so don't try to write it)
185
+ Notes => q{
186
+ not a real tag ID, this tag represents the iCCP profile name, and may only
187
+ be written when the ICC_Profile is written
188
+ },
178
189
  },
179
190
  # IDAT
180
191
  # IEND
@@ -227,7 +238,11 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
227
238
  },
228
239
  sRGB => {
229
240
  Name => 'SRGBRendering',
241
+ Writable => 1,
242
+ Protected => 1,
243
+ Notes => 'this chunk should not be present if an iCCP chunk exists',
230
244
  ValueConv => 'unpack("C",$val)',
245
+ ValueConvInv => 'pack("C",$val)',
231
246
  PrintConv => {
232
247
  0 => 'Perceptual',
233
248
  1 => 'Relative Colorimetric',
@@ -1159,11 +1174,16 @@ sub ProcessPNG_Compressed($$$)
1159
1174
  if ($tagInfo and $$tagInfo{Name} eq 'ICC_Profile') {
1160
1175
  $et->VerboseDir('iCCP');
1161
1176
  $tagTablePtr = \%Image::ExifTool::PNG::Main;
1162
- if (length($tag) and not $outBuff) {
1163
- FoundPNG($et, $tagTablePtr, 'iCCP-name', $tag);
1164
- }
1177
+ FoundPNG($et, $tagTablePtr, 'iCCP-name', $tag) if length($tag) and not $outBuff;
1165
1178
  $success = FoundPNG($et, $tagTablePtr, 'iCCP', $val, $compressed, $outBuff);
1166
- $$outBuff = $hdr . $$outBuff if $outBuff and $$outBuff;
1179
+ if ($outBuff and $$outBuff) {
1180
+ my $profileName = $et->GetNewValue($Image::ExifTool::PNG::Main{'iCCP-name'});
1181
+ if (defined $profileName) {
1182
+ $hdr = $profileName . substr($hdr, length $tag);
1183
+ $et->VerboseValue("+ PNG:ProfileName", $profileName);
1184
+ }
1185
+ $$outBuff = $hdr . $$outBuff;
1186
+ }
1167
1187
  } else {
1168
1188
  $success = FoundPNG($et, $tagTablePtr, $tag, $val, $compressed, $outBuff, 'Latin');
1169
1189
  }
@@ -1541,7 +1561,7 @@ and JNG (JPEG Network Graphics) images.
1541
1561
 
1542
1562
  =head1 AUTHOR
1543
1563
 
1544
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
1564
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
1545
1565
 
1546
1566
  This library is free software; you can redistribute it and/or modify it
1547
1567
  under the same terms as Perl itself.
@@ -143,7 +143,7 @@ BitMap) images.
143
143
 
144
144
  =head1 AUTHOR
145
145
 
146
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
146
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
147
147
 
148
148
  This library is free software; you can redistribute it and/or modify it
149
149
  under the same terms as Perl itself.
@@ -284,7 +284,7 @@ information from Paint Shop Pro images.
284
284
 
285
285
  =head1 AUTHOR
286
286
 
287
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
287
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
288
288
 
289
289
  This library is free software; you can redistribute it and/or modify it
290
290
  under the same terms as Perl itself.
@@ -379,7 +379,7 @@ KF7 and KF8 books (AZW and AZW3).
379
379
 
380
380
  =head1 AUTHOR
381
381
 
382
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
382
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
383
383
 
384
384
  This library is free software; you can redistribute it and/or modify it
385
385
  under the same terms as Perl itself.
@@ -2837,7 +2837,7 @@ Panasonic and Leica maker notes in EXIF information.
2837
2837
 
2838
2838
  =head1 AUTHOR
2839
2839
 
2840
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2840
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
2841
2841
 
2842
2842
  This library is free software; you can redistribute it and/or modify it
2843
2843
  under the same terms as Perl itself.
@@ -888,7 +888,7 @@ write meta information in Panasonic/Leica RAW, RW2 and RWL images.
888
888
 
889
889
  =head1 AUTHOR
890
890
 
891
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
891
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
892
892
 
893
893
  This library is free software; you can redistribute it and/or modify it
894
894
  under the same terms as Perl itself.
@@ -731,7 +731,7 @@ timed metadata from the 'mett' frame found in Parrot drone MP4 videos.
731
731
 
732
732
  =head1 AUTHOR
733
733
 
734
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
734
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
735
735
 
736
736
  This library is free software; you can redistribute it and/or modify it
737
737
  under the same terms as Perl itself.
@@ -58,7 +58,7 @@ use Image::ExifTool::Exif;
58
58
  use Image::ExifTool::GPS;
59
59
  use Image::ExifTool::HP;
60
60
 
61
- $VERSION = '3.39';
61
+ $VERSION = '3.40';
62
62
 
63
63
  sub CryptShutterCount($$);
64
64
  sub PrintFilter($$$);
@@ -340,6 +340,7 @@ sub DecodeAFPoints($$$$;$);
340
340
  '8 64' => 'HD PENTAX-D FA* 50mm F1.4 SDM AW', #27
341
341
  '8 65' => 'HD PENTAX-D FA 70-210mm F4 ED SDM WR', #PH
342
342
  '8 66' => 'HD PENTAX-D FA 85mm F1.4 ED SDM AW', #James O'Neill
343
+ '8 67' => 'HD PENTAX-D FA 21mm F2.4 ED Limited DC WR', #ChristianShulz
343
344
  '8 195' => 'HD PENTAX DA* 16-50mm F2.8 ED PLM AW', #27
344
345
  '8 196' => 'HD PENTAX-DA* 11-18mm F2.8 ED DC AW', #29
345
346
  '8 197' => 'HD PENTAX-DA 55-300mm F4.5-6.3 ED PLM WR RE', #29
@@ -6314,7 +6315,7 @@ tags, and everyone who helped contribute to the LensType values.
6314
6315
 
6315
6316
  =head1 AUTHOR
6316
6317
 
6317
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
6318
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
6318
6319
 
6319
6320
  This library is free software; you can redistribute it and/or modify it
6320
6321
  under the same terms as Perl itself.
@@ -712,7 +712,7 @@ One maker notes.
712
712
 
713
713
  =head1 AUTHOR
714
714
 
715
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
715
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
716
716
 
717
717
  This library is free software; you can redistribute it and/or modify it
718
718
  under the same terms as Perl itself.
@@ -484,7 +484,7 @@ information from Kodak Photo CD Image Pac (PCD) files.
484
484
 
485
485
  =head1 AUTHOR
486
486
 
487
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
487
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
488
488
 
489
489
  This library is free software; you can redistribute it and/or modify it
490
490
  under the same terms as Perl itself.
@@ -236,7 +236,7 @@ write information written by the Camera Bits Photo Mechanic software.
236
236
 
237
237
  =head1 AUTHOR
238
238
 
239
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
239
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
240
240
 
241
241
  This library is free software; you can redistribute it and/or modify it
242
242
  under the same terms as Perl itself.
@@ -1143,7 +1143,7 @@ be preserved when copying Photoshop information via user-defined tags.
1143
1143
 
1144
1144
  =head1 AUTHOR
1145
1145
 
1146
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
1146
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
1147
1147
 
1148
1148
  This library is free software; you can redistribute it and/or modify it
1149
1149
  under the same terms as Perl itself.
@@ -777,7 +777,7 @@ This code reads meta information from EPS (Encapsulated PostScript), PS
777
777
 
778
778
  =head1 AUTHOR
779
779
 
780
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
780
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
781
781
 
782
782
  This library is free software; you can redistribute it and/or modify it
783
783
  under the same terms as Perl itself.
@@ -112,7 +112,7 @@ Print Image Matching meta information.
112
112
 
113
113
  =head1 AUTHOR
114
114
 
115
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
115
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
116
116
 
117
117
  This library is free software; you can redistribute it and/or modify it
118
118
  under the same terms as Perl itself.
@@ -1331,7 +1331,7 @@ information from the APP7 Qualcomm segment in JPEG images.
1331
1331
 
1332
1332
  =head1 AUTHOR
1333
1333
 
1334
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
1334
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
1335
1335
 
1336
1336
  This library is free software; you can redistribute it and/or modify it
1337
1337
  under the same terms as Perl itself.
@@ -9685,7 +9685,7 @@ information from QuickTime and MP4 video, M4A audio, and HEIC image files.
9685
9685
 
9686
9686
  =head1 AUTHOR
9687
9687
 
9688
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
9688
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
9689
9689
 
9690
9690
  This library is free software; you can redistribute it and/or modify it
9691
9691
  under the same terms as Perl itself.
@@ -1527,7 +1527,7 @@ sub ProcessFreeGPS($$$)
1527
1527
  $spd = $9 * $knotsToKph if length $9;
1528
1528
  $trk = $10 if length $10;
1529
1529
 
1530
- } elsif ($$dataPt =~ /^.{16}YndAkasoCar/s) {
1530
+ } elsif ($$dataPt =~ /^.{64}[\x01-\x0c]\0{3}[\x01-\x1f]\0{3}A[NS][EW]\0/s) {
1531
1531
 
1532
1532
  # Akaso V1 dascham
1533
1533
  # 0000: 00 00 80 00 66 72 65 65 47 50 53 20 78 00 00 00 [....freeGPS x...]
@@ -1539,6 +1539,17 @@ sub ProcessFreeGPS($$$)
1539
1539
  # 0060: 4b dc c8 41 9a 79 a7 43 34 58 43 31 4f 37 31 35 [K..A.y.C4XC1O715]
1540
1540
  # 0070: 35 31 32 36 36 35 37 35 59 4e 44 53 0d e7 cc f9 [51266575YNDS....]
1541
1541
  # 0080: 00 00 00 00 05 00 00 00 00 00 00 00 00 00 00 00 [................]
1542
+ # Redtiger F7N dashcam
1543
+ # 0000: 00 00 40 00 66 72 65 65 47 50 53 20 f0 01 00 00 [..@.freeGPS ....]
1544
+ # 0010: 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................]
1545
+ # 0020: 01 00 00 00 b0 56 50 01 7b 18 68 45 17 02 3f 46 [.....VP.{.hE..?F]
1546
+ # 0030: 13 00 00 00 01 00 00 00 06 00 00 00 15 00 00 00 [................]
1547
+ # 0040: 0c 00 00 00 1c 00 00 00 41 4e 57 00 00 00 00 00 [........ANW.....]
1548
+ # 0050: 80 d4 26 4e 36 11 b5 40 74 b5 15 7b cd 7b f3 40 [..&N6..@t..{.{.@]
1549
+ # 0060: 0a d7 a3 3d cd 4c 4e 43 38 34 37 41 45 48 31 36 [...=.LNC847AEH16]
1550
+ # 0070: 33 36 30 38 32 34 35 37 59 53 4b 4a 01 00 00 00 [36082457YSKJ....]
1551
+ # 0080: ec ff ff ff 00 00 00 00 0e 00 00 00 01 00 00 00 [................]
1552
+ # 0090: 0a 00 00 00 e5 07 00 00 0c 00 00 00 1c 00 00 00 [................]
1542
1553
  ($hr,$min,$sec,$yr,$mon,$day,$stat,$latRef,$lonRef) =
1543
1554
  unpack('x48V6a1a1a1x1', $$dataPt);
1544
1555
  # ignore invalid fixes
@@ -2572,7 +2583,7 @@ sub ProcessInsta360($;$)
2572
2583
  my $trailerLen = unpack('x38V', $buff);
2573
2584
  $trailerLen > $fileEnd and $et->Warn('Bad Insta360 trailer size'), return 0;
2574
2585
  if ($dirInfo) {
2575
- $$dirInfo{DirLen} = $trailerLen if $dirInfo;
2586
+ $$dirInfo{DirLen} = $trailerLen;
2576
2587
  $$dirInfo{DataPos} = $fileEnd - $trailerLen;
2577
2588
  if ($$dirInfo{OutFile}) {
2578
2589
  if ($$et{DEL_GROUP}{Insta360}) {
@@ -2855,7 +2866,7 @@ information like GPS tracks from MOV, MP4 and INSV media data.
2855
2866
 
2856
2867
  =head1 AUTHOR
2857
2868
 
2858
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2869
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
2859
2870
 
2860
2871
  This library is free software; you can redistribute it and/or modify it
2861
2872
  under the same terms as Perl itself.
@@ -2029,7 +2029,7 @@ including AVI videos, WAV audio files and WEBP images.
2029
2029
 
2030
2030
  =head1 AUTHOR
2031
2031
 
2032
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2032
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
2033
2033
 
2034
2034
  This library is free software; you can redistribute it and/or modify it
2035
2035
  under the same terms as Perl itself.
@@ -225,7 +225,7 @@ resource files.
225
225
 
226
226
  =head1 AUTHOR
227
227
 
228
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
228
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
229
229
 
230
230
  This library is free software; you can redistribute it and/or modify it
231
231
  under the same terms as Perl itself.
@@ -366,7 +366,7 @@ information from RTF (Rich Text Format) documents.
366
366
 
367
367
  =head1 AUTHOR
368
368
 
369
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
369
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
370
370
 
371
371
  This library is free software; you can redistribute it and/or modify it
372
372
  under the same terms as Perl itself.
@@ -125,7 +125,7 @@ images are a type of high dynamic-range image.
125
125
 
126
126
  =head1 AUTHOR
127
127
 
128
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
128
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
129
129
 
130
130
  This library is free software; you can redistribute it and/or modify it
131
131
  under the same terms as Perl itself.
@@ -168,7 +168,7 @@ information from Rawzor compressed images.
168
168
 
169
169
  =head1 AUTHOR
170
170
 
171
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
171
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
172
172
 
173
173
  This library is free software; you can redistribute it and/or modify it
174
174
  under the same terms as Perl itself.
@@ -715,7 +715,7 @@ little-endian, but the Real format is big-endian.
715
715
 
716
716
  =head1 AUTHOR
717
717
 
718
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
718
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
719
719
 
720
720
  This library is free software; you can redistribute it and/or modify it
721
721
  under the same terms as Perl itself.
@@ -431,7 +431,7 @@ maker notes in images from Reconyx cameras.
431
431
 
432
432
  =head1 AUTHOR
433
433
 
434
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
434
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
435
435
 
436
436
  This library is free software; you can redistribute it and/or modify it
437
437
  under the same terms as Perl itself.
@@ -303,7 +303,7 @@ from Redcode R3D version 1 and 2 video files.
303
303
 
304
304
  =head1 AUTHOR
305
305
 
306
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
306
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
307
307
 
308
308
  This library is free software; you can redistribute it and/or modify it
309
309
  under the same terms as Perl itself.