exiftool_vendored 12.35.0 → 12.39.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (199) hide show
  1. checksums.yaml +4 -4
  2. data/bin/Changes +59 -4
  3. data/bin/MANIFEST +1 -0
  4. data/bin/META.json +1 -1
  5. data/bin/META.yml +1 -1
  6. data/bin/README +45 -45
  7. data/bin/exiftool +79 -59
  8. data/bin/lib/File/RandomAccess.pm +1 -1
  9. data/bin/lib/File/RandomAccess.pod +2 -2
  10. data/bin/lib/Image/ExifTool/AES.pm +1 -1
  11. data/bin/lib/Image/ExifTool/AFCP.pm +1 -1
  12. data/bin/lib/Image/ExifTool/AIFF.pm +1 -1
  13. data/bin/lib/Image/ExifTool/APE.pm +1 -1
  14. data/bin/lib/Image/ExifTool/APP12.pm +1 -1
  15. data/bin/lib/Image/ExifTool/ASF.pm +1 -1
  16. data/bin/lib/Image/ExifTool/Apple.pm +1 -1
  17. data/bin/lib/Image/ExifTool/Audible.pm +1 -1
  18. data/bin/lib/Image/ExifTool/BMP.pm +1 -1
  19. data/bin/lib/Image/ExifTool/BPG.pm +1 -1
  20. data/bin/lib/Image/ExifTool/BZZ.pm +1 -1
  21. data/bin/lib/Image/ExifTool/BigTIFF.pm +1 -1
  22. data/bin/lib/Image/ExifTool/BuildTagLookup.pm +10 -4
  23. data/bin/lib/Image/ExifTool/CBOR.pm +1 -1
  24. data/bin/lib/Image/ExifTool/Canon.pm +143 -10
  25. data/bin/lib/Image/ExifTool/CanonCustom.pm +13 -3
  26. data/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
  27. data/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
  28. data/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
  29. data/bin/lib/Image/ExifTool/Casio.pm +1 -1
  30. data/bin/lib/Image/ExifTool/Charset.pm +1 -1
  31. data/bin/lib/Image/ExifTool/DICOM.pm +1 -1
  32. data/bin/lib/Image/ExifTool/DJI.pm +1 -1
  33. data/bin/lib/Image/ExifTool/DNG.pm +1 -1
  34. data/bin/lib/Image/ExifTool/DPX.pm +1 -1
  35. data/bin/lib/Image/ExifTool/DV.pm +1 -1
  36. data/bin/lib/Image/ExifTool/DarwinCore.pm +3 -3
  37. data/bin/lib/Image/ExifTool/DjVu.pm +1 -1
  38. data/bin/lib/Image/ExifTool/EXE.pm +1 -1
  39. data/bin/lib/Image/ExifTool/Exif.pm +22 -2
  40. data/bin/lib/Image/ExifTool/FITS.pm +1 -1
  41. data/bin/lib/Image/ExifTool/FLAC.pm +1 -1
  42. data/bin/lib/Image/ExifTool/FLIF.pm +1 -1
  43. data/bin/lib/Image/ExifTool/FLIR.pm +16 -4
  44. data/bin/lib/Image/ExifTool/Fixup.pm +1 -1
  45. data/bin/lib/Image/ExifTool/Flash.pm +1 -1
  46. data/bin/lib/Image/ExifTool/FlashPix.pm +1 -1
  47. data/bin/lib/Image/ExifTool/Font.pm +1 -1
  48. data/bin/lib/Image/ExifTool/FotoStation.pm +1 -1
  49. data/bin/lib/Image/ExifTool/FujiFilm.pm +1 -1
  50. data/bin/lib/Image/ExifTool/GE.pm +1 -1
  51. data/bin/lib/Image/ExifTool/GIF.pm +6 -2
  52. data/bin/lib/Image/ExifTool/GIMP.pm +1 -1
  53. data/bin/lib/Image/ExifTool/GPS.pm +15 -11
  54. data/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
  55. data/bin/lib/Image/ExifTool/Geotag.pm +1 -1
  56. data/bin/lib/Image/ExifTool/GoPro.pm +1 -1
  57. data/bin/lib/Image/ExifTool/H264.pm +1 -1
  58. data/bin/lib/Image/ExifTool/HP.pm +1 -1
  59. data/bin/lib/Image/ExifTool/HTML.pm +1 -1
  60. data/bin/lib/Image/ExifTool/HtmlDump.pm +1 -1
  61. data/bin/lib/Image/ExifTool/ICC_Profile.pm +1 -1
  62. data/bin/lib/Image/ExifTool/ID3.pm +1 -1
  63. data/bin/lib/Image/ExifTool/IPTC.pm +1 -1
  64. data/bin/lib/Image/ExifTool/ISO.pm +1 -1
  65. data/bin/lib/Image/ExifTool/ITC.pm +1 -1
  66. data/bin/lib/Image/ExifTool/Import.pm +1 -1
  67. data/bin/lib/Image/ExifTool/InDesign.pm +1 -1
  68. data/bin/lib/Image/ExifTool/JPEG.pm +6 -2
  69. data/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
  70. data/bin/lib/Image/ExifTool/JSON.pm +1 -1
  71. data/bin/lib/Image/ExifTool/JVC.pm +1 -1
  72. data/bin/lib/Image/ExifTool/Jpeg2000.pm +4 -1
  73. data/bin/lib/Image/ExifTool/Kodak.pm +1 -1
  74. data/bin/lib/Image/ExifTool/KyoceraRaw.pm +1 -1
  75. data/bin/lib/Image/ExifTool/LIF.pm +1 -1
  76. data/bin/lib/Image/ExifTool/LNK.pm +1 -1
  77. data/bin/lib/Image/ExifTool/Lang/cs.pm +1 -1
  78. data/bin/lib/Image/ExifTool/Lang/de.pm +1 -1
  79. data/bin/lib/Image/ExifTool/Lang/en_ca.pm +1 -1
  80. data/bin/lib/Image/ExifTool/Lang/en_gb.pm +1 -1
  81. data/bin/lib/Image/ExifTool/Lang/es.pm +1 -1
  82. data/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
  83. data/bin/lib/Image/ExifTool/Lang/fr.pm +1 -1
  84. data/bin/lib/Image/ExifTool/Lang/it.pm +1 -1
  85. data/bin/lib/Image/ExifTool/Lang/ja.pm +1 -1
  86. data/bin/lib/Image/ExifTool/Lang/ko.pm +1 -1
  87. data/bin/lib/Image/ExifTool/Lang/nl.pm +1 -1
  88. data/bin/lib/Image/ExifTool/Lang/pl.pm +1 -1
  89. data/bin/lib/Image/ExifTool/Lang/ru.pm +1 -1
  90. data/bin/lib/Image/ExifTool/Lang/sv.pm +1 -1
  91. data/bin/lib/Image/ExifTool/Lang/tr.pm +1 -1
  92. data/bin/lib/Image/ExifTool/Lang/zh_cn.pm +1 -1
  93. data/bin/lib/Image/ExifTool/Lang/zh_tw.pm +1 -1
  94. data/bin/lib/Image/ExifTool/Leaf.pm +1 -1
  95. data/bin/lib/Image/ExifTool/Lytro.pm +1 -1
  96. data/bin/lib/Image/ExifTool/M2TS.pm +1 -1
  97. data/bin/lib/Image/ExifTool/MIE.pm +1 -1
  98. data/bin/lib/Image/ExifTool/MIEUnits.pod +1 -1
  99. data/bin/lib/Image/ExifTool/MIFF.pm +1 -1
  100. data/bin/lib/Image/ExifTool/MNG.pm +1 -1
  101. data/bin/lib/Image/ExifTool/MOI.pm +1 -1
  102. data/bin/lib/Image/ExifTool/MPC.pm +1 -1
  103. data/bin/lib/Image/ExifTool/MPEG.pm +1 -1
  104. data/bin/lib/Image/ExifTool/MPF.pm +1 -1
  105. data/bin/lib/Image/ExifTool/MRC.pm +1 -1
  106. data/bin/lib/Image/ExifTool/MWG.pm +1 -1
  107. data/bin/lib/Image/ExifTool/MXF.pm +1 -1
  108. data/bin/lib/Image/ExifTool/MacOS.pm +1 -1
  109. data/bin/lib/Image/ExifTool/MakerNotes.pm +1 -1
  110. data/bin/lib/Image/ExifTool/Matroska.pm +9 -5
  111. data/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
  112. data/bin/lib/Image/ExifTool/Minolta.pm +1 -1
  113. data/bin/lib/Image/ExifTool/MinoltaRaw.pm +1 -1
  114. data/bin/lib/Image/ExifTool/Motorola.pm +1 -1
  115. data/bin/lib/Image/ExifTool/Nikon.pm +1870 -83
  116. data/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
  117. data/bin/lib/Image/ExifTool/NikonCustom.pm +523 -6
  118. data/bin/lib/Image/ExifTool/NikonSettings.pm +150 -87
  119. data/bin/lib/Image/ExifTool/Nintendo.pm +1 -1
  120. data/bin/lib/Image/ExifTool/OOXML.pm +1 -1
  121. data/bin/lib/Image/ExifTool/Ogg.pm +1 -1
  122. data/bin/lib/Image/ExifTool/Olympus.pm +1 -1
  123. data/bin/lib/Image/ExifTool/OpenEXR.pm +5 -3
  124. data/bin/lib/Image/ExifTool/Opus.pm +1 -1
  125. data/bin/lib/Image/ExifTool/Other.pm +1 -1
  126. data/bin/lib/Image/ExifTool/PCX.pm +1 -1
  127. data/bin/lib/Image/ExifTool/PDF.pm +1 -1
  128. data/bin/lib/Image/ExifTool/PGF.pm +1 -1
  129. data/bin/lib/Image/ExifTool/PICT.pm +1 -1
  130. data/bin/lib/Image/ExifTool/PLIST.pm +1 -1
  131. data/bin/lib/Image/ExifTool/PLUS.pm +1 -1
  132. data/bin/lib/Image/ExifTool/PNG.pm +29 -8
  133. data/bin/lib/Image/ExifTool/PPM.pm +1 -1
  134. data/bin/lib/Image/ExifTool/PSP.pm +1 -1
  135. data/bin/lib/Image/ExifTool/Palm.pm +1 -1
  136. data/bin/lib/Image/ExifTool/Panasonic.pm +1 -1
  137. data/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
  138. data/bin/lib/Image/ExifTool/Parrot.pm +1 -1
  139. data/bin/lib/Image/ExifTool/Pentax.pm +3 -2
  140. data/bin/lib/Image/ExifTool/PhaseOne.pm +1 -1
  141. data/bin/lib/Image/ExifTool/PhotoCD.pm +1 -1
  142. data/bin/lib/Image/ExifTool/PhotoMechanic.pm +1 -1
  143. data/bin/lib/Image/ExifTool/Photoshop.pm +1 -1
  144. data/bin/lib/Image/ExifTool/PostScript.pm +1 -1
  145. data/bin/lib/Image/ExifTool/PrintIM.pm +1 -1
  146. data/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
  147. data/bin/lib/Image/ExifTool/QuickTime.pm +4 -3
  148. data/bin/lib/Image/ExifTool/QuickTimeStream.pl +40 -4
  149. data/bin/lib/Image/ExifTool/RIFF.pm +1 -1
  150. data/bin/lib/Image/ExifTool/RSRC.pm +1 -1
  151. data/bin/lib/Image/ExifTool/RTF.pm +1 -1
  152. data/bin/lib/Image/ExifTool/Radiance.pm +1 -1
  153. data/bin/lib/Image/ExifTool/Rawzor.pm +1 -1
  154. data/bin/lib/Image/ExifTool/Real.pm +1 -1
  155. data/bin/lib/Image/ExifTool/Reconyx.pm +1 -1
  156. data/bin/lib/Image/ExifTool/Red.pm +1 -1
  157. data/bin/lib/Image/ExifTool/Ricoh.pm +1 -1
  158. data/bin/lib/Image/ExifTool/Samsung.pm +1 -1
  159. data/bin/lib/Image/ExifTool/Sanyo.pm +1 -1
  160. data/bin/lib/Image/ExifTool/Scalado.pm +1 -1
  161. data/bin/lib/Image/ExifTool/Shift.pl +3 -1
  162. data/bin/lib/Image/ExifTool/Shortcuts.pm +1 -1
  163. data/bin/lib/Image/ExifTool/Sigma.pm +1 -1
  164. data/bin/lib/Image/ExifTool/SigmaRaw.pm +1 -1
  165. data/bin/lib/Image/ExifTool/Sony.pm +1 -1
  166. data/bin/lib/Image/ExifTool/SonyIDC.pm +1 -1
  167. data/bin/lib/Image/ExifTool/Stim.pm +1 -1
  168. data/bin/lib/Image/ExifTool/TagInfoXML.pm +11 -6
  169. data/bin/lib/Image/ExifTool/TagLookup.pm +6496 -5895
  170. data/bin/lib/Image/ExifTool/TagNames.pod +1507 -43
  171. data/bin/lib/Image/ExifTool/Text.pm +1 -1
  172. data/bin/lib/Image/ExifTool/Theora.pm +1 -1
  173. data/bin/lib/Image/ExifTool/Torrent.pm +1 -1
  174. data/bin/lib/Image/ExifTool/Unknown.pm +1 -1
  175. data/bin/lib/Image/ExifTool/VCard.pm +1 -1
  176. data/bin/lib/Image/ExifTool/Validate.pm +1 -1
  177. data/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
  178. data/bin/lib/Image/ExifTool/WTV.pm +1 -1
  179. data/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
  180. data/bin/lib/Image/ExifTool/WriteExif.pl +1 -1
  181. data/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
  182. data/bin/lib/Image/ExifTool/WritePDF.pl +1 -1
  183. data/bin/lib/Image/ExifTool/WritePNG.pl +30 -10
  184. data/bin/lib/Image/ExifTool/WritePhotoshop.pl +1 -1
  185. data/bin/lib/Image/ExifTool/WritePostScript.pl +1 -1
  186. data/bin/lib/Image/ExifTool/WriteQuickTime.pl +2 -1
  187. data/bin/lib/Image/ExifTool/WriteXMP.pl +11 -12
  188. data/bin/lib/Image/ExifTool/Writer.pl +12 -8
  189. data/bin/lib/Image/ExifTool/XMP.pm +149 -45
  190. data/bin/lib/Image/ExifTool/XMP2.pl +3 -2
  191. data/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
  192. data/bin/lib/Image/ExifTool/ZIP.pm +10 -2
  193. data/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
  194. data/bin/lib/Image/ExifTool/iWork.pm +1 -1
  195. data/bin/lib/Image/ExifTool.pm +24 -10
  196. data/bin/lib/Image/ExifTool.pod +64 -63
  197. data/bin/perl-Image-ExifTool.spec +43 -43
  198. data/lib/exiftool_vendored/version.rb +1 -1
  199. metadata +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.04';
