exiftool-vendored.pl 12.31.0 → 12.39.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/LICENSE +10 -3
- package/bin/Changes +130 -4
- package/bin/MANIFEST +3 -0
- package/bin/META.json +1 -1
- package/bin/META.yml +1 -1
- package/bin/README +45 -45
- package/bin/arg_files/xmp2exif.args +2 -1
- package/bin/exiftool +128 -96
- 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 +1 -1
- 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 +17 -5
- package/bin/lib/Image/ExifTool/CBOR.pm +331 -0
- package/bin/lib/Image/ExifTool/Canon.pm +171 -13
- package/bin/lib/Image/ExifTool/CanonCustom.pm +13 -3
- package/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
- package/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
- package/bin/lib/Image/ExifTool/Casio.pm +1 -1
- package/bin/lib/Image/ExifTool/Charset.pm +3 -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 +3 -3
- 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 +118 -4
- 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 +48 -11
- 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 +1 -1
- package/bin/lib/Image/ExifTool/GE.pm +1 -1
- package/bin/lib/Image/ExifTool/GIF.pm +6 -2
- package/bin/lib/Image/ExifTool/GIMP.pm +1 -1
- package/bin/lib/Image/ExifTool/GPS.pm +15 -11
- package/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- package/bin/lib/Image/ExifTool/Geotag.pm +14 -3
- 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 +97 -5
- package/bin/lib/Image/ExifTool/ID3.pm +1 -1
- package/bin/lib/Image/ExifTool/IPTC.pm +1 -1
- 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 +6 -2
- package/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
- package/bin/lib/Image/ExifTool/JSON.pm +8 -4
- package/bin/lib/Image/ExifTool/JVC.pm +1 -1
- package/bin/lib/Image/ExifTool/Jpeg2000.pm +155 -25
- 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 +1 -1
- 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 +1 -1
- 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/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 +1 -1
- 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/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 +3 -3
- package/bin/lib/Image/ExifTool/MakerNotes.pm +1 -1
- package/bin/lib/Image/ExifTool/Matroska.pm +9 -5
- 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 +1895 -74
- package/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- package/bin/lib/Image/ExifTool/NikonCustom.pm +523 -6
- package/bin/lib/Image/ExifTool/NikonSettings.pm +150 -87
- 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 -2
- package/bin/lib/Image/ExifTool/OpenEXR.pm +5 -3
- 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 +6 -4
- 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 +1 -1
- package/bin/lib/Image/ExifTool/PLUS.pm +1 -1
- package/bin/lib/Image/ExifTool/PNG.pm +29 -8
- 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 +3 -3
- 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 +4 -2
- 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 +25 -4
- package/bin/lib/Image/ExifTool/QuickTimeStream.pl +125 -81
- package/bin/lib/Image/ExifTool/README +9 -2
- 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 +1 -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 +3 -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 +34 -14
- 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 +11 -6
- package/bin/lib/Image/ExifTool/TagLookup.pm +6589 -5877
- package/bin/lib/Image/ExifTool/TagNames.pod +1681 -65
- 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 +1 -1
- package/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
- package/bin/lib/Image/ExifTool/WritePDF.pl +1 -1
- package/bin/lib/Image/ExifTool/WritePNG.pl +30 -10
- 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 +12 -1
- package/bin/lib/Image/ExifTool/WriteXMP.pl +11 -12
- package/bin/lib/Image/ExifTool/Writer.pl +56 -10
- package/bin/lib/Image/ExifTool/XMP.pm +164 -52
- package/bin/lib/Image/ExifTool/XMP2.pl +6 -3
- package/bin/lib/Image/ExifTool/XMPStruct.pl +4 -2
- package/bin/lib/Image/ExifTool/ZIP.pm +10 -2
- package/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
- package/bin/lib/Image/ExifTool/iWork.pm +1 -1
- package/bin/lib/Image/ExifTool.pm +98 -23
- package/bin/lib/Image/ExifTool.pod +76 -67
- package/bin/perl-Image-ExifTool.spec +43 -43
- package/bin/pp_build_exe.args +6 -5
- package/package.json +3 -3
|
@@ -21,7 +21,7 @@ use vars qw($VERSION $AUTOLOAD $lastFetched);
|
|
|
21
21
|
use Image::ExifTool qw(:DataAccess :Utils);
|
|
22
22
|
require Exporter;
|
|
23
23
|
|
|
24
|
-
$VERSION = '1.
|
|
24
|
+
$VERSION = '1.54';
|
|
25
25
|
|
|
26
26
|
sub FetchObject($$$$);
|
|
27
27
|
sub ExtractObject($$;$$);
|
|
@@ -280,10 +280,12 @@ my %supportedFilter = (
|
|
|
280
280
|
ConvertToDict => 1,
|
|
281
281
|
},
|
|
282
282
|
Cs1 => {
|
|
283
|
-
SubDirectory => { TagTable => 'Image::ExifTool::PDF::
|
|
283
|
+
SubDirectory => { TagTable => 'Image::ExifTool::PDF::DefaultRGB' },
|
|
284
|
+
ConvertToDict => 1, # (just in case)
|
|
284
285
|
},
|
|
285
286
|
CS0 => {
|
|
286
|
-
SubDirectory => { TagTable => 'Image::ExifTool::PDF::
|
|
287
|
+
SubDirectory => { TagTable => 'Image::ExifTool::PDF::DefaultRGB' },
|
|
288
|
+
ConvertToDict => 1, # (just in case)
|
|
287
289
|
},
|
|
288
290
|
);
|
|
289
291
|
|
|
@@ -2386,7 +2388,7 @@ including AESV2 (AES-128) and AESV3 (AES-256).
|
|
|
2386
2388
|
|
|
2387
2389
|
=head1 AUTHOR
|
|
2388
2390
|
|
|
2389
|
-
Copyright 2003-
|
|
2391
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
2390
2392
|
|
|
2391
2393
|
This library is free software; you can redistribute it and/or modify it
|
|
2392
2394
|
under the same terms as Perl itself.
|
|
@@ -119,7 +119,7 @@ information from Progressive Graphics File (PGF) images.
|
|
|
119
119
|
|
|
120
120
|
=head1 AUTHOR
|
|
121
121
|
|
|
122
|
-
Copyright 2003-
|
|
122
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
123
123
|
|
|
124
124
|
This library is free software; you can redistribute it and/or modify it
|
|
125
125
|
under the same terms as Perl itself.
|
|
@@ -1236,7 +1236,7 @@ Verbose or the Unknown option.
|
|
|
1236
1236
|
|
|
1237
1237
|
=head1 AUTHOR
|
|
1238
1238
|
|
|
1239
|
-
Copyright 2003-
|
|
1239
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
1240
1240
|
|
|
1241
1241
|
This library is free software; you can redistribute it and/or modify it
|
|
1242
1242
|
under the same terms as Perl itself.
|
|
@@ -438,7 +438,7 @@ This module decodes both the binary and XML-based PLIST format.
|
|
|
438
438
|
|
|
439
439
|
=head1 AUTHOR
|
|
440
440
|
|
|
441
|
-
Copyright 2003-
|
|
441
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
442
442
|
|
|
443
443
|
This library is free software; you can redistribute it and/or modify it
|
|
444
444
|
under the same terms as Perl itself.
|
|
@@ -2586,7 +2586,7 @@ Definitions for PLUS (Picture Licensing Universal System) tags.
|
|
|
2586
2586
|
|
|
2587
2587
|
=head1 AUTHOR
|
|
2588
2588
|
|
|
2589
|
-
Copyright 2003-
|
|
2589
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
2590
2590
|
|
|
2591
2591
|
This library is free software; you can redistribute it and/or modify it
|
|
2592
2592
|
under the same terms as Perl itself.
|
|
@@ -36,7 +36,7 @@ use strict;
|
|
|
36
36
|
use vars qw($VERSION $AUTOLOAD %stdCase);
|
|
37
37
|
use Image::ExifTool qw(:DataAccess :Utils);
|
|
38
38
|
|
|
39
|
-
$VERSION = '1.
|
|
39
|
+
$VERSION = '1.60';
|
|
40
40
|
|
|
41
41
|
sub ProcessPNG_tEXt($$$);
|
|
42
42
|
sub ProcessPNG_iTXt($$$);
|
|
@@ -142,11 +142,14 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
|
|
|
142
142
|
},
|
|
143
143
|
gAMA => {
|
|
144
144
|
Name => 'Gamma',
|
|
145
|
+
Writable => 1,
|
|
146
|
+
Protected => 1,
|
|
145
147
|
Notes => q{
|
|
146
148
|
ExifTool reports the gamma for decoding the image, which is consistent with
|
|
147
149
|
the EXIF convention, but is the inverse of the stored encoding gamma
|
|
148
150
|
},
|
|
149
151
|
ValueConv => 'my $a=unpack("N",$val);$a ? int(1e9/$a+0.5)/1e4 : $val',
|
|
152
|
+
ValueConvInv => 'pack("N", int(1e5/$val+0.5))',
|
|
150
153
|
},
|
|
151
154
|
gIFg => {
|
|
152
155
|
Name => 'GIFGraphicControlExtension',
|
|
@@ -166,7 +169,10 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
|
|
|
166
169
|
},
|
|
167
170
|
iCCP => {
|
|
168
171
|
Name => 'ICC_Profile',
|
|
169
|
-
Notes =>
|
|
172
|
+
Notes => q{
|
|
173
|
+
this is where ExifTool will write a new ICC_Profile. When creating a new
|
|
174
|
+
ICC_Profile, the SRGBRendering tag should be deleted if it exists
|
|
175
|
+
},
|
|
170
176
|
SubDirectory => {
|
|
171
177
|
TagTable => 'Image::ExifTool::ICC_Profile::Main',
|
|
172
178
|
ProcessProc => \&ProcessPNG_Compressed,
|
|
@@ -174,7 +180,12 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
|
|
|
174
180
|
},
|
|
175
181
|
'iCCP-name' => {
|
|
176
182
|
Name => 'ProfileName',
|
|
177
|
-
|
|
183
|
+
Writable => 1,
|
|
184
|
+
FakeTag => 1, # (not a real PNG tag, so don't try to write it)
|
|
185
|
+
Notes => q{
|
|
186
|
+
not a real tag ID, this tag represents the iCCP profile name, and may only
|
|
187
|
+
be written when the ICC_Profile is written
|
|
188
|
+
},
|
|
178
189
|
},
|
|
179
190
|
# IDAT
|
|
180
191
|
# IEND
|
|
@@ -227,7 +238,11 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
|
|
|
227
238
|
},
|
|
228
239
|
sRGB => {
|
|
229
240
|
Name => 'SRGBRendering',
|
|
241
|
+
Writable => 1,
|
|
242
|
+
Protected => 1,
|
|
243
|
+
Notes => 'this chunk should not be present if an iCCP chunk exists',
|
|
230
244
|
ValueConv => 'unpack("C",$val)',
|
|
245
|
+
ValueConvInv => 'pack("C",$val)',
|
|
231
246
|
PrintConv => {
|
|
232
247
|
0 => 'Perceptual',
|
|
233
248
|
1 => 'Relative Colorimetric',
|
|
@@ -259,6 +274,7 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
|
|
|
259
274
|
},
|
|
260
275
|
tRNS => {
|
|
261
276
|
Name => 'Transparency',
|
|
277
|
+
# may have as many entries as the PLTE table, but who wants to see all that?
|
|
262
278
|
ValueConv => q{
|
|
263
279
|
return \$val if length($val) > 6;
|
|
264
280
|
join(" ",unpack($Image::ExifTool::PNG::colorType == 3 ? "C*" : "n*", $val));
|
|
@@ -1158,11 +1174,16 @@ sub ProcessPNG_Compressed($$$)
|
|
|
1158
1174
|
if ($tagInfo and $$tagInfo{Name} eq 'ICC_Profile') {
|
|
1159
1175
|
$et->VerboseDir('iCCP');
|
|
1160
1176
|
$tagTablePtr = \%Image::ExifTool::PNG::Main;
|
|
1161
|
-
if
|
|
1162
|
-
FoundPNG($et, $tagTablePtr, 'iCCP-name', $tag);
|
|
1163
|
-
}
|
|
1177
|
+
FoundPNG($et, $tagTablePtr, 'iCCP-name', $tag) if length($tag) and not $outBuff;
|
|
1164
1178
|
$success = FoundPNG($et, $tagTablePtr, 'iCCP', $val, $compressed, $outBuff);
|
|
1165
|
-
|
|
1179
|
+
if ($outBuff and $$outBuff) {
|
|
1180
|
+
my $profileName = $et->GetNewValue($Image::ExifTool::PNG::Main{'iCCP-name'});
|
|
1181
|
+
if (defined $profileName) {
|
|
1182
|
+
$hdr = $profileName . substr($hdr, length $tag);
|
|
1183
|
+
$et->VerboseValue("+ PNG:ProfileName", $profileName);
|
|
1184
|
+
}
|
|
1185
|
+
$$outBuff = $hdr . $$outBuff;
|
|
1186
|
+
}
|
|
1166
1187
|
} else {
|
|
1167
1188
|
$success = FoundPNG($et, $tagTablePtr, $tag, $val, $compressed, $outBuff, 'Latin');
|
|
1168
1189
|
}
|
|
@@ -1540,7 +1561,7 @@ and JNG (JPEG Network Graphics) images.
|
|
|
1540
1561
|
|
|
1541
1562
|
=head1 AUTHOR
|
|
1542
1563
|
|
|
1543
|
-
Copyright 2003-
|
|
1564
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
1544
1565
|
|
|
1545
1566
|
This library is free software; you can redistribute it and/or modify it
|
|
1546
1567
|
under the same terms as Perl itself.
|
|
@@ -143,7 +143,7 @@ BitMap) images.
|
|
|
143
143
|
|
|
144
144
|
=head1 AUTHOR
|
|
145
145
|
|
|
146
|
-
Copyright 2003-
|
|
146
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
147
147
|
|
|
148
148
|
This library is free software; you can redistribute it and/or modify it
|
|
149
149
|
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-
|
|
287
|
+
Copyright 2003-2022, 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-
|
|
382
|
+
Copyright 2003-2022, 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.
|
|
@@ -37,7 +37,7 @@ use vars qw($VERSION %leicaLensTypes);
|
|
|
37
37
|
use Image::ExifTool qw(:DataAccess :Utils);
|
|
38
38
|
use Image::ExifTool::Exif;
|
|
39
39
|
|
|
40
|
-
$VERSION = '2.
|
|
40
|
+
$VERSION = '2.16';
|
|
41
41
|
|
|
42
42
|
sub ProcessLeicaLEIC($$$);
|
|
43
43
|
sub WhiteBalanceConv($;$$);
|
|
@@ -449,7 +449,7 @@ my %shootingMode = (
|
|
|
449
449
|
same as the number printed on the camera body
|
|
450
450
|
},
|
|
451
451
|
PrintConv => q{
|
|
452
|
-
return $val unless $val=~/^([A-Z]
|
|
452
|
+
return $val unless $val=~/^([A-Z][0-9A-Z]{2})(\d{2})(\d{2})(\d{2})(\d{4})/;
|
|
453
453
|
my $yr = $2 + ($2 < 70 ? 2000 : 1900);
|
|
454
454
|
return "($1) $yr:$3:$4 no. $5";
|
|
455
455
|
},
|
|
@@ -2837,7 +2837,7 @@ Panasonic and Leica maker notes in EXIF information.
|
|
|
2837
2837
|
|
|
2838
2838
|
=head1 AUTHOR
|
|
2839
2839
|
|
|
2840
|
-
Copyright 2003-
|
|
2840
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
2841
2841
|
|
|
2842
2842
|
This library is free software; you can redistribute it and/or modify it
|
|
2843
2843
|
under the same terms as Perl itself.
|
|
@@ -888,7 +888,7 @@ write meta information in Panasonic/Leica RAW, RW2 and RWL images.
|
|
|
888
888
|
|
|
889
889
|
=head1 AUTHOR
|
|
890
890
|
|
|
891
|
-
Copyright 2003-
|
|
891
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
892
892
|
|
|
893
893
|
This library is free software; you can redistribute it and/or modify it
|
|
894
894
|
under the same terms as Perl itself.
|
|
@@ -731,7 +731,7 @@ timed metadata from the 'mett' frame found in Parrot drone MP4 videos.
|
|
|
731
731
|
|
|
732
732
|
=head1 AUTHOR
|
|
733
733
|
|
|
734
|
-
Copyright 2003-
|
|
734
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
735
735
|
|
|
736
736
|
This library is free software; you can redistribute it and/or modify it
|
|
737
737
|
under the same terms as Perl itself.
|
|
@@ -58,7 +58,7 @@ use Image::ExifTool::Exif;
|
|
|
58
58
|
use Image::ExifTool::GPS;
|
|
59
59
|
use Image::ExifTool::HP;
|
|
60
60
|
|
|
61
|
-
$VERSION = '3.
|
|
61
|
+
$VERSION = '3.40';
|
|
62
62
|
|
|
63
63
|
sub CryptShutterCount($$);
|
|
64
64
|
sub PrintFilter($$$);
|
|
@@ -340,6 +340,8 @@ sub DecodeAFPoints($$$$;$);
|
|
|
340
340
|
'8 64' => 'HD PENTAX-D FA* 50mm F1.4 SDM AW', #27
|
|
341
341
|
'8 65' => 'HD PENTAX-D FA 70-210mm F4 ED SDM WR', #PH
|
|
342
342
|
'8 66' => 'HD PENTAX-D FA 85mm F1.4 ED SDM AW', #James O'Neill
|
|
343
|
+
'8 67' => 'HD PENTAX-D FA 21mm F2.4 ED Limited DC WR', #ChristianShulz
|
|
344
|
+
'8 195' => 'HD PENTAX DA* 16-50mm F2.8 ED PLM AW', #27
|
|
343
345
|
'8 196' => 'HD PENTAX-DA* 11-18mm F2.8 ED DC AW', #29
|
|
344
346
|
'8 197' => 'HD PENTAX-DA 55-300mm F4.5-6.3 ED PLM WR RE', #29
|
|
345
347
|
'8 198' => 'smc PENTAX-DA L 18-50mm F4-5.6 DC WR RE', #29
|
|
@@ -6313,7 +6315,7 @@ tags, and everyone who helped contribute to the LensType values.
|
|
|
6313
6315
|
|
|
6314
6316
|
=head1 AUTHOR
|
|
6315
6317
|
|
|
6316
|
-
Copyright 2003-
|
|
6318
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
6317
6319
|
|
|
6318
6320
|
This library is free software; you can redistribute it and/or modify it
|
|
6319
6321
|
under the same terms as Perl itself.
|
|
@@ -712,7 +712,7 @@ One maker notes.
|
|
|
712
712
|
|
|
713
713
|
=head1 AUTHOR
|
|
714
714
|
|
|
715
|
-
Copyright 2003-
|
|
715
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
716
716
|
|
|
717
717
|
This library is free software; you can redistribute it and/or modify it
|
|
718
718
|
under the same terms as Perl itself.
|
|
@@ -484,7 +484,7 @@ information from Kodak Photo CD Image Pac (PCD) files.
|
|
|
484
484
|
|
|
485
485
|
=head1 AUTHOR
|
|
486
486
|
|
|
487
|
-
Copyright 2003-
|
|
487
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
488
488
|
|
|
489
489
|
This library is free software; you can redistribute it and/or modify it
|
|
490
490
|
under the same terms as Perl itself.
|
|
@@ -236,7 +236,7 @@ write information written by the Camera Bits Photo Mechanic software.
|
|
|
236
236
|
|
|
237
237
|
=head1 AUTHOR
|
|
238
238
|
|
|
239
|
-
Copyright 2003-
|
|
239
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
240
240
|
|
|
241
241
|
This library is free software; you can redistribute it and/or modify it
|
|
242
242
|
under the same terms as Perl itself.
|
|
@@ -1143,7 +1143,7 @@ be preserved when copying Photoshop information via user-defined tags.
|
|
|
1143
1143
|
|
|
1144
1144
|
=head1 AUTHOR
|
|
1145
1145
|
|
|
1146
|
-
Copyright 2003-
|
|
1146
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
1147
1147
|
|
|
1148
1148
|
This library is free software; you can redistribute it and/or modify it
|
|
1149
1149
|
under the same terms as Perl itself.
|
|
@@ -777,7 +777,7 @@ This code reads meta information from EPS (Encapsulated PostScript), PS
|
|
|
777
777
|
|
|
778
778
|
=head1 AUTHOR
|
|
779
779
|
|
|
780
|
-
Copyright 2003-
|
|
780
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
781
781
|
|
|
782
782
|
This library is free software; you can redistribute it and/or modify it
|
|
783
783
|
under the same terms as Perl itself.
|
|
@@ -112,7 +112,7 @@ Print Image Matching meta information.
|
|
|
112
112
|
|
|
113
113
|
=head1 AUTHOR
|
|
114
114
|
|
|
115
|
-
Copyright 2003-
|
|
115
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
116
116
|
|
|
117
117
|
This library is free software; you can redistribute it and/or modify it
|
|
118
118
|
under the same terms as Perl itself.
|
|
@@ -1331,7 +1331,7 @@ information from the APP7 Qualcomm segment in JPEG images.
|
|
|
1331
1331
|
|
|
1332
1332
|
=head1 AUTHOR
|
|
1333
1333
|
|
|
1334
|
-
Copyright 2003-
|
|
1334
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
1335
1335
|
|
|
1336
1336
|
This library is free software; you can redistribute it and/or modify it
|
|
1337
1337
|
under the same terms as Perl itself.
|
|
@@ -47,7 +47,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
|
47
47
|
use Image::ExifTool::Exif;
|
|
48
48
|
use Image::ExifTool::GPS;
|
|
49
49
|
|
|
50
|
-
$VERSION = '2.
|
|
50
|
+
$VERSION = '2.73';
|
|
51
51
|
|
|
52
52
|
sub ProcessMOV($$;$);
|
|
53
53
|
sub ProcessKeys($$$);
|
|
@@ -482,6 +482,17 @@ my %eeBox2 = (
|
|
|
482
482
|
# (Pittasoft Blackview dashcam MP4 videos)
|
|
483
483
|
Condition => '$$valPt =~ /^\0\0..(cprt|sttm|ptnm|ptrh|thum|gps |3gf )/s',
|
|
484
484
|
SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::Pittasoft' },
|
|
485
|
+
},{
|
|
486
|
+
Name => 'ThumbnailImage',
|
|
487
|
+
# (DJI Zenmuse XT2 thermal camera)
|
|
488
|
+
Groups => { 2 => 'Preview' },
|
|
489
|
+
Condition => '$$valPt =~ /^.{4}mdat\xff\xd8\xff/s',
|
|
490
|
+
RawConv => q{
|
|
491
|
+
my $len = unpack('N', $val);
|
|
492
|
+
return undef if $len <= 8 or $len > length($val);
|
|
493
|
+
return substr($val, 8, $len-8);
|
|
494
|
+
},
|
|
495
|
+
Binary => 1,
|
|
485
496
|
},{
|
|
486
497
|
Unknown => 1,
|
|
487
498
|
Binary => 1,
|
|
@@ -558,6 +569,7 @@ my %eeBox2 = (
|
|
|
558
569
|
# *** this is where ExifTool writes XMP in MP4 videos (as per XMP spec) ***
|
|
559
570
|
Condition => '$$valPt=~/^\xbe\x7a\xcf\xcb\x97\xa9\x42\xe8\x9c\x71\x99\x94\x91\xe3\xaf\xac/',
|
|
560
571
|
WriteGroup => 'XMP', # (write main XMP tags here)
|
|
572
|
+
PreservePadding => 1,
|
|
561
573
|
SubDirectory => {
|
|
562
574
|
TagTable => 'Image::ExifTool::XMP::Main',
|
|
563
575
|
Start => 16,
|
|
@@ -607,6 +619,7 @@ my %eeBox2 = (
|
|
|
607
619
|
Name => 'PreviewImage',
|
|
608
620
|
Condition => '$$valPt=~/^\xea\xf4\x2b\x5e\x1c\x98\x4b\x88\xb9\xfb\xb7\xdc\x40\x6e\x4d\x16/',
|
|
609
621
|
Groups => { 2 => 'Preview' },
|
|
622
|
+
PreservePadding => 1,
|
|
610
623
|
# 0x00 - undef[16]: UUID
|
|
611
624
|
# 0x10 - int32u[2]: "0 1" (version and/or item count?)
|
|
612
625
|
# 0x18 - int32u: PRVW atom size
|
|
@@ -738,6 +751,7 @@ my %eeBox2 = (
|
|
|
738
751
|
Name => 'SamsungTrailer',
|
|
739
752
|
SubDirectory => { TagTable => 'Image::ExifTool::Samsung::Trailer' },
|
|
740
753
|
},
|
|
754
|
+
# 'samn'? - seen in Vantrue N2S sample video
|
|
741
755
|
);
|
|
742
756
|
|
|
743
757
|
# MPEG-4 'ftyp' atom
|
|
@@ -6356,7 +6370,7 @@ my %eeBox2 = (
|
|
|
6356
6370
|
'player.movie.visual.tint' => 'Tint',
|
|
6357
6371
|
'player.movie.visual.contrast' => 'Contrast',
|
|
6358
6372
|
'player.movie.audio.gain' => 'AudioGain',
|
|
6359
|
-
'player.movie.audio.treble' => '
|
|
6373
|
+
'player.movie.audio.treble' => 'Treble',
|
|
6360
6374
|
'player.movie.audio.bass' => 'Bass',
|
|
6361
6375
|
'player.movie.audio.balance' => 'Balance',
|
|
6362
6376
|
'player.movie.audio.pitchshift' => 'PitchShift',
|
|
@@ -6451,6 +6465,7 @@ my %eeBox2 = (
|
|
|
6451
6465
|
%Image::ExifTool::QuickTime::iTunesInfo = (
|
|
6452
6466
|
PROCESS_PROC => \&ProcessMOV,
|
|
6453
6467
|
GROUPS => { 1 => 'iTunes', 2 => 'Audio' },
|
|
6468
|
+
VARS => { LONG_TAGS => 0 }, # (hack for discrepancy in the way long tags are counted in BuildTagLookup)
|
|
6454
6469
|
NOTES => q{
|
|
6455
6470
|
ExifTool will extract any iTunesInfo tags that exist, even if they are not
|
|
6456
6471
|
defined in this table. These tags belong to the family 1 "iTunes" group,
|
|
@@ -9112,6 +9127,12 @@ sub ProcessMOV($$;$)
|
|
|
9112
9127
|
} else {
|
|
9113
9128
|
my $t = PrintableTagID($tag,2);
|
|
9114
9129
|
$et->VPrint(0,"$$et{INDENT}Tag '${t}' extends to end of file");
|
|
9130
|
+
if ($$tagTablePtr{"$tag-size"}) {
|
|
9131
|
+
my $pos = $raf->Tell();
|
|
9132
|
+
$raf->Seek(0, 2);
|
|
9133
|
+
$et->HandleTag($tagTablePtr, "$tag-size", $raf->Tell() - $pos);
|
|
9134
|
+
$et->HandleTag($tagTablePtr, "$tag-offset", $pos) if $$tagTablePtr{"$tag-offset"};
|
|
9135
|
+
}
|
|
9115
9136
|
}
|
|
9116
9137
|
last;
|
|
9117
9138
|
}
|
|
@@ -9418,7 +9439,7 @@ ItemID: foreach $id (keys %$items) {
|
|
|
9418
9439
|
for (;;) {
|
|
9419
9440
|
last if $pos + 16 > $size;
|
|
9420
9441
|
my ($len, $type, $flags, $ctry, $lang) = unpack("x${pos}Na4Nnn", $val);
|
|
9421
|
-
last if $pos + $len > $size;
|
|
9442
|
+
last if $pos + $len > $size or not $len;
|
|
9422
9443
|
my ($value, $langInfo, $oldDir);
|
|
9423
9444
|
my $format = $$tagInfo{Format};
|
|
9424
9445
|
if ($type eq 'data' and $len >= 16) {
|
|
@@ -9664,7 +9685,7 @@ information from QuickTime and MP4 video, M4A audio, and HEIC image files.
|
|
|
9664
9685
|
|
|
9665
9686
|
=head1 AUTHOR
|
|
9666
9687
|
|
|
9667
|
-
Copyright 2003-
|
|
9688
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
9668
9689
|
|
|
9669
9690
|
This library is free software; you can redistribute it and/or modify it
|
|
9670
9691
|
under the same terms as Perl itself.
|