exiftool_vendored 12.35.0 → 12.39.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/Changes +59 -4
- data/bin/MANIFEST +1 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +45 -45
- data/bin/exiftool +79 -59
- data/bin/lib/File/RandomAccess.pm +1 -1
- data/bin/lib/File/RandomAccess.pod +2 -2
- 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 +10 -4
- data/bin/lib/Image/ExifTool/CBOR.pm +1 -1
- data/bin/lib/Image/ExifTool/Canon.pm +143 -10
- data/bin/lib/Image/ExifTool/CanonCustom.pm +13 -3
- 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/DV.pm +1 -1
- data/bin/lib/Image/ExifTool/DarwinCore.pm +3 -3
- 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 +22 -2
- 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 +16 -4
- 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 +6 -2
- data/bin/lib/Image/ExifTool/GIMP.pm +1 -1
- data/bin/lib/Image/ExifTool/GPS.pm +15 -11
- data/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- data/bin/lib/Image/ExifTool/Geotag.pm +1 -1
- data/bin/lib/Image/ExifTool/GoPro.pm +1 -1
- 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/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/JPEG.pm +6 -2
- 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 +4 -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/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/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/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 +1 -1
- data/bin/lib/Image/ExifTool/Matroska.pm +9 -5
- 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 +1870 -83
- data/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- data/bin/lib/Image/ExifTool/NikonCustom.pm +523 -6
- data/bin/lib/Image/ExifTool/NikonSettings.pm +150 -87
- 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 +5 -3
- data/bin/lib/Image/ExifTool/Opus.pm +1 -1
- data/bin/lib/Image/ExifTool/Other.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 +29 -8
- 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 +1 -1
- 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 +3 -2
- 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/PostScript.pm +1 -1
- data/bin/lib/Image/ExifTool/PrintIM.pm +1 -1
- data/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
- data/bin/lib/Image/ExifTool/QuickTime.pm +4 -3
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +40 -4
- 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 +3 -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/TagInfoXML.pm +11 -6
- data/bin/lib/Image/ExifTool/TagLookup.pm +6496 -5895
- data/bin/lib/Image/ExifTool/TagNames.pod +1507 -43
- 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/Unknown.pm +1 -1
- data/bin/lib/Image/ExifTool/VCard.pm +1 -1
- data/bin/lib/Image/ExifTool/Validate.pm +1 -1
- data/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
- data/bin/lib/Image/ExifTool/WTV.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 +30 -10
- 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 +2 -1
- data/bin/lib/Image/ExifTool/WriteXMP.pl +11 -12
- data/bin/lib/Image/ExifTool/Writer.pl +12 -8
- data/bin/lib/Image/ExifTool/XMP.pm +149 -45
- data/bin/lib/Image/ExifTool/XMP2.pl +3 -2
- data/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
- data/bin/lib/Image/ExifTool/ZIP.pm +10 -2
- data/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
- data/bin/lib/Image/ExifTool/iWork.pm +1 -1
- data/bin/lib/Image/ExifTool.pm +24 -10
- data/bin/lib/Image/ExifTool.pod +64 -63
- data/bin/perl-Image-ExifTool.spec +43 -43
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +2 -2
@@ -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.
|
@@ -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,7 @@ 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
|
343
344
|
'8 195' => 'HD PENTAX DA* 16-50mm F2.8 ED PLM AW', #27
|
344
345
|
'8 196' => 'HD PENTAX-DA* 11-18mm F2.8 ED DC AW', #29
|
345
346
|
'8 197' => 'HD PENTAX-DA 55-300mm F4.5-6.3 ED PLM WR RE', #29
|
@@ -6314,7 +6315,7 @@ tags, and everyone who helped contribute to the LensType values.
|
|
6314
6315
|
|
6315
6316
|
=head1 AUTHOR
|
6316
6317
|
|
6317
|
-
Copyright 2003-
|
6318
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
6318
6319
|
|
6319
6320
|
This library is free software; you can redistribute it and/or modify it
|
6320
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($$$);
|
@@ -6370,7 +6370,7 @@ my %eeBox2 = (
|
|
6370
6370
|
'player.movie.visual.tint' => 'Tint',
|
6371
6371
|
'player.movie.visual.contrast' => 'Contrast',
|
6372
6372
|
'player.movie.audio.gain' => 'AudioGain',
|
6373
|
-
'player.movie.audio.treble' => '
|
6373
|
+
'player.movie.audio.treble' => 'Treble',
|
6374
6374
|
'player.movie.audio.bass' => 'Bass',
|
6375
6375
|
'player.movie.audio.balance' => 'Balance',
|
6376
6376
|
'player.movie.audio.pitchshift' => 'PitchShift',
|
@@ -6465,6 +6465,7 @@ my %eeBox2 = (
|
|
6465
6465
|
%Image::ExifTool::QuickTime::iTunesInfo = (
|
6466
6466
|
PROCESS_PROC => \&ProcessMOV,
|
6467
6467
|
GROUPS => { 1 => 'iTunes', 2 => 'Audio' },
|
6468
|
+
VARS => { LONG_TAGS => 0 }, # (hack for discrepancy in the way long tags are counted in BuildTagLookup)
|
6468
6469
|
NOTES => q{
|
6469
6470
|
ExifTool will extract any iTunesInfo tags that exist, even if they are not
|
6470
6471
|
defined in this table. These tags belong to the family 1 "iTunes" group,
|
@@ -9684,7 +9685,7 @@ information from QuickTime and MP4 video, M4A audio, and HEIC image files.
|
|
9684
9685
|
|
9685
9686
|
=head1 AUTHOR
|
9686
9687
|
|
9687
|
-
Copyright 2003-
|
9688
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
9688
9689
|
|
9689
9690
|
This library is free software; you can redistribute it and/or modify it
|
9690
9691
|
under the same terms as Perl itself.
|
@@ -99,7 +99,7 @@ my %insvLimit = (
|
|
99
99
|
The tags below are extracted from timed metadata in QuickTime and other
|
100
100
|
formats of video files when the ExtractEmbedded option is used. Although
|
101
101
|
most of these tags are combined into the single table below, ExifTool
|
102
|
-
currently reads
|
102
|
+
currently reads 59 different formats of timed GPS metadata from video files.
|
103
103
|
},
|
104
104
|
VARS => { NO_ID => 1 },
|
105
105
|
GPSLatitude => { PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")', RawConv => '$$self{FoundGPSLatitude} = 1; $val' },
|
@@ -1527,7 +1527,7 @@ sub ProcessFreeGPS($$$)
|
|
1527
1527
|
$spd = $9 * $knotsToKph if length $9;
|
1528
1528
|
$trk = $10 if length $10;
|
1529
1529
|
|
1530
|
-
} elsif ($$dataPt =~ /^.{
|
1530
|
+
} elsif ($$dataPt =~ /^.{64}[\x01-\x0c]\0{3}[\x01-\x1f]\0{3}A[NS][EW]\0/s) {
|
1531
1531
|
|
1532
1532
|
# Akaso V1 dascham
|
1533
1533
|
# 0000: 00 00 80 00 66 72 65 65 47 50 53 20 78 00 00 00 [....freeGPS x...]
|
@@ -1539,6 +1539,17 @@ sub ProcessFreeGPS($$$)
|
|
1539
1539
|
# 0060: 4b dc c8 41 9a 79 a7 43 34 58 43 31 4f 37 31 35 [K..A.y.C4XC1O715]
|
1540
1540
|
# 0070: 35 31 32 36 36 35 37 35 59 4e 44 53 0d e7 cc f9 [51266575YNDS....]
|
1541
1541
|
# 0080: 00 00 00 00 05 00 00 00 00 00 00 00 00 00 00 00 [................]
|
1542
|
+
# Redtiger F7N dashcam
|
1543
|
+
# 0000: 00 00 40 00 66 72 65 65 47 50 53 20 f0 01 00 00 [..@.freeGPS ....]
|
1544
|
+
# 0010: 0a 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................]
|
1545
|
+
# 0020: 01 00 00 00 b0 56 50 01 7b 18 68 45 17 02 3f 46 [.....VP.{.hE..?F]
|
1546
|
+
# 0030: 13 00 00 00 01 00 00 00 06 00 00 00 15 00 00 00 [................]
|
1547
|
+
# 0040: 0c 00 00 00 1c 00 00 00 41 4e 57 00 00 00 00 00 [........ANW.....]
|
1548
|
+
# 0050: 80 d4 26 4e 36 11 b5 40 74 b5 15 7b cd 7b f3 40 [..&N6..@t..{.{.@]
|
1549
|
+
# 0060: 0a d7 a3 3d cd 4c 4e 43 38 34 37 41 45 48 31 36 [...=.LNC847AEH16]
|
1550
|
+
# 0070: 33 36 30 38 32 34 35 37 59 53 4b 4a 01 00 00 00 [36082457YSKJ....]
|
1551
|
+
# 0080: ec ff ff ff 00 00 00 00 0e 00 00 00 01 00 00 00 [................]
|
1552
|
+
# 0090: 0a 00 00 00 e5 07 00 00 0c 00 00 00 1c 00 00 00 [................]
|
1542
1553
|
($hr,$min,$sec,$yr,$mon,$day,$stat,$latRef,$lonRef) =
|
1543
1554
|
unpack('x48V6a1a1a1x1', $$dataPt);
|
1544
1555
|
# ignore invalid fixes
|
@@ -1581,6 +1592,31 @@ sub ProcessFreeGPS($$$)
|
|
1581
1592
|
substr($time,7,6) = pack 'C*', map { $_ ^= 0x70 } unpack 'C*', substr($time,7,6);
|
1582
1593
|
# (other values are currently unknown)
|
1583
1594
|
|
1595
|
+
} elsif ($$dataPt =~ /^.{64}A([NS])([EW])\0/s) {
|
1596
|
+
|
1597
|
+
# Vantrue S1 dashcam
|
1598
|
+
# 0000: 00 00 80 00 66 72 65 65 47 50 53 20 78 00 00 00 [....freeGPS x...]
|
1599
|
+
# 0010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................]
|
1600
|
+
# 0020: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 [................]
|
1601
|
+
# 0030: 68 6f 72 73 6f 6e 74 65 63 68 00 00 00 00 00 00 [horsontech......]
|
1602
|
+
# 0040: 41 4e 45 00 15 00 00 00 07 00 00 00 02 00 00 00 [ANE.............]
|
1603
|
+
# 0050: 03 00 00 00 35 00 00 00 05 00 00 00 4f 74 4c 44 [....5.......OtLD]
|
1604
|
+
# 0060: e2 77 a0 45 89 c1 98 42 71 bd ac 42 02 ab 0d 43 [.w.E...Bq..B...C]
|
1605
|
+
# 0070: 05 00 00 00 7f 00 00 00 07 01 00 00 00 00 00 00 [................]
|
1606
|
+
($latRef, $lonRef) = ($1, $2);
|
1607
|
+
($yr,$mon,$day,$hr,$min,$sec,@acc) = unpack('x68V6x20V3', $$dataPt);
|
1608
|
+
return 0 unless $mon>=1 and $mon<=12 and $day>=1 and $day<=31;
|
1609
|
+
$yr += 2000 if $yr < 2000;
|
1610
|
+
# (not sure about acc scaling)
|
1611
|
+
map { $_ = $_ - 4294967296 if $_ >= 0x80000000; $_ /= 1000 } @acc;
|
1612
|
+
SetByteOrder('II');
|
1613
|
+
$lon = GetFloat($dataPt, 0x5c);
|
1614
|
+
$lat = GetFloat($dataPt, 0x60);
|
1615
|
+
$spd = GetFloat($dataPt, 0x64) * $knotsToKph;
|
1616
|
+
$trk = GetFloat($dataPt, 0x68);
|
1617
|
+
$alt = GetFloat($dataPt, 0x6c);
|
1618
|
+
SetByteOrder('MM');
|
1619
|
+
|
1584
1620
|
} else {
|
1585
1621
|
|
1586
1622
|
# decode binary GPS format (Viofo A119S, ref 2)
|
@@ -2547,7 +2583,7 @@ sub ProcessInsta360($;$)
|
|
2547
2583
|
my $trailerLen = unpack('x38V', $buff);
|
2548
2584
|
$trailerLen > $fileEnd and $et->Warn('Bad Insta360 trailer size'), return 0;
|
2549
2585
|
if ($dirInfo) {
|
2550
|
-
$$dirInfo{DirLen} = $trailerLen
|
2586
|
+
$$dirInfo{DirLen} = $trailerLen;
|
2551
2587
|
$$dirInfo{DataPos} = $fileEnd - $trailerLen;
|
2552
2588
|
if ($$dirInfo{OutFile}) {
|
2553
2589
|
if ($$et{DEL_GROUP}{Insta360}) {
|
@@ -2830,7 +2866,7 @@ information like GPS tracks from MOV, MP4 and INSV media data.
|
|
2830
2866
|
|
2831
2867
|
=head1 AUTHOR
|
2832
2868
|
|
2833
|
-
Copyright 2003-
|
2869
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
2834
2870
|
|
2835
2871
|
This library is free software; you can redistribute it and/or modify it
|
2836
2872
|
under the same terms as Perl itself.
|
@@ -2029,7 +2029,7 @@ including AVI videos, WAV audio files and WEBP images.
|
|
2029
2029
|
|
2030
2030
|
=head1 AUTHOR
|
2031
2031
|
|
2032
|
-
Copyright 2003-
|
2032
|
+
Copyright 2003-2022, 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.
|
@@ -225,7 +225,7 @@ resource files.
|
|
225
225
|
|
226
226
|
=head1 AUTHOR
|
227
227
|
|
228
|
-
Copyright 2003-
|
228
|
+
Copyright 2003-2022, 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.
|
@@ -366,7 +366,7 @@ information from RTF (Rich Text Format) documents.
|
|
366
366
|
|
367
367
|
=head1 AUTHOR
|
368
368
|
|
369
|
-
Copyright 2003-
|
369
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
370
370
|
|
371
371
|
This library is free software; you can redistribute it and/or modify it
|
372
372
|
under the same terms as Perl itself.
|
@@ -125,7 +125,7 @@ images are a type of high dynamic-range image.
|
|
125
125
|
|
126
126
|
=head1 AUTHOR
|
127
127
|
|
128
|
-
Copyright 2003-
|
128
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
129
129
|
|
130
130
|
This library is free software; you can redistribute it and/or modify it
|
131
131
|
under the same terms as Perl itself.
|
@@ -168,7 +168,7 @@ information from Rawzor compressed images.
|
|
168
168
|
|
169
169
|
=head1 AUTHOR
|
170
170
|
|
171
|
-
Copyright 2003-
|
171
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
172
172
|
|
173
173
|
This library is free software; you can redistribute it and/or modify it
|
174
174
|
under the same terms as Perl itself.
|
@@ -715,7 +715,7 @@ little-endian, but the Real format is big-endian.
|
|
715
715
|
|
716
716
|
=head1 AUTHOR
|
717
717
|
|
718
|
-
Copyright 2003-
|
718
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
719
719
|
|
720
720
|
This library is free software; you can redistribute it and/or modify it
|
721
721
|
under the same terms as Perl itself.
|
@@ -431,7 +431,7 @@ maker notes in images from Reconyx cameras.
|
|
431
431
|
|
432
432
|
=head1 AUTHOR
|
433
433
|
|
434
|
-
Copyright 2003-
|
434
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
435
435
|
|
436
436
|
This library is free software; you can redistribute it and/or modify it
|
437
437
|
under the same terms as Perl itself.
|
@@ -303,7 +303,7 @@ from Redcode R3D version 1 and 2 video files.
|
|
303
303
|
|
304
304
|
=head1 AUTHOR
|
305
305
|
|
306
|
-
Copyright 2003-
|
306
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
307
307
|
|
308
308
|
This library is free software; you can redistribute it and/or modify it
|
309
309
|
under the same terms as Perl itself.
|
@@ -1143,7 +1143,7 @@ interpret Ricoh maker notes EXIF meta information.
|
|
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.
|
@@ -1485,7 +1485,7 @@ Samsung maker notes in EXIF information.
|
|
1485
1485
|
|
1486
1486
|
=head1 AUTHOR
|
1487
1487
|
|
1488
|
-
Copyright 2003-
|
1488
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
1489
1489
|
|
1490
1490
|
This library is free software; you can redistribute it and/or modify it
|
1491
1491
|
under the same terms as Perl itself.
|
@@ -419,7 +419,7 @@ Sanyo maker notes in EXIF information.
|
|
419
419
|
|
420
420
|
=head1 AUTHOR
|
421
421
|
|
422
|
-
Copyright 2003-
|
422
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
423
423
|
|
424
424
|
This library is free software; you can redistribute it and/or modify it
|
425
425
|
under the same terms as Perl itself.
|
@@ -128,7 +128,7 @@ metadata from the JPEG APP4 SCALADO segment.
|
|
128
128
|
|
129
129
|
=head1 AUTHOR
|
130
130
|
|
131
|
-
Copyright 2003-
|
131
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
132
132
|
|
133
133
|
This library is free software; you can redistribute it and/or modify it
|
134
134
|
under the same terms as Perl itself.
|
@@ -304,6 +304,8 @@ sub ShiftTime($;$$$)
|
|
304
304
|
$mode = defined $time[3] ? 'DateTime' : 'Date';
|
305
305
|
} elsif (defined $time[3]) {
|
306
306
|
$mode = 'Time';
|
307
|
+
} else {
|
308
|
+
$mode = '';
|
307
309
|
}
|
308
310
|
# get number of digits after the seconds decimal point
|
309
311
|
if (defined $time[5] and $time[5] =~ /\.(\d+)/) {
|
@@ -630,7 +632,7 @@ limited to the range 1970 to 2038 on 32-bit systems.
|
|
630
632
|
|
631
633
|
=head1 AUTHOR
|
632
634
|
|
633
|
-
Copyright 2003-
|
635
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
634
636
|
|
635
637
|
This library is free software; you can redistribute it and/or modify it
|
636
638
|
under the same terms as Perl itself.
|
@@ -341,7 +341,7 @@ name prefix.
|
|
341
341
|
|
342
342
|
=head1 AUTHOR
|
343
343
|
|
344
|
-
Copyright 2003-
|
344
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
345
345
|
|
346
346
|
This library is free software; you can redistribute it and/or modify it
|
347
347
|
under the same terms as Perl itself.
|
@@ -837,7 +837,7 @@ Sigma and Foveon maker notes in EXIF information.
|
|
837
837
|
|
838
838
|
=head1 AUTHOR
|
839
839
|
|
840
|
-
Copyright 2003-
|
840
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
841
841
|
|
842
842
|
This library is free software; you can redistribute it and/or modify it
|
843
843
|
under the same terms as Perl itself.
|
@@ -650,7 +650,7 @@ Sigma and Foveon X3F images.
|
|
650
650
|
|
651
651
|
=head1 AUTHOR
|
652
652
|
|
653
|
-
Copyright 2003-
|
653
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
654
654
|
|
655
655
|
This library is free software; you can redistribute it and/or modify it
|
656
656
|
under the same terms as Perl itself.
|
@@ -11283,7 +11283,7 @@ Minolta.
|
|
11283
11283
|
|
11284
11284
|
=head1 AUTHOR
|
11285
11285
|
|
11286
|
-
Copyright 2003-
|
11286
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
11287
11287
|
|
11288
11288
|
This library is free software; you can redistribute it and/or modify it
|
11289
11289
|
under the same terms as Perl itself.
|
@@ -379,7 +379,7 @@ write Sony Image Data Converter version 3.0 metadata in ARW images.
|
|
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.
|
@@ -174,7 +174,7 @@ information.
|
|
174
174
|
|
175
175
|
=head1 AUTHOR
|
176
176
|
|
177
|
-
Copyright 2003-
|
177
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
178
178
|
|
179
179
|
This library is free software; you can redistribute it and/or modify it
|
180
180
|
under the same terms as Perl itself.
|
@@ -15,7 +15,7 @@ use vars qw($VERSION @ISA $makeMissing);
|
|
15
15
|
use Image::ExifTool qw(:Utils :Vars);
|
16
16
|
use Image::ExifTool::XMP;
|
17
17
|
|
18
|
-
$VERSION = '1.
|
18
|
+
$VERSION = '1.32';
|
19
19
|
@ISA = qw(Exporter);
|
20
20
|
|
21
21
|
# set this to a language code to generate Lang module with 'MISSING' entries
|
@@ -58,6 +58,12 @@ my %translateLang = (
|
|
58
58
|
my $numbersFirst = 1; # set to -1 to sort numbers last, or 2 to put negative numbers last
|
59
59
|
my $caseInsensitive; # used internally by sort routine
|
60
60
|
|
61
|
+
# write groups that don't represent real family 1 group names
|
62
|
+
my %fakeWriteGroup = (
|
63
|
+
Comment => 1, # (JPEG Comment)
|
64
|
+
colr => 1, # (Jpeg2000 'colr' box)
|
65
|
+
);
|
66
|
+
|
61
67
|
#------------------------------------------------------------------------------
|
62
68
|
# Utility to print tag information database as an XML list
|
63
69
|
# Inputs: 0) output file name (undef to send to console),
|
@@ -178,9 +184,8 @@ PTILoop: for ($index=0; $index<@infoArray; ++$index) {
|
|
178
184
|
}
|
179
185
|
my @groups = $et->GetGroup($tagInfo);
|
180
186
|
my $writeGroup = $$tagInfo{WriteGroup} || $$table{WRITE_GROUP};
|
181
|
-
|
182
|
-
|
183
|
-
}
|
187
|
+
# use common write group for group 1 (unless fake)
|
188
|
+
$groups[1] = $writeGroup if $writeGroup and not $fakeWriteGroup{$writeGroup};
|
184
189
|
# add group names if different from table defaults
|
185
190
|
my $grp = '';
|
186
191
|
for ($fam=0; $fam<3; ++$fam) {
|
@@ -638,7 +643,7 @@ and values.
|
|
638
643
|
|
639
644
|
~head1 AUTHOR
|
640
645
|
|
641
|
-
Copyright 2003-
|
646
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
642
647
|
|
643
648
|
This library is free software; you can redistribute it and/or modify it
|
644
649
|
under the same terms as Perl itself.
|
@@ -822,7 +827,7 @@ Number of modules updated, or negative on error.
|
|
822
827
|
|
823
828
|
=head1 AUTHOR
|
824
829
|
|
825
|
-
Copyright 2003-
|
830
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
826
831
|
|
827
832
|
This library is free software; you can redistribute it and/or modify it
|
828
833
|
under the same terms as Perl itself.
|