20
+ $VERSION = '1.07';
21
21
 
22
22
  sub ProcessNikonSettings($$$);
23
23
 
@@ -161,6 +161,39 @@ my %iSOAutoHiLimitD6 = (
161
161
  45 => 'ISO Hi 5.0',
162
162
  );
163
163
 
164
+ my %iSOAutoHiLimitZ7 = (
165
+ 1 => 'ISO 100',
166
+ 2 => 'ISO 125',
167
+ 4 => 'ISO 160',
168
+ 5 => 'ISO 200',
169
+ 6 => 'ISO 250',
170
+ 8 => 'ISO 320',
171
+ 9 => 'ISO 400',
172
+ 10 => 'ISO 500',
173
+ 12 => 'ISO 640',
174
+ 13 => 'ISO 800',
175
+ 14 => 'ISO 1000',
176
+ 16 => 'ISO 1250',
177
+ 17 => 'ISO 1600',
178
+ 18 => 'ISO 2000',
179
+ 20 => 'ISO 2500',
180
+ 21 => 'ISO 3200',
181
+ 22 => 'ISO 4000',
182
+ 24 => 'ISO 5000',
183
+ 25 => 'ISO 6400',
184
+ 26 => 'ISO 8000',
185
+ 28 => 'ISO 10000',
186
+ 29 => 'ISO 12800',
187
+ 30 => 'ISO 16000',
188
+ 32 => 'ISO 20000',
189
+ 33 => 'ISO 25600',
190
+ 38 => 'ISO Hi 0.3',
191
+ 39 => 'ISO Hi 0.5',
192
+ 40 => 'ISO Hi 0.7',
193
+ 41 => 'ISO Hi 1.0',
194
+ 42 => 'ISO Hi 2.0',
195
+ );
196
+
164
197
  my %lensFuncButtonZ7m2 = (
165
198
  1 => 'AF-On',
166
199
  2 => 'AF Lock Only',
@@ -305,16 +338,21 @@ my %times4s10s20s1m5m20m = (
305
338
 
306
339
  my %yesNo = ( 1 => 'Yes', 2 => 'No' );
307
340
 
308
- my %infoZ72 = (
309
- Condition => '$$self{Model} =~ /^NIKON Z 6_2/i or $$self{Model} =~ /^NIKON Z 7_2/i',
310
- Notes => 'Z7_2',
311
- );
312
-
313
341
  my %infoD6 = (
314
- Condition => '$$self{Model} =~ /^NIKON D6/i',
342
+ Condition => '$$self{Model} =~ /^NIKON D6\b/i',
315
343
  Notes => 'D6',
316
344
  );
317
345
 
346
+ my %infoZ7 = (
347
+ Condition => '$$self{Model} =~ /^NIKON Z (7|7_2)\b/i',
348
+ Notes => 'Z7 and Z7_2',
349
+ );
350
+
351
+ my %infoZSeries = (
352
+ Condition => '$$self{Model} =~ /^NIKON Z (5|50|6|6_2|7|7_2|fc)\b/i',
353
+ Notes => 'Z Series cameras thru November 2021',
354
+ );
355
+
318
356
  # Nikon Settings tags (ref 1, tag ID's ref PH)
319
357
  %Image::ExifTool::NikonSettings::Main = (
320
358
  PROCESS_PROC => \&ProcessNikonSettings,
@@ -329,39 +367,8 @@ my %infoD6 = (
329
367
  %infoD6,
330
368
  },{
331
369
  Name => 'ISOAutoHiLimit',
332
- PrintConv => {
333
- 1 => 'ISO 100',
334
- 2 => 'ISO 125',
335
- 4 => 'ISO 160',
336
- 5 => 'ISO 200',
337
- 6 => 'ISO 250',
338
- 8 => 'ISO 320',
339
- 9 => 'ISO 400',
340
- 10 => 'ISO 500',
341
- 12 => 'ISO 640',
342
- 13 => 'ISO 800',
343
- 14 => 'ISO 1000',
344
- 16 => 'ISO 1250',
345
- 17 => 'ISO 1600',
346
- 18 => 'ISO 2000',
347
- 20 => 'ISO 2500',
348
- 21 => 'ISO 3200',
349
- 22 => 'ISO 4000',
350
- 24 => 'ISO 5000',
351
- 25 => 'ISO 6400',
352
- 26 => 'ISO 8000',
353
- 28 => 'ISO 10000',
354
- 29 => 'ISO 12800',
355
- 30 => 'ISO 16000',
356
- 32 => 'ISO 20000',
357
- 33 => 'ISO 25600',
358
- 38 => 'ISO Hi 0.3',
359
- 39 => 'ISO Hi 0.5',
360
- 40 => 'ISO Hi 0.7',
361
- 41 => 'ISO Hi 1.0',
362
- 42 => 'ISO Hi 2.0',
363
- },
364
- %infoZ72,
370
+ PrintConv => \%iSOAutoHiLimitZ7,
371
+ %infoZ7,
365
372
  }],
366
373
  0x002 => [{
367
374
  Name => 'ISOAutoFlashLimit',
@@ -441,7 +448,7 @@ my %infoD6 = (
441
448
  42 => 'ISO Hi 1.0',
442
449
  43 => 'ISO Hi 2.0',
443
450
  },
444
- %infoZ72,
451
+ %infoZ7,
445
452
  }],
446
453
  0x003 => { # (D6/Z7_2)
447
454
  Name => 'ISOAutoShutterTime',
@@ -542,18 +549,10 @@ my %infoD6 = (
542
549
  37 => 'ISO Hi 1.0',
543
550
  38 => 'ISO Hi 2.0',
544
551
  },
545
- %infoZ72,
552
+ %infoZ7,
546
553
  }],
547
554
  0x00e => { Name => 'MovieISOAutoControlManualMode',PrintConv => \%onOff }, # (D6/Z7_2)
548
- # 0x00f => [{ # this tag should reside here, but unable to confirm
549
- # Name => 'MovieISOAutoManualMode',
550
- # PrintConv => \%iSOAutoHiLimitD6,
551
- # %infoD6,
552
- # },{
553
- # Name => 'MovieISOAutoManualMode',
554
- # PrintConv => \%iSOAutoHiLimitZ7m2,
555
- # %infoZ72,
556
- # }],
555
+ 0x00f => { Name => 'MovieWhiteBalanceSameAsPhoto', PrintConv => \%yesNo }, # (D6/Z7_2)
557
556
  0x01d => [{ # CSa1 (D6)
558
557
  Name => 'AF-CPrioritySel',
559
558
  PrintConv => { # valid for cameras with 4 options for CS1, otherwise 1=Release, 2=Focus
@@ -566,7 +565,7 @@ my %infoD6 = (
566
565
  },{ # CSa1 (Z7_2)
567
566
  Name => 'AF-CPrioritySel',
568
567
  PrintConv => \%releaseFocus,
569
- %infoZ72,
568
+ %infoZSeries,
570
569
  }],
571
570
  0x01e => { Name => 'AF-SPrioritySel', PrintConv => \%releaseFocus }, # CSa2 (D6), CSa2 (Z7_2)
572
571
  0x020 => [{ # CSa4 (D6)
@@ -580,7 +579,7 @@ my %infoD6 = (
580
579
  },{ # CSa4 (Z7_2)
581
580
  Name => 'AFPointSel',
582
581
  PrintConv => { 1 => 'Use All', 2 => 'Use Half' },
583
- %infoZ72,
582
+ %infoZSeries,
584
583
  }],
585
584
  0x022 => { Name => 'AFActivation', PrintConv => { 1 => 'Shutter/AF-On', 2 => 'AF-On Only' } }, # CSa6-a (D6/Z7_2) (missing enable/disable out of focus release) # (D6)
586
585
  0x023 => { Name => 'FocusPointWrap', PrintConv => { 1 => 'Wrap', 2 => 'No Wrap' } }, # CSa16 (D6), CSa8 (Z7_2)
@@ -617,7 +616,7 @@ my %infoD6 = (
617
616
  },{ # CSb3 (Z7_2)
618
617
  Name => 'CenterWeightedAreaSize',
619
618
  PrintConv => { 1 => '12 mm', 2 => 'Average' },
620
- %infoZ72,
619
+ %infoZSeries,
621
620
  }],
622
621
  0x02f => { # CSb7-a (D6), CSb4-a (Z7_2)
623
622
  Name => 'FineTuneOptMatrixMetering',
@@ -681,7 +680,7 @@ my %infoD6 = (
681
680
  7 => '30 min',
682
681
  8 => 'No Limit',
683
682
  },
684
- %infoZ72,
683
+ %infoZSeries,
685
684
  }],
686
685
  0x035 => { # CSc3-a (D6), CSc2-a (Z7_2)
687
686
  Name => 'SelfTimerTime',
@@ -770,7 +769,7 @@ my %infoD6 = (
770
769
  6 => '1/80 s',
771
770
  7 => '1/60 s',
772
771
  },
773
- %infoZ72,
772
+ %infoZSeries,
774
773
  }],
775
774
  0x048 => { # CSe2 (D6/Z7_2)
776
775
  Name => 'FlashShutterSpeed',
@@ -844,7 +843,7 @@ my %infoD6 = (
844
843
  25 => 'Non-CPU Lens',
845
844
  26 => 'None',
846
845
  },
847
- %infoZ72,
846
+ %infoZSeries,
848
847
  }],
