exiftool_vendored 13.10.0 → 13.12.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 (212) hide show
  1. checksums.yaml +4 -4
  2. data/bin/Changes +33 -0
  3. data/bin/MANIFEST +1 -0
  4. data/bin/META.json +1 -1
  5. data/bin/META.yml +1 -1
  6. data/bin/README +3 -3
  7. data/bin/exiftool +206 -148
  8. data/bin/lib/File/RandomAccess.pm +1 -1
  9. data/bin/lib/File/RandomAccess.pod +2 -2
  10. data/bin/lib/Image/ExifTool/AAC.pm +1 -1
  11. data/bin/lib/Image/ExifTool/AES.pm +1 -1
  12. data/bin/lib/Image/ExifTool/AFCP.pm +1 -1
  13. data/bin/lib/Image/ExifTool/AIFF.pm +1 -1
  14. data/bin/lib/Image/ExifTool/APE.pm +1 -1
  15. data/bin/lib/Image/ExifTool/APP12.pm +1 -1
  16. data/bin/lib/Image/ExifTool/ASF.pm +1 -1
  17. data/bin/lib/Image/ExifTool/Apple.pm +1 -1
  18. data/bin/lib/Image/ExifTool/Audible.pm +1 -1
  19. data/bin/lib/Image/ExifTool/BMP.pm +1 -1
  20. data/bin/lib/Image/ExifTool/BPG.pm +1 -1
  21. data/bin/lib/Image/ExifTool/BZZ.pm +1 -1
  22. data/bin/lib/Image/ExifTool/BigTIFF.pm +1 -1
  23. data/bin/lib/Image/ExifTool/BuildTagLookup.pm +6 -6
  24. data/bin/lib/Image/ExifTool/CBOR.pm +1 -1
  25. data/bin/lib/Image/ExifTool/Canon.pm +8 -4
  26. data/bin/lib/Image/ExifTool/CanonCustom.pm +1 -1
  27. data/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
  28. data/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
  29. data/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
  30. data/bin/lib/Image/ExifTool/Casio.pm +1 -1
  31. data/bin/lib/Image/ExifTool/Charset.pm +1 -1
  32. data/bin/lib/Image/ExifTool/DICOM.pm +1 -1
  33. data/bin/lib/Image/ExifTool/DJI.pm +96 -45
  34. data/bin/lib/Image/ExifTool/DNG.pm +1 -1
  35. data/bin/lib/Image/ExifTool/DPX.pm +1 -1
  36. data/bin/lib/Image/ExifTool/DV.pm +1 -1
  37. data/bin/lib/Image/ExifTool/DarwinCore.pm +1 -1
  38. data/bin/lib/Image/ExifTool/DjVu.pm +1 -1
  39. data/bin/lib/Image/ExifTool/EXE.pm +123 -32
  40. data/bin/lib/Image/ExifTool/Exif.pm +7 -4
  41. data/bin/lib/Image/ExifTool/FITS.pm +1 -1
  42. data/bin/lib/Image/ExifTool/FLAC.pm +1 -1
  43. data/bin/lib/Image/ExifTool/FLIF.pm +1 -1
  44. data/bin/lib/Image/ExifTool/FLIR.pm +1 -1
  45. data/bin/lib/Image/ExifTool/Fixup.pm +1 -1
  46. data/bin/lib/Image/ExifTool/Flash.pm +1 -1
  47. data/bin/lib/Image/ExifTool/FlashPix.pm +1 -1
  48. data/bin/lib/Image/ExifTool/Font.pm +1 -1
  49. data/bin/lib/Image/ExifTool/FotoStation.pm +1 -1
  50. data/bin/lib/Image/ExifTool/FujiFilm.pm +1 -1
  51. data/bin/lib/Image/ExifTool/GE.pm +1 -1
  52. data/bin/lib/Image/ExifTool/GIF.pm +1 -1
  53. data/bin/lib/Image/ExifTool/GIMP.pm +1 -1
  54. data/bin/lib/Image/ExifTool/GM.pm +1 -1
  55. data/bin/lib/Image/ExifTool/GPS.pm +1 -1
  56. data/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
  57. data/bin/lib/Image/ExifTool/Geolocation.pm +1 -1
  58. data/bin/lib/Image/ExifTool/Geotag.pm +1 -1
  59. data/bin/lib/Image/ExifTool/GoPro.pm +1 -1
  60. data/bin/lib/Image/ExifTool/H264.pm +1 -1
  61. data/bin/lib/Image/ExifTool/HP.pm +1 -1
  62. data/bin/lib/Image/ExifTool/HTML.pm +1 -1
  63. data/bin/lib/Image/ExifTool/HtmlDump.pm +1 -1
  64. data/bin/lib/Image/ExifTool/ICC_Profile.pm +1 -1
  65. data/bin/lib/Image/ExifTool/ICO.pm +1 -1
  66. data/bin/lib/Image/ExifTool/ID3.pm +1 -1
  67. data/bin/lib/Image/ExifTool/IPTC.pm +8 -5
  68. data/bin/lib/Image/ExifTool/ISO.pm +1 -1
  69. data/bin/lib/Image/ExifTool/ITC.pm +1 -1
  70. data/bin/lib/Image/ExifTool/Import.pm +5 -4
  71. data/bin/lib/Image/ExifTool/InDesign.pm +1 -1
  72. data/bin/lib/Image/ExifTool/InfiRay.pm +1 -1
  73. data/bin/lib/Image/ExifTool/JPEG.pm +1 -1
  74. data/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
  75. data/bin/lib/Image/ExifTool/JSON.pm +1 -1
  76. data/bin/lib/Image/ExifTool/JVC.pm +1 -1
  77. data/bin/lib/Image/ExifTool/Jpeg2000.pm +1 -1
  78. data/bin/lib/Image/ExifTool/Kodak.pm +1 -1
  79. data/bin/lib/Image/ExifTool/KyoceraRaw.pm +1 -1
  80. data/bin/lib/Image/ExifTool/LIF.pm +1 -1
  81. data/bin/lib/Image/ExifTool/LNK.pm +1 -1
  82. data/bin/lib/Image/ExifTool/Lang/cs.pm +1 -1
  83. data/bin/lib/Image/ExifTool/Lang/de.pm +1 -1
  84. data/bin/lib/Image/ExifTool/Lang/en_ca.pm +1 -1
  85. data/bin/lib/Image/ExifTool/Lang/en_gb.pm +1 -1
  86. data/bin/lib/Image/ExifTool/Lang/es.pm +1 -1
  87. data/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
  88. data/bin/lib/Image/ExifTool/Lang/fr.pm +1 -1
  89. data/bin/lib/Image/ExifTool/Lang/it.pm +1 -1
  90. data/bin/lib/Image/ExifTool/Lang/ja.pm +1 -1
  91. data/bin/lib/Image/ExifTool/Lang/ko.pm +1 -1
  92. data/bin/lib/Image/ExifTool/Lang/nl.pm +1 -1
  93. data/bin/lib/Image/ExifTool/Lang/pl.pm +1 -1
  94. data/bin/lib/Image/ExifTool/Lang/ru.pm +1 -1
  95. data/bin/lib/Image/ExifTool/Lang/sk.pm +1 -1
  96. data/bin/lib/Image/ExifTool/Lang/sv.pm +1 -1
  97. data/bin/lib/Image/ExifTool/Lang/tr.pm +1 -1
  98. data/bin/lib/Image/ExifTool/Lang/zh_cn.pm +1 -1
  99. data/bin/lib/Image/ExifTool/Lang/zh_tw.pm +1 -1
  100. data/bin/lib/Image/ExifTool/Leaf.pm +1 -1
  101. data/bin/lib/Image/ExifTool/LigoGPS.pm +408 -0
  102. data/bin/lib/Image/ExifTool/Lytro.pm +1 -1
  103. data/bin/lib/Image/ExifTool/M2TS.pm +22 -13
  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/MISB.pm +1 -1
  108. data/bin/lib/Image/ExifTool/MNG.pm +1 -1
  109. data/bin/lib/Image/ExifTool/MOI.pm +1 -1
  110. data/bin/lib/Image/ExifTool/MPC.pm +1 -1
  111. data/bin/lib/Image/ExifTool/MPEG.pm +1 -1
  112. data/bin/lib/Image/ExifTool/MPF.pm +1 -1
  113. data/bin/lib/Image/ExifTool/MRC.pm +1 -1
  114. data/bin/lib/Image/ExifTool/MWG.pm +1 -1
  115. data/bin/lib/Image/ExifTool/MXF.pm +1 -1
  116. data/bin/lib/Image/ExifTool/MacOS.pm +1 -1
  117. data/bin/lib/Image/ExifTool/MakerNotes.pm +1 -1
  118. data/bin/lib/Image/ExifTool/Matroska.pm +12 -4
  119. data/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
  120. data/bin/lib/Image/ExifTool/Minolta.pm +1 -1
  121. data/bin/lib/Image/ExifTool/MinoltaRaw.pm +1 -1
  122. data/bin/lib/Image/ExifTool/Motorola.pm +1 -1
  123. data/bin/lib/Image/ExifTool/Nikon.pm +164 -35
  124. data/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
  125. data/bin/lib/Image/ExifTool/NikonCustom.pm +1 -1
  126. data/bin/lib/Image/ExifTool/NikonSettings.pm +1 -1
  127. data/bin/lib/Image/ExifTool/Nintendo.pm +1 -1
  128. data/bin/lib/Image/ExifTool/OOXML.pm +1 -1
  129. data/bin/lib/Image/ExifTool/Ogg.pm +1 -1
  130. data/bin/lib/Image/ExifTool/Olympus.pm +1 -1
  131. data/bin/lib/Image/ExifTool/OpenEXR.pm +1 -1
  132. data/bin/lib/Image/ExifTool/Opus.pm +1 -1
  133. data/bin/lib/Image/ExifTool/Other.pm +1 -1
  134. data/bin/lib/Image/ExifTool/PCX.pm +1 -1
  135. data/bin/lib/Image/ExifTool/PDF.pm +1 -1
  136. data/bin/lib/Image/ExifTool/PGF.pm +1 -1
  137. data/bin/lib/Image/ExifTool/PICT.pm +1 -1
  138. data/bin/lib/Image/ExifTool/PLIST.pm +1 -1
  139. data/bin/lib/Image/ExifTool/PLUS.pm +1 -1
  140. data/bin/lib/Image/ExifTool/PNG.pm +1 -1
  141. data/bin/lib/Image/ExifTool/PPM.pm +1 -1
  142. data/bin/lib/Image/ExifTool/PSP.pm +1 -1
  143. data/bin/lib/Image/ExifTool/Palm.pm +1 -1
  144. data/bin/lib/Image/ExifTool/Panasonic.pm +20 -2
  145. data/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
  146. data/bin/lib/Image/ExifTool/Parrot.pm +1 -1
  147. data/bin/lib/Image/ExifTool/Pentax.pm +1 -1
  148. data/bin/lib/Image/ExifTool/PhaseOne.pm +1 -1
  149. data/bin/lib/Image/ExifTool/PhotoCD.pm +1 -1
  150. data/bin/lib/Image/ExifTool/PhotoMechanic.pm +1 -1
  151. data/bin/lib/Image/ExifTool/Photoshop.pm +1 -1
  152. data/bin/lib/Image/ExifTool/PostScript.pm +1 -1
  153. data/bin/lib/Image/ExifTool/PrintIM.pm +1 -1
  154. data/bin/lib/Image/ExifTool/Protobuf.pm +24 -14
  155. data/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
  156. data/bin/lib/Image/ExifTool/QuickTime.pm +46 -17
  157. data/bin/lib/Image/ExifTool/QuickTimeStream.pl +20 -302
  158. data/bin/lib/Image/ExifTool/README +4 -0
  159. data/bin/lib/Image/ExifTool/RIFF.pm +1 -1
  160. data/bin/lib/Image/ExifTool/RSRC.pm +1 -1
  161. data/bin/lib/Image/ExifTool/RTF.pm +1 -1
  162. data/bin/lib/Image/ExifTool/Radiance.pm +1 -1
  163. data/bin/lib/Image/ExifTool/Rawzor.pm +1 -1
  164. data/bin/lib/Image/ExifTool/Real.pm +1 -1
  165. data/bin/lib/Image/ExifTool/Reconyx.pm +1 -1
  166. data/bin/lib/Image/ExifTool/Red.pm +1 -1
  167. data/bin/lib/Image/ExifTool/Ricoh.pm +1 -1
  168. data/bin/lib/Image/ExifTool/Samsung.pm +1 -1
  169. data/bin/lib/Image/ExifTool/Sanyo.pm +1 -1
  170. data/bin/lib/Image/ExifTool/Scalado.pm +1 -1
  171. data/bin/lib/Image/ExifTool/Shift.pl +1 -1
  172. data/bin/lib/Image/ExifTool/Shortcuts.pm +1 -1
  173. data/bin/lib/Image/ExifTool/Sigma.pm +1 -1
  174. data/bin/lib/Image/ExifTool/SigmaRaw.pm +1 -1
  175. data/bin/lib/Image/ExifTool/Sony.pm +1 -1
  176. data/bin/lib/Image/ExifTool/SonyIDC.pm +1 -1
  177. data/bin/lib/Image/ExifTool/Stim.pm +1 -1
  178. data/bin/lib/Image/ExifTool/TagInfoXML.pm +2 -2
  179. data/bin/lib/Image/ExifTool/TagLookup.pm +11 -5
  180. data/bin/lib/Image/ExifTool/TagNames.pod +84 -34
  181. data/bin/lib/Image/ExifTool/Text.pm +1 -1
  182. data/bin/lib/Image/ExifTool/Theora.pm +1 -1
  183. data/bin/lib/Image/ExifTool/Torrent.pm +1 -1
  184. data/bin/lib/Image/ExifTool/Unknown.pm +1 -1
  185. data/bin/lib/Image/ExifTool/VCard.pm +1 -1
  186. data/bin/lib/Image/ExifTool/Validate.pm +1 -1
  187. data/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
  188. data/bin/lib/Image/ExifTool/WPG.pm +1 -1
  189. data/bin/lib/Image/ExifTool/WTV.pm +1 -1
  190. data/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
  191. data/bin/lib/Image/ExifTool/WriteExif.pl +1 -1
  192. data/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
  193. data/bin/lib/Image/ExifTool/WritePDF.pl +1 -1
  194. data/bin/lib/Image/ExifTool/WritePNG.pl +1 -1
  195. data/bin/lib/Image/ExifTool/WritePhotoshop.pl +1 -1
  196. data/bin/lib/Image/ExifTool/WritePostScript.pl +1 -1
  197. data/bin/lib/Image/ExifTool/WriteQuickTime.pl +5 -3
  198. data/bin/lib/Image/ExifTool/WriteRIFF.pl +1 -1
  199. data/bin/lib/Image/ExifTool/WriteXMP.pl +1 -1
  200. data/bin/lib/Image/ExifTool/Writer.pl +9 -8
  201. data/bin/lib/Image/ExifTool/XISF.pm +1 -1
  202. data/bin/lib/Image/ExifTool/XMP.pm +1 -1
  203. data/bin/lib/Image/ExifTool/XMP2.pl +1 -1
  204. data/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
  205. data/bin/lib/Image/ExifTool/ZIP.pm +1 -1
  206. data/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
  207. data/bin/lib/Image/ExifTool/iWork.pm +1 -1
  208. data/bin/lib/Image/ExifTool.pm +13 -7
  209. data/bin/lib/Image/ExifTool.pod +14 -5
  210. data/bin/perl-Image-ExifTool.spec +1 -1
  211. data/lib/exiftool_vendored/version.rb +1 -1
  212. metadata +3 -2
