exiftool-vendored.pl 12.70.0 → 12.73.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 +53 -1
- package/bin/MANIFEST +5 -0
- package/bin/META.json +1 -1
- package/bin/META.yml +1 -1
- package/bin/README +11 -11
- package/bin/exiftool +47 -27
- package/bin/lib/File/RandomAccess.pm +1 -1
- package/bin/lib/File/RandomAccess.pod +2 -2
- package/bin/lib/Image/ExifTool/AAC.pm +177 -0
- 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 +4 -3
- package/bin/lib/Image/ExifTool/CBOR.pm +1 -1
- package/bin/lib/Image/ExifTool/Canon.pm +22 -7
- 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 +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 +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 +31 -10
- 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 +1 -1
- 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 +60 -7
- 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 +6 -3
- 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 +1 -1
- package/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- package/bin/lib/Image/ExifTool/Geotag.pm +1 -1
- package/bin/lib/Image/ExifTool/GoPro.pm +17 -2
- 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 +1 -1
- package/bin/lib/Image/ExifTool/ID3.pm +8 -5
- 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/InfiRay.pm +1 -1
- package/bin/lib/Image/ExifTool/JPEG.pm +5 -2
- package/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
- package/bin/lib/Image/ExifTool/JSON.pm +5 -2
- package/bin/lib/Image/ExifTool/JVC.pm +3 -3
- package/bin/lib/Image/ExifTool/Jpeg2000.pm +17 -6
- 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 +4 -4
- package/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/fr.pm +4 -5
- package/bin/lib/Image/ExifTool/Lang/it.pm +3 -3
- 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 +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 +3 -3
- package/bin/lib/Image/ExifTool/Lytro.pm +1 -1
- package/bin/lib/Image/ExifTool/M2TS.pm +22 -17
- package/bin/lib/Image/ExifTool/MIE.pm +3 -3
- 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 +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 +1 -1
- package/bin/lib/Image/ExifTool/MakerNotes.pm +1 -1
- package/bin/lib/Image/ExifTool/Matroska.pm +1 -1
- 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 +166 -97
- package/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- package/bin/lib/Image/ExifTool/NikonCustom.pm +1 -1
- 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 +1 -1
- 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 +1 -1
- package/bin/lib/Image/ExifTool/PLUS.pm +1 -1
- package/bin/lib/Image/ExifTool/PNG.pm +24 -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 +27 -2
- 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 +46 -16
- package/bin/lib/Image/ExifTool/PhaseOne.pm +4 -4
- 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 +50 -11
- package/bin/lib/Image/ExifTool/QuickTimeStream.pl +148 -12
- 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 +111 -3
- package/bin/lib/Image/ExifTool/Samsung.pm +4 -3
- 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 +85 -6
- 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 +2 -2
- package/bin/lib/Image/ExifTool/TagLookup.pm +4878 -4830
- package/bin/lib/Image/ExifTool/TagNames.pod +11518 -11379
- 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/WPG.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 +20 -5
- 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 +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 +4 -1
- package/bin/lib/Image/ExifTool/WriteRIFF.pl +1 -1
- package/bin/lib/Image/ExifTool/WriteXMP.pl +5 -3
- package/bin/lib/Image/ExifTool/Writer.pl +87 -15
- package/bin/lib/Image/ExifTool/XISF.pm +1 -1
- package/bin/lib/Image/ExifTool/XMP.pm +19 -3
- package/bin/lib/Image/ExifTool/XMP2.pl +1 -1
- package/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
- package/bin/lib/Image/ExifTool/ZIP.pm +1 -1
- package/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
- package/bin/lib/Image/ExifTool/iWork.pm +1 -1
- package/bin/lib/Image/ExifTool.pm +35 -8
- package/bin/lib/Image/ExifTool.pod +29 -16
- package/bin/perl-Image-ExifTool.spec +9 -9
- package/bin/pp_build_exe.args +6 -5
- package/package.json +4 -5
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
# Revisions: Nov. 12/2003 - P. Harvey Created
|
|
9
9
|
# (See html/history.html for revision history)
|
|
10
10
|
#
|
|
11
|
-
# Legal: Copyright (c) 2003-
|
|
11
|
+
# Legal: Copyright (c) 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
12
12
|
# This library is free software; you can redistribute it and/or
|
|
13
13
|
# modify it under the same terms as Perl itself.
|
|
14
14
|
#------------------------------------------------------------------------------
|
|
@@ -29,7 +29,7 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes
|
|
|
29
29
|
%jpegMarker %specialTags %fileTypeLookup $testLen $exeDir
|
|
30
30
|
%static_vars);
|
|
31
31
|
|
|
32
|
-
$VERSION = '12.
|
|
32
|
+
$VERSION = '12.73';
|
|
33
33
|
$RELEASE = '';
|
|
34
34
|
@ISA = qw(Exporter);
|
|
35
35
|
%EXPORT_TAGS = (
|
|
@@ -146,8 +146,8 @@ sub ReadValue($$$;$$$);
|
|
|
146
146
|
PCX PGF PSP PhotoCD Radiance Other::PFM PDF PostScript Photoshop::Header
|
|
147
147
|
Photoshop::Layers Photoshop::ImageData FujiFilm::RAF FujiFilm::IFD
|
|
148
148
|
FujiFilm::MRAW Samsung::Trailer Sony::SRF2 Sony::SR2SubIFD Sony::PMP ITC ID3
|
|
149
|
-
ID3::Lyrics3 FLAC Ogg Vorbis APE APE::NewHeader APE::OldHeader Audible
|
|
150
|
-
MPEG::Audio MPEG::Video MPEG::Xing M2TS QuickTime QuickTime::ImageFile
|
|
149
|
+
ID3::Lyrics3 FLAC AAC Ogg Vorbis APE APE::NewHeader APE::OldHeader Audible
|
|
150
|
+
MPC MPEG::Audio MPEG::Video MPEG::Xing M2TS QuickTime QuickTime::ImageFile
|
|
151
151
|
QuickTime::Stream QuickTime::Tags360Fly Matroska Matroska::StdTag MOI MXF DV
|
|
152
152
|
Flash Flash::FLV Real::Media Real::Audio Real::Metafile Red RIFF AIFF ASF
|
|
153
153
|
WTV DICOM FITS XISF MIE JSON HTML XMP::SVG Palm Palm::MOBI Palm::EXTH
|
|
@@ -197,7 +197,7 @@ $defaultLang = 'en'; # default language
|
|
|
197
197
|
RAR 7Z BZ2 CZI TAR EXE EXR HDR CHM LNK WMF AVC DEX DPX RAW Font
|
|
198
198
|
RSRC M2TS MacOS PHP PCX DCX DWF DWG DXF WTV Torrent VCard LRI
|
|
199
199
|
R3D AA PDB PFM2 MRC LIF JXL MOI ISO ALIAS JSON MP3 DICOM PCD ICO
|
|
200
|
-
TXT);
|
|
200
|
+
TXT AAC);
|
|
201
201
|
|
|
202
202
|
# file types that we can write (edit)
|
|
203
203
|
my @writeTypes = qw(JPEG TIFF GIF CRW MRW ORF RAF RAW PNG MIE PSD XMP PPM EPS
|
|
@@ -206,6 +206,7 @@ my @writeTypes = qw(JPEG TIFF GIF CRW MRW ORF RAF RAW PNG MIE PSD XMP PPM EPS
|
|
|
206
206
|
my %writeTypes; # lookup for writable file types (hash filled if required)
|
|
207
207
|
|
|
208
208
|
# file extensions that we can't write for various base types
|
|
209
|
+
# (See here for 3FR reason: https://exiftool.org/forum/index.php?msg=17570)
|
|
209
210
|
%noWriteFile = (
|
|
210
211
|
TIFF => [ qw(3FR DCR K25 KDC SRF) ],
|
|
211
212
|
XMP => [ qw(SVG INX) ],
|
|
@@ -232,6 +233,7 @@ my %createTypes = map { $_ => 1 } qw(XMP ICC MIE VRD DR4 EXIF EXV);
|
|
|
232
233
|
'7Z' => ['7Z', '7z archive'],
|
|
233
234
|
A => ['EXE', 'Static library'],
|
|
234
235
|
AA => ['AA', 'Audible Audiobook'],
|
|
236
|
+
AAC => ['AAC', 'Advanced Audio Coding'],
|
|
235
237
|
AAE => ['PLIST','Apple edit information'],
|
|
236
238
|
AAX => ['MOV', 'Audible Enhanced Audiobook'],
|
|
237
239
|
ACR => ['DICOM','American College of Radiology ACR-NEMA'],
|
|
@@ -597,6 +599,7 @@ my %fileDescription = (
|
|
|
597
599
|
'3FR' => 'image/x-hasselblad-3fr',
|
|
598
600
|
'7Z' => 'application/x-7z-compressed',
|
|
599
601
|
AA => 'audio/audible',
|
|
602
|
+
AAC => 'audio/aac',
|
|
600
603
|
AAE => 'application/vnd.apple.photos',
|
|
601
604
|
AI => 'application/vnd.adobe.illustrator',
|
|
602
605
|
AIFF => 'audio/x-aiff',
|
|
@@ -893,6 +896,7 @@ $testLen = 1024; # number of bytes to read when testing for magic number
|
|
|
893
896
|
# - this test must not be more stringent than module logic
|
|
894
897
|
%magicNumber = (
|
|
895
898
|
AA => '.{4}\x57\x90\x75\x36',
|
|
899
|
+
AAC => '\xff[\xf0\xf1]',
|
|
896
900
|
AIFF => '(FORM....AIF[FC]|AT&TFORM)',
|
|
897
901
|
ALIAS=> "book\0\0\0\0mark\0\0\0\0",
|
|
898
902
|
APE => '(MAC |APETAGEX|ID3)',
|
|
@@ -1107,6 +1111,7 @@ my @availableOptions = (
|
|
|
1107
1111
|
[ 'ImageHashType', 'MD5', 'image hash algorithm' ],
|
|
1108
1112
|
[ 'Lang', $defaultLang, 'localized language for descriptions etc' ],
|
|
1109
1113
|
[ 'LargeFileSupport', undef, 'flag indicating support of 64-bit file offsets' ],
|
|
1114
|
+
[ 'LimitLongValues', 60, 'length limit for long values' ],
|
|
1110
1115
|
[ 'List', undef, '[deprecated, use ListSplit and ListJoin instead]' ],
|
|
1111
1116
|
[ 'ListItem', undef, 'used to return a specific item from lists' ],
|
|
1112
1117
|
[ 'ListJoin', ', ', 'join lists together with this separator' ],
|
|
@@ -1115,6 +1120,7 @@ my @availableOptions = (
|
|
|
1115
1120
|
[ 'MakerNotes', undef, 'extract maker notes as a block' ],
|
|
1116
1121
|
[ 'MDItemTags', undef, 'extract MacOS metadata item tags' ],
|
|
1117
1122
|
[ 'MissingTagValue', undef, 'value for missing tags when expanded in expressions' ],
|
|
1123
|
+
[ 'NoMandatory', undef, 'bypass writing of mandatory EXIF tags' ],
|
|
1118
1124
|
[ 'NoMultiExif', undef, 'raise error when writing multi-segment EXIF' ],
|
|
1119
1125
|
[ 'NoPDFList', undef, 'flag to avoid splitting PDF List-type tag values' ],
|
|
1120
1126
|
[ 'NoWarning', undef, 'regular expression for warnings to suppress' ],
|
|
@@ -4175,12 +4181,16 @@ sub ExtractAltInfo($)
|
|
|
4175
4181
|
next unless defined $fileName;
|
|
4176
4182
|
}
|
|
4177
4183
|
$altExifTool->ExtractInfo($fileName);
|
|
4184
|
+
my $err = $$altExifTool{VALUE}{Error};
|
|
4185
|
+
$err and $self->Warn(qq{$err "$fileName"});
|
|
4178
4186
|
# set family 8 group name for all tags
|
|
4179
4187
|
foreach (keys %{$$altExifTool{VALUE}}) {
|
|
4180
4188
|
my $ex = $$altExifTool{TAG_EXTRA}{$_};
|
|
4181
4189
|
$ex or $ex = $$altExifTool{TAG_EXTRA}{$_} = { };
|
|
4182
4190
|
$$ex{G8} = $g8;
|
|
4183
4191
|
}
|
|
4192
|
+
# prepare our sorted list of found tags
|
|
4193
|
+
$$altExifTool{FoundTags} = [ reverse sort keys %{$$altExifTool{VALUE}} ];
|
|
4184
4194
|
$$altExifTool{DID_EXTRACT} = 1;
|
|
4185
4195
|
}
|
|
4186
4196
|
# if necessary, build composite tags that rely on tags from alternate files
|
|
@@ -6308,6 +6318,20 @@ sub InverseFileName($$)
|
|
|
6308
6318
|
return $val;
|
|
6309
6319
|
}
|
|
6310
6320
|
|
|
6321
|
+
#------------------------------------------------------------------------------
|
|
6322
|
+
# Limit length of long values (to be used in PrintConv)
|
|
6323
|
+
# Inputs: 0) string value, 1) ExifTool ref
|
|
6324
|
+
# Returns: length-limited value
|
|
6325
|
+
sub LimitLongValues($$)
|
|
6326
|
+
{
|
|
6327
|
+
my ($str, $self) = @_;
|
|
6328
|
+
my $lim = $$self{OPTIONS}{LimitLongValues};
|
|
6329
|
+
if (length($str) > $lim and $lim >= 5) {
|
|
6330
|
+
$str = substr($str,0,$lim-5) . "[...]";
|
|
6331
|
+
}
|
|
6332
|
+
return $str;
|
|
6333
|
+
}
|
|
6334
|
+
|
|
6311
6335
|
#------------------------------------------------------------------------------
|
|
6312
6336
|
# Save information for HTML dump
|
|
6313
6337
|
# Inputs: 0) ExifTool hash ref, 1) start offset, 2) data size
|
|
@@ -6740,6 +6764,7 @@ sub ProcessJPEG($$)
|
|
|
6740
6764
|
pop @$path;
|
|
6741
6765
|
$verbose and print $out "JPEG EOI\n";
|
|
6742
6766
|
my $pos = $raf->Tell();
|
|
6767
|
+
$$self{TrailerStart} = $pos unless $$self{DOC_NUM};
|
|
6743
6768
|
if ($htmlDump and $dumpEnd) {
|
|
6744
6769
|
$self->HDump($dumpEnd, $pos-2-$dumpEnd, '[JPEG Image Data]', undef, 0x08);
|
|
6745
6770
|
$self->HDump($pos-2, 2, 'JPEG EOI', undef);
|
|
@@ -6878,8 +6903,10 @@ sub ProcessJPEG($$)
|
|
|
6878
6903
|
require Image::ExifTool::Panasonic;
|
|
6879
6904
|
Image::ExifTool::Panasonic::ProcessLeicaTrailer($self);
|
|
6880
6905
|
$wantTrailer = 1 if $$self{LeicaTrailer};
|
|
6881
|
-
}
|
|
6882
|
-
|
|
6906
|
+
} elsif ($$options{ExtractEmbedded} or ($$self{VALUE}{HiddenDataOffset} and
|
|
6907
|
+
$$self{VALUE}{HiddenDataLength} and ($$options{Validate} or $$req{hiddendata})))
|
|
6908
|
+
{
|
|
6909
|
+
$wantTrailer = 1;
|
|
6883
6910
|
}
|
|
6884
6911
|
next if $trailInfo or $wantTrailer or $verbose > 2 or $htmlDump;
|
|
6885
6912
|
}
|
|
@@ -8416,7 +8443,7 @@ sub GetTagInfo($$$;$$$)
|
|
|
8416
8443
|
$printConv = $$tagTablePtr{PRINT_CONV};
|
|
8417
8444
|
} else {
|
|
8418
8445
|
# limit length of printout (can be very long)
|
|
8419
|
-
$printConv =
|
|
8446
|
+
$printConv = \&LimitLongValues;
|
|
8420
8447
|
}
|
|
8421
8448
|
my $hex = sprintf("0x%.4x", $tagID);
|
|
8422
8449
|
my $prefix = $$tagTablePtr{TAG_PREFIX};
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
#
|
|
6
6
|
# URL: https://exiftool.org/
|
|
7
7
|
#
|
|
8
|
-
# Legal: Copyright (c) 2003-
|
|
8
|
+
# Legal: Copyright (c) 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
9
9
|
# This library is free software; you can redistribute it and/or
|
|
10
10
|
# modify it under the same terms as Perl itself.
|
|
11
11
|
#------------------------------------------------------------------------------
|
|
@@ -822,6 +822,14 @@ set to undef to select the built-in default language. Default is 'en'.
|
|
|
822
822
|
Flag to indicate that 64-bit file offsets are supported on this system.
|
|
823
823
|
Default is undef.
|
|
824
824
|
|
|
825
|
+
=item LimitLongValues
|
|
826
|
+
|
|
827
|
+
When extracting some values that may be very long, the PrintConv values are
|
|
828
|
+
length-limited and the value is truncated with an elipsis ("[...]") if it
|
|
829
|
+
exceeds a specified length. This option specifies the length limit for
|
|
830
|
+
these tags. A setting of 4 or less disables the limit (because the elipsis
|
|
831
|
+
string is longer than this). Default is 60.
|
|
832
|
+
|
|
825
833
|
=item ListItem
|
|
826
834
|
|
|
827
835
|
Return only a specific item from list-type values. A value of 0 returns the
|
|
@@ -873,6 +881,10 @@ writing. This applies only to queued values, and doesn't resolve duplicates
|
|
|
873
881
|
with existing values in the file when adding to an existing list. Default
|
|
874
882
|
is undef.
|
|
875
883
|
|
|
884
|
+
=item NoMandatory
|
|
885
|
+
|
|
886
|
+
Flag to bypass writing of mandatory EXIF tags. Default is undef.
|
|
887
|
+
|
|
876
888
|
=item NoMultiExif
|
|
877
889
|
|
|
878
890
|
Raise error when attempting to write multi-segment EXIF in a JPEG image.
|
|
@@ -2421,23 +2433,24 @@ Here is a complete list of groups for each of these families:
|
|
|
2421
2433
|
|
|
2422
2434
|
=item Family 0 (Information Type):
|
|
2423
2435
|
|
|
2424
|
-
AFCP, AIFF, APE, APP0, APP1, APP11, APP12, APP13, APP14, APP15, APP2,
|
|
2425
|
-
APP4, APP5, APP6, APP8, ASF, Audible, CanonVRD, Composite, DICOM, DNG,
|
|
2426
|
-
DjVu, Ducky, EXE, EXIF, ExifTool, FITS, FLAC, FLIR, File, Flash,
|
|
2427
|
-
Font, FotoStation, GIF, GIMP, GeoTiff, GoPro, H264, HTML,
|
|
2428
|
-
IPTC, ISO, ITC, JFIF, JPEG, JSON, JUMBF, Jpeg2000, LNK,
|
|
2429
|
-
MIE, MIFF, MISB, MNG, MOI, MPC, MPEG, MPF, MXF,
|
|
2430
|
-
Ogg, OpenEXR, Opus, PDF, PICT, PLIST, PNG, PSP,
|
|
2431
|
-
|
|
2432
|
-
RIFF, RSRC, RTF, Radiance, Rawzor, Real, Red, SVG,
|
|
2433
|
-
Torrent, Trailer, UserParam, VCard, Vorbis, WTV,
|
|
2436
|
+
AAC, AFCP, AIFF, APE, APP0, APP1, APP11, APP12, APP13, APP14, APP15, APP2,
|
|
2437
|
+
APP3, APP4, APP5, APP6, APP8, ASF, Audible, CanonVRD, Composite, DICOM, DNG,
|
|
2438
|
+
DV, DjVu, Ducky, EXE, EXIF, ExifTool, FITS, FLAC, FLIR, File, Flash,
|
|
2439
|
+
FlashPix, Font, FotoStation, GIF, GIMP, GeoTiff, GoPro, H264, HTML,
|
|
2440
|
+
ICC_Profile, ID3, IPTC, ISO, ITC, JFIF, JPEG, JSON, JUMBF, Jpeg2000, LNK,
|
|
2441
|
+
Leaf, Lytro, M2TS, MIE, MIFF, MISB, MNG, MOI, MPC, MPEG, MPF, MXF,
|
|
2442
|
+
MakerNotes, Matroska, Meta, Ogg, OpenEXR, Opus, PDF, PICT, PLIST, PNG, PSP,
|
|
2443
|
+
Palm, Parrot, PanasonicRaw, PhotoCD, PhotoMechanic, Photoshop, PostScript,
|
|
2444
|
+
PrintIM, QuickTime, RAF, RIFF, RSRC, RTF, Radiance, Rawzor, Real, Red, SVG,
|
|
2445
|
+
SigmaRaw, Stim, Theora, Torrent, Trailer, UserParam, VCard, Vorbis, WTV,
|
|
2446
|
+
XML, XMP, ZIP
|
|
2434
2447
|
|
|
2435
2448
|
=item Family 1 (Specific Location):
|
|
2436
2449
|
|
|
2437
|
-
AC3, AFCP, AIFF, APE, ASF, AVI1, Adobe, AdobeCM, AdobeDNG, Apple,
|
|
2438
|
-
CBOR, CIFF, CameraIFD, Canon, CanonCustom, CanonDR4, CanonRaw,
|
|
2439
|
-
Casio, Chapter#, Composite, DICOM, DJI, DNG, DV, DjVu, DjVu-Meta,
|
|
2440
|
-
EPPIM, EXE, EXIF, ExifIFD, ExifTool, FITS, FLAC, FLIR, File, Flash,
|
|
2450
|
+
AAC, AC3, AFCP, AIFF, APE, ASF, AVI1, Adobe, AdobeCM, AdobeDNG, Apple,
|
|
2451
|
+
Audible, CBOR, CIFF, CameraIFD, Canon, CanonCustom, CanonDR4, CanonRaw,
|
|
2452
|
+
CanonVRD, Casio, Chapter#, Composite, DICOM, DJI, DNG, DV, DjVu, DjVu-Meta,
|
|
2453
|
+
Ducky, EPPIM, EXE, EXIF, ExifIFD, ExifTool, FITS, FLAC, FLIR, File, Flash,
|
|
2441
2454
|
FlashPix, Font, FotoStation, FujiFilm, FujiIFD, GE, GIF, GIMP, GPS,
|
|
2442
2455
|
GSpherical, Garmin, GeoTiff, GlobParamIFD, GoPro, GraphConv, H264, HP, HTC,
|
|
2443
2456
|
HTML, HTML-dc, HTML-ncc, HTML-office, HTML-prod, HTML-vw96, HTTP-equiv,
|
|
@@ -2876,7 +2889,7 @@ specified by the L</Charset> option.
|
|
|
2876
2889
|
|
|
2877
2890
|
=head1 AUTHOR
|
|
2878
2891
|
|
|
2879
|
-
Copyright 2003-
|
|
2892
|
+
Copyright 2003-2024, Phil Harvey
|
|
2880
2893
|
|
|
2881
2894
|
This library is free software; you can redistribute it and/or modify it
|
|
2882
2895
|
under the same terms as Perl itself.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Summary: perl module for image data extraction
|
|
2
2
|
Name: perl-Image-ExifTool
|
|
3
|
-
Version: 12.
|
|
3
|
+
Version: 12.73
|
|
4
4
|
Release: 1
|
|
5
5
|
License: Artistic/GPL
|
|
6
6
|
Group: Development/Libraries/Perl
|
|
@@ -22,13 +22,14 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
|
22
22
|
|
|
23
23
|
File Types
|
|
24
24
|
------------+-------------+-------------+-------------+------------
|
|
25
|
-
360 r/w |
|
|
26
|
-
3FR r |
|
|
27
|
-
3G2 r/w |
|
|
28
|
-
3GP r/w |
|
|
29
|
-
7Z r |
|
|
30
|
-
A r |
|
|
31
|
-
AA r |
|
|
25
|
+
360 r/w | DOCX r | ISO r | NRW r/w | RAR r
|
|
26
|
+
3FR r | DPX r | ITC r | NUMBERS r | RAW r/w
|
|
27
|
+
3G2 r/w | DR4 r/w/c | J2C r | O r | RIFF r
|
|
28
|
+
3GP r/w | DSS r | JNG r/w | ODP r | RSRC r
|
|
29
|
+
7Z r | DV r | JP2 r/w | ODS r | RTF r
|
|
30
|
+
A r | DVB r/w | JPEG r/w | ODT r | RW2 r/w
|
|
31
|
+
AA r | DVR-MS r | JSON r | OFR r | RWL r/w
|
|
32
|
+
AAC r | DYLIB r | JXL r | OGG r | RWZ r
|
|
32
33
|
AAE r | EIP r | K25 r | OGV r | RM r
|
|
33
34
|
AAX r/w | EPS r/w | KDC r | ONP r | SEQ r
|
|
34
35
|
ACR r | EPUB r | KEY r | OPUS r | SKETCH r
|
|
@@ -64,7 +65,6 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
|
64
65
|
DLL r | INSP r/w | MXF r | RA r | XLSX r
|
|
65
66
|
DNG r/w | INSV r | NEF r/w | RAF r/w | XMP r/w/c
|
|
66
67
|
DOC r | INX r | NKSC r/w | RAM r | ZIP r
|
|
67
|
-
DOCX r | ISO r | NRW r/w | RAR r |
|
|
68
68
|
|
|
69
69
|
Meta Information
|
|
70
70
|
----------------------+----------------------+---------------------
|
package/bin/pp_build_exe.args
CHANGED
|
@@ -21,12 +21,12 @@
|
|
|
21
21
|
# 10) Copy zip archive to web servers.
|
|
22
22
|
# 11) Update zip file version in link and text of html/index.html.
|
|
23
23
|
#------------------------------------------------------------------------------
|
|
24
|
-
-T exiftool-12.
|
|
25
|
-
#--info=FileVersion=12.7.
|
|
26
|
-
#--info=ProductVersion=12.7.
|
|
27
|
-
##"--info=Build Date=
|
|
24
|
+
-T exiftool-12.73
|
|
25
|
+
#--info=FileVersion=12.7.3.0
|
|
26
|
+
#--info=ProductVersion=12.7.3.0
|
|
27
|
+
##"--info=Build Date=2024:01:10 13:53:16-05:00"
|
|
28
28
|
##"--info=Bundled Perl Version=ActivePerl 5.24.0"
|
|
29
|
-
##"--info=LegalCopyright=Copyright (c) 2003-
|
|
29
|
+
##"--info=LegalCopyright=Copyright (c) 2003-2024, Phil Harvey"
|
|
30
30
|
##"--info=ProductName=ExifTool"
|
|
31
31
|
##"--info=Comments=ExifTool EXE for Windows"
|
|
32
32
|
##"--info=Home Page=https://exiftool.org/"
|
|
@@ -52,6 +52,7 @@
|
|
|
52
52
|
-M Win32API::File
|
|
53
53
|
-M Encode
|
|
54
54
|
-M Image::ExifTool::7Z
|
|
55
|
+
-M Image::ExifTool::AAC
|
|
55
56
|
-M Image::ExifTool::AES
|
|
56
57
|
-M Image::ExifTool::AFCP
|
|
57
58
|
-M Image::ExifTool::AIFF
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "exiftool-vendored.pl",
|
|
3
|
-
"version": "12.
|
|
3
|
+
"version": "12.73.0",
|
|
4
4
|
"description": "Vendored perl ExifTool for Node.js",
|
|
5
5
|
"main": "./index.js",
|
|
6
6
|
"homepage": "https://github.com/mceachen/exiftool-vendored.pl#readme",
|
|
@@ -25,10 +25,9 @@
|
|
|
25
25
|
"author": "Matthew McEachen <matthew-exiftoolvendored@mceachen.org>",
|
|
26
26
|
"license": "MIT",
|
|
27
27
|
"scripts": {
|
|
28
|
-
"pretest": "rimraf ./bin/t/ ./bin/html/",
|
|
29
28
|
"prettier": "prettier --write test/*.js",
|
|
30
29
|
"test": "mocha",
|
|
31
|
-
"update": "bash -c ./update.sh"
|
|
30
|
+
"update": "ncu --upgrade --install always && bash -c ./update.sh"
|
|
32
31
|
},
|
|
33
32
|
"release-it": {
|
|
34
33
|
"hooks": {
|
|
@@ -43,7 +42,7 @@
|
|
|
43
42
|
},
|
|
44
43
|
"devDependencies": {
|
|
45
44
|
"mocha": "^10.2.0",
|
|
46
|
-
"
|
|
47
|
-
"
|
|
45
|
+
"npm-check-updates": "^16.14.12",
|
|
46
|
+
"prettier": "^3.2.3"
|
|
48
47
|
}
|
|
49
48
|
}
|