849
848
  0x053 => [{ # CSf4-a (D6)
850
849
  Name => 'MultiSelectorShootMode',
@@ -864,7 +863,7 @@ my %infoD6 = (
864
863
  4 => 'Zoom (High)',
865
864
  5 => 'None',
866
865
  },
867
- %infoZ72,
866
+ %infoZSeries,
868
867
  }],
869
868
  0x054 => [{ # CSf4-c (D6)
870
869
  Name => 'MultiSelectorPlaybackMode',
@@ -887,7 +886,7 @@ my %infoD6 = (
887
886
  5 => 'Zoom (High)',
888
887
  6 => 'Choose Folder',
889
888
  },
890
- %infoZ72,
889
+ %infoZSeries,
891
890
  }],
892
891
  0x056 => { # CSf4-b (D6)
893
892
  Name => 'MultiSelectorLiveView',
@@ -949,7 +948,7 @@ my %infoD6 = (
949
948
  Name => 'MovieShutterButton',
950
949
  PrintConv => {
951
950
  1 => 'Take Photo',
952
- 2 => 'Record Movies',
951
+ 2 => 'Record Movie',
953
952
  },
954
953
  },
955
954
  0x063 => { # Settings menu # (D6,Z7_2)
@@ -975,9 +974,29 @@ my %infoD6 = (
975
974
  1 => 'Manual (dark on light)',
976
975
  2 => 'Manual (light on dark)',
977
976
  },
978
- %infoZ72,
977
+ %infoZSeries,
979
978
  }],
