exiftool_vendored 13.10.0 → 13.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/Changes +82 -19
- data/bin/MANIFEST +6 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +3 -3
- data/bin/arg_files/exif2xmp.args +4 -0
- data/bin/arg_files/xmp2exif.args +2 -1
- data/bin/build_geolocation +1 -1
- data/bin/exiftool +208 -150
- data/bin/lib/File/RandomAccess.pm +1 -1
- data/bin/lib/File/RandomAccess.pod +2 -2
- data/bin/lib/Image/ExifTool/AAC.pm +1 -1
- data/bin/lib/Image/ExifTool/AES.pm +1 -1
- data/bin/lib/Image/ExifTool/AFCP.pm +6 -6
- 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 +29 -18
- data/bin/lib/Image/ExifTool/CBOR.pm +1 -1
- data/bin/lib/Image/ExifTool/Canon.pm +8 -4
- data/bin/lib/Image/ExifTool/CanonCustom.pm +1 -1
- data/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
- data/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
- data/bin/lib/Image/ExifTool/Casio.pm +1 -1
- data/bin/lib/Image/ExifTool/Charset.pm +1 -1
- data/bin/lib/Image/ExifTool/DICOM.pm +1 -1
- data/bin/lib/Image/ExifTool/DJI.pm +150 -46
- 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 +1 -1
- data/bin/lib/Image/ExifTool/DjVu.pm +1 -1
- data/bin/lib/Image/ExifTool/EXE.pm +123 -32
- data/bin/lib/Image/ExifTool/Exif.pm +7 -4
- data/bin/lib/Image/ExifTool/FITS.pm +1 -1
- data/bin/lib/Image/ExifTool/FLAC.pm +1 -1
- data/bin/lib/Image/ExifTool/FLIF.pm +1 -1
- data/bin/lib/Image/ExifTool/FLIR.pm +1 -1
- data/bin/lib/Image/ExifTool/Fixup.pm +1 -1
- data/bin/lib/Image/ExifTool/Flash.pm +1 -1
- data/bin/lib/Image/ExifTool/FlashPix.pm +1 -1
- data/bin/lib/Image/ExifTool/Font.pm +1 -1
- data/bin/lib/Image/ExifTool/FotoStation.pm +1 -1
- data/bin/lib/Image/ExifTool/FujiFilm.pm +1 -1
- data/bin/lib/Image/ExifTool/GE.pm +1 -1
- data/bin/lib/Image/ExifTool/GIF.pm +1 -1
- data/bin/lib/Image/ExifTool/GIMP.pm +1 -1
- data/bin/lib/Image/ExifTool/GM.pm +1 -1
- data/bin/lib/Image/ExifTool/GPS.pm +1 -1
- data/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- data/bin/lib/Image/ExifTool/Geolocation.pm +17 -8
- 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/ICO.pm +1 -1
- data/bin/lib/Image/ExifTool/ID3.pm +1 -1
- data/bin/lib/Image/ExifTool/IPTC.pm +8 -5
- 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 +5 -4
- data/bin/lib/Image/ExifTool/InDesign.pm +1 -1
- data/bin/lib/Image/ExifTool/InfiRay.pm +1 -1
- data/bin/lib/Image/ExifTool/JPEG.pm +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 +1 -1
- data/bin/lib/Image/ExifTool/Kodak.pm +1 -1
- data/bin/lib/Image/ExifTool/KyoceraRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/LIF.pm +1 -1
- data/bin/lib/Image/ExifTool/LNK.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/cs.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/de.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/en_ca.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/en_gb.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/es.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/fr.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/it.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/ja.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/ko.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/nl.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/pl.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/ru.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/sk.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/sv.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/tr.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/zh_cn.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/zh_tw.pm +1 -1
- data/bin/lib/Image/ExifTool/Leaf.pm +1 -1
- data/bin/lib/Image/ExifTool/LigoGPS.pm +409 -0
- data/bin/lib/Image/ExifTool/Lytro.pm +1 -1
- data/bin/lib/Image/ExifTool/M2TS.pm +22 -13
- data/bin/lib/Image/ExifTool/MIE.pm +1 -1
- data/bin/lib/Image/ExifTool/MIEUnits.pod +1 -1
- data/bin/lib/Image/ExifTool/MIFF.pm +1 -1
- data/bin/lib/Image/ExifTool/MISB.pm +1 -1
- data/bin/lib/Image/ExifTool/MNG.pm +1 -1
- data/bin/lib/Image/ExifTool/MOI.pm +1 -1
- data/bin/lib/Image/ExifTool/MPC.pm +1 -1
- data/bin/lib/Image/ExifTool/MPEG.pm +1 -1
- data/bin/lib/Image/ExifTool/MPF.pm +1 -1
- data/bin/lib/Image/ExifTool/MRC.pm +1 -1
- data/bin/lib/Image/ExifTool/MWG.pm +1 -1
- data/bin/lib/Image/ExifTool/MXF.pm +1 -1
- data/bin/lib/Image/ExifTool/MacOS.pm +1 -1
- data/bin/lib/Image/ExifTool/MakerNotes.pm +1 -1
- data/bin/lib/Image/ExifTool/Matroska.pm +12 -4
- 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 +166 -35
- data/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- data/bin/lib/Image/ExifTool/NikonCustom.pm +1 -1
- data/bin/lib/Image/ExifTool/NikonSettings.pm +1 -1
- data/bin/lib/Image/ExifTool/Nintendo.pm +1 -1
- data/bin/lib/Image/ExifTool/OOXML.pm +1 -1
- data/bin/lib/Image/ExifTool/Ogg.pm +1 -1
- data/bin/lib/Image/ExifTool/Olympus.pm +1 -1
- data/bin/lib/Image/ExifTool/OpenEXR.pm +1 -1
- data/bin/lib/Image/ExifTool/Opus.pm +1 -1
- data/bin/lib/Image/ExifTool/Other.pm +1 -1
- data/bin/lib/Image/ExifTool/PCX.pm +1 -1
- data/bin/lib/Image/ExifTool/PDF.pm +1 -1
- data/bin/lib/Image/ExifTool/PGF.pm +1 -1
- data/bin/lib/Image/ExifTool/PICT.pm +1 -1
- data/bin/lib/Image/ExifTool/PLIST.pm +1 -1
- data/bin/lib/Image/ExifTool/PLUS.pm +1 -1
- data/bin/lib/Image/ExifTool/PNG.pm +1 -1
- data/bin/lib/Image/ExifTool/PPM.pm +1 -1
- data/bin/lib/Image/ExifTool/PSP.pm +1 -1
- data/bin/lib/Image/ExifTool/Palm.pm +1 -1
- data/bin/lib/Image/ExifTool/Panasonic.pm +20 -2
- data/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/Parrot.pm +1 -1
- data/bin/lib/Image/ExifTool/Pentax.pm +1 -1
- 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/Protobuf.pm +48 -20
- data/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
- data/bin/lib/Image/ExifTool/QuickTime.pm +206 -66
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +21 -303
- data/bin/lib/Image/ExifTool/README +4 -0
- 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 +2 -2
- data/bin/lib/Image/ExifTool/Sanyo.pm +1 -1
- data/bin/lib/Image/ExifTool/Scalado.pm +1 -1
- data/bin/lib/Image/ExifTool/Shift.pl +1 -1
- data/bin/lib/Image/ExifTool/Shortcuts.pm +1 -1
- data/bin/lib/Image/ExifTool/Sigma.pm +1 -1
- data/bin/lib/Image/ExifTool/SigmaRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/Sony.pm +1 -1
- data/bin/lib/Image/ExifTool/SonyIDC.pm +1 -1
- data/bin/lib/Image/ExifTool/Stim.pm +1 -1
- data/bin/lib/Image/ExifTool/TagInfoXML.pm +2 -2
- data/bin/lib/Image/ExifTool/TagLookup.pm +3449 -3435
- data/bin/lib/Image/ExifTool/TagNames.pod +164 -47
- 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 +3 -3
- 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/Vivo.pm +124 -0
- data/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
- data/bin/lib/Image/ExifTool/WPG.pm +1 -1
- data/bin/lib/Image/ExifTool/WTV.pm +1 -1
- data/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteExif.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePDF.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePNG.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePhotoshop.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePostScript.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteQuickTime.pl +74 -43
- data/bin/lib/Image/ExifTool/WriteRIFF.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteXMP.pl +1 -1
- data/bin/lib/Image/ExifTool/Writer.pl +21 -16
- data/bin/lib/Image/ExifTool/XISF.pm +1 -1
- data/bin/lib/Image/ExifTool/XMP.pm +1 -1
- data/bin/lib/Image/ExifTool/XMP2.pl +1 -1
- data/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
- data/bin/lib/Image/ExifTool/ZIP.pm +1 -1
- data/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
- data/bin/lib/Image/ExifTool/iWork.pm +1 -1
- data/bin/lib/Image/ExifTool.pm +34 -12
- data/bin/lib/Image/ExifTool.pod +57 -46
- data/bin/perl-Image-ExifTool.spec +1 -1
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +4 -2
@@ -29,7 +29,7 @@
|
|
29
29
|
# Sets internal ERROR member from $! if there is an error reading
|
30
30
|
# the file.
|
31
31
|
#
|
32
|
-
# Legal: Copyright (c) 2003-
|
32
|
+
# Legal: Copyright (c) 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
33
33
|
# This library is free software; you can redistribute it and/or
|
34
34
|
# modify it under the same terms as Perl itself.
|
35
35
|
#------------------------------------------------------------------------------
|
@@ -3,7 +3,7 @@
|
|
3
3
|
#
|
4
4
|
# Description: Buffer to support random access reading of sequential file
|
5
5
|
#
|
6
|
-
# Legal: Copyright (c) 2003-
|
6
|
+
# Legal: Copyright (c) 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
7
7
|
# This library is free software; you can redistribute it and/or
|
8
8
|
# modify it under the same terms as Perl itself.
|
9
9
|
#------------------------------------------------------------------------------
|
@@ -236,7 +236,7 @@ the end of file is not allowed.
|
|
236
236
|
|
237
237
|
=head1 AUTHOR
|
238
238
|
|
239
|
-
Copyright 2003-
|
239
|
+
Copyright 2003-2025, 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.
|
@@ -163,7 +163,7 @@ based on unofficial sources which may be incomplete, inaccurate or outdated.
|
|
163
163
|
|
164
164
|
=head1 AUTHOR
|
165
165
|
|
166
|
-
Copyright 2003-
|
166
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
167
167
|
|
168
168
|
This library is free software; you can redistribute it and/or modify it
|
169
169
|
under the same terms as Perl itself.
|
@@ -477,7 +477,7 @@ main purpose of encryption, so this really can't be considered a bug.
|
|
477
477
|
|
478
478
|
=head1 AUTHOR
|
479
479
|
|
480
|
-
Copyright 2003-
|
480
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
481
481
|
|
482
482
|
This library is free software; you can redistribute it and/or modify it
|
483
483
|
under the same terms as Perl itself.
|
@@ -14,7 +14,7 @@ use strict;
|
|
14
14
|
use vars qw($VERSION);
|
15
15
|
use Image::ExifTool qw(:DataAccess :Utils);
|
16
16
|
|
17
|
-
$VERSION = '1.
|
17
|
+
$VERSION = '1.10';
|
18
18
|
|
19
19
|
sub ProcessAFCP($$);
|
20
20
|
|
@@ -63,10 +63,10 @@ for the AFCP specification.
|
|
63
63
|
#------------------------------------------------------------------------------
|
64
64
|
# Read/write AFCP information in a file
|
65
65
|
# Inputs: 0) ExifTool object reference, 1) dirInfo reference
|
66
|
-
# (Set '
|
66
|
+
# (Set 'ScanForTrailer' member in dirInfo to scan from current position for AFCP)
|
67
67
|
# Returns: 1 on success, 0 if this file didn't contain AFCP information
|
68
68
|
# -1 on write error or if the offsets were incorrect on reading
|
69
|
-
# - updates DataPos to point to actual AFCP start if
|
69
|
+
# - updates DataPos to point to actual AFCP start if ScanForTrailer is set
|
70
70
|
# - updates DirLen to trailer length
|
71
71
|
# - returns Fixup reference in dirInfo hash when writing
|
72
72
|
sub ProcessAFCP($$)
|
@@ -91,8 +91,8 @@ NoAFCP: for (;;) {
|
|
91
91
|
$fix = 0;
|
92
92
|
} else {
|
93
93
|
$rtnVal = -1;
|
94
|
-
# look for start of AXS trailer if '
|
95
|
-
last unless $$dirInfo{
|
94
|
+
# look for start of AXS trailer if 'ScanForTrailer'
|
95
|
+
last unless $$dirInfo{ScanForTrailer} and $raf->Seek($curPos, 0);
|
96
96
|
my $actualPos = $curPos;
|
97
97
|
# first look for header right at current position
|
98
98
|
for (;;) {
|
@@ -259,7 +259,7 @@ scanning for AFCP information.
|
|
259
259
|
|
260
260
|
=head1 AUTHOR
|
261
261
|
|
262
|
-
Copyright 2003-
|
262
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
263
263
|
|
264
264
|
This library is free software; you can redistribute it and/or modify it
|
265
265
|
under the same terms as Perl itself.
|
@@ -291,7 +291,7 @@ information from AIFF (Audio Interchange File Format) audio files.
|
|
291
291
|
|
292
292
|
=head1 AUTHOR
|
293
293
|
|
294
|
-
Copyright 2003-
|
294
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
295
295
|
|
296
296
|
This library is free software; you can redistribute it and/or modify it
|
297
297
|
under the same terms as Perl itself.
|
@@ -263,7 +263,7 @@ Currently doesn't parse MAC header unless it is at the start of the file.
|
|
263
263
|
|
264
264
|
=head1 AUTHOR
|
265
265
|
|
266
|
-
Copyright 2003-
|
266
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
267
267
|
|
268
268
|
This library is free software; you can redistribute it and/or modify it
|
269
269
|
under the same terms as Perl itself.
|
@@ -306,7 +306,7 @@ APP12 meta information.
|
|
306
306
|
|
307
307
|
=head1 AUTHOR
|
308
308
|
|
309
|
-
Copyright 2003-
|
309
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
310
310
|
|
311
311
|
This library is free software; you can redistribute it and/or modify it
|
312
312
|
under the same terms as Perl itself.
|
@@ -879,7 +879,7 @@ Windows Media Audio (WMA) and Windows Media Video (WMV) files.
|
|
879
879
|
|
880
880
|
=head1 AUTHOR
|
881
881
|
|
882
|
-
Copyright 2003-
|
882
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
883
883
|
|
884
884
|
This library is free software; you can redistribute it and/or modify it
|
885
885
|
under the same terms as Perl itself.
|
@@ -390,7 +390,7 @@ Apple maker notes in EXIF information.
|
|
390
390
|
|
391
391
|
=head1 AUTHOR
|
392
392
|
|
393
|
-
Copyright 2003-
|
393
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
394
394
|
|
395
395
|
This library is free software; you can redistribute it and/or modify it
|
396
396
|
under the same terms as Perl itself.
|
@@ -291,7 +291,7 @@ information from Audible audio books.
|
|
291
291
|
|
292
292
|
=head1 AUTHOR
|
293
293
|
|
294
|
-
Copyright 2003-
|
294
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
295
295
|
|
296
296
|
This library is free software; you can redistribute it and/or modify it
|
297
297
|
under the same terms as Perl itself.
|
@@ -335,7 +335,7 @@ This module contains definitions required by Image::ExifTool to read BMP
|
|
335
335
|
|
336
336
|
=head1 AUTHOR
|
337
337
|
|
338
|
-
Copyright 2003-
|
338
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
339
339
|
|
340
340
|
This library is free software; you can redistribute it and/or modify it
|
341
341
|
under the same terms as Perl itself.
|
@@ -231,7 +231,7 @@ This module contains definitions required by Image::ExifTool to read BPG
|
|
231
231
|
|
232
232
|
=head1 AUTHOR
|
233
233
|
|
234
|
-
Copyright 2003-
|
234
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
235
235
|
|
236
236
|
This library is free software; you can redistribute it and/or modify it
|
237
237
|
under the same terms as Perl itself.
|
@@ -445,7 +445,7 @@ compression ability).
|
|
445
445
|
|
446
446
|
=head1 AUTHOR
|
447
447
|
|
448
|
-
Copyright 2003-
|
448
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
449
449
|
Copyright 2002, Leon Bottou and Yann Le Cun
|
450
450
|
Copyright 2001, AT&T
|
451
451
|
Copyright 1999-2001, LizardTech Inc.
|
@@ -282,7 +282,7 @@ information in BigTIFF images.
|
|
282
282
|
|
283
283
|
=head1 AUTHOR
|
284
284
|
|
285
|
-
Copyright 2003-
|
285
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
286
286
|
|
287
287
|
This library is free software; you can redistribute it and/or modify it
|
288
288
|
under the same terms as Perl itself.
|
@@ -35,7 +35,7 @@ use Image::ExifTool::Sony;
|
|
35
35
|
use Image::ExifTool::Validate;
|
36
36
|
use Image::ExifTool::MacOS;
|
37
37
|
|
38
|
-
$VERSION = '3.
|
38
|
+
$VERSION = '3.61';
|
39
39
|
@ISA = qw(Exporter);
|
40
40
|
|
41
41
|
sub NumbersFirst($$);
|
@@ -84,7 +84,8 @@ my %tweakOrder = (
|
|
84
84
|
Nintendo => 'NikonCapture',
|
85
85
|
Pentax => 'Panasonic',
|
86
86
|
SonyIDC => 'Sony',
|
87
|
-
|
87
|
+
Vivo => 'SonyIDC',
|
88
|
+
Unknown => 'Vivo',
|
88
89
|
DNG => 'Unknown',
|
89
90
|
PrintIM => 'ICC_Profile',
|
90
91
|
Vorbis => 'Ogg',
|
@@ -100,6 +101,8 @@ my %tweakOrder = (
|
|
100
101
|
MWG => 'Shortcuts',
|
101
102
|
'FujiFilm::RAF' => 'FujiFilm::RAFHeader',
|
102
103
|
'FujiFilm::RAFData' => 'FujiFilm::RAF',
|
104
|
+
'QuickTime::AudioKeys' => 'QuickTime::Keys',
|
105
|
+
'QuickTime::VideoKeys' => 'QuickTime::AudioKeys',
|
103
106
|
);
|
104
107
|
|
105
108
|
# list of all recognized Format strings
|
@@ -437,15 +440,22 @@ appropriate table in the config file (see
|
|
437
440
|
L<example.config|../config.html#PREF> in the full distribution for an
|
438
441
|
example). Note that some tags with the same name but different ID's may
|
439
442
|
exist in the same location, but the family 7 group names may be used to
|
440
|
-
differentiate these.
|
441
|
-
QuickTime-based files; it extracts other track-specific and timed metadata,
|
442
|
-
but can not yet edit tags in these locations (with the exception of
|
443
|
-
track-level date/time tags).
|
443
|
+
differentiate these.
|
444
444
|
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
445
|
+
ExifTool currently writes
|
446
|
+
L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and
|
447
|
+
L<UserData|Image::ExifTool::TagNames/QuickTime UserData Tags> only as
|
448
|
+
top-level metadata, but select Keys tags are may be written to the audio or
|
449
|
+
video track. See the
|
450
|
+
L<AudioKeys|Image::ExifTool::TagNames/QuickTime AudioKeys Tags> and
|
451
|
+
L<VideoKeys|Image::ExifTool::TagNames/QuickTime VideoKeys Tags> tags for
|
452
|
+
more information.
|
453
|
+
|
454
|
+
Beware that the values of the Keys tags are actually stored inside an
|
455
|
+
ItemList atom in the file, so deleting the ItemList group as a block (ie.
|
456
|
+
C<-ItemList:all=>) also deletes Keys tags. Instead, to preserve Keys tags
|
457
|
+
the ItemList tags may be deleted individually with
|
458
|
+
C<-QuickTime:ItemList:all=>.
|
449
459
|
|
450
460
|
Alternate language tags may be accessed for
|
451
461
|
L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and
|
@@ -688,7 +698,7 @@ L<Image::ExifTool::BuildTagLookup|Image::ExifTool::BuildTagLookup>.
|
|
688
698
|
|
689
699
|
~head1 AUTHOR
|
690
700
|
|
691
|
-
Copyright 2003-
|
701
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
692
702
|
|
693
703
|
This library is free software; you can redistribute it and/or modify it
|
694
704
|
under the same terms as Perl itself.
|
@@ -1340,7 +1350,7 @@ TagID: foreach $tagID (@keys) {
|
|
1340
1350
|
$writable = 'yes' if $tw and $writable eq '1' or $writable eq '2';
|
1341
1351
|
$writable = '-' . ($tw ? $writable : '');
|
1342
1352
|
$writable .= '!' if $tw and ($$tagInfo{Protected} || 0) & 0x01;
|
1343
|
-
$writable .= '+' if $$tagInfo{List};
|
1353
|
+
$writable .= '+' if $$tagInfo{List} or $$tagInfo{IsList};
|
1344
1354
|
if (defined $$tagInfo{Permanent}) {
|
1345
1355
|
$writable .= '^' unless $$tagInfo{Permanent};
|
1346
1356
|
} elsif (defined $$table{PERMANENT}) {
|
@@ -1398,7 +1408,7 @@ TagID: foreach $tagID (@keys) {
|
|
1398
1408
|
}
|
1399
1409
|
$writable = "=struct" if $struct;
|
1400
1410
|
$writable .= '_' if defined $$tagInfo{Flat};
|
1401
|
-
$writable .= '+' if $$tagInfo{List};
|
1411
|
+
$writable .= '+' if $$tagInfo{List} or $$tagInfo{IsList};
|
1402
1412
|
$writable .= ':' if $$tagInfo{Mandatory};
|
1403
1413
|
if (defined $$tagInfo{Permanent}) {
|
1404
1414
|
$writable .= '^' unless $$tagInfo{Permanent};
|
@@ -1566,7 +1576,7 @@ TagID: foreach $tagID (@keys) {
|
|
1566
1576
|
$writable = 'string';
|
1567
1577
|
}
|
1568
1578
|
}
|
1569
|
-
$writable .= '+' if $$tagInfo{List};
|
1579
|
+
$writable .= '+' if $$tagInfo{List} or $$tagInfo{IsList};
|
1570
1580
|
push @vals, "($$tagInfo{Notes})" if $$tagInfo{Notes};
|
1571
1581
|
# handle PrintConv lookups in Structure elements
|
1572
1582
|
my $printConv = $$tagInfo{PrintConv};
|
@@ -1783,9 +1793,10 @@ sub NumbersFirst($$)
|
|
1783
1793
|
$rtnVal = $numbersFirst;
|
1784
1794
|
} else {
|
1785
1795
|
my ($a2, $b2) = ($a, $b);
|
1786
|
-
# expand numbers to 3 digits (with restrictions to avoid messing up
|
1787
|
-
|
1788
|
-
$
|
1796
|
+
# expand numbers to 3 digits (with restrictions to avoid messing up
|
1797
|
+
# ascii-hex tags -- Nikon LensID's are 23 characters long)
|
1798
|
+
$a2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $a2 =~ /^(APP|DMC-\w+ |dvtm_.*)?[.0-9 ]*$/ and length($a2)<23;
|
1799
|
+
$b2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $b2 =~ /^(APP|DMC-\w+ |dvtm_.*)?[.0-9 ]*$/ and length($b2)<23;
|
1789
1800
|
$caseInsensitive and $rtnVal = (lc($a2) cmp lc($b2));
|
1790
1801
|
$rtnVal or $rtnVal = ($a2 cmp $b2);
|
1791
1802
|
}
|
@@ -2811,7 +2822,7 @@ Returned list of writable pseudo tags.
|
|
2811
2822
|
|
2812
2823
|
=head1 AUTHOR
|
2813
2824
|
|
2814
|
-
Copyright 2003-
|
2825
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
2815
2826
|
|
2816
2827
|
This library is free software; you can redistribute it and/or modify it
|
2817
2828
|
under the same terms as Perl itself.
|
@@ -324,7 +324,7 @@ specification.
|
|
324
324
|
|
325
325
|
=head1 AUTHOR
|
326
326
|
|
327
|
-
Copyright 2003-
|
327
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
328
328
|
|
329
329
|
This library is free software; you can redistribute it and/or modify it
|
330
330
|
under the same terms as Perl itself.
|
@@ -88,7 +88,7 @@ sub ProcessCTMD($$$);
|
|
88
88
|
sub ProcessExifInfo($$$);
|
89
89
|
sub SwapWords($);
|
90
90
|
|
91
|
-
$VERSION = '4.
|
91
|
+
$VERSION = '4.87';
|
92
92
|
|
93
93
|
# Note: Removed 'USM' from 'L' lenses since it is redundant - PH
|
94
94
|
# (or is it? Ref 32 shows 5 non-USM L-type lenses)
|
@@ -632,8 +632,10 @@ $VERSION = '4.86';
|
|
632
632
|
'61182.55' => 'Canon RF-S 10-18mm F4.5-6.3 IS STM', #42
|
633
633
|
'61182.56' => 'Canon RF 35mm F1.4 L VCM', #42
|
634
634
|
'61182.57' => 'Canon RF 70-200mm F2.8 L IS USM Z', #42
|
635
|
-
'61182.58' => 'Canon RF
|
636
|
-
'61182.59' => 'Canon RF
|
635
|
+
'61182.58' => 'Canon RF 70-200mm F2.8 L IS USM Z + RF1.4x', #42
|
636
|
+
'61182.59' => 'Canon RF 70-200mm F2.8 L IS USM Z + RF2x', #42
|
637
|
+
'61182.60' => 'Canon RF 50mm F1.4 L VCM', #42
|
638
|
+
'61182.61' => 'Canon RF 24mm F1.4 L VCM', #42
|
637
639
|
65535 => 'n/a',
|
638
640
|
);
|
639
641
|
|
@@ -7023,6 +7025,8 @@ my %ciMaxFocal = (
|
|
7023
7025
|
317 => 'Canon RF-S 3.9mm F3.5 STM DUAL FISHEYE', #42
|
7024
7026
|
318 => 'Canon RF 28-70mm F2.8 IS STM', #42
|
7025
7027
|
319 => 'Canon RF 70-200mm F2.8 L IS USM Z', #42
|
7028
|
+
320 => 'Canon RF 70-200mm F2.8 L IS USM Z + RF1.4x', #42
|
7029
|
+
321 => 'Canon RF 70-200mm F2.8 L IS USM Z + RF2x', #42
|
7026
7030
|
325 => 'Canon RF 50mm F1.4 L VCM', #42
|
7027
7031
|
326 => 'Canon RF 24mm F1.4 L VCM', #42
|
7028
7032
|
# Note: add new RF lenses to %canonLensTypes with ID 61182
|
@@ -10591,7 +10595,7 @@ Canon maker notes in EXIF information.
|
|
10591
10595
|
|
10592
10596
|
=head1 AUTHOR
|
10593
10597
|
|
10594
|
-
Copyright 2003-
|
10598
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
10595
10599
|
|
10596
10600
|
This library is free software; you can redistribute it and/or modify it
|
10597
10601
|
under the same terms as Perl itself.
|
@@ -2873,7 +2873,7 @@ Image::ExifTool to read this information.
|
|
2873
2873
|
|
2874
2874
|
=head1 AUTHOR
|
2875
2875
|
|
2876
|
-
Copyright 2003-
|
2876
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
2877
2877
|
|
2878
2878
|
This library is free software; you can redistribute it and/or modify it
|
2879
2879
|
under the same terms as Perl itself.
|
@@ -888,7 +888,7 @@ tags.)
|
|
888
888
|
|
889
889
|
=head1 AUTHOR
|
890
890
|
|
891
|
-
Copyright 2003-
|
891
|
+
Copyright 2003-2025, 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.
|
@@ -2288,7 +2288,7 @@ files, and as a trailer in JPEG, CRW, CR2 and TIFF images.
|
|
2288
2288
|
|
2289
2289
|
=head1 AUTHOR
|
2290
2290
|
|
2291
|
-
Copyright 2003-
|
2291
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
2292
2292
|
|
2293
2293
|
This library is free software; you can redistribute it and/or modify it
|
2294
2294
|
under the same terms as Perl itself.
|
@@ -221,7 +221,7 @@ settings files (COS).
|
|
221
221
|
|
222
222
|
=head1 AUTHOR
|
223
223
|
|
224
|
-
Copyright 2003-
|
224
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
225
225
|
|
226
226
|
This library is free software; you can redistribute it and/or modify it
|
227
227
|
under the same terms as Perl itself.
|
@@ -2034,7 +2034,7 @@ Casio maker notes in EXIF information.
|
|
2034
2034
|
|
2035
2035
|
=head1 AUTHOR
|
2036
2036
|
|
2037
|
-
Copyright 2003-
|
2037
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
2038
2038
|
|
2039
2039
|
This library is free software; you can redistribute it and/or modify it
|
2040
2040
|
under the same terms as Perl itself.
|
@@ -422,7 +422,7 @@ when decoding certain types of information.
|
|
422
422
|
|
423
423
|
=head1 AUTHOR
|
424
424
|
|
425
|
-
Copyright 2003-
|
425
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
426
426
|
|
427
427
|
This library is free software; you can redistribute it and/or modify it
|
428
428
|
under the same terms as Perl itself.
|
@@ -3853,7 +3853,7 @@ No translation of special characters sets is done.
|
|
3853
3853
|
|
3854
3854
|
=head1 AUTHOR
|
3855
3855
|
|
3856
|
-
Copyright 2003-
|
3856
|
+
Copyright 2003-2025, Phil Harvey (philharvey66 at gmail.com)
|
3857
3857
|
|
3858
3858
|
This library is free software; you can redistribute it and/or modify it
|
3859
3859
|
under the same terms as Perl itself.
|