exiftool_vendored 13.10.0 → 13.12.0

Sign up to get free protection for your applications and to get access to all the features.
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.