980
979
  0x074 => { Name => 'FlickAdvanceDirection', PrintConv => { 1 => 'Right to Left', 2 => 'Left to Right' } }, # CSf12-3 (D6)
980
+ 0x075 => { # Settings menu # (D6,Z7_2)
981
+ Name => 'HDMIOutputResolution',
982
+ PrintConv => {
983
+ 1 => 'Auto',
984
+ 2 => '2160p',
985
+ 3 => '1080p',
986
+ 4 => '1080i',
987
+ 5 => '720p',
988
+ 6 => '576p',
989
+ 7 => '480p',
990
+ },
991
+ },
992
+ 0x077 => { # Settings menu # (D6,Z7_2)
993
+ Name => 'HDMIOutputRange',
994
+ PrintConv => {
995
+ 1 => 'Auto',
996
+ 2 => 'Limit',
997
+ 3 => 'Full',
998
+ },
999
+ },
981
1000
  0x080 => [{
982
1001
  Name => 'RemoteFuncButton',
983
1002
  PrintConv => {
@@ -1010,7 +1029,7 @@ my %infoD6 = (
1010
1029
  10 => 'None',
1011
1030
  11 => 'LiveView Info Display On/Off',
1012
1031
  },
1013
- %infoZ72,
1032
+ %infoZSeries,
1014
1033
  }],
1015
1034
  0x08b => [{ # CSf6-a-1 and CSf6-a-2 (D6), CSf5-a-1 and CSf5-a-2 (Z7_2), (continued from above)
1016
1035
  Name => 'CmdDialsReverseRotation',
@@ -1051,6 +1070,7 @@ my %infoD6 = (
1051
1070
  8 => '180',
1052
1071
  },
1053
1072
  },
1073
+ 0x092 => { Name => 'HDMIExternalRecorder', PrintConv => \%onOff }, # Settings Menu/HDMI/Advanced entry (D6 & Z7_2)
1054
1074
  0x093 => { # CSa3-a (D6), CSa3 (Z7_2)
1055
1075
  Name => 'BlockShotAFResponse',
1056
1076
  PrintConv => {
@@ -1077,7 +1097,7 @@ my %infoD6 = (
1077
1097
  1 => 'Focus Point',
1078
1098
  2 => 'Off',
1079
1099
  },
1080
- %infoZ72,
1100
+ %infoZSeries,
1081
1101
  }],
1082
1102
  0x099 => { Name => 'DynamicAreaAFAssist',PrintConv => \%onOff }, # CSa17-c (D6), CSa9-b (Z7_2)
1083
1103
  0x09a => { Name => 'ExposureCompStepSize', PrintConv => \%thirdHalfFull }, # CSb3 (D6)
@@ -1100,7 +1120,7 @@ my %infoD6 = (
1100
1120
  },{ # CSf2-a (Z7_2)
1101
1121
  Name => 'Func1Button',
1102
1122
  PrintConv => \%funcButtonZ7m2,
1103
- %infoZ72,
1123
+ %infoZSeries,
1104
1124
  }],
1105
1125
  0x0a2 => [{ # CSf3-c (D6)
1106
1126
  Name => 'Func2Button',
@@ -1109,7 +1129,7 @@ my %infoD6 = (
1109
1129
  },{ # CSf2-b (Z7_2)
1110
1130
  Name => 'Func2Button',
1111
1131
  PrintConv => \%funcButtonZ7m2,
1112
- %infoZ72,
1132
+ %infoZSeries,
1113
1133
  }],
1114
1134
  0x0a3 => [{ # CSf3-f (D6)
1115
1135
  Name => 'AF-OnButton',
@@ -1161,7 +1181,7 @@ my %infoD6 = (
1161
1181
  11 => 'Zoom (High)',
1162
1182
  12 => 'None'
1163
1183
  },
1164
- %infoZ72,
1184
+ %infoZSeries,
1165
1185
  }],
1166
1186
  0x0a4 => { Name => 'SubSelector', PrintConv => \%tagSubSelector }, # CSf3-g-1 # (D6), CSf2-d-1 # (Z7_2)
1167
1187
  0x0a5 => [{ # CSf3-h (D6)
@@ -1234,7 +1254,7 @@ my %infoD6 = (
1234
1254
  24 => 'Non-CPU Lens',
1235
1255
  25 => 'None',
1236
1256
  },
1237
- %infoZ72,
1257
+ %infoZSeries,
1238
1258
  }],
1239
1259
  0x0a7 => [{ # CSf3-n (D6)
1240
1260
  Name => 'LensFunc1Button',
@@ -1274,7 +1294,7 @@ my %infoD6 = (
1274
1294
  },{ # CSf2-g (Z7_2)
1275
1295
  Name => 'LensFunc1Button',
1276
1296
  PrintConv => \%lensFuncButtonZ7m2,
1277
- %infoZ72,
1297
+ %infoZSeries,
1278
1298
  }],
1279
1299
  0x0a8 => { Name => 'CmdDialsApertureSetting', PrintConv => { 1 => 'Sub-command Dial', 2 => 'Aperture Ring' } }, # CSf6-c (D6)
1280
1300
  0x0a9 => { Name => 'MultiSelector', PrintConv => \%tagMultiSelector }, # CSf7 (D6)
@@ -1335,7 +1355,7 @@ my %infoD6 = (
1335
1355
  23 => 'Rating (1)', # no mapping for 24 on the Z7_2. Possibly intended for Rating = 'Candidate for Deletion'?
1336
1356
  25 => 'None',
1337
1357
  },
1338
- %infoZ72,
1358
+ %infoZSeries,
1339
1359
  }],
1340
1360
  0x0b3 => [{ # CSg2-b (D6)
1341
1361
  Name => 'MovieFunc1Button',
@@ -1379,7 +1399,7 @@ my %infoD6 = (
1379
1399
  23 => 'Rating (1)', # no mapping for 24 on the Z7_2. Possibly intended for Rating = 'Candidate for Deletion'?
1380
1400
  25 => 'None',
1381
1401
  },
1382
- %infoZ72,
1402
+ %infoZSeries,
1383
1403
  }],
1384
1404
  0x0b5 => { # CSg2-c (D6)
1385
1405
  Name => 'MovieFunc2Button',
@@ -1405,7 +1425,7 @@ my %infoD6 = (
1405
1425
  7 => 'Zoom (Low)',
1406
1426
  8 => 'Zoom (1:1)',
1407
1427
  9 => 'Zoom (High)',
1408
- 10 => 'Record Movies',
1428
+ 10 => 'Record Movie',
1409
1429
  11 => 'None',
1410
1430
  },
1411
1431
  %infoD6,
@@ -1422,11 +1442,11 @@ my %infoD6 = (
1422
1442
  8 => 'Zoom (Low)',
1423
1443
  9 => 'Zoom (1:1)',
1424
1444
  10 => 'Zoom (High)',
1425
- 11 => 'Record Movies',
1445
+ 11 => 'Record Movie',
1426
1446
  12 => 'Image Area',
1427
1447
  13 => 'None',
1428
1448
  },
1429
- %infoZ72,
1449
+ %infoZSeries,
1430
1450
  }],
