exiftool-vendored.pl 12.49.0 → 12.54.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.
- package/bin/Changes +107 -6
- package/bin/MANIFEST +5 -0
- package/bin/META.json +1 -1
- package/bin/META.yml +1 -1
- package/bin/README +3 -3
- package/bin/exiftool +39 -30
- package/bin/lib/File/RandomAccess.pm +1 -1
- package/bin/lib/File/RandomAccess.pod +2 -2
- package/bin/lib/Image/ExifTool/AES.pm +1 -1
- package/bin/lib/Image/ExifTool/AFCP.pm +1 -1
- package/bin/lib/Image/ExifTool/AIFF.pm +1 -1
- package/bin/lib/Image/ExifTool/APE.pm +1 -1
- package/bin/lib/Image/ExifTool/APP12.pm +1 -1
- package/bin/lib/Image/ExifTool/ASF.pm +1 -1
- package/bin/lib/Image/ExifTool/Apple.pm +197 -27
- package/bin/lib/Image/ExifTool/Audible.pm +1 -1
- package/bin/lib/Image/ExifTool/BMP.pm +1 -1
- package/bin/lib/Image/ExifTool/BPG.pm +1 -1
- package/bin/lib/Image/ExifTool/BZZ.pm +1 -1
- package/bin/lib/Image/ExifTool/BigTIFF.pm +1 -1
- package/bin/lib/Image/ExifTool/BuildTagLookup.pm +10 -7
- package/bin/lib/Image/ExifTool/CBOR.pm +1 -1
- package/bin/lib/Image/ExifTool/Canon.pm +26 -9
- package/bin/lib/Image/ExifTool/CanonCustom.pm +1 -1
- package/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/CanonVRD.pm +9 -9
- package/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
- package/bin/lib/Image/ExifTool/Casio.pm +4 -4
- package/bin/lib/Image/ExifTool/Charset.pm +1 -1
- package/bin/lib/Image/ExifTool/DICOM.pm +1 -1
- package/bin/lib/Image/ExifTool/DJI.pm +1 -1
- package/bin/lib/Image/ExifTool/DNG.pm +1 -1
- package/bin/lib/Image/ExifTool/DPX.pm +1 -1
- package/bin/lib/Image/ExifTool/DV.pm +1 -1
- package/bin/lib/Image/ExifTool/DarwinCore.pm +1 -1
- package/bin/lib/Image/ExifTool/DjVu.pm +1 -1
- package/bin/lib/Image/ExifTool/EXE.pm +1 -1
- package/bin/lib/Image/ExifTool/Exif.pm +11 -21
- package/bin/lib/Image/ExifTool/FITS.pm +1 -1
- package/bin/lib/Image/ExifTool/FLAC.pm +1 -1
- package/bin/lib/Image/ExifTool/FLIF.pm +1 -1
- package/bin/lib/Image/ExifTool/FLIR.pm +7 -6
- package/bin/lib/Image/ExifTool/Fixup.pm +1 -1
- package/bin/lib/Image/ExifTool/Flash.pm +1 -1
- package/bin/lib/Image/ExifTool/FlashPix.pm +1 -1
- package/bin/lib/Image/ExifTool/Font.pm +1 -1
- package/bin/lib/Image/ExifTool/FotoStation.pm +1 -1
- package/bin/lib/Image/ExifTool/FujiFilm.pm +20 -13
- package/bin/lib/Image/ExifTool/GE.pm +1 -1
- package/bin/lib/Image/ExifTool/GIF.pm +1 -1
- package/bin/lib/Image/ExifTool/GIMP.pm +1 -1
- package/bin/lib/Image/ExifTool/GPS.pm +12 -6
- package/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- package/bin/lib/Image/ExifTool/Geotag.pm +14 -6
- package/bin/lib/Image/ExifTool/GoPro.pm +1 -1
- package/bin/lib/Image/ExifTool/H264.pm +1 -1
- package/bin/lib/Image/ExifTool/HP.pm +1 -1
- package/bin/lib/Image/ExifTool/HTML.pm +1 -1
- package/bin/lib/Image/ExifTool/HtmlDump.pm +1 -1
- package/bin/lib/Image/ExifTool/ICC_Profile.pm +1 -1
- package/bin/lib/Image/ExifTool/ICO.pm +3 -1
- package/bin/lib/Image/ExifTool/ID3.pm +1 -1
- package/bin/lib/Image/ExifTool/IPTC.pm +6 -2
- package/bin/lib/Image/ExifTool/ISO.pm +1 -1
- package/bin/lib/Image/ExifTool/ITC.pm +1 -1
- package/bin/lib/Image/ExifTool/Import.pm +1 -1
- package/bin/lib/Image/ExifTool/InDesign.pm +1 -1
- package/bin/lib/Image/ExifTool/JPEG.pm +2 -1
- package/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
- package/bin/lib/Image/ExifTool/JSON.pm +1 -1
- package/bin/lib/Image/ExifTool/JVC.pm +1 -1
- package/bin/lib/Image/ExifTool/Jpeg2000.pm +35 -8
- package/bin/lib/Image/ExifTool/Kodak.pm +1 -1
- package/bin/lib/Image/ExifTool/KyoceraRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/LIF.pm +1 -1
- package/bin/lib/Image/ExifTool/LNK.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/cs.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/de.pm +2 -2
- package/bin/lib/Image/ExifTool/Lang/en_ca.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/en_gb.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/es.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/fr.pm +6016 -760
- package/bin/lib/Image/ExifTool/Lang/it.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/ja.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/ko.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/nl.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/pl.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/ru.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/sk.pm +1806 -0
- package/bin/lib/Image/ExifTool/Lang/sv.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/tr.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/zh_cn.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/zh_tw.pm +1 -1
- package/bin/lib/Image/ExifTool/Leaf.pm +1 -1
- package/bin/lib/Image/ExifTool/Lytro.pm +1 -1
- package/bin/lib/Image/ExifTool/M2TS.pm +45 -2
- package/bin/lib/Image/ExifTool/MIE.pm +1 -1
- package/bin/lib/Image/ExifTool/MIEUnits.pod +1 -1
- package/bin/lib/Image/ExifTool/MIFF.pm +1 -1
- package/bin/lib/Image/ExifTool/MISB.pm +2 -2
- package/bin/lib/Image/ExifTool/MNG.pm +1 -1
- package/bin/lib/Image/ExifTool/MOI.pm +1 -1
- package/bin/lib/Image/ExifTool/MPC.pm +1 -1
- package/bin/lib/Image/ExifTool/MPEG.pm +1 -1
- package/bin/lib/Image/ExifTool/MPF.pm +1 -1
- package/bin/lib/Image/ExifTool/MRC.pm +1 -1
- package/bin/lib/Image/ExifTool/MWG.pm +1 -1
- package/bin/lib/Image/ExifTool/MXF.pm +1 -1
- package/bin/lib/Image/ExifTool/MacOS.pm +1 -1
- package/bin/lib/Image/ExifTool/MakerNotes.pm +1 -1
- package/bin/lib/Image/ExifTool/Matroska.pm +262 -46
- package/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
- package/bin/lib/Image/ExifTool/Minolta.pm +1 -1
- package/bin/lib/Image/ExifTool/MinoltaRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/Motorola.pm +1 -1
- package/bin/lib/Image/ExifTool/Nikon.pm +845 -355
- package/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- package/bin/lib/Image/ExifTool/NikonCustom.pm +140 -107
- package/bin/lib/Image/ExifTool/NikonSettings.pm +1 -1
- package/bin/lib/Image/ExifTool/Nintendo.pm +1 -1
- package/bin/lib/Image/ExifTool/OOXML.pm +1 -1
- package/bin/lib/Image/ExifTool/Ogg.pm +1 -1
- package/bin/lib/Image/ExifTool/Olympus.pm +6 -4
- package/bin/lib/Image/ExifTool/OpenEXR.pm +1 -1
- package/bin/lib/Image/ExifTool/Opus.pm +1 -1
- package/bin/lib/Image/ExifTool/Other.pm +1 -1
- package/bin/lib/Image/ExifTool/PCX.pm +1 -1
- package/bin/lib/Image/ExifTool/PDF.pm +1 -1
- package/bin/lib/Image/ExifTool/PGF.pm +1 -1
- package/bin/lib/Image/ExifTool/PICT.pm +1 -1
- package/bin/lib/Image/ExifTool/PLIST.pm +12 -7
- package/bin/lib/Image/ExifTool/PLUS.pm +1 -1
- package/bin/lib/Image/ExifTool/PNG.pm +9 -2
- package/bin/lib/Image/ExifTool/PPM.pm +1 -1
- package/bin/lib/Image/ExifTool/PSP.pm +1 -1
- package/bin/lib/Image/ExifTool/Palm.pm +1 -1
- package/bin/lib/Image/ExifTool/Panasonic.pm +1 -1
- package/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/Parrot.pm +1 -1
- package/bin/lib/Image/ExifTool/Pentax.pm +8 -3
- package/bin/lib/Image/ExifTool/PhaseOne.pm +1 -1
- package/bin/lib/Image/ExifTool/PhotoCD.pm +1 -1
- package/bin/lib/Image/ExifTool/PhotoMechanic.pm +1 -1
- package/bin/lib/Image/ExifTool/Photoshop.pm +1 -1
- package/bin/lib/Image/ExifTool/PostScript.pm +1 -1
- package/bin/lib/Image/ExifTool/PrintIM.pm +1 -1
- package/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
- package/bin/lib/Image/ExifTool/QuickTime.pm +52 -9
- package/bin/lib/Image/ExifTool/QuickTimeStream.pl +95 -14
- package/bin/lib/Image/ExifTool/README +6 -1
- package/bin/lib/Image/ExifTool/RIFF.pm +1 -1
- package/bin/lib/Image/ExifTool/RSRC.pm +1 -1
- package/bin/lib/Image/ExifTool/RTF.pm +1 -1
- package/bin/lib/Image/ExifTool/Radiance.pm +1 -1
- package/bin/lib/Image/ExifTool/Rawzor.pm +1 -1
- package/bin/lib/Image/ExifTool/Real.pm +1 -1
- package/bin/lib/Image/ExifTool/Reconyx.pm +1 -1
- package/bin/lib/Image/ExifTool/Red.pm +1 -1
- package/bin/lib/Image/ExifTool/Ricoh.pm +1 -1
- package/bin/lib/Image/ExifTool/Samsung.pm +3 -1
- package/bin/lib/Image/ExifTool/Sanyo.pm +1 -1
- package/bin/lib/Image/ExifTool/Scalado.pm +1 -1
- package/bin/lib/Image/ExifTool/Shift.pl +1 -1
- package/bin/lib/Image/ExifTool/Shortcuts.pm +1 -1
- package/bin/lib/Image/ExifTool/Sigma.pm +1 -1
- package/bin/lib/Image/ExifTool/SigmaRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/Sony.pm +35 -20
- package/bin/lib/Image/ExifTool/SonyIDC.pm +1 -1
- package/bin/lib/Image/ExifTool/Stim.pm +1 -1
- package/bin/lib/Image/ExifTool/TagInfoXML.pm +15 -8
- package/bin/lib/Image/ExifTool/TagLookup.pm +4672 -4568
- package/bin/lib/Image/ExifTool/TagNames.pod +357 -46
- package/bin/lib/Image/ExifTool/Text.pm +1 -1
- package/bin/lib/Image/ExifTool/Theora.pm +1 -1
- package/bin/lib/Image/ExifTool/Torrent.pm +1 -1
- package/bin/lib/Image/ExifTool/Unknown.pm +1 -1
- package/bin/lib/Image/ExifTool/VCard.pm +1 -1
- package/bin/lib/Image/ExifTool/Validate.pm +1 -1
- package/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
- package/bin/lib/Image/ExifTool/WTV.pm +1 -1
- package/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
- package/bin/lib/Image/ExifTool/WriteExif.pl +14 -1
- package/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
- package/bin/lib/Image/ExifTool/WritePDF.pl +5 -1
- package/bin/lib/Image/ExifTool/WritePNG.pl +1 -1
- package/bin/lib/Image/ExifTool/WritePhotoshop.pl +1 -1
- package/bin/lib/Image/ExifTool/WritePostScript.pl +1 -1
- package/bin/lib/Image/ExifTool/WriteQuickTime.pl +30 -14
- package/bin/lib/Image/ExifTool/WriteRIFF.pl +1 -1
- package/bin/lib/Image/ExifTool/WriteXMP.pl +16 -2
- package/bin/lib/Image/ExifTool/Writer.pl +35 -15
- package/bin/lib/Image/ExifTool/XMP.pm +25 -4
- package/bin/lib/Image/ExifTool/XMP2.pl +29 -2
- package/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
- package/bin/lib/Image/ExifTool/ZIP.pm +20 -8
- package/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
- package/bin/lib/Image/ExifTool/iWork.pm +1 -1
- package/bin/lib/Image/ExifTool.pm +45 -20
- package/bin/lib/Image/ExifTool.pod +48 -46
- package/bin/perl-Image-ExifTool.spec +1 -1
- package/bin/pp_build_exe.args +6 -5
- package/package.json +3 -3
|
@@ -422,7 +422,7 @@ when decoding certain types of information.
|
|
|
422
422
|
|
|
423
423
|
=head1 AUTHOR
|
|
424
424
|
|
|
425
|
-
Copyright 2003-
|
|
425
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
426
426
|
|
|
427
427
|
This library is free software; you can redistribute it and/or modify it
|
|
428
428
|
under the same terms as Perl itself.
|
|
@@ -3853,7 +3853,7 @@ No translation of special characters sets is done.
|
|
|
3853
3853
|
|
|
3854
3854
|
=head1 AUTHOR
|
|
3855
3855
|
|
|
3856
|
-
Copyright 2003-
|
|
3856
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
3857
3857
|
|
|
3858
3858
|
This library is free software; you can redistribute it and/or modify it
|
|
3859
3859
|
under the same terms as Perl itself.
|
|
@@ -210,7 +210,7 @@ the maker notes in images from some DJI Phantom drones.
|
|
|
210
210
|
|
|
211
211
|
=head1 AUTHOR
|
|
212
212
|
|
|
213
|
-
Copyright 2003-
|
|
213
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
214
214
|
|
|
215
215
|
This library is free software; you can redistribute it and/or modify it
|
|
216
216
|
under the same terms as Perl itself.
|
|
@@ -826,7 +826,7 @@ information in DNG (Digital Negative) images.
|
|
|
826
826
|
|
|
827
827
|
=head1 AUTHOR
|
|
828
828
|
|
|
829
|
-
Copyright 2003-
|
|
829
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
830
830
|
|
|
831
831
|
This library is free software; you can redistribute it and/or modify it
|
|
832
832
|
under the same terms as Perl itself.
|
|
@@ -225,7 +225,7 @@ metadata from DPX (Digital Picture Exchange) images.
|
|
|
225
225
|
|
|
226
226
|
=head1 AUTHOR
|
|
227
227
|
|
|
228
|
-
Copyright 2003-
|
|
228
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
229
229
|
|
|
230
230
|
This library is free software; you can redistribute it and/or modify it
|
|
231
231
|
under the same terms as Perl itself.
|
|
@@ -291,7 +291,7 @@ information from DV (raw Digital Video) files.
|
|
|
291
291
|
|
|
292
292
|
=head1 AUTHOR
|
|
293
293
|
|
|
294
|
-
Copyright 2003-
|
|
294
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
295
295
|
|
|
296
296
|
This library is free software; you can redistribute it and/or modify it
|
|
297
297
|
under the same terms as Perl itself.
|
|
@@ -372,7 +372,7 @@ This file contains tag definitions for the Darwin Core XMP namespace.
|
|
|
372
372
|
|
|
373
373
|
=head1 AUTHOR
|
|
374
374
|
|
|
375
|
-
Copyright 2003-
|
|
375
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
376
376
|
|
|
377
377
|
This library is free software; you can redistribute it and/or modify it
|
|
378
378
|
under the same terms as Perl itself.
|
|
@@ -353,7 +353,7 @@ Image::ExifTool::AIFF.
|
|
|
353
353
|
|
|
354
354
|
=head1 AUTHOR
|
|
355
355
|
|
|
356
|
-
Copyright 2003-
|
|
356
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
357
357
|
|
|
358
358
|
This library is free software; you can redistribute it and/or modify it
|
|
359
359
|
under the same terms as Perl itself.
|
|
@@ -1406,7 +1406,7 @@ library files.
|
|
|
1406
1406
|
|
|
1407
1407
|
=head1 AUTHOR
|
|
1408
1408
|
|
|
1409
|
-
Copyright 2003-
|
|
1409
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
1410
1410
|
|
|
1411
1411
|
This library is free software; you can redistribute it and/or modify it
|
|
1412
1412
|
under the same terms as Perl itself.
|
|
@@ -70,6 +70,7 @@ sub PrintParameter($$$);
|
|
|
70
70
|
sub GetOffList($$$$$);
|
|
71
71
|
sub PrintOpcode($$$);
|
|
72
72
|
sub PrintLensInfo($);
|
|
73
|
+
sub InverseOffsetTime($$);
|
|
73
74
|
sub ConvertLensInfo($);
|
|
74
75
|
|
|
75
76
|
# size limit for loading binary data block into memory
|
|
@@ -1084,11 +1085,11 @@ my %opcodeInfo = (
|
|
|
1084
1085
|
{
|
|
1085
1086
|
Name => 'ThumbnailOffset',
|
|
1086
1087
|
Notes => q{
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
OtherImageStart in everything else
|
|
1088
|
+
called JPEGInterchangeFormat in the specification, this is ThumbnailOffset
|
|
1089
|
+
in IFD1 of JPEG and some TIFF-based images, IFD0 of MRW images and AVI and
|
|
1090
|
+
MOV videos, and the SubIFD in IFD1 of SRW images; PreviewImageStart in
|
|
1091
|
+
MakerNotes and IFD0 of ARW and SR2 images; JpgFromRawStart in SubIFD of NEF
|
|
1092
|
+
images and IFD2 of PEF images; and OtherImageStart in everything else
|
|
1092
1093
|
},
|
|
1093
1094
|
# thumbnail is found in IFD1 of JPEG and TIFF images, and
|
|
1094
1095
|
# IFD0 of EXIF information in FujiFilm AVI (RIFF) and MOV videos
|
|
@@ -1225,6 +1226,7 @@ my %opcodeInfo = (
|
|
|
1225
1226
|
{
|
|
1226
1227
|
Name => 'ThumbnailLength',
|
|
1227
1228
|
Notes => q{
|
|
1229
|
+
called JPEGInterchangeFormatLength in the specification, this is
|
|
1228
1230
|
ThumbnailLength in IFD1 of JPEG and some TIFF-based images, IFD0 of MRW
|
|
1229
1231
|
images and AVI and MOV videos, and the SubIFD in IFD1 of SRW images;
|
|
1230
1232
|
PreviewImageLength in MakerNotes and IFD0 of ARW and SR2 images;
|
|
@@ -2081,11 +2083,7 @@ my %opcodeInfo = (
|
|
|
2081
2083
|
Notes => 'time zone for ModifyDate',
|
|
2082
2084
|
Writable => 'string',
|
|
2083
2085
|
Shift => 'Time',
|
|
2084
|
-
PrintConvInv =>
|
|
2085
|
-
return "+00:00" if $val =~ /\d{2}Z$/;
|
|
2086
|
-
return sprintf("%s%.2d:%.2d",$1,$2,$3) if $val =~ /([-+])(\d{1,2}):(\d{2})/;
|
|
2087
|
-
return undef;
|
|
2088
|
-
},
|
|
2086
|
+
PrintConvInv => \&InverseOffsetTime,
|
|
2089
2087
|
},
|
|
2090
2088
|
0x9011 => {
|
|
2091
2089
|
Name => 'OffsetTimeOriginal',
|
|
@@ -2093,11 +2091,7 @@ my %opcodeInfo = (
|
|
|
2093
2091
|
Notes => 'time zone for DateTimeOriginal',
|
|
2094
2092
|
Writable => 'string',
|
|
2095
2093
|
Shift => 'Time',
|
|
2096
|
-
PrintConvInv =>
|
|
2097
|
-
return "+00:00" if $val =~ /\d{2}Z$/;
|
|
2098
|
-
return sprintf("%s%.2d:%.2d",$1,$2,$3) if $val =~ /([-+])(\d{1,2}):(\d{2})/;
|
|
2099
|
-
return undef;
|
|
2100
|
-
},
|
|
2094
|
+
PrintConvInv => \&InverseOffsetTime,
|
|
2101
2095
|
},
|
|
2102
2096
|
0x9012 => {
|
|
2103
2097
|
Name => 'OffsetTimeDigitized',
|
|
@@ -2105,11 +2099,7 @@ my %opcodeInfo = (
|
|
|
2105
2099
|
Notes => 'time zone for CreateDate',
|
|
2106
2100
|
Writable => 'string',
|
|
2107
2101
|
Shift => 'Time',
|
|
2108
|
-
PrintConvInv =>
|
|
2109
|
-
return "+00:00" if $val =~ /\d{2}Z$/;
|
|
2110
|
-
return sprintf("%s%.2d:%.2d",$1,$2,$3) if $val =~ /([-+])(\d{1,2}):(\d{2})/;
|
|
2111
|
-
return undef;
|
|
2112
|
-
},
|
|
2102
|
+
PrintConvInv => \&InverseOffsetTime,
|
|
2113
2103
|
},
|
|
2114
2104
|
0x9101 => {
|
|
2115
2105
|
Name => 'ComponentsConfiguration',
|
|
@@ -6788,7 +6778,7 @@ EXIF and TIFF meta information.
|
|
|
6788
6778
|
|
|
6789
6779
|
=head1 AUTHOR
|
|
6790
6780
|
|
|
6791
|
-
Copyright 2003-
|
|
6781
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
6792
6782
|
|
|
6793
6783
|
This library is free software; you can redistribute it and/or modify it
|
|
6794
6784
|
under the same terms as Perl itself.
|
|
@@ -137,7 +137,7 @@ information from FITS (Flexible Image Transport System) images.
|
|
|
137
137
|
|
|
138
138
|
=head1 AUTHOR
|
|
139
139
|
|
|
140
|
-
Copyright 2003-
|
|
140
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
141
141
|
|
|
142
142
|
This library is free software; you can redistribute it and/or modify it
|
|
143
143
|
under the same terms as Perl itself.
|
|
@@ -298,7 +298,7 @@ information from Free Lossless Audio Codec (FLAC) audio files.
|
|
|
298
298
|
|
|
299
299
|
=head1 AUTHOR
|
|
300
300
|
|
|
301
|
-
Copyright 2003-
|
|
301
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
302
302
|
|
|
303
303
|
This library is free software; you can redistribute it and/or modify it
|
|
304
304
|
under the same terms as Perl itself.
|
|
@@ -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-2023, 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.
|
|
@@ -24,7 +24,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
|
24
24
|
use Image::ExifTool::Exif;
|
|
25
25
|
use Image::ExifTool::GPS;
|
|
26
26
|
|
|
27
|
-
$VERSION = '1.
|
|
27
|
+
$VERSION = '1.22';
|
|
28
28
|
|
|
29
29
|
sub ProcessFLIR($$;$);
|
|
30
30
|
sub ProcessFLIRText($$$);
|
|
@@ -241,7 +241,8 @@ my %float8g = ( Format => 'float', PrintConv => 'sprintf("%.8g",$val)' );
|
|
|
241
241
|
16.1 => {
|
|
242
242
|
Name => 'RawThermalImage',
|
|
243
243
|
Groups => { 2 => 'Preview' },
|
|
244
|
-
|
|
244
|
+
# make a copy in case we want to extract more of them with -ee2
|
|
245
|
+
RawConv => 'my $copy = $$self{RawThermalImage}; \$copy',
|
|
245
246
|
},
|
|
246
247
|
);
|
|
247
248
|
|
|
@@ -272,7 +273,7 @@ my %float8g = ( Format => 'float', PrintConv => 'sprintf("%.8g",$val)' );
|
|
|
272
273
|
},
|
|
273
274
|
16.1 => {
|
|
274
275
|
Name => 'GainDeadMapImage',
|
|
275
|
-
RawConv => '\$$self{GainDeadMapImage}',
|
|
276
|
+
RawConv => 'my $copy = \$$self{GainDeadMapImage}; \$copy',
|
|
276
277
|
},
|
|
277
278
|
);
|
|
278
279
|
|
|
@@ -303,7 +304,7 @@ my %float8g = ( Format => 'float', PrintConv => 'sprintf("%.8g",$val)' );
|
|
|
303
304
|
},
|
|
304
305
|
16.1 => {
|
|
305
306
|
Name => 'CoarseMapImage',
|
|
306
|
-
RawConv => '\$$self{CoarseMapImage}',
|
|
307
|
+
RawConv => 'my $copy = \$$self{CoarseMapImage}; \$copy',
|
|
307
308
|
},
|
|
308
309
|
);
|
|
309
310
|
|
|
@@ -334,7 +335,7 @@ my %float8g = ( Format => 'float', PrintConv => 'sprintf("%.8g",$val)' );
|
|
|
334
335
|
},
|
|
335
336
|
20.1 => {
|
|
336
337
|
Name => 'PaintImage',
|
|
337
|
-
RawConv => '\$$self{PaintImage}',
|
|
338
|
+
RawConv => 'my $copy = \$$self{PaintImage}; \$copy',
|
|
338
339
|
},
|
|
339
340
|
);
|
|
340
341
|
|
|
@@ -1632,7 +1633,7 @@ Systems Inc. thermal image files (FFF, FPF and JPEG format).
|
|
|
1632
1633
|
|
|
1633
1634
|
=head1 AUTHOR
|
|
1634
1635
|
|
|
1635
|
-
Copyright 2003-
|
|
1636
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
1636
1637
|
|
|
1637
1638
|
This library is free software; you can redistribute it and/or modify it
|
|
1638
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-2023, 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-2023, 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.
|
|
@@ -2418,7 +2418,7 @@ JPEG images.
|
|
|
2418
2418
|
|
|
2419
2419
|
=head1 AUTHOR
|
|
2420
2420
|
|
|
2421
|
-
Copyright 2003-
|
|
2421
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
2422
2422
|
|
|
2423
2423
|
This library is free software; you can redistribute it and/or modify it
|
|
2424
2424
|
under the same terms as Perl itself.
|
|
@@ -622,7 +622,7 @@ extracted from these formats.
|
|
|
622
622
|
|
|
623
623
|
=head1 AUTHOR
|
|
624
624
|
|
|
625
|
-
Copyright 2003-
|
|
625
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
626
626
|
|
|
627
627
|
This library is free software; you can redistribute it and/or modify it
|
|
628
628
|
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-2023, 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.
|
|
@@ -31,7 +31,7 @@ use vars qw($VERSION);
|
|
|
31
31
|
use Image::ExifTool qw(:DataAccess :Utils);
|
|
32
32
|
use Image::ExifTool::Exif;
|
|
33
33
|
|
|
34
|
-
$VERSION = '1.
|
|
34
|
+
$VERSION = '1.85';
|
|
35
35
|
|
|
36
36
|
sub ProcessFujiDir($$$);
|
|
37
37
|
sub ProcessFaceRec($$$);
|
|
@@ -222,6 +222,7 @@ my %faceCategories = (
|
|
|
222
222
|
},
|
|
223
223
|
0x100a => { #2
|
|
224
224
|
Name => 'WhiteBalanceFineTune',
|
|
225
|
+
Notes => 'newer cameras should divide these values by 20', #forum10800
|
|
225
226
|
Writable => 'int32s',
|
|
226
227
|
Count => 2,
|
|
227
228
|
PrintConv => 'sprintf("Red %+d, Blue %+d", split(" ", $val))',
|
|
@@ -478,14 +479,20 @@ my %faceCategories = (
|
|
|
478
479
|
64 => 'Strong',
|
|
479
480
|
},
|
|
480
481
|
},
|
|
481
|
-
0x1049 => { #12
|
|
482
|
+
0x1049 => { #12,forum14319
|
|
482
483
|
Name => 'BWAdjustment',
|
|
483
484
|
Notes => 'positive values are warm, negative values are cool',
|
|
484
485
|
Format => 'int8s',
|
|
485
486
|
PrintConv => '$val > 0 ? "+$val" : $val',
|
|
486
487
|
PrintConvInv => '$val + 0',
|
|
487
488
|
},
|
|
488
|
-
|
|
489
|
+
0x104b => { #forum10800,forum14319
|
|
490
|
+
Name => 'BWMagentaGreen',
|
|
491
|
+
Notes => 'positive values are green, negative values are magenta',
|
|
492
|
+
Format => 'int8s',
|
|
493
|
+
PrintConv => '$val > 0 ? "+$val" : $val',
|
|
494
|
+
PrintConvInv => '$val + 0',
|
|
495
|
+
},
|
|
489
496
|
0x104c => { #PR158
|
|
490
497
|
Name => "GrainEffectSize",
|
|
491
498
|
Writable => 'int16u', #PH
|
|
@@ -505,6 +512,15 @@ my %faceCategories = (
|
|
|
505
512
|
4 => 'Electronic Shutter 1.25x Crop', # (continuous high)
|
|
506
513
|
},
|
|
507
514
|
},
|
|
515
|
+
0x104e => { #forum10800 (X-Pro3)
|
|
516
|
+
Name => 'ColorChromeFXBlue',
|
|
517
|
+
Writable => 'int32s',
|
|
518
|
+
PrintConv => {
|
|
519
|
+
0 => 'Off',
|
|
520
|
+
32 => 'Weak', # (NC)
|
|
521
|
+
64 => 'Strong',
|
|
522
|
+
},
|
|
523
|
+
},
|
|
508
524
|
0x1050 => { #forum6109
|
|
509
525
|
Name => 'ShutterType',
|
|
510
526
|
Writable => 'int16u',
|
|
@@ -699,15 +715,6 @@ my %faceCategories = (
|
|
|
699
715
|
PrintConv => '"$val%"',
|
|
700
716
|
PrintConvInv => '$val=~s/\s*\%$//; $val',
|
|
701
717
|
},
|
|
702
|
-
0x104e => { #forum10800 (X-Pro3)
|
|
703
|
-
Name => 'ColorChromeFXBlue',
|
|
704
|
-
Writable => 'int32s',
|
|
705
|
-
PrintConv => {
|
|
706
|
-
0 => 'Off',
|
|
707
|
-
32 => 'Weak', # (NC)
|
|
708
|
-
64 => 'Strong',
|
|
709
|
-
},
|
|
710
|
-
},
|
|
711
718
|
0x1422 => { #8
|
|
712
719
|
Name => 'ImageStabilization',
|
|
713
720
|
Writable => 'int16u',
|
|
@@ -1717,7 +1724,7 @@ FujiFilm maker notes in EXIF information, and to read/write FujiFilm RAW
|
|
|
1717
1724
|
|
|
1718
1725
|
=head1 AUTHOR
|
|
1719
1726
|
|
|
1720
|
-
Copyright 2003-
|
|
1727
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
1721
1728
|
|
|
1722
1729
|
This library is free software; you can redistribute it and/or modify it
|
|
1723
1730
|
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-2023, 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.
|
|
@@ -541,7 +541,7 @@ write GIF meta information.
|
|
|
541
541
|
|
|
542
542
|
=head1 AUTHOR
|
|
543
543
|
|
|
544
|
-
Copyright 2003-
|
|
544
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
545
545
|
|
|
546
546
|
This library is free software; you can redistribute it and/or modify it
|
|
547
547
|
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-2023, 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.
|
|
@@ -12,7 +12,7 @@ use strict;
|
|
|
12
12
|
use vars qw($VERSION);
|
|
13
13
|
use Image::ExifTool::Exif;
|
|
14
14
|
|
|
15
|
-
$VERSION = '1.
|
|
15
|
+
$VERSION = '1.55';
|
|
16
16
|
|
|
17
17
|
my %coordConv = (
|
|
18
18
|
ValueConv => 'Image::ExifTool::GPS::ToDegrees($val)',
|
|
@@ -407,12 +407,18 @@ my %coordConv = (
|
|
|
407
407
|
# Require either GPS:GPSAltitudeRef or XMP:GPSAltitudeRef
|
|
408
408
|
RawConv => '(defined $val[1] or defined $val[3]) ? $val : undef',
|
|
409
409
|
ValueConv => q{
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
410
|
+
foreach (0,2) {
|
|
411
|
+
next unless defined $val[$_] and IsFloat($val[$_]) and defined $val[$_+1];
|
|
412
|
+
return $val[$_+1] ? -abs($val[$_]) : $val[$_];
|
|
413
|
+
}
|
|
414
|
+
return undef;
|
|
414
415
|
},
|
|
415
416
|
PrintConv => q{
|
|
417
|
+
foreach (0,2) {
|
|
418
|
+
next unless defined $val[$_] and IsFloat($val[$_]);
|
|
419
|
+
next unless defined $prt[$_+1] and $prt[$_+1] =~ /Sea/;
|
|
420
|
+
return((int($val[$_]*10)/10) . ' m ' . $prt[$_+1]);
|
|
421
|
+
}
|
|
416
422
|
$val = int($val * 10) / 10;
|
|
417
423
|
return(($val =~ s/^-// ? "$val m Below" : "$val m Above") . " Sea Level");
|
|
418
424
|
},
|
|
@@ -599,7 +605,7 @@ GPS (Global Positioning System) meta information in EXIF data.
|
|
|
599
605
|
|
|
600
606
|
=head1 AUTHOR
|
|
601
607
|
|
|
602
|
-
Copyright 2003-
|
|
608
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
603
609
|
|
|
604
610
|
This library is free software; you can redistribute it and/or modify it
|
|
605
611
|
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-2023, 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.
|
|
@@ -29,7 +29,7 @@ use vars qw($VERSION);
|
|
|
29
29
|
use Image::ExifTool qw(:Public);
|
|
30
30
|
use Image::ExifTool::GPS;
|
|
31
31
|
|
|
32
|
-
$VERSION = '1.
|
|
32
|
+
$VERSION = '1.69';
|
|
33
33
|
|
|
34
34
|
sub JITTER() { return 2 } # maximum time jitter
|
|
35
35
|
|
|
@@ -75,7 +75,8 @@ my %xmlTag = (
|
|
|
75
75
|
);
|
|
76
76
|
|
|
77
77
|
# fix information keys which must be interpolated around a circle
|
|
78
|
-
my %cyclical = (lon => 1, track => 1, dir => 1, roll => 1);
|
|
78
|
+
my %cyclical = (lon => 1, track => 1, dir => 1, pitch => 1, roll => 1);
|
|
79
|
+
my %cyc180 = (lon => 1, pitch => 1, roll => 1); # wraps from 180 to -180
|
|
79
80
|
|
|
80
81
|
# fix information keys for each of our general categories
|
|
81
82
|
my %fixInfoKeys = (
|
|
@@ -88,6 +89,9 @@ my %fixInfoKeys = (
|
|
|
88
89
|
|
|
89
90
|
my %isOrient = ( dir => 1, pitch => 1, roll => 1 ); # test for orientation key
|
|
90
91
|
|
|
92
|
+
# tags which may exist separately in some formats (eg. CSV)
|
|
93
|
+
my %sepTags = ( dir => 1, pitch => 1, roll => 1, track => 1, speed => 1 );
|
|
94
|
+
|
|
91
95
|
# conversion factors for GPSSpeed
|
|
92
96
|
my %speedConv = (
|
|
93
97
|
'K' => 1.852, # km/h per knot
|
|
@@ -276,6 +280,8 @@ sub LoadTrackLog($$;$)
|
|
|
276
280
|
$param = 'pitch';
|
|
277
281
|
} elsif (/^(Angle)?Roll/i) {
|
|
278
282
|
$param = 'roll';
|
|
283
|
+
} elsif (/^Img ?Dir/i) {
|
|
284
|
+
$param = 'dir';
|
|
279
285
|
}
|
|
280
286
|
if ($param) {
|
|
281
287
|
$et->VPrint(2, "CSV column '${_}' is $param\n");
|
|
@@ -496,6 +502,7 @@ DoneFix: $isDate = 1;
|
|
|
496
502
|
$secs = $val;
|
|
497
503
|
} else {
|
|
498
504
|
$$fix{$param} = $val;
|
|
505
|
+
$$has{$param} = 1 if $sepTags{$param};
|
|
499
506
|
}
|
|
500
507
|
}
|
|
501
508
|
# make coordinate negative according to reference direction if necessary
|
|
@@ -558,7 +565,7 @@ DoneFix: $isDate = 1;
|
|
|
558
565
|
} elsif ($nmea eq 'RMC') {
|
|
559
566
|
# $GPRMC,092204.999,A,4250.5589,S,14718.5084,E,0.00,89.68,211200,,*25
|
|
560
567
|
# $GPRMC,093657.007,,3652.835020,N,01053.104094,E,1.642,,290913,,,A*0F
|
|
561
|
-
# $GPRMC,hhmmss.sss,A/V,ddmm.mmmm,N/S,
|
|
568
|
+
# $GPRMC,hhmmss.sss,A/V,ddmm.mmmm,N/S,dddmm.mmmm,E/W,spd(knots),dir(deg),DDMMYY,,*cs
|
|
562
569
|
/^\$[A-Z]{2}RMC,(\d{2})(\d{2})(\d+(\.\d*)?),A?,(\d*?)(\d{1,2}\.\d+),([NS]),(\d*?)(\d{1,2}\.\d+),([EW]),(\d*\.?\d*),(\d*\.?\d*),(\d{2})(\d{2})(\d+)/ or next;
|
|
563
570
|
next if $13 > 31 or $14 > 12 or $15 > 99; # validate day/month/year
|
|
564
571
|
$fix{lat} = (($5 || 0) + $6/60) * ($7 eq 'N' ? 1 : -1);
|
|
@@ -1101,6 +1108,7 @@ Category: foreach $category (qw{pos track alt orient atemp}) {
|
|
|
1101
1108
|
next unless defined $v0 and defined $v1;
|
|
1102
1109
|
$f = $f0b;
|
|
1103
1110
|
} else {
|
|
1111
|
+
next if $sepTags{$key}; # (don't scan outwards for some formats, eg. CSV)
|
|
1104
1112
|
# scan outwards looking for fixes with the required information
|
|
1105
1113
|
# (NOTE: SHOULD EVENTUALLY DO THIS FOR EXTRAPOLATION TOO!)
|
|
1106
1114
|
my ($t0b, $t1b);
|
|
@@ -1127,8 +1135,8 @@ Category: foreach $category (qw{pos track alt orient atemp}) {
|
|
|
1127
1135
|
# 360 degrees to the smaller angle before interpolating
|
|
1128
1136
|
$v0 < $v1 ? $v0 += 360 : $v1 += 360;
|
|
1129
1137
|
$$fix{$key} = $v1 * $f + $v0 * (1 - $f);
|
|
1130
|
-
#
|
|
1131
|
-
my $max =
|
|
1138
|
+
# some ranges are -180 to 180, others are 0 to 360
|
|
1139
|
+
my $max = $cyc180{$key} ? 180 : 360;
|
|
1132
1140
|
$$fix{$key} -= 360 if $$fix{$key} >= $max;
|
|
1133
1141
|
} else {
|
|
1134
1142
|
# simple linear interpolation
|
|
@@ -1444,7 +1452,7 @@ user-defined tag GPSRoll, must be active.
|
|
|
1444
1452
|
|
|
1445
1453
|
=head1 AUTHOR
|
|
1446
1454
|
|
|
1447
|
-
Copyright 2003-
|
|
1455
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
1448
1456
|
|
|
1449
1457
|
This library is free software; you can redistribute it and/or modify it
|
|
1450
1458
|
under the same terms as Perl itself.
|
|
@@ -733,7 +733,7 @@ metadata from GoPro MP4 videos.
|
|
|
733
733
|
|
|
734
734
|
=head1 AUTHOR
|
|
735
735
|
|
|
736
|
-
Copyright 2003-
|
|
736
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
737
737
|
|
|
738
738
|
This library is free software; you can redistribute it and/or modify it
|
|
739
739
|
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-2023, 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-2023, 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-2023, 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.
|
|
@@ -917,7 +917,7 @@ page.
|
|
|
917
917
|
|
|
918
918
|
=head1 AUTHOR
|
|
919
919
|
|
|
920
|
-
Copyright 2003-
|
|
920
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
921
921
|
|
|
922
922
|
This library is free software; you can redistribute it and/or modify it
|
|
923
923
|
under the same terms as Perl itself.
|
|
@@ -1357,7 +1357,7 @@ data created on one device into another device's native color space.
|
|
|
1357
1357
|
|
|
1358
1358
|
=head1 AUTHOR
|
|
1359
1359
|
|
|
1360
|
-
Copyright 2003-
|
|
1360
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
1361
1361
|
|
|
1362
1362
|
This library is free software; you can redistribute it and/or modify it
|
|
1363
1363
|
under the same terms as Perl itself.
|
|
@@ -86,6 +86,8 @@ sub ProcessICO($$$)
|
|
|
86
86
|
# verify this is a valid ICO/CUR file
|
|
87
87
|
return 0 unless $raf->Read($buff, 6) == 6;
|
|
88
88
|
return 0 unless $buff =~ /^\0\0([\x01\x02])\0[^0]\0/s;
|
|
89
|
+
# (note: have seen cursor files in the wild with an 0x01 here,
|
|
90
|
+
# but SetFileType will use the .cur extension to identify these)
|
|
89
91
|
$et->SetFileType($1 eq "\x01" ? 'ICO' : 'CUR');
|
|
90
92
|
SetByteOrder('II');
|
|
91
93
|
my $tagTbl = GetTagTable('Image::ExifTool::ICO::Main');
|
|
@@ -119,7 +121,7 @@ information from Windows ICO (icon) and CUR (cursor) files.
|
|
|
119
121
|
|
|
120
122
|
=head1 AUTHOR
|
|
121
123
|
|
|
122
|
-
Copyright 2003-
|
|
124
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
123
125
|
|
|
124
126
|
This library is free software; you can redistribute it and/or modify it
|
|
125
127
|
under the same terms as Perl itself.
|
|
@@ -1652,7 +1652,7 @@ other types of audio files.
|
|
|
1652
1652
|
|
|
1653
1653
|
=head1 AUTHOR
|
|
1654
1654
|
|
|
1655
|
-
Copyright 2003-
|
|
1655
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
1656
1656
|
|
|
1657
1657
|
This library is free software; you can redistribute it and/or modify it
|
|
1658
1658
|
under the same terms as Perl itself.
|