exiftool_vendored 13.45.0 → 13.46.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.
- checksums.yaml +4 -4
- data/bin/Changes +19 -1
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +3 -3
- data/bin/exiftool +8 -7
- data/bin/lib/File/RandomAccess.pm +1 -1
- data/bin/lib/File/RandomAccess.pod +2 -2
- data/bin/lib/Image/ExifTool/AAC.pm +1 -1
- data/bin/lib/Image/ExifTool/AES.pm +1 -1
- data/bin/lib/Image/ExifTool/AFCP.pm +1 -1
- data/bin/lib/Image/ExifTool/AIFF.pm +1 -1
- data/bin/lib/Image/ExifTool/APE.pm +1 -1
- data/bin/lib/Image/ExifTool/APP12.pm +1 -1
- data/bin/lib/Image/ExifTool/ASF.pm +1 -1
- data/bin/lib/Image/ExifTool/Apple.pm +1 -1
- data/bin/lib/Image/ExifTool/Audible.pm +1 -1
- data/bin/lib/Image/ExifTool/BMP.pm +1 -1
- data/bin/lib/Image/ExifTool/BPG.pm +1 -1
- data/bin/lib/Image/ExifTool/BZZ.pm +1 -1
- data/bin/lib/Image/ExifTool/BigTIFF.pm +1 -1
- data/bin/lib/Image/ExifTool/BuildTagLookup.pm +2 -2
- data/bin/lib/Image/ExifTool/CBOR.pm +1 -1
- data/bin/lib/Image/ExifTool/Canon.pm +52 -11
- data/bin/lib/Image/ExifTool/CanonCustom.pm +1 -1
- data/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
- data/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
- data/bin/lib/Image/ExifTool/Casio.pm +1 -1
- data/bin/lib/Image/ExifTool/Charset.pm +1 -1
- data/bin/lib/Image/ExifTool/DICOM.pm +1 -1
- data/bin/lib/Image/ExifTool/DJI.pm +1 -1
- data/bin/lib/Image/ExifTool/DNG.pm +1 -1
- data/bin/lib/Image/ExifTool/DPX.pm +1 -1
- data/bin/lib/Image/ExifTool/DSF.pm +1 -1
- data/bin/lib/Image/ExifTool/DV.pm +1 -1
- data/bin/lib/Image/ExifTool/DarwinCore.pm +1 -1
- data/bin/lib/Image/ExifTool/DjVu.pm +1 -1
- data/bin/lib/Image/ExifTool/EXE.pm +1 -1
- data/bin/lib/Image/ExifTool/Exif.pm +4 -3
- data/bin/lib/Image/ExifTool/FITS.pm +1 -1
- data/bin/lib/Image/ExifTool/FLAC.pm +1 -1
- data/bin/lib/Image/ExifTool/FLIF.pm +1 -1
- data/bin/lib/Image/ExifTool/FLIR.pm +1 -1
- data/bin/lib/Image/ExifTool/Fixup.pm +1 -1
- data/bin/lib/Image/ExifTool/Flash.pm +1 -1
- data/bin/lib/Image/ExifTool/FlashPix.pm +1 -1
- data/bin/lib/Image/ExifTool/Font.pm +1 -1
- data/bin/lib/Image/ExifTool/FotoStation.pm +1 -1
- data/bin/lib/Image/ExifTool/FujiFilm.pm +1 -1
- data/bin/lib/Image/ExifTool/GE.pm +1 -1
- data/bin/lib/Image/ExifTool/GIF.pm +1 -1
- data/bin/lib/Image/ExifTool/GIMP.pm +1 -1
- data/bin/lib/Image/ExifTool/GM.pm +1 -1
- data/bin/lib/Image/ExifTool/GPS.pm +1 -1
- data/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- data/bin/lib/Image/ExifTool/Geolocation.pm +1 -1
- data/bin/lib/Image/ExifTool/Geotag.pm +60 -19
- data/bin/lib/Image/ExifTool/GoPro.pm +1 -1
- data/bin/lib/Image/ExifTool/Google.pm +3 -2
- data/bin/lib/Image/ExifTool/H264.pm +1 -1
- data/bin/lib/Image/ExifTool/HP.pm +1 -1
- data/bin/lib/Image/ExifTool/HTML.pm +1 -1
- data/bin/lib/Image/ExifTool/HtmlDump.pm +1 -1
- data/bin/lib/Image/ExifTool/ICC_Profile.pm +1 -1
- data/bin/lib/Image/ExifTool/ICO.pm +1 -1
- data/bin/lib/Image/ExifTool/ID3.pm +1 -1
- data/bin/lib/Image/ExifTool/IPTC.pm +1 -1
- data/bin/lib/Image/ExifTool/ISO.pm +1 -1
- data/bin/lib/Image/ExifTool/ITC.pm +1 -1
- data/bin/lib/Image/ExifTool/Import.pm +1 -1
- data/bin/lib/Image/ExifTool/InDesign.pm +1 -1
- data/bin/lib/Image/ExifTool/InfiRay.pm +1 -1
- data/bin/lib/Image/ExifTool/JPEG.pm +1 -1
- data/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
- data/bin/lib/Image/ExifTool/JSON.pm +1 -1
- data/bin/lib/Image/ExifTool/JVC.pm +1 -1
- data/bin/lib/Image/ExifTool/Jpeg2000.pm +1 -1
- data/bin/lib/Image/ExifTool/Kandao.pm +1 -1
- data/bin/lib/Image/ExifTool/Kodak.pm +1 -1
- data/bin/lib/Image/ExifTool/KyoceraRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/LIF.pm +1 -1
- data/bin/lib/Image/ExifTool/LNK.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/cs.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/de.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/en_ca.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/en_gb.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/es.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/fr.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/it.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/ja.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/ko.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/nl.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/pl.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/ru.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/sk.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/sv.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/tr.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/zh_cn.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/zh_tw.pm +1 -1
- data/bin/lib/Image/ExifTool/Leaf.pm +1 -1
- data/bin/lib/Image/ExifTool/LigoGPS.pm +1 -1
- data/bin/lib/Image/ExifTool/Lytro.pm +1 -1
- data/bin/lib/Image/ExifTool/M2TS.pm +1 -1
- data/bin/lib/Image/ExifTool/MIE.pm +1 -1
- data/bin/lib/Image/ExifTool/MIEUnits.pod +1 -1
- data/bin/lib/Image/ExifTool/MIFF.pm +1 -1
- data/bin/lib/Image/ExifTool/MISB.pm +1 -1
- data/bin/lib/Image/ExifTool/MNG.pm +1 -1
- data/bin/lib/Image/ExifTool/MOI.pm +1 -1
- data/bin/lib/Image/ExifTool/MPC.pm +1 -1
- data/bin/lib/Image/ExifTool/MPEG.pm +1 -1
- data/bin/lib/Image/ExifTool/MPF.pm +1 -1
- data/bin/lib/Image/ExifTool/MRC.pm +1 -1
- data/bin/lib/Image/ExifTool/MWG.pm +1 -1
- data/bin/lib/Image/ExifTool/MXF.pm +1 -1
- data/bin/lib/Image/ExifTool/MacOS.pm +1 -1
- data/bin/lib/Image/ExifTool/MakerNotes.pm +4 -2
- data/bin/lib/Image/ExifTool/Matroska.pm +1 -1
- data/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
- data/bin/lib/Image/ExifTool/Minolta.pm +1 -1
- data/bin/lib/Image/ExifTool/MinoltaRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/Motorola.pm +1 -1
- data/bin/lib/Image/ExifTool/Nikon.pm +1 -1
- data/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- data/bin/lib/Image/ExifTool/NikonCustom.pm +1 -1
- data/bin/lib/Image/ExifTool/NikonSettings.pm +1 -1
- data/bin/lib/Image/ExifTool/Nintendo.pm +1 -1
- data/bin/lib/Image/ExifTool/OOXML.pm +1 -1
- data/bin/lib/Image/ExifTool/Ogg.pm +1 -1
- data/bin/lib/Image/ExifTool/Olympus.pm +1 -1
- data/bin/lib/Image/ExifTool/OpenEXR.pm +1 -1
- data/bin/lib/Image/ExifTool/Opus.pm +1 -1
- data/bin/lib/Image/ExifTool/Other.pm +1 -1
- data/bin/lib/Image/ExifTool/PCAP.pm +1 -1
- data/bin/lib/Image/ExifTool/PCX.pm +1 -1
- data/bin/lib/Image/ExifTool/PDF.pm +1 -1
- data/bin/lib/Image/ExifTool/PGF.pm +1 -1
- data/bin/lib/Image/ExifTool/PICT.pm +1 -1
- data/bin/lib/Image/ExifTool/PLIST.pm +1 -1
- data/bin/lib/Image/ExifTool/PLUS.pm +1 -1
- data/bin/lib/Image/ExifTool/PNG.pm +1 -1
- data/bin/lib/Image/ExifTool/PPM.pm +1 -1
- data/bin/lib/Image/ExifTool/PSP.pm +1 -1
- data/bin/lib/Image/ExifTool/Palm.pm +1 -1
- data/bin/lib/Image/ExifTool/Panasonic.pm +7 -2
- data/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/Parrot.pm +1 -1
- data/bin/lib/Image/ExifTool/Pentax.pm +4 -3
- data/bin/lib/Image/ExifTool/PhaseOne.pm +1 -1
- data/bin/lib/Image/ExifTool/PhotoCD.pm +1 -1
- data/bin/lib/Image/ExifTool/PhotoMechanic.pm +1 -1
- data/bin/lib/Image/ExifTool/Photoshop.pm +1 -1
- data/bin/lib/Image/ExifTool/Plot.pm +1 -1
- data/bin/lib/Image/ExifTool/PostScript.pm +1 -1
- data/bin/lib/Image/ExifTool/PrintIM.pm +1 -1
- data/bin/lib/Image/ExifTool/Protobuf.pm +1 -1
- data/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
- data/bin/lib/Image/ExifTool/QuickTime.pm +8 -4
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +1 -1
- data/bin/lib/Image/ExifTool/RIFF.pm +1 -1
- data/bin/lib/Image/ExifTool/RSRC.pm +1 -1
- data/bin/lib/Image/ExifTool/RTF.pm +1 -1
- data/bin/lib/Image/ExifTool/Radiance.pm +1 -1
- data/bin/lib/Image/ExifTool/Rawzor.pm +1 -1
- data/bin/lib/Image/ExifTool/Real.pm +1 -1
- data/bin/lib/Image/ExifTool/Reconyx.pm +1 -1
- data/bin/lib/Image/ExifTool/Red.pm +1 -1
- data/bin/lib/Image/ExifTool/Ricoh.pm +1 -1
- data/bin/lib/Image/ExifTool/Samsung.pm +1 -1
- data/bin/lib/Image/ExifTool/Sanyo.pm +1 -1
- data/bin/lib/Image/ExifTool/Scalado.pm +1 -1
- data/bin/lib/Image/ExifTool/Shift.pl +1 -1
- data/bin/lib/Image/ExifTool/Shortcuts.pm +1 -1
- data/bin/lib/Image/ExifTool/Sigma.pm +1 -1
- data/bin/lib/Image/ExifTool/SigmaRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/Sony.pm +1 -1
- data/bin/lib/Image/ExifTool/SonyIDC.pm +1 -1
- data/bin/lib/Image/ExifTool/Stim.pm +1 -1
- data/bin/lib/Image/ExifTool/TNEF.pm +1 -1
- data/bin/lib/Image/ExifTool/TagInfoXML.pm +2 -2
- data/bin/lib/Image/ExifTool/TagLookup.pm +6976 -6967
- data/bin/lib/Image/ExifTool/TagNames.pod +19 -4
- data/bin/lib/Image/ExifTool/Text.pm +1 -1
- data/bin/lib/Image/ExifTool/Theora.pm +1 -1
- data/bin/lib/Image/ExifTool/Torrent.pm +1 -1
- data/bin/lib/Image/ExifTool/Trailer.pm +1 -1
- data/bin/lib/Image/ExifTool/Unknown.pm +1 -1
- data/bin/lib/Image/ExifTool/VCard.pm +1 -1
- data/bin/lib/Image/ExifTool/Validate.pm +5 -5
- data/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
- data/bin/lib/Image/ExifTool/WPG.pm +1 -1
- data/bin/lib/Image/ExifTool/WTV.pm +1 -1
- data/bin/lib/Image/ExifTool/WavPack.pm +1 -1
- data/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteExif.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePDF.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePNG.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePhotoshop.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePostScript.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteQuickTime.pl +8 -4
- data/bin/lib/Image/ExifTool/WriteRIFF.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteXMP.pl +1 -1
- data/bin/lib/Image/ExifTool/Writer.pl +1 -1
- data/bin/lib/Image/ExifTool/XISF.pm +1 -1
- data/bin/lib/Image/ExifTool/XMP.pm +1 -1
- data/bin/lib/Image/ExifTool/XMP2.pl +1 -1
- data/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
- data/bin/lib/Image/ExifTool/ZIP.pm +1 -1
- data/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
- data/bin/lib/Image/ExifTool/iWork.pm +1 -1
- data/bin/lib/Image/ExifTool.pm +7 -5
- data/bin/lib/Image/ExifTool.pod +11 -2
- data/bin/perl-Image-ExifTool.spec +1 -1
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +1 -1
|
@@ -329,7 +329,7 @@ meta information in FLIF (Free Lossless Image Format) images.
|
|
|
329
329
|
|
|
330
330
|
=head1 AUTHOR
|
|
331
331
|
|
|
332
|
-
Copyright 2003-
|
|
332
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
333
333
|
|
|
334
334
|
This library is free software; you can redistribute it and/or modify it
|
|
335
335
|
under the same terms as Perl itself.
|
|
@@ -1633,7 +1633,7 @@ Systems Inc. thermal image files (FFF, FPF and JPEG format).
|
|
|
1633
1633
|
|
|
1634
1634
|
=head1 AUTHOR
|
|
1635
1635
|
|
|
1636
|
-
Copyright 2003-
|
|
1636
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
1637
1637
|
|
|
1638
1638
|
This library is free software; you can redistribute it and/or modify it
|
|
1639
1639
|
under the same terms as Perl itself.
|
|
@@ -354,7 +354,7 @@ linear list when ApplyFixups() is called.
|
|
|
354
354
|
|
|
355
355
|
=head1 AUTHOR
|
|
356
356
|
|
|
357
|
-
Copyright 2003-
|
|
357
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
358
358
|
|
|
359
359
|
This library is free software; you can redistribute it and/or modify it
|
|
360
360
|
under the same terms as Perl itself.
|
|
@@ -721,7 +721,7 @@ will add AMF3 support.
|
|
|
721
721
|
|
|
722
722
|
=head1 AUTHOR
|
|
723
723
|
|
|
724
|
-
Copyright 2003-
|
|
724
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
725
725
|
|
|
726
726
|
This library is free software; you can redistribute it and/or modify it
|
|
727
727
|
under the same terms as Perl itself.
|
|
@@ -2402,7 +2402,7 @@ JPEG images.
|
|
|
2402
2402
|
|
|
2403
2403
|
=head1 AUTHOR
|
|
2404
2404
|
|
|
2405
|
-
Copyright 2003-
|
|
2405
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
2406
2406
|
|
|
2407
2407
|
This library is free software; you can redistribute it and/or modify it
|
|
2408
2408
|
under the same terms as Perl itself.
|
|
@@ -896,7 +896,7 @@ WOFF2.
|
|
|
896
896
|
|
|
897
897
|
=head1 AUTHOR
|
|
898
898
|
|
|
899
|
-
Copyright 2003-
|
|
899
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
900
900
|
|
|
901
901
|
This library is free software; you can redistribute it and/or modify it
|
|
902
902
|
under the same terms as Perl itself.
|
|
@@ -243,7 +243,7 @@ write information from the FotoWare FotoStation trailer.
|
|
|
243
243
|
|
|
244
244
|
=head1 AUTHOR
|
|
245
245
|
|
|
246
|
-
Copyright 2003-
|
|
246
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
247
247
|
|
|
248
248
|
This library is free software; you can redistribute it and/or modify it
|
|
249
249
|
under the same terms as Perl itself.
|
|
@@ -2029,7 +2029,7 @@ FujiFilm maker notes in EXIF information, and to read/write FujiFilm RAW
|
|
|
2029
2029
|
|
|
2030
2030
|
=head1 AUTHOR
|
|
2031
2031
|
|
|
2032
|
-
Copyright 2003-
|
|
2032
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
2033
2033
|
|
|
2034
2034
|
This library is free software; you can redistribute it and/or modify it
|
|
2035
2035
|
under the same terms as Perl itself.
|
|
@@ -68,7 +68,7 @@ General Imaging maker notes.
|
|
|
68
68
|
|
|
69
69
|
=head1 AUTHOR
|
|
70
70
|
|
|
71
|
-
Copyright 2003-
|
|
71
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
72
72
|
|
|
73
73
|
This library is free software; you can redistribute it and/or modify it
|
|
74
74
|
under the same terms as Perl itself.
|
|
@@ -596,7 +596,7 @@ write GIF meta information.
|
|
|
596
596
|
|
|
597
597
|
=head1 AUTHOR
|
|
598
598
|
|
|
599
|
-
Copyright 2003-
|
|
599
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
600
600
|
|
|
601
601
|
This library is free software; you can redistribute it and/or modify it
|
|
602
602
|
under the same terms as Perl itself.
|
|
@@ -270,7 +270,7 @@ GIMP software.
|
|
|
270
270
|
|
|
271
271
|
=head1 AUTHOR
|
|
272
272
|
|
|
273
|
-
Copyright 2003-
|
|
273
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
274
274
|
|
|
275
275
|
This library is free software; you can redistribute it and/or modify it
|
|
276
276
|
under the same terms as Perl itself.
|
|
@@ -531,7 +531,7 @@ metadata from videos written by some GM models such as Corvette and Camero.
|
|
|
531
531
|
|
|
532
532
|
=head1 AUTHOR
|
|
533
533
|
|
|
534
|
-
Copyright 2003-
|
|
534
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
535
535
|
|
|
536
536
|
This library is free software; you can redistribute it and/or modify it
|
|
537
537
|
under the same terms as Perl itself.
|
|
@@ -619,7 +619,7 @@ GPS (Global Positioning System) meta information in EXIF data.
|
|
|
619
619
|
|
|
620
620
|
=head1 AUTHOR
|
|
621
621
|
|
|
622
|
-
Copyright 2003-
|
|
622
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
623
623
|
|
|
624
624
|
This library is free software; you can redistribute it and/or modify it
|
|
625
625
|
under the same terms as Perl itself.
|
|
@@ -2242,7 +2242,7 @@ coordinates.
|
|
|
2242
2242
|
|
|
2243
2243
|
=head1 AUTHOR
|
|
2244
2244
|
|
|
2245
|
-
Copyright 2003-
|
|
2245
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
2246
2246
|
|
|
2247
2247
|
This library is free software; you can redistribute it and/or modify it
|
|
2248
2248
|
under the same terms as Perl itself.
|
|
@@ -1020,7 +1020,7 @@ the input arguments of the AddEntry method.
|
|
|
1020
1020
|
|
|
1021
1021
|
=head1 AUTHOR
|
|
1022
1022
|
|
|
1023
|
-
Copyright 2003-
|
|
1023
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
1024
1024
|
|
|
1025
1025
|
This library is free software; you can redistribute it and/or modify it
|
|
1026
1026
|
under the same terms as Perl itself. The associated database files are
|
|
@@ -21,6 +21,7 @@
|
|
|
21
21
|
# 2024/11/05 - PH Added support for Google Maps "Export timeline data"
|
|
22
22
|
# JSON format
|
|
23
23
|
# 2025/09/22 - PH Added ability to read Columbus CSV log files
|
|
24
|
+
# 2026/01/24 - PH Added GeoUserTag feature
|
|
24
25
|
#
|
|
25
26
|
# References: 1) http://www.topografix.com/GPX/1/1/
|
|
26
27
|
# 2) http://www.gpsinformation.org/dale/nmea.htm#GSA
|
|
@@ -35,7 +36,7 @@ use vars qw($VERSION);
|
|
|
35
36
|
use Image::ExifTool qw(:Public);
|
|
36
37
|
use Image::ExifTool::GPS;
|
|
37
38
|
|
|
38
|
-
$VERSION = '1.
|
|
39
|
+
$VERSION = '1.85';
|
|
39
40
|
|
|
40
41
|
sub JITTER() { return 2 } # maximum time jitter
|
|
41
42
|
|
|
@@ -43,6 +44,7 @@ sub GetTime($);
|
|
|
43
44
|
sub SetGeoValues($$;$);
|
|
44
45
|
sub PrintFixTime($);
|
|
45
46
|
sub PrintFix($@);
|
|
47
|
+
sub InitUserTags($);
|
|
46
48
|
|
|
47
49
|
# XML tags that we recognize (keys are forced to lower case)
|
|
48
50
|
my %xmlTag = (
|
|
@@ -82,6 +84,8 @@ my %xmlTag = (
|
|
|
82
84
|
placemark => '', # KML
|
|
83
85
|
);
|
|
84
86
|
|
|
87
|
+
my %userTag; # user-defined XML tags
|
|
88
|
+
|
|
85
89
|
# fix information keys which must be interpolated around a circle
|
|
86
90
|
my %cyclical = (lon => 1, track => 1, dir => 1, pitch => 1, roll => 1);
|
|
87
91
|
my %cyc180 = (lon => 1, pitch => 1, roll => 1); # wraps from 180 to -180
|
|
@@ -174,6 +178,8 @@ sub LoadTrackLog($$;$)
|
|
|
174
178
|
unless (eval { require Time::Local }) {
|
|
175
179
|
return 'Geotag feature requires Time::Local installed';
|
|
176
180
|
}
|
|
181
|
+
InitUserTags($et);
|
|
182
|
+
|
|
177
183
|
# add data to existing track
|
|
178
184
|
my $geotag = $et->GetNewValue('Geotag') || { };
|
|
179
185
|
|
|
@@ -357,16 +363,24 @@ sub LoadTrackLog($$;$)
|
|
|
357
363
|
# XML format (GPX, KML, Garmin XML/TCX etc)
|
|
358
364
|
#
|
|
359
365
|
if ($format eq 'XML') {
|
|
360
|
-
my ($arg, $tok, $td);
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
+
my (@args, $arg, $tok, $td, $value);
|
|
367
|
+
if (/^([^<]+<\/[^>]+>)/) {
|
|
368
|
+
# handle simple property
|
|
369
|
+
s/^\s+</</; # remove whitespace if only whitespace before "<"
|
|
370
|
+
# Workaround for KML generated by Google Location History:
|
|
371
|
+
# lat/lon/alt are space-separated; we want commas.
|
|
372
|
+
s{(\S+)\s+(\S+)\s+(\S+)(</gx:coord>)}{$1,$2,$3$4};
|
|
373
|
+
push @args, $_;
|
|
374
|
+
} else {
|
|
375
|
+
# handle property with attributes
|
|
376
|
+
s/\s*=\s*(['"])\s*/=$1/g; # remove unnecessary white space in attributes
|
|
377
|
+
push @args, split;
|
|
378
|
+
}
|
|
379
|
+
foreach $arg (@args) {
|
|
366
380
|
# parse attributes (eg. GPX 'lat' and 'lon')
|
|
367
381
|
# (note: ignore namespace prefixes if they exist)
|
|
368
382
|
if ($arg =~ /^(\w+:)?(\w+)=(['"])(.*?)\3/g) {
|
|
369
|
-
my $tag = $xmlTag{lc $2};
|
|
383
|
+
my $tag = $xmlTag{lc $2} || $userTag{lc $2};
|
|
370
384
|
if ($tag) {
|
|
371
385
|
$$fix{$tag} = $4;
|
|
372
386
|
if ($keyCategory{$tag}) {
|
|
@@ -382,7 +396,8 @@ sub LoadTrackLog($$;$)
|
|
|
382
396
|
}
|
|
383
397
|
# loop through XML elements
|
|
384
398
|
while ($arg =~ m{([^<>]*)<(/)?(\w+:)?(\w+)(>|$)}g) {
|
|
385
|
-
|
|
399
|
+
$tok = lc $4;
|
|
400
|
+
my $tag = $xmlTag{$tok} || $userTag{$tok};
|
|
386
401
|
# parse as a simple property if this element has a value
|
|
387
402
|
if (defined $tag and not $tag) {
|
|
388
403
|
# a containing property was opened or closed
|
|
@@ -1137,20 +1152,20 @@ sub SetGeoValues($$;$)
|
|
|
1137
1152
|
my $p1 = $$points{$t1};
|
|
1138
1153
|
# check to see if we are extrapolating before the first entry in a track
|
|
1139
1154
|
my $maxSecs = ($$p1{first} and $geoMaxIntSecs) ? $geoMaxExtSecs : $geoMaxIntSecs;
|
|
1155
|
+
my $tn; # find time of nearest fix
|
|
1156
|
+
if ($time - $t0 < $t1 - $time) {
|
|
1157
|
+
$tn = $t0;
|
|
1158
|
+
$iExt = $i0;
|
|
1159
|
+
} else {
|
|
1160
|
+
$tn = $t1;
|
|
1161
|
+
$iExt = $i1;
|
|
1162
|
+
}
|
|
1140
1163
|
# don't interpolate if fixes are too far apart
|
|
1141
1164
|
# (but always interpolate fixes inside the same TimeSpan)
|
|
1142
1165
|
if ($t1 - $t0 > $maxSecs and (not $$p1{span} or not $$points{$t0}{span} or
|
|
1143
1166
|
$$p1{span} != $$points{$t0}{span}))
|
|
1144
1167
|
{
|
|
1145
1168
|
# treat as an extrapolation -- use nearest fix if close enough
|
|
1146
|
-
my $tn;
|
|
1147
|
-
if ($time - $t0 < $t1 - $time) {
|
|
1148
|
-
$tn = $t0;
|
|
1149
|
-
$iExt = $i0;
|
|
1150
|
-
} else {
|
|
1151
|
-
$tn = $t1;
|
|
1152
|
-
$iExt = $i1;
|
|
1153
|
-
}
|
|
1154
1169
|
if (abs($time - $tn) > $geoMaxExtSecs) {
|
|
1155
1170
|
$err or $err = 'Time is too far from nearest GPS fix';
|
|
1156
1171
|
$et->VPrint(2, ' Nearest fix: ', PrintFixTime($tn), ' (',
|
|
@@ -1167,6 +1182,8 @@ sub SetGeoValues($$;$)
|
|
|
1167
1182
|
$et->VPrint(2, " Interpolating between fixes (f=$f0):\n",
|
|
1168
1183
|
PrintFix($points, $t0, $t1)) if $verbose > 2;
|
|
1169
1184
|
$fix = { };
|
|
1185
|
+
# copy user-defined tags from nearest fix
|
|
1186
|
+
$$fix{$_} = $$points{$tn}{$_} foreach values %userTag;
|
|
1170
1187
|
# loop through available fix information categories
|
|
1171
1188
|
# (pos, track, alt, orient)
|
|
1172
1189
|
my ($category, $key);
|
|
@@ -1379,11 +1396,19 @@ Category: foreach $category (qw{pos track alt orient atemp err dop}) {
|
|
|
1379
1396
|
unless ($exif) {
|
|
1380
1397
|
@r = $et->SetNewValue(GPSDateTime => "$gpsDate $gpsTime", %opts);
|
|
1381
1398
|
}
|
|
1399
|
+
# set user-defined tags
|
|
1400
|
+
foreach (sort values %userTag) {
|
|
1401
|
+
@r = $et->SetNewValue(substr($_, 1) => $$fix{$_}) if defined $$fix{$_};
|
|
1402
|
+
}
|
|
1382
1403
|
} else {
|
|
1383
1404
|
my %opts = ( IgnorePermanent => 1 );
|
|
1384
1405
|
$opts{Replace} = 2 if defined $val; # remove existing new values
|
|
1406
|
+
# reset user-defined GPX tags
|
|
1407
|
+
InitUserTags($et); # (won't be set yet because we didn't read a GPX file)
|
|
1408
|
+
foreach (values %userTag) {
|
|
1409
|
+
my @r = $et->SetNewValue(substr($_, 1), undef, %opts);
|
|
1410
|
+
}
|
|
1385
1411
|
$opts{Group} = $writeGroup if $writeGroup;
|
|
1386
|
-
|
|
1387
1412
|
# reset any GPS values we might have already set
|
|
1388
1413
|
foreach (qw(GPSLatitude GPSLatitudeRef GPSLongitude GPSLongitudeRef
|
|
1389
1414
|
GPSAltitude GPSAltitudeRef GPSDateStamp GPSTimeStamp GPSDateTime
|
|
@@ -1556,6 +1581,22 @@ sub PrintFix($@)
|
|
|
1556
1581
|
return $str;
|
|
1557
1582
|
}
|
|
1558
1583
|
|
|
1584
|
+
#------------------------------------------------------------------------------
|
|
1585
|
+
# Initialize %userTag for reading user-defined GPX tags
|
|
1586
|
+
# Inputs: 0) ExifTool ref
|
|
1587
|
+
sub InitUserTags($)
|
|
1588
|
+
{
|
|
1589
|
+
my $et = shift;
|
|
1590
|
+
%userTag = ( );
|
|
1591
|
+
if ($$et{OPTIONS}{GeoUserTag}) {
|
|
1592
|
+
foreach (split /\s*,\s*/, $$et{OPTIONS}{GeoUserTag}) {
|
|
1593
|
+
next unless /^(.+)=(.+)$/;
|
|
1594
|
+
$xmlTag{lc $2} and $et->Warn("User-defined GPX tag '${2}' conflicts with existing tag"), next;
|
|
1595
|
+
$userTag{lc $2} = "_$1"; # (leading underline prevents conflicts)
|
|
1596
|
+
}
|
|
1597
|
+
}
|
|
1598
|
+
}
|
|
1599
|
+
|
|
1559
1600
|
#------------------------------------------------------------------------------
|
|
1560
1601
|
1; # end
|
|
1561
1602
|
|
|
@@ -1590,7 +1631,7 @@ user-defined tag GPSRoll, must be active.
|
|
|
1590
1631
|
|
|
1591
1632
|
=head1 AUTHOR
|
|
1592
1633
|
|
|
1593
|
-
Copyright 2003-
|
|
1634
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
1594
1635
|
|
|
1595
1636
|
This library is free software; you can redistribute it and/or modify it
|
|
1596
1637
|
under the same terms as Perl itself.
|
|
@@ -918,7 +918,7 @@ metadata from GoPro MP4 videos.
|
|
|
918
918
|
|
|
919
919
|
=head1 AUTHOR
|
|
920
920
|
|
|
921
|
-
Copyright 2003-
|
|
921
|
+
Copyright 2003-2026, 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.
|
|
@@ -130,7 +130,8 @@ my %sAppInfo = (
|
|
|
130
130
|
NAMESPACE => 'GPano',
|
|
131
131
|
NOTES => q{
|
|
132
132
|
Panorama tags written by Google Photosphere. See
|
|
133
|
-
L<https://developers.google.com/
|
|
133
|
+
L<https://developers.google.com/streetview/spherical-metadata> for the
|
|
134
|
+
specification.
|
|
134
135
|
},
|
|
135
136
|
UsePanoramaViewer => { Writable => 'boolean' },
|
|
136
137
|
CaptureSoftware => { },
|
|
@@ -793,7 +794,7 @@ Google maker notes and write Google XMP tags.
|
|
|
793
794
|
|
|
794
795
|
=head1 AUTHOR
|
|
795
796
|
|
|
796
|
-
Copyright 2003-
|
|
797
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
797
798
|
|
|
798
799
|
This library is free software; you can redistribute it and/or modify it
|
|
799
800
|
under the same terms as Perl itself.
|
|
@@ -1123,7 +1123,7 @@ information from H.264 video streams.
|
|
|
1123
1123
|
|
|
1124
1124
|
=head1 AUTHOR
|
|
1125
1125
|
|
|
1126
|
-
Copyright 2003-
|
|
1126
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
1127
1127
|
|
|
1128
1128
|
This library is free software; you can redistribute it and/or modify it
|
|
1129
1129
|
under the same terms as Perl itself.
|
|
@@ -250,7 +250,7 @@ Hewlett-Packard maker notes.
|
|
|
250
250
|
|
|
251
251
|
=head1 AUTHOR
|
|
252
252
|
|
|
253
|
-
Copyright 2003-
|
|
253
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
254
254
|
|
|
255
255
|
This library is free software; you can redistribute it and/or modify it
|
|
256
256
|
under the same terms as Perl itself.
|
|
@@ -555,7 +555,7 @@ meta information from HTML documents.
|
|
|
555
555
|
|
|
556
556
|
=head1 AUTHOR
|
|
557
557
|
|
|
558
|
-
Copyright 2003-
|
|
558
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
559
559
|
|
|
560
560
|
This library is free software; you can redistribute it and/or modify it
|
|
561
561
|
under the same terms as Perl itself.
|
|
@@ -920,7 +920,7 @@ page.
|
|
|
920
920
|
|
|
921
921
|
=head1 AUTHOR
|
|
922
922
|
|
|
923
|
-
Copyright 2003-
|
|
923
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
924
924
|
|
|
925
925
|
This library is free software; you can redistribute it and/or modify it
|
|
926
926
|
under the same terms as Perl itself.
|
|
@@ -1437,7 +1437,7 @@ data created on one device into another device's native color space.
|
|
|
1437
1437
|
|
|
1438
1438
|
=head1 AUTHOR
|
|
1439
1439
|
|
|
1440
|
-
Copyright 2003-
|
|
1440
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
1441
1441
|
|
|
1442
1442
|
This library is free software; you can redistribute it and/or modify it
|
|
1443
1443
|
under the same terms as Perl itself.
|
|
@@ -121,7 +121,7 @@ information from Windows ICO (icon) and CUR (cursor) files.
|
|
|
121
121
|
|
|
122
122
|
=head1 AUTHOR
|
|
123
123
|
|
|
124
|
-
Copyright 2003-
|
|
124
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
125
125
|
|
|
126
126
|
This library is free software; you can redistribute it and/or modify it
|
|
127
127
|
under the same terms as Perl itself.
|
|
@@ -1747,7 +1747,7 @@ other types of audio files.
|
|
|
1747
1747
|
|
|
1748
1748
|
=head1 AUTHOR
|
|
1749
1749
|
|
|
1750
|
-
Copyright 2003-
|
|
1750
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
1751
1751
|
|
|
1752
1752
|
This library is free software; you can redistribute it and/or modify it
|
|
1753
1753
|
under the same terms as Perl itself.
|
|
@@ -1287,7 +1287,7 @@ image files.
|
|
|
1287
1287
|
|
|
1288
1288
|
=head1 AUTHOR
|
|
1289
1289
|
|
|
1290
|
-
Copyright 2003-
|
|
1290
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
1291
1291
|
|
|
1292
1292
|
This library is free software; you can redistribute it and/or modify it
|
|
1293
1293
|
under the same terms as Perl itself.
|
|
@@ -184,7 +184,7 @@ information from ISO 9660 disk images.
|
|
|
184
184
|
|
|
185
185
|
=head1 AUTHOR
|
|
186
186
|
|
|
187
|
-
Copyright 2003-
|
|
187
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
188
188
|
|
|
189
189
|
This library is free software; you can redistribute it and/or modify it
|
|
190
190
|
under the same terms as Perl itself.
|
|
@@ -191,7 +191,7 @@ information (including artwork images) from iTunes Cover Flow files.
|
|
|
191
191
|
|
|
192
192
|
=head1 AUTHOR
|
|
193
193
|
|
|
194
|
-
Copyright 2003-
|
|
194
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
195
195
|
|
|
196
196
|
This library is free software; you can redistribute it and/or modify it
|
|
197
197
|
under the same terms as Perl itself.
|
|
@@ -356,7 +356,7 @@ ARRAY reference in a special "_ordered_keys_" element of this hash.
|
|
|
356
356
|
|
|
357
357
|
=head1 AUTHOR
|
|
358
358
|
|
|
359
|
-
Copyright 2003-
|
|
359
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
360
360
|
|
|
361
361
|
This library is free software; you can redistribute it and/or modify it
|
|
362
362
|
under the same terms as Perl itself.
|
|
@@ -277,7 +277,7 @@ them and the LargeFileSupport option is enabled.
|
|
|
277
277
|
|
|
278
278
|
=head1 AUTHOR
|
|
279
279
|
|
|
280
|
-
Copyright 2003-
|
|
280
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
281
281
|
|
|
282
282
|
This library is free software; you can redistribute it and/or modify it
|
|
283
283
|
under the same terms as Perl itself.
|
|
@@ -206,7 +206,7 @@ IJPEG SDK, used in cameras such as the P2 Pro.
|
|
|
206
206
|
|
|
207
207
|
=head1 AUTHOR
|
|
208
208
|
|
|
209
|
-
Copyright 2003-
|
|
209
|
+
Copyright 2003-2026, Marcos Del Sol Vives (marcos at orca.pet)
|
|
210
210
|
|
|
211
211
|
This library is free software; you can redistribute it and/or modify it
|
|
212
212
|
under the same terms as Perl itself.
|
|
@@ -821,7 +821,7 @@ segments are included in the Image::ExifTool module itself.
|
|
|
821
821
|
|
|
822
822
|
=head1 AUTHOR
|
|
823
823
|
|
|
824
|
-
Copyright 2003-
|
|
824
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
825
825
|
|
|
826
826
|
This library is free software; you can redistribute it and/or modify it
|
|
827
827
|
under the same terms as Perl itself.
|
|
@@ -2590,7 +2590,7 @@ estimated JPEG quality if requested.
|
|
|
2590
2590
|
|
|
2591
2591
|
=head1 AUTHOR
|
|
2592
2592
|
|
|
2593
|
-
Copyright 2003-
|
|
2593
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
2594
2594
|
|
|
2595
2595
|
This library is free software; you can redistribute it and/or modify it
|
|
2596
2596
|
under the same terms as Perl itself.
|
|
@@ -188,7 +188,7 @@ information from JSON files.
|
|
|
188
188
|
|
|
189
189
|
=head1 AUTHOR
|
|
190
190
|
|
|
191
|
-
Copyright 2003-
|
|
191
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
192
192
|
|
|
193
193
|
This library is free software; you can redistribute it and/or modify it
|
|
194
194
|
under the same terms as Perl itself.
|
|
@@ -117,7 +117,7 @@ notes.
|
|
|
117
117
|
|
|
118
118
|
=head1 AUTHOR
|
|
119
119
|
|
|
120
|
-
Copyright 2003-
|
|
120
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
121
121
|
|
|
122
122
|
This library is free software; you can redistribute it and/or modify it
|
|
123
123
|
under the same terms as Perl itself.
|
|
@@ -1671,7 +1671,7 @@ files.
|
|
|
1671
1671
|
|
|
1672
1672
|
=head1 AUTHOR
|
|
1673
1673
|
|
|
1674
|
-
Copyright 2003-
|
|
1674
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
1675
1675
|
|
|
1676
1676
|
This library is free software; you can redistribute it and/or modify it
|
|
1677
1677
|
under the same terms as Perl itself.
|
|
@@ -385,7 +385,7 @@ atoms in MP4 videos as shot by the Kandao QOOCAM 3 ULTRA.
|
|
|
385
385
|
|
|
386
386
|
=head1 AUTHOR
|
|
387
387
|
|
|
388
|
-
Copyright 2003-
|
|
388
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
389
389
|
|
|
390
390
|
This library is free software; you can redistribute it and/or modify it
|
|
391
391
|
under the same terms as Perl itself.
|
|
@@ -3253,7 +3253,7 @@ interpret Kodak maker notes EXIF meta information.
|
|
|
3253
3253
|
|
|
3254
3254
|
=head1 AUTHOR
|
|
3255
3255
|
|
|
3256
|
-
Copyright 2003-
|
|
3256
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
3257
3257
|
|
|
3258
3258
|
This library is free software; you can redistribute it and/or modify it
|
|
3259
3259
|
under the same terms as Perl itself.
|
|
@@ -152,7 +152,7 @@ meta information from Kyocera Contax N Digital RAW images.
|
|
|
152
152
|
|
|
153
153
|
=head1 AUTHOR
|
|
154
154
|
|
|
155
|
-
Copyright 2003-
|
|
155
|
+
Copyright 2003-2026, 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.
|
|
@@ -147,7 +147,7 @@ metadata from Leica Image File (LIF) images.
|
|
|
147
147
|
|
|
148
148
|
=head1 AUTHOR
|
|
149
149
|
|
|
150
|
-
Copyright 2003-
|
|
150
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
151
151
|
|
|
152
152
|
This library is free software; you can redistribute it and/or modify it
|
|
153
153
|
under the same terms as Perl itself.
|
|
@@ -796,7 +796,7 @@ information MS Shell Link (Windows shortcut) files.
|
|
|
796
796
|
|
|
797
797
|
=head1 AUTHOR
|
|
798
798
|
|
|
799
|
-
Copyright 2003-
|
|
799
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
800
800
|
|
|
801
801
|
This library is free software; you can redistribute it and/or modify it
|
|
802
802
|
under the same terms as Perl itself.
|
|
@@ -1569,7 +1569,7 @@ and values.
|
|
|
1569
1569
|
|
|
1570
1570
|
=head1 AUTHOR
|
|
1571
1571
|
|
|
1572
|
-
Copyright 2003-
|
|
1572
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
1573
1573
|
|
|
1574
1574
|
This library is free software; you can redistribute it and/or modify it
|
|
1575
1575
|
under the same terms as Perl itself.
|
|
@@ -8702,7 +8702,7 @@ and values.
|
|
|
8702
8702
|
|
|
8703
8703
|
=head1 AUTHOR
|
|
8704
8704
|
|
|
8705
|
-
Copyright 2003-
|
|
8705
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
8706
8706
|
|
|
8707
8707
|
This library is free software; you can redistribute it and/or modify it
|
|
8708
8708
|
under the same terms as Perl itself.
|
|
@@ -989,7 +989,7 @@ and values.
|
|
|
989
989
|
|
|
990
990
|
=head1 AUTHOR
|
|
991
991
|
|
|
992
|
-
Copyright 2003-
|
|
992
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
993
993
|
|
|
994
994
|
This library is free software; you can redistribute it and/or modify it
|
|
995
995
|
under the same terms as Perl itself.
|
|
@@ -1032,7 +1032,7 @@ and values.
|
|
|
1032
1032
|
|
|
1033
1033
|
=head1 AUTHOR
|
|
1034
1034
|
|
|
1035
|
-
Copyright 2003-
|
|
1035
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
1036
1036
|
|
|
1037
1037
|
This library is free software; you can redistribute it and/or modify it
|
|
1038
1038
|
under the same terms as Perl itself.
|
|
@@ -4005,7 +4005,7 @@ and values.
|
|
|
4005
4005
|
|
|
4006
4006
|
=head1 AUTHOR
|
|
4007
4007
|
|
|
4008
|
-
Copyright 2003-
|
|
4008
|
+
Copyright 2003-2026, Phil Harvey (philharvey66 at gmail.com)
|
|
4009
4009
|
|
|
4010
4010
|
This library is free software; you can redistribute it and/or modify it
|
|
4011
4011
|
under the same terms as Perl itself.
|