1431
1451
  0x0b8 => { Name => 'LimitAFAreaModeSelD9', PrintConv => \%limitNolimit, Unknown => 1 }, # CSa14-a (D6)
1432
1452
  0x0b9 => { Name => 'LimitAFAreaModeSelD25', PrintConv => \%limitNolimit, Unknown => 1 }, # CSa14-b (D6)
@@ -1459,14 +1479,13 @@ my %infoD6 = (
1459
1479
  4 => 'Off',
1460
1480
  },
1461
1481
  },
1462
- 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
1463
1483
  Name => 'LensControlRing',
1464
1484
  PrintConv => {
1465
- 1 => 'Focus (M/A)',
1466
- 2 => 'Aperture',
1467
- 3 => 'Exposure Compensation',
1468
- 4 => 'ISO Sensitivity',
1469
- 5 => 'None (Disabled)',
1485
+ 1 => 'Aperture',
1486
+ 2 => 'Exposure Compensation',
1487
+ 3 => 'ISO Sensitivity',
1488
+ 4 => 'None (Disabled)',
1470
1489
  },
1471
1490
  },
1472
1491
  # 0x0eb MovieLensControlRing ? # (Z7_2)
@@ -1478,7 +1497,7 @@ my %infoD6 = (
1478
1497
  2 => 'Zoom (Low)',
1479
1498
  3 => 'Zoom (1:1)',
1480
1499
  4 => 'Zoom (High)',
1481
- 5 => 'Record Movies',
1500
+ 5 => 'Record Movie',
1482
1501
  6 => 'None',
1483
1502
  },