@@ -15,7 +15,7 @@ use strict;
15
15
  use vars qw($VERSION);
16
16
  use Image::ExifTool qw(:DataAccess :Utils);
17
17
 
18
- $VERSION = '1.17';
18
+ $VERSION = '1.18';
19
19
 
20
20
  sub HandleStruct($$;$$$$);
21
21
 
@@ -752,7 +752,11 @@ my %uidInfo = (
752
752
  SUBTITLE => 'Subtitle',
753
753
  URL => 'URL', # nested
754
754
  SORT_WITH => 'SortWith', # nested
755
- INSTRUMENTS => 'Instruments', # nested
755
+ INSTRUMENTS => { # nested
756
+ Name => 'Instruments',
757
+ IsList => 1,
758
+ ValueConv => 'my @a = split /,\s?/, $val; \@a',
759
+ },
756
760
  EMAIL => 'Email', # nested
757
761
  ADDRESS => 'Address', # nested
758
762
  FAX => 'FAX', # nested
@@ -796,7 +800,11 @@ my %uidInfo = (
796
800
  CONTENT_TYPE => 'ContentType',
797
801
  SUBJECT => 'Subject',
798
802
  DESCRIPTION => 'Description',
799
- KEYWORDS => 'Keywords',
803
+ KEYWORDS => {
804
+ Name => 'Keywords',
805
+ IsList => 1,
806
+ ValueConv => 'my @a = split /,\s?/, $val; \@a',
807
+ },
800
808
  SUMMARY => 'Summary',
801
809
  SYNOPSIS => 'Synopsis',
802
810
  INITIAL_KEY => 'InitialKey',
@@ -1219,7 +1227,7 @@ information from Matroska multimedia files (MKA, MKV, MKS and WEBM).
1219
1227
 
1220
1228
  =head1 AUTHOR
1221
1229
 
1222
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
1230
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
1223
1231
 
1224
1232
  This library is free software; you can redistribute it and/or modify it
1225
1233
  under the same terms as Perl itself.
@@ -1100,7 +1100,7 @@ Xtra tags in videos.
1100
1100
 
1101
1101
  =head1 AUTHOR
1102
1102
 
1103
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
1103
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
1104
1104
 
1105
1105
  This library is free software; you can redistribute it and/or modify it
1106
1106
  under the same terms as Perl itself.
@@ -2927,7 +2927,7 @@ and write Minolta RAW (MRW) images.
2927
2927
 
2928
2928
  =head1 AUTHOR
2929
2929
 
2930
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
2930
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
2931
2931
 
2932
2932
  This library is free software; you can redistribute it and/or modify it
2933
2933
  under the same terms as Perl itself.
@@ -513,7 +513,7 @@ write Konica-Minolta RAW (MRW) images.
513
513
 
514
514
  =head1 AUTHOR
515
515
 
516
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
516
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
517
517
 
518
518
  This library is free software; you can redistribute it and/or modify it
519
519
  under the same terms as Perl itself.
@@ -165,7 +165,7 @@ cell phone images.
165
165
 
166
166
  =head1 AUTHOR
167
167
 
168
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
168
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
169
169
 
170
170
  This library is free software; you can redistribute it and/or modify it
171
171
  under the same terms as Perl itself.
@@ -65,7 +65,7 @@ use Image::ExifTool::Exif;
65
65
  use Image::ExifTool::GPS;
66
66
  use Image::ExifTool::XMP;
67
67
 
68
- $VERSION = '4.39';
68
+ $VERSION = '4.40';
69
69
 
70
70
  sub LensIDConv($$$);
71
71
  sub ProcessNikonAVI($$$);
@@ -1546,7 +1546,108 @@ my %afPoints81 = (
1546
1546
  17 => 'H6', 34 => 'G7', 51 => 'F8', 68 => 'A9',
1547
1547
  );
1548
1548
 
1549
- # AF point indices for models with 493 focus points, eg. Z8/Z9 (ref 28)
1549
+ # AF point indices for 209 focus point(single-point AF) cameras equipped with Expeed 7 processor eg. Z50ii). Single-point AF array is 11 rows x 19 columns. (ref 28)
1550
+ # - Auto Area AF has 2 additional columns available and provides 231 focus points. Uses 11 rows (A-K) and 21 columns (1-21), center is F11
1551
+ my %afPoints209 = (
1552
+ 1 => 'A1', 22 => 'B1', 43 => 'C1', 64 => 'D1', 85 => 'E1', 106 => 'F1', 127 => 'G1', 148 => 'H1',
1553
+ 2 => 'A2', 23 => 'B2', 44 => 'C2', 65 => 'D2', 86 => 'E2', 107 => 'F2', 128 => 'G2', 149 => 'H2',
1554
+ 3 => 'A3', 24 => 'B3', 45 => 'C3', 66 => 'D3', 87 => 'E3', 108 => 'F3', 129 => 'G3', 150 => 'H3',
1555
+ 4 => 'A4', 25 => 'B4', 46 => 'C4', 67 => 'D4', 88 => 'E4', 109 => 'F4', 130 => 'G4', 151 => 'H4',
1556
+ 5 => 'A5', 26 => 'B5', 47 => 'C5', 68 => 'D5', 89 => 'E5', 110 => 'F5', 131 => 'G5', 152 => 'H5',
1557
+ 6 => 'A6', 27 => 'B6', 48 => 'C6', 69 => 'D6', 90 => 'E6', 111 => 'F6', 132 => 'G6', 153 => 'H6',
1558
+ 7 => 'A7', 28 => 'B7', 49 => 'C7', 70 => 'D7', 91 => 'E7', 112 => 'F7', 133 => 'G7', 154 => 'H7',
1559
+ 8 => 'A8', 29 => 'B8', 50 => 'C8', 71 => 'D8', 92 => 'E8', 113 => 'F8', 134 => 'G8', 155 => 'H8',
1560
+ 9 => 'A9', 30 => 'B9', 51 => 'C9', 72 => 'D9', 93 => 'E9', 114 => 'F9', 135 => 'G9', 156 => 'H9',
1561
+ 10 => 'A10', 31 => 'B10', 52 => 'C10', 73 => 'D10', 94 => 'E10', 115 => 'F10', 136 => 'G10', 157 => 'H10',
1562
+ 11 => 'A11', 32 => 'B11' , 53 => 'C11', 74 => 'D11', 95 => 'E11', 116 => 'F11', 137 => 'G11', 158 => 'H11',
1563
+ 12 => 'A12', 33 => 'B12' , 54 => 'C12', 75 => 'D12', 96 => 'E12', 117 => 'F12', 138 => 'G12', 159 => 'H12',
1564
+ 13 => 'A13', 34 => 'B13' , 55 => 'C13', 76 => 'D13', 97 => 'E13', 118 => 'F13', 139 => 'G13', 160 => 'H13',
1565
+ 14 => 'A14', 35 => 'B14' , 56 => 'C14', 77 => 'D14', 98 => 'E14', 119 => 'F14', 140 => 'G14', 161 => 'H14',
1566
+ 15 => 'A15', 36 => 'B15', 57 => 'C15', 78 => 'D15', 99 => 'E15', 120 => 'F15', 141 => 'G15', 162 => 'H15',
1567
+ 16 => 'A16', 37 => 'B16' , 58 => 'C16', 79 => 'D16', 100 => 'E16', 121 => 'F16', 142 => 'G16', 163 => 'H16',
1568
+ 17 => 'A17', 38 => 'B17', 59 => 'C17', 80 => 'D17', 101 => 'E17', 122 => 'F17', 143 => 'G17', 164 => 'H17',
1569
+ 18 => 'A18', 39 => 'B18', 60 => 'C18', 81 => 'D18', 102 => 'E18', 123 => 'F18', 144 => 'G18', 165 => 'H18',
1570
+ 19 => 'A19', 40 => 'B19', 61 => 'C19', 82 => 'D19', 103 => 'E19', 124 => 'F19', 145 => 'G19', 166 => 'H19',
1571
+ 20 => 'A20', 41 => 'B20', 62 => 'C20', 83 => 'D20', 104 => 'E20', 125 => 'F20', 146 => 'G20', 167 => 'H20',
1572
+ 21 => 'A21', 42 => 'B21', 63 => 'C21', 84 => 'D21', 105 => 'E21', 126 => 'F21', 147 => 'G21', 168 => 'H21',
1573
+
1574
+ 169 => 'I1', 190 => 'J1', 211 => 'K1',
1575
+ 170 => 'I2', 191 => 'J2', 212 => 'K2',
1576
+ 171 => 'I3', 192 => 'J3', 213 => 'K3',
1577
+ 172 => 'I4', 193 => 'J4', 214 => 'K4',
1578
+ 173 => 'I5', 194 => 'J5', 215 => 'K5',
1579
+ 174 => 'I6', 195 => 'J6', 216 => 'K6',
1580
+ 175 => 'I7', 196 => 'J7', 217 => 'K7',
1581
+ 176 => 'I8', 197 => 'J8', 218 => 'K8',
1582
+ 177 => 'I9', 198 => 'J9', 219 => 'K9',
1583
+ 178 => 'I10', 199 => 'J10', 220 => 'K10',
1584
+ 179 => 'I11', 200 => 'J11', 221 => 'K11',
1585
+ 180 => 'I12', 201 => 'J12', 222 => 'K12',
1586
+ 181 => 'I13', 202 => 'J13', 223 => 'K13',
1587
+ 182 => 'I14', 203 => 'J14', 224 => 'K14',
1588
+ 183 => 'I15', 204 => 'J15', 225 => 'K15',
1589
+ 184 => 'I16', 205 => 'J16', 226 => 'K16',
1590
+ 185 => 'I17', 206 => 'J17', 227 => 'K17',
1591
+ 186 => 'I18', 207 => 'J18', 228 => 'K18',
1592
+ 187 => 'I19', 208 => 'J19', 229 => 'K19',
1593
+ 188 => 'I20', 209 => 'J20', 230 => 'K20',
1594
+ 189 => 'I21', 210 => 'J21', 231 => 'K21',
1595
+ );
1596
+
1597
+ # AF point indices for 273 focus point (single-point AF) cameras equipped with Expeed 7 processor (eg. Z6iii and Zf). Single-point AF array is 13 rows x 21 columns (ref 28)
1598
+ # - Auto Area AF has 2 additional columns available and provides 299 focus points. Uses 13 rows (A-M) and 23 columns (1-23), center is G12
1599
+ #
1600
+ my %afPoints273 = (
1601
+ 1 => 'A1', 24 => 'B1', 47 => 'C1', 70 => 'D1', 93 => 'E1', 116 => 'F1', 139 => 'G1', 162 => 'H1',
1602
+ 2 => 'A2', 25 => 'B2', 48 => 'C2', 71 => 'D2', 94 => 'E2', 117 => 'F2', 140 => 'G2', 163 => 'H2',
1603
+ 3 => 'A3', 26 => 'B3', 49 => 'C3', 72 => 'D3', 95 => 'E3', 118 => 'F3', 141 => 'G3', 164 => 'H3',
1604
+ 4 => 'A4', 27 => 'B4', 50 => 'C4', 73 => 'D4', 96 => 'E4', 119 => 'F4', 142 => 'G4', 165 => 'H4',
1605
+ 5 => 'A5', 28 => 'B5', 51 => 'C5', 74 => 'D5', 97 => 'E5', 120 => 'F5', 143 => 'G5', 166 => 'H5',
1606
+ 6 => 'A6', 29 => 'B6', 52 => 'C6', 75 => 'D6', 98 => 'E6', 121 => 'F6', 144 => 'G6', 167 => 'H6',
1607
+ 7 => 'A7', 30 => 'B7', 53 => 'C7', 76 => 'D7', 99 => 'E7', 122 => 'F7', 145 => 'G7', 168 => 'H7',
1608
+ 8 => 'A8', 31 => 'B8', 54 => 'C8', 77 => 'D8', 100 => 'E8', 123 => 'F8', 146 => 'G8', 169 => 'H8',
1609
+ 9 => 'A9', 32 => 'B9', 55 => 'C9', 78 => 'D9', 101 => 'E9', 124 => 'F9', 147 => 'G9', 170 => 'H9',
1610
+ 10 => 'A10', 33 => 'B10', 56 => 'C10', 79 => 'D10', 102 => 'E10', 125 => 'F10', 148 => 'G10', 171 => 'H10',
1611
+ 11 => 'A11', 34 => 'B11' , 57 => 'C11', 80 => 'D11', 103 => 'E11', 126 => 'F11', 149 => 'G11', 172 => 'H11',
1612
+ 12 => 'A12', 35 => 'B12' , 58 => 'C12', 81 => 'D12', 104 => 'E12', 127 => 'F12', 150 => 'G12', 173 => 'H12',
1613
+ 13 => 'A13', 36 => 'B13' , 59 => 'C13', 82 => 'D13', 105 => 'E13', 128 => 'F13', 151 => 'G13', 174 => 'H13',
1614
+ 14 => 'A14', 37 => 'B14' , 60 => 'C14', 83 => 'D14', 106 => 'E14', 129 => 'F14', 152 => 'G14', 175 => 'H14',
1615
+ 15 => 'A15', 38 => 'B15', 61 => 'C15', 84 => 'D15', 107 => 'E15', 130 => 'F15', 153 => 'G15', 176 => 'H15',
1616
+ 16 => 'A16', 39 => 'B16' , 62 => 'C16', 85 => 'D16', 108 => 'E16', 131 => 'F16', 154 => 'G16', 177 => 'H16',
1617
+ 17 => 'A17', 40 => 'B17', 63 => 'C17', 86 => 'D17', 109 => 'E17', 132 => 'F17', 155 => 'G17', 178 => 'H17',
1618
+ 18 => 'A18', 41 => 'B18', 64 => 'C18', 87 => 'D18', 110 => 'E18', 133 => 'F18', 156 => 'G18', 179 => 'H18',
1619
+ 19 => 'A19', 42 => 'B19', 65 => 'C19', 88 => 'D19', 111 => 'E19', 134 => 'F19', 157 => 'G19', 180 => 'H19',
1620
+ 20 => 'A20', 43 => 'B20', 66 => 'C20', 89 => 'D20', 112 => 'E20', 135 => 'F20', 158 => 'G20', 181 => 'H20',
1621
+ 21 => 'A21', 44 => 'B21', 67 => 'C21', 90 => 'D21', 113 => 'E21', 136 => 'F21', 159 => 'G21', 182 => 'H21',
1622
+ 22 => 'A22', 45 => 'B22', 68 => 'C22', 91 => 'D22', 114 => 'E22', 137 => 'F22', 160 => 'G22', 183 => 'H22',
1623
+ 23 => 'A23', 46 => 'B23', 69 => 'C23', 92 => 'D23', 115 => 'E23', 138 => 'F23', 161 => 'G23', 184 => 'H23',
1624
+
1625
+ 185 => 'I1', 208 => 'J1', 231 => 'K1', 254 => 'L1', 277 => 'M1',
1626
+ 186 => 'I2', 209 => 'J2', 232 => 'K2', 255 => 'L2', 278 => 'M2',
1627
+ 187 => 'I3', 210 => 'J3', 233 => 'K3', 256 => 'L3', 279 => 'M3',
1628
+ 188 => 'I4', 211 => 'J4', 234 => 'K4', 257 => 'L4', 280 => 'M4',
1629
+ 189 => 'I5', 212 => 'J5', 235 => 'K5', 258 => 'L5', 281 => 'M5',
1630
+ 190 => 'I6', 213 => 'J6', 236 => 'K6', 259 => 'L6', 282 => 'M6',
1631
+ 191 => 'I7', 214 => 'J7', 237 => 'K7', 260 => 'L7', 283 => 'M7',
1632
+ 192 => 'I8', 215 => 'J8', 238 => 'K8', 261 => 'L8', 284 => 'M8',
1633
+ 193 => 'I9', 216 => 'J9', 239 => 'K9', 262 => 'L9', 285 => 'M9',
1634
+ 194 => 'I10', 217 => 'J10', 240 => 'K10', 263 => 'L10', 286 => 'M10',
1635
+ 195 => 'I11', 218 => 'J11', 241 => 'K11', 264 => 'L11', 287 => 'M11',
1636
+ 196 => 'I12', 219 => 'J12', 242 => 'K12', 265 => 'L12', 288 => 'M12',
1637
+ 197 => 'I13', 220 => 'J13', 243 => 'K13', 266 => 'L13', 289 => 'M13',
1638
+ 198 => 'I14', 221 => 'J14', 244 => 'K14', 267 => 'L14', 290 => 'M14',
1639
+ 199 => 'I15', 222 => 'J15', 245 => 'K15', 268 => 'L15', 291 => 'M15',
1640
+ 200 => 'I16', 223 => 'J16', 246 => 'K16', 269 => 'L16', 292 => 'M16',
1641
+ 201 => 'I17', 224 => 'J17', 247 => 'K17', 270 => 'L17', 293 => 'M17',
1642
+ 202 => 'I18', 225 => 'J18', 248 => 'K18', 271 => 'L18', 294 => 'M18',
1643
+ 203 => 'I19', 226 => 'J19', 249 => 'K19', 272 => 'L19', 295 => 'M19',
1644
+ 204 => 'I20', 227 => 'J20', 250 => 'K20', 273 => 'L20', 296 => 'M20',
1645
+ 205 => 'I21', 228 => 'J21', 251 => 'K21', 274 => 'L21', 297 => 'M21',
1646
+ 206 => 'I22', 229 => 'J22', 252 => 'K22', 275 => 'L22', 298 => 'M22',
1647
+ 208 => 'I23', 230 => 'J23', 253 => 'K23', 276 => 'L23', 299 => 'M23',
1648
+ );
1649
+
1650
+ # AF point indices for 493 focus point (single-point AF) cameras equipped with Expeed 7 processor (eg. Z8 and Z9). Single-point AF array is 17 rows x 29 columns (ref 28)
1550
1651
  # - Auto Area AF uses 15 of the 17 rows (A-Q) and 27 of the 29 columns (1-27), center is H14 (405 of the 493 focus points can be used by Auto-area AF)
1551
1652
  #
1552
1653
  my %afPoints493 = (
@@ -1606,6 +1707,7 @@ my %afPoints493 = (
1606
1707
  242 => 'I26', 269 => 'J26', 296 => 'K26', 323 => 'L26', 350 => 'M26', 377 => 'N26', 404 => 'O26',
1607
1708
  243 => 'I27', 270 => 'J27', 297 => 'K27', 324 => 'L27', 351 => 'M27', 378 => 'N27', 405 => 'O27',
1608
1709
  );
1710
+
1609
1711
  my %cropHiSpeed = ( #IB
1610
1712
  0 => 'Off',
1611
1713
  1 => '1.3x Crop', # (1.3x Crop, Large)
@@ -3011,7 +3113,9 @@ my %base64coord = (
3011
3113
  },
3012
3114
  0x00b7 => [{
3013
3115
  Name => 'AFInfo2',
3014
- Condition => '$$self{Model} =~ /^NIKON (Z 8|Z 9)\b/i', #AFInfo2Version 0400
3116
+ # Expeed 7 processor models - Z8 & Z9 (AFInfo2Version 0400), Z6iii & Zf (AFInfo2Version 0401)
3117
+ # and Z50ii (AFInfo2Version 0402)
3118
+ Condition => '$$valPt =~ /^040[012]/',
3015
3119
  SubDirectory => { TagTable => 'Image::ExifTool::Nikon::AFInfo2V0400' },
3016
3120
  },{ #JD
3017
3121
  Name => 'AFInfo2',
@@ -4413,6 +4517,7 @@ my %base64coord = (
4413
4517
  { #PH (Z7)
4414
4518
  Name => 'PrimaryAFPoint',
4415
4519
  Condition => '$$self{PhaseDetectAF} == 8 and $$self{AFInfo2Version} =~ /^03/',
4520
+ PrintConvColumns => 5,
4416
4521
  PrintConv => {
4417
4522
  0 => '(none)',
4418
4523
  %afPoints81,
@@ -4697,10 +4802,14 @@ my %base64coord = (
4697
4802
  },
4698
4803
  );
4699
4804
 
4700
- %Image::ExifTool::Nikon::AFInfo2V0400 = ( #V0400 related fields begin at x'3c' (Z9)
4805
+ %Image::ExifTool::Nikon::AFInfo2V0400 = (
4701
4806
  %binaryDataAttrs,
4702
4807
  GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
4703
- DATAMEMBER => [ 0 ],
4808
+ DATAMEMBER => [ 0, 5 ],
4809
+ NOTES => q{
4810
+ AF information for Nikon cameras with the Expeed 7 processor: The Zf, Z6_3,
4811
+ Z8, Z9 and Z50_3.
4812
+ },
4704
4813
  0 => {
4705
4814
  Name => 'AFInfo2Version',
4706
4815
  Format => 'undef[4]',
@@ -4709,6 +4818,7 @@ my %base64coord = (
4709
4818
  },
4710
4819
  5 => { #28
4711
4820
  Name => 'AFAreaMode', #reflects the mode active when the shutter is tripped, not the position of the Focus Mode button (which is recorded in MenuSettingsZ9 tag also named AfAreaMode)
4821
+ RawConv => '$$self{AFAreaModeUsed} = $val',
4712
4822
  PrintConv => {
4713
4823
  192 => 'Pinpoint',
4714
4824
  193 => 'Single',
@@ -4722,15 +4832,34 @@ my %base64coord = (
4722
4832
  208 => 'Wide (C1/C2)',
4723
4833
  },
4724
4834
  },
4725
- 10 => {
4726
- Name => 'AFPointsUsed',
4727
- Condition => 'defined $$self{AFAreaMode} and $$self{AFAreaMode} == 6', #only valid for Auto AF Area mode. Other modes handled via AFAreaXPosition/AFAreaYPosition
4728
- Format => 'undef[51]',
4729
- ValueConv => 'join(" ", unpack("H2"x51, $val))',
4730
- ValueConvInv => '$val=~tr/ //d; pack("H*",$val)',
4731
- PrintConv => sub { PrintAFPoints(shift, \%afPoints493); },
4732
- PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints493); },
4733
- },
4835
+ 10 => [{
4836
+ # valid only for AFAreaModes where the camera selects the focus point (i.e., AutoArea & 3D-Tracking)
4837
+ # and the camera has yet to determine a focus target (in these cases tags AFAreaXPosition and AFAreaYPosition will be zeroes)
4838
+ Name => 'AFPointsUsed', # Z8 and Z9 (AFInfo2Version 0400)
4839
+ Condition => '$$self{Model} =~ /^NIKON (Z 8|Z 9)\b/i and ($$self{AFAreaModeUsed} == 197 or $$self{AFAreaModeUsed} == 207)',
4840
+ Format => 'undef[51]',
4841
+ Notes => 'either AFPointsUsed or AFAreaX/YPosition will be set, but not both',
4842
+ ValueConv => 'join(" ", unpack("H2"x51, $val))',
4843
+ ValueConvInv => '$val=~tr/ //d; pack("H*",$val)',
4844
+ PrintConv => sub { PrintAFPoints(shift, \%afPoints493); },
4845
+ PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints493); },
4846
+ },{
4847
+ Name => 'AFPointsUsed', # Z6iii and Zf (AFInfo2Version 0401)
4848
+ Condition => '$$self{Model} =~ /^NIKON (Z6_3|Z f)\b/i and ($$self{AFAreaModeUsed} == 197 or $$self{AFAreaModeUsed} == 207)',
4849
+ Format => 'undef[35]',
4850
+ ValueConv => 'join(" ", unpack("H2"x35, $val))',
4851
+ ValueConvInv => '$val=~tr/ //d; pack("H*",$val)',
4852
+ PrintConv => sub { PrintAFPoints(shift, \%afPoints273); },
4853
+ PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints273); },
4854
+ },{
4855
+ Name => 'AFPointsUsed', # Z50ii (AFInfo2Version 0402)
4856
+ Condition => '$$self{Model} =~ /^NIKON Z50_2\b/i and ($$self{AFAreaModeUsed} == 197 or $$self{AFAreaModeUsed} == 207)',
4857
+ Format => 'undef[27]',
4858
+ ValueConv => 'join(" ", unpack("H2"x27, $val))',
4859
+ ValueConvInv => '$val=~tr/ //d; pack("H*",$val)',
4860
+ PrintConv => sub { PrintAFPoints(shift, \%afPoints209); },
4861
+ PrintConvInv => sub { PrintAFPointsInv(shift, \%afPoints209); },
4862
+ }],
4734
4863
  0x3e => {
4735
4864
  Name => 'AFImageWidth',
4736
4865
  Format => 'int16u',
@@ -4744,27 +4873,27 @@ my %base64coord = (
4744
4873
  Format => 'int16u', # (decodes same byte as 0x43)
4745
4874
  RawConv => '$val ? $val : undef',
4746
4875
  },
4747
- 0x43 => {
4748
- Name => 'FocusPositionHorizontal',
4749
- Notes => q{
4750
- the focus points form a 29x17 grid, but the X,Y coordinate values run from 1,1
4751
- to 30,19. The horizontal coordinate 11R (5) and the vertical coordinates 6U
4752
- (4) and 2D (12) are not used for some reason
4753
- },
4754
- # 493 focus points for Z9 fall in a 30x19 grid
4755
- # (the 11R (5) position is not used, for a total of 29 columns, ref AlbertShan email)
4756
- PrintConv => sub { my ($val) = @_; PrintAFPointsLeftRight($val, 29); },
4757
- },
4876
+ #0x43 => {
4877
+ # Name => 'FocusPositionHorizontal',
4878
+ # Notes => q{
4879
+ # the focus points form a 29x17 grid, but the X,Y coordinate values run from 1,1
4880
+ # to 30,19. The horizontal coordinate 11R (5) and the vertical coordinates 6U
4881
+ # (4) and 2D (12) are not used for some reason
4882
+ # },
4883
+ # # 493 focus points for Z9 fall in a 30x19 grid
4884
+ # # (the 11R (5) position is not used, for a total of 29 columns, ref AlbertShan email)
4885
+ # PrintConv => sub { my ($val) = @_; PrintAFPointsLeftRight($val, 29); },
4886
+ #},
4758
4887
  0x44 => { #28
4759
4888
  Name => 'AFAreaYPosition',
4760
4889
  Format => 'int16u', # (decodes same byte as 0x45)
4761
4890
  RawConv => '$val ? $val : undef',
4762
4891
  },
4763
- 0x45 => {
4764
- Name => 'FocusPositionVertical',
4765
- # (the 6U (4) and 2D (12) are not used, for a total of 17 rows, ref AlbertShan email)
4766
- PrintConv => sub { my ($val) = @_; PrintAFPointsUpDown($val, 17); },
4767
- },
4892
+ #0x45 => {
4893
+ # Name => 'FocusPositionVertical',
4894
+ # # (the 6U (4) and 2D (12) are not used, for a total of 17 rows, ref AlbertShan email)
4895
+ # PrintConv => sub { my ($val) = @_; PrintAFPointsUpDown($val, 17); },
4896
+ #},
4768
4897
  0x46 => {
4769
4898
  Name => 'AFAreaWidth',
4770
4899
  Format => 'int16u',
@@ -5587,9 +5716,9 @@ my %nikonFocalConversions = (
5587
5716
  },
5588
5717
  },
5589
5718
  0x34 => { #28
5590
- Name => 'LensFirmwareVersion',
5719
+ Name => 'LensFirmwareVersion',
5591
5720
  Condition => '$$self{LensID} and $$self{LensID} != 0', #only valid for Z-mount lenses
5592
- Format => 'int16u', #4 bits each for version, release amd modification in VRM scheme.
5721
+ Format => 'int16u', #4 bits each for version, release amd modification in VRM scheme.
5593
5722
  PrintConv => q{
5594
5723
  my $version = int($val / 256);
5595
5724
  my $release = int(($val - 256 * $version)/16);
@@ -8395,7 +8524,7 @@ my %nikonFocalConversions = (
8395
8524
  TagTable => 'Image::ExifTool::Nikon::MenuSettingsZ6III',
8396
8525
  Start => '$val',
8397
8526
  },
8398
- },
8527
+ },
8399
8528
  );
8400
8529
 
8401
8530
  # shot information for the Z7II firmware 1.00 (encrypted) - ref 28
@@ -9191,7 +9320,7 @@ my %nikonFocalConversions = (
9191
9320
  720 => { Name => 'FlickerReductionShooting',PrintConv => \%offOn },
9192
9321
  722 => { Name => 'NikonMeteringMode', PrintConv => \%meteringModeZ7},
9193
9322
  724 => {
9194
- Name => 'FlashControlMode',
9323
+ Name => 'FlashControlMode',
9195
9324
  RawConv => '$$self{FlashControlMode} = $val',
9196
9325
  PrintConv => \%flashControlModeZ7,
9197
9326
  },
@@ -14091,7 +14220,7 @@ Nikon maker notes in EXIF information.
14091
14220
 
14092
14221
  =head1 AUTHOR
14093
14222
 
14094
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
14223
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
14095
14224
 
14096
14225
  This library is free software; you can redistribute it and/or modify it
14097
14226
  under the same terms as Perl itself.
@@ -918,7 +918,7 @@ the maker notes of NEF images.
918
918
 
919
919
  =head1 AUTHOR
920
920
 
921
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
921
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
922
922
 
923
923
  This library is free software; you can redistribute it and/or modify it
924
924
  under the same terms as Perl itself.
@@ -11362,7 +11362,7 @@ this information.
11362
11362
 
11363
11363
  =head1 AUTHOR
11364
11364
 
11365
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
11365
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
11366
11366
 
11367
11367
  This library is free software; you can redistribute it and/or modify it
11368
11368
  under the same terms as Perl itself.
@@ -2132,7 +2132,7 @@ Nikon cameras such as the D6 and Z7mk2.
2132
2132
 
2133
2133
  =head1 AUTHOR
2134
2134
 
2135
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
2135
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
2136
2136
 
2137
2137
  This library is free software; you can redistribute it and/or modify it
2138
2138
  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-2024, Phil Harvey (philharvey66 at gmail.com)
110
+ Copyright 2003-2025, 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-2024, Phil Harvey (philharvey66 at gmail.com)
398
+ Copyright 2003-2025, 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.
@@ -215,7 +215,7 @@ information from Ogg bitstream container files.
215
215
 
216
216
  =head1 AUTHOR
217
217
 
218
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
218
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
219
219
 
220
220
  This library is free software; you can redistribute it and/or modify it
221
221
  under the same terms as Perl itself.
@@ -4194,7 +4194,7 @@ Olympus or Epson maker notes in EXIF information.
4194
4194
 
4195
4195
  =head1 AUTHOR
4196
4196
 
4197
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
4197
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
4198
4198
 
4199
4199
  This library is free software; you can redistribute it and/or modify it
4200
4200
  under the same terms as Perl itself.
@@ -341,7 +341,7 @@ information from OpenEXR images.
341
341
 
342
342
  =head1 AUTHOR
343
343
 
344
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
344
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
345
345
 
346
346
  This library is free software; you can redistribute it and/or modify it
347
347
  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-2024, Phil Harvey (philharvey66 at gmail.com)
72
+ Copyright 2003-2025, 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-2024, Phil Harvey (philharvey66 at gmail.com)
74
+ Copyright 2003-2025, 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-2024, Phil Harvey (philharvey66 at gmail.com)
117
+ Copyright 2003-2025, 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.
@@ -2497,7 +2497,7 @@ and AESV3 (AES-256).
2497
2497
 
2498
2498
  =head1 AUTHOR
2499
2499
 
2500
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
2500
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
2501
2501
 
2502
2502
  This library is free software; you can redistribute it and/or modify it
2503
2503
  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-2024, Phil Harvey (philharvey66 at gmail.com)
122
+ Copyright 2003-2025, 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-2024, Phil Harvey (philharvey66 at gmail.com)
1239
+ Copyright 2003-2025, 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.
@@ -450,7 +450,7 @@ This module decodes both the binary and XML-based PLIST format.
450
450
 
451
451
  =head1 AUTHOR
452
452
 
453
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
453
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
454
454
 
455
455
  This library is free software; you can redistribute it and/or modify it
456
456
  under the same terms as Perl itself.
@@ -2601,7 +2601,7 @@ Definitions for PLUS (Picture Licensing Universal System) tags.
2601
2601
 
2602
2602
  =head1 AUTHOR
2603
2603
 
2604
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
2604
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
2605
2605
 
2606
2606
  This library is free software; you can redistribute it and/or modify it
2607
2607
  under the same terms as Perl itself.
@@ -1698,7 +1698,7 @@ and JNG (JPEG Network Graphics) images.
1698
1698
 
1699
1699
  =head1 AUTHOR
1700
1700
 
1701
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
1701
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
1702
1702
 
1703
1703
  This library is free software; you can redistribute it and/or modify it
1704
1704
  under the same terms as Perl itself.
@@ -152,7 +152,7 @@ BitMap) images.
152
152
 
153
153
  =head1 AUTHOR
154
154
 
155
- Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
155
+ Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
156
156
 
157
157
  This library is free software; you can redistribute it and/or modify it
158
158
  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-2024, Phil Harvey (philharvey66 at gmail.com)
287
+ Copyright 2003-2025, 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-2024, Phil Harvey (philharvey66 at gmail.com)
382
+ Copyright 2003-2025, 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.