1484
1503
  %infoD6,
@@ -1489,7 +1508,7 @@ my %infoD6 = (
1489
1508
  2 => 'Zoom (Low)',
1490
1509
  3 => 'Zoom (1:1)',
1491
1510
  4 => 'Zoom (High)',
1492
- 5 => 'Record Movies',
1511
+ 5 => 'Record Movie',
1493
1512
  6 => 'None',
1494
1513
  },
1495
1514
  }],
@@ -1541,7 +1560,7 @@ my %infoD6 = (
1541
1560
  8 => 'Zoom (Low)',
1542
1561
  9 => 'Zoom (1:1)',
1543
1562
  10 => 'Zoom (High)',
1544
- 11 => 'Record Movies',
1563
+ 11 => 'Record Movie',
1545
1564
  12 => 'None',
1546
1565
  },
1547
1566
  },
@@ -1549,6 +1568,29 @@ my %infoD6 = (
1549
1568
  0x0fb => { Name => 'SecondarySlotFunction', PrintConv => \%tagSecondarySlotFunction }, # (D6)
1550
1569
  0x0fc => { Name => 'SilentPhotography', PrintConv => \%onOff }, # (D6,Z7_2) # tag is associated with Silent LiveView Photography (as distinguisehed from Silent Interval or Silent Focus Shift)
1551
1570
  0x0fd => { Name => 'ExtendedShutterSpeeds', PrintConv => \%onOff }, # CSd7 (D6), CSd6 (Z7_2)
1571
+ 0x102 => { # (Z7_2)
1572
+ Name => 'HDMIBitDepth',
1573
+ RawConv => '$$self{HDMIBitDepth} = $val',
1574
+ PrintConv => {
1575
+ 1 => '8 Bit',
1576
+ 2 => '10 Bit',
1577
+ #5 => 'Auto', #observed on the Z50 - needs confirmation
1578
+ },
1579
+ },
1580
+ 0x103 => { # (Z7_2)
1581
+ Name => 'HDMIOutputHDR',
1582
+ Condition => '$$self{HDMIBitDepth} == 2', # HDR(HLC) output option only available only for 10 bit
1583
+ RawConv => '$$self{HDMIOutputHDR} = $val',
1584
+ PrintConv => {
1585
+ 2 => 'On', # unusual decode perhaps due to sharing sub-menu with tag HDMIOutputN-Log?
1586
+ 3 => 'Off',
1587
+ },
1588
+ },
1589
+ 0x104 => { # valid for 10 bit with either N-Log or HDR/HLG selected CSg5 (Z7_2)
1590
+ Name => 'HDMIViewAssist',
1591
+ Condition => '$$self{HDMIBitDepth} == 2',
1592
+ PrintConv => \%onOff
1593
+ },
1552
1594
  0x109 => { # (D6,Z7_2)
1553
1595
  Name => 'BracketSet',
1554
1596
  RawConv => '$$self{BracketSet} = $val',
@@ -1640,6 +1682,11 @@ my %infoD6 = (
1640
1682
  8 => 'Off, Low, Normal, High, Extra High',
1641
1683
  },
1642
1684
  },
1685
+ 0x10e => { # (D6/Z7_2)
1686
+ Name => 'MonitorBrightness',
1687
+ # settings: -5 to +5
1688
+ ValueConv => '$val - 6',
1689
+ },
1643
1690
  0x116 => { Name => 'GroupAreaC1', PrintConv =>\%groupAreaCustom }, # CSa10-a (new with D6) # (D6)
1644
1691
  0x117 => { Name => 'AutoAreaAFStartingPoint', PrintConv => \%enableDisable }, # CSa12 (D6)
1645
1692
  0x118 => { Name => 'FocusPointPersistence', PrintConv => { 1 => 'Auto', 2 => 'Off' } }, # CSa13 (new with D6) # (D6)
@@ -1808,7 +1855,7 @@ my %infoD6 = (
1808
1855
  0x13d => { # CSg2-d (D6)
1809
1856
  Name => 'MovieFunc3Button',
1810
1857
  PrintConv => {
1811
- 1 => 'Record Movies',
1858
+ 1 => 'Record Movie',
1812
1859
  2 => 'My Menu',
1813
1860
  3 => 'My Menu Top Item',
1814
1861
  4 => 'None',
@@ -1823,8 +1870,9 @@ my %infoD6 = (
1823
1870
  },
1824
1871
  },
1825
1872
  0x151 => { Name => 'LensFunc2Button', PrintConv => \%lensFuncButtonZ7m2 }, # CSf2-h (Z7_2)
1873
+ #0x153 => { Name => 'ViewfinderBrightness', } #(Z7_2) # commented out to reduce output volume. Range [-5,+5]. PrintConv matches MonitorBrightness.
1826
1874
  0x158 => { Name => 'USBPowerDelivery', PrintConv => \%enableDisable }, # (Z7_2)
1827
- 0x15b => { Name => 'GroupAreaC2', PrintConv =>\%groupAreaCustom }, # CSa10-b (new with D6) # (D6)
1875
+ 0x159 => { Name => 'EnergySavingMode', PrintConv =>\%onOff }, # (Z7_2)
1828
1876
  0x15c => { Name => 'BracketingBurstOptions',PrintConv => \%enableDisable }, # CSe9 (D6)
1829
1877
  # 0x15d => CSf3-j-2 (D6) 'Same as Multi-Selector with Info(U/D) & Playback(R/L)' and 'Same as Multi-Selector with Info(R/L) & Playback(U/D)' (skipped to reduce volume of output)
1830
1878
  0x15e => { Name => 'PrimarySlot', PrintConv => { 1 => 'CFexpress/XQD Card', 2 => 'SD Card' } }, # (Z7_2)
@@ -1876,7 +1924,7 @@ my %infoD6 = (
1876
1924
  Name => 'VerticalMovieFuncButton',
1877
1925
  PrintConv => {
1878
1926
  1 => 'LiveView Info Display On/Off',
1879
- 2 => 'Record Movies',
1927
+ 2 => 'Record Movie',
1880
1928
  3 => 'Exposure Compensation',
1881
1929
  4 => 'ISO',
1882
1930
  5 => 'None',
@@ -1896,14 +1944,16 @@ my %infoD6 = (
1896
1944
  9 => 'Zoom (Low)',
1897
1945
  10 => 'Zoom (1:1)',
1898
1946
  11 => 'Zoom (High)',
1899
- 12 => 'Record Movies',
1947
+ 12 => 'Record Movie',
1900
1948
  13 => 'None',
1901
1949
  },
1902
1950
  },
1951
+ #0x168 => { Name => 'ControlPanelBrightness', # (Z7_2) #commented to reduce output volume
1903
1952
  0x169 => { Name => 'LimitAF-AreaModeSelAutoPeople', PrintConv => \%limitNolimit, Unknown => 1 }, # CSa7-h (Z7_2)
1904
1953
  0x16a => { Name => 'LimitAF-AreaModeSelAutoAnimals', PrintConv => \%limitNolimit, Unknown => 1 }, # CSa7-h (Z7_2)
1905
1954
  0x16b => { Name => 'LimitAF-AreaModeSelWideLPeople', PrintConv => \%limitNolimit, Unknown => 1 }, # CSa7-e (Z7_2)
1906
1955
  0x16c => { Name => 'LimitAF-AreaModeSelWideLAnimals', PrintConv => \%limitNolimit, Unknown => 1 }, # CSa7-f (Z7_2)
1956
+ 0x16d => { Name => 'SaveFocus', PrintConv => \%onOff }, # (Z7_2)
1907
1957
  0x16e => { # (Z7_2)
1908
1958
  Name => 'AFAreaMode',
1909
1959
  RawConv => '$$self{AFAreaMode} = $val',
@@ -1919,6 +1969,19 @@ my %infoD6 = (
1919
1969
  10 => 'Auto (Animals)',
1920
1970
  },
1921
1971
  },
1972
+ 0x16f => { # (Z7_2)
1973
+ Name => 'MovieAFAreaMode',
1974
+ PrintConv => {
1975
+ 1 => 'Single-point',
1976
+ 2 => 'Wide (S)',
1977
+ 3 => 'Wide (L)',
1978
+ 4 => 'Wide (L-people)',
1979
+ 5 => 'Wide (L-animals)',
1980
+ 6 => 'Auto',
1981
+ 7 => 'Auto (People)',
1982
+ 8 => 'Auto (Animals)',
1983
+ },
1984
+ },
1922
1985
  0x170 => { Name => 'PreferSubSelectorCenter', PrintConv => \%offOn }, # CSf13 (D6 firmware v1.2.0)
1923
1986
  0x171 => { # CSb8 (D6 firmware v1.3.0)
1924
1987
  Name => 'KeepExposureWithTeleconverter',
@@ -2012,7 +2075,7 @@ Nikon cameras such as the D6 and Z7mk2.
2012
2075
 
2013
2076
  =head1 AUTHOR
2014
2077
 
2015
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
2078
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
2016
2079
 
2017
2080
  This library is free software; you can redistribute it and/or modify it
2018
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.
@@ -15,7 +15,7 @@ use vars qw($VERSION);
15
15
  use Image::ExifTool qw(:DataAccess :Utils);
16
16
  use Image::ExifTool::GPS;
17
17
 
18
- $VERSION = '1.02';
18
+ $VERSION = '1.03';
19
19
 
20
20
  # supported EXR value format types (other types are extracted as undef binary data)
21
21
  my %formatType = (
@@ -172,12 +172,13 @@ sub ProcessEXR($$)
172
172
  my $ver = unpack('x4V', $buff);
173
173
  $et->HandleTag($tagTablePtr, '_ver', $ver & 0xff);
174
174
  $et->HandleTag($tagTablePtr, '_lay', $ver & 0x200);
175
+ my $maxLen = ($ver & 0x400) ? 255 : 31;
175
176
 
176
177
  # extract attributes
177
178
  for (;;) {
178
179
  $raf->Read($buff, 68) or last;
179
180
  last if $buff =~ /^\0/;
180
- unless ($buff =~ /^([^\0]{1,31})\0([^\0]{1,31})\0(.{4})/sg) {
181
+ unless ($buff =~ /^([^\0]{1,$maxLen})\0([^\0]{1,$maxLen})\0(.{4})/sg) {
181
182
  $et->Warn('EXR format error');
182
183
  last;
183
184
  }
@@ -189,6 +190,7 @@ sub ProcessEXR($$)
189
190
  my $tagInfo = $et->GetTagInfo($tagTablePtr, $tag);
190
191
  unless ($tagInfo) {
191
192
  my $name = ucfirst $tag;
193
+ $name =~ s/([^a-zA-Z])([a-z])/$1\U$2/g; # capitalize first letter of each word
192
194
  $name =~ tr/-_a-zA-Z0-9//dc;
193
195
  if (length $name <= 1) {
194
196
  if (length $name) {
@@ -302,7 +304,7 @@ information from OpenEXR images.
302
304
 
303
305
  =head1 AUTHOR
304
306
 
305
- Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
307
+ Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
306
308
 
307
309
  This library is free software; you can redistribute it and/or modify it
308
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.