exiftool-vendored.pl 12.38.0 → 12.41.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 +62 -0
- package/bin/MANIFEST +2 -0
- package/bin/META.json +1 -1
- package/bin/META.yml +1 -1
- package/bin/README +45 -45
- package/bin/arg_files/exif2xmp.args +5 -0
- package/bin/arg_files/xmp2exif.args +6 -0
- package/bin/config_files/acdsee.config +6 -6
- package/bin/config_files/photoshop_paths.config +30 -7
- package/bin/config_files/picasa_faces.config +1 -1
- package/bin/config_files/pix4d.config +2 -2
- package/bin/config_files/tiff_version.config +2 -2
- package/bin/exiftool +96 -65
- 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 +6 -4
- package/bin/lib/Image/ExifTool/CBOR.pm +1 -1
- package/bin/lib/Image/ExifTool/Canon.pm +79 -5
- 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 +53 -21
- package/bin/lib/Image/ExifTool/FITS.pm +1 -1
- package/bin/lib/Image/ExifTool/FLAC.pm +1 -1
- package/bin/lib/Image/ExifTool/FLIF.pm +1 -1
- package/bin/lib/Image/ExifTool/FLIR.pm +16 -4
- 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 +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 +4 -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 +1 -1
- 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 +1 -1
- package/bin/lib/Image/ExifTool/JVC.pm +1 -1
- package/bin/lib/Image/ExifTool/Jpeg2000.pm +1 -1
- 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 +10 -10
- package/bin/lib/Image/ExifTool/MakerNotes.pm +13 -2
- 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 +924 -184
- package/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- package/bin/lib/Image/ExifTool/NikonCustom.pm +519 -6
- package/bin/lib/Image/ExifTool/NikonSettings.pm +17 -18
- 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 +8 -7
- 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 +28 -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 +1 -1
- package/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/Parrot.pm +1 -1
- package/bin/lib/Image/ExifTool/Pentax.pm +3 -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 +10 -6
- package/bin/lib/Image/ExifTool/QuickTimeStream.pl +16 -5
- 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 +6 -2
- 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 +3 -2
- 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 +11 -5
- 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 +6382 -6290
- package/bin/lib/Image/ExifTool/TagNames.pod +340 -21
- 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 +9 -4
- package/bin/lib/Image/ExifTool/WriteXMP.pl +3 -1
- package/bin/lib/Image/ExifTool/Writer.pl +6 -5
- package/bin/lib/Image/ExifTool/XMP.pm +49 -23
- package/bin/lib/Image/ExifTool/XMP2.pl +3 -2
- package/bin/lib/Image/ExifTool/XMPStruct.pl +22 -8
- 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 +21 -5
- package/bin/lib/Image/ExifTool.pod +71 -69
- package/bin/perl-Image-ExifTool.spec +43 -43
- package/bin/pp_build_exe.args +5 -5
- package/package.json +14 -3
package/bin/exiftool
CHANGED
|
@@ -8,9 +8,10 @@
|
|
|
8
8
|
# (See html/history.html for revision history)
|
|
9
9
|
#------------------------------------------------------------------------------
|
|
10
10
|
use strict;
|
|
11
|
+
use warnings;
|
|
11
12
|
require 5.004;
|
|
12
13
|
|
|
13
|
-
my $version = '12.
|
|
14
|
+
my $version = '12.41';
|
|
14
15
|
|
|
15
16
|
# add our 'lib' directory to the include list BEFORE 'use Image::ExifTool'
|
|
16
17
|
BEGIN {
|
|
@@ -109,6 +110,8 @@ my %database; # lookup for database information based on file name (in Exi
|
|
|
109
110
|
my %filterExt; # lookup for filtered extensions
|
|
110
111
|
my %ignore; # directory names to ignore
|
|
111
112
|
my $ignoreHidden; # flag to ignore hidden files
|
|
113
|
+
my %outComma; # flag that output text file needs a comma
|
|
114
|
+
my %outTrailer; # trailer for output text file
|
|
112
115
|
my %preserveTime; # preserved timestamps for files
|
|
113
116
|
my %printFmt; # the contents of the print format file
|
|
114
117
|
my %setTags; # hash of list references for tags to set from files
|
|
@@ -441,6 +444,8 @@ undef %database;
|
|
|
441
444
|
undef %endDir;
|
|
442
445
|
undef %filterExt;
|
|
443
446
|
undef %ignore;
|
|
447
|
+
undef %outComma;
|
|
448
|
+
undef %outTrailer;
|
|
444
449
|
undef %printFmt;
|
|
445
450
|
undef %preserveTime;
|
|
446
451
|
undef %setTags;
|
|
@@ -1821,8 +1826,21 @@ if ($filtered and not $validFile) {
|
|
|
1821
1826
|
PrintCSV() if $csv and not $isWriting;
|
|
1822
1827
|
|
|
1823
1828
|
# print folder/file trailer if necessary
|
|
1824
|
-
|
|
1825
|
-
|
|
1829
|
+
if ($textOut) {
|
|
1830
|
+
foreach (keys %outTrailer) {
|
|
1831
|
+
next unless $outTrailer{$_};
|
|
1832
|
+
if ($mt->Open(\*OUTTRAIL, $_, '>>')) {
|
|
1833
|
+
my $fp = \*OUTTRAIL;
|
|
1834
|
+
print $fp $outTrailer{$_};
|
|
1835
|
+
close $fp;
|
|
1836
|
+
} else {
|
|
1837
|
+
Error("Error appending to $_\n");
|
|
1838
|
+
}
|
|
1839
|
+
}
|
|
1840
|
+
} else {
|
|
1841
|
+
print $sectTrailer if $sectTrailer;
|
|
1842
|
+
print $fileTrailer if $fileTrailer and not $fileHeader;
|
|
1843
|
+
}
|
|
1826
1844
|
|
|
1827
1845
|
my $totWr = $countGoodWr + $countBadWr + $countSameWr + $countCopyWr +
|
|
1828
1846
|
$countGoodCr + $countBadCr;
|
|
@@ -2160,6 +2178,9 @@ sub GetImageInfo($$)
|
|
|
2160
2178
|
$tmpText = $outfile unless $append;
|
|
2161
2179
|
}
|
|
2162
2180
|
|
|
2181
|
+
# restore state of comma flag for this file if appending
|
|
2182
|
+
$comma = $outComma{$outfile} if $append and ($textOverwrite & 0x02);
|
|
2183
|
+
|
|
2163
2184
|
# print the results for this file
|
|
2164
2185
|
if (%printFmt) {
|
|
2165
2186
|
# output using print format file (-p) option
|
|
@@ -2221,7 +2242,7 @@ sub GetImageInfo($$)
|
|
|
2221
2242
|
if ($fp) {
|
|
2222
2243
|
# print file header (only once)
|
|
2223
2244
|
if ($fileHeader) {
|
|
2224
|
-
print $fp $fileHeader;
|
|
2245
|
+
print $fp $fileHeader unless defined $outfile and ($created{$outfile} or $appended{$outfile});
|
|
2225
2246
|
undef $fileHeader unless $textOut;
|
|
2226
2247
|
}
|
|
2227
2248
|
if ($html) {
|
|
@@ -2674,9 +2695,17 @@ TAG: foreach $tag (@foundTags) {
|
|
|
2674
2695
|
}
|
|
2675
2696
|
}
|
|
2676
2697
|
if ($outfile) {
|
|
2677
|
-
|
|
2678
|
-
|
|
2679
|
-
|
|
2698
|
+
if ($textOverwrite & 0x02) {
|
|
2699
|
+
# save state of this file if we may be appending
|
|
2700
|
+
$outComma{$outfile} = $comma;
|
|
2701
|
+
$outTrailer{$outfile} = '';
|
|
2702
|
+
$outTrailer{$outfile} .= $sectTrailer and $sectTrailer = '' if $sectTrailer;
|
|
2703
|
+
$outTrailer{$outfile} .= $fileTrailer if $fileTrailer;
|
|
2704
|
+
} else {
|
|
2705
|
+
# write section and file trailers before closing the file
|
|
2706
|
+
print $fp $sectTrailer and $sectTrailer = '' if $sectTrailer;
|
|
2707
|
+
print $fp $fileTrailer if $fileTrailer;
|
|
2708
|
+
}
|
|
2680
2709
|
close($fp);
|
|
2681
2710
|
undef $tmpText;
|
|
2682
2711
|
if ($lineCount) {
|
|
@@ -2926,7 +2955,7 @@ sub SetImageInfo($$$)
|
|
|
2926
2955
|
}
|
|
2927
2956
|
}
|
|
2928
2957
|
if (defined $outfile) {
|
|
2929
|
-
$verbose and print $vout "'${infile}' --> '${outfile}'\n";
|
|
2958
|
+
defined $verbose and print $vout "'${infile}' --> '${outfile}'\n";
|
|
2930
2959
|
# create output directory if necessary
|
|
2931
2960
|
CreateDirectory($outfile);
|
|
2932
2961
|
# set temporary file (automatically erased on abnormal exit)
|
|
@@ -4459,7 +4488,7 @@ B<exiftool> [I<OPTIONS>] -I<TAG>[+-E<lt>]=[I<VALUE>]... I<FILE>...
|
|
|
4459
4488
|
=head2 Copying
|
|
4460
4489
|
|
|
4461
4490
|
B<exiftool> [I<OPTIONS>] B<-tagsFromFile> I<SRCFILE>
|
|
4462
|
-
[-I<
|
|
4491
|
+
[-[I<DSTTAG>E<lt>]I<SRCTAG>...] I<FILE>...
|
|
4463
4492
|
|
|
4464
4493
|
=head2 Other
|
|
4465
4494
|
|
|
@@ -4499,48 +4528,48 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
|
4499
4528
|
|
|
4500
4529
|
File Types
|
|
4501
4530
|
------------+-------------+-------------+-------------+------------
|
|
4502
|
-
360 r/w | DR4 r/w/c | JNG r/w |
|
|
4503
|
-
3FR r | DSS r | JP2 r/w |
|
|
4504
|
-
3G2 r/w | DV r | JPEG r/w |
|
|
4505
|
-
3GP r/w | DVB r/w | JSON r |
|
|
4506
|
-
A r | DVR-MS r | JXL r |
|
|
4507
|
-
AA r | DYLIB r | K25 r |
|
|
4508
|
-
AAE r | EIP r | KDC r |
|
|
4509
|
-
AAX r/w | EPS r/w | KEY r |
|
|
4510
|
-
ACR r | EPUB r | LA r |
|
|
4511
|
-
AFM r | ERF r/w | LFP r |
|
|
4512
|
-
AI r/w | EXE r | LIF r |
|
|
4513
|
-
AIFF r | EXIF r/w/c | LNK r |
|
|
4514
|
-
APE r | EXR r | LRV r/w |
|
|
4515
|
-
ARQ r/w | EXV r/w/c | M2TS r |
|
|
4516
|
-
ARW r/w | F4A/V r/w | M4A/V r/w |
|
|
4517
|
-
ASF r | FFF r/w | MACOS r |
|
|
4518
|
-
AVI r | FITS r | MAX r |
|
|
4519
|
-
AVIF r/w | FLA r | MEF r/w |
|
|
4520
|
-
AZW r | FLAC r | MIE r/w/ |
|
|
4521
|
-
BMP r | FLIF r/w | MIFF r c |
|
|
4522
|
-
BPG r | FLV r | MKA r |
|
|
4523
|
-
BTF r | FPF r | MKS r |
|
|
4524
|
-
CHM r | FPX r | MKV r |
|
|
4525
|
-
COS r | GIF r/w | MNG r/w |
|
|
4526
|
-
CR2 r/w | GPR r/w | MOBI r |
|
|
4527
|
-
CR3 r/w | GZ r | MODD r |
|
|
4528
|
-
CRM r/w | HDP r/w | MOI r |
|
|
4529
|
-
CRW r/w | HDR r | MOS r/w |
|
|
4530
|
-
CS1 r/w | HEIC r/w | MOV r/w |
|
|
4531
|
-
CSV r | HEIF r/w | MP3 r |
|
|
4532
|
-
CZI r | HTML r | MP4 r/w |
|
|
4533
|
-
DCM r | ICC r/w/c | MPC r |
|
|
4534
|
-
DCP r/w | ICS r | MPG r |
|
|
4535
|
-
DCR r | IDML r | MPO r/w |
|
|
4536
|
-
DFONT r | IIQ r/w | MQV r/w |
|
|
4537
|
-
DIVX r | IND r/w | MRC r |
|
|
4538
|
-
DJVU r | INSP r/w | MRW r/w |
|
|
4539
|
-
DLL r | INSV r | MXF r |
|
|
4540
|
-
DNG r/w | INX r | NEF r/w |
|
|
4541
|
-
DOC r | ISO r |
|
|
4542
|
-
DOCX r | ITC r |
|
|
4543
|
-
DPX r | J2C r |
|
|
4531
|
+
360 r/w | DR4 r/w/c | JNG r/w | O r | RAW r/w
|
|
4532
|
+
3FR r | DSS r | JP2 r/w | ODP r | RIFF r
|
|
4533
|
+
3G2 r/w | DV r | JPEG r/w | ODS r | RSRC r
|
|
4534
|
+
3GP r/w | DVB r/w | JSON r | ODT r | RTF r
|
|
4535
|
+
A r | DVR-MS r | JXL r | OFR r | RW2 r/w
|
|
4536
|
+
AA r | DYLIB r | K25 r | OGG r | RWL r/w
|
|
4537
|
+
AAE r | EIP r | KDC r | OGV r | RWZ r
|
|
4538
|
+
AAX r/w | EPS r/w | KEY r | ONP r | RM r
|
|
4539
|
+
ACR r | EPUB r | LA r | OPUS r | SEQ r
|
|
4540
|
+
AFM r | ERF r/w | LFP r | ORF r/w | SKETCH r
|
|
4541
|
+
AI r/w | EXE r | LIF r | ORI r/w | SO r
|
|
4542
|
+
AIFF r | EXIF r/w/c | LNK r | OTF r | SR2 r/w
|
|
4543
|
+
APE r | EXR r | LRV r/w | PAC r | SRF r
|
|
4544
|
+
ARQ r/w | EXV r/w/c | M2TS r | PAGES r | SRW r/w
|
|
4545
|
+
ARW r/w | F4A/V r/w | M4A/V r/w | PBM r/w | SVG r
|
|
4546
|
+
ASF r | FFF r/w | MACOS r | PCD r | SWF r
|
|
4547
|
+
AVI r | FITS r | MAX r | PCX r | THM r/w
|
|
4548
|
+
AVIF r/w | FLA r | MEF r/w | PDB r | TIFF r/w
|
|
4549
|
+
AZW r | FLAC r | MIE r/w/ | PDF r/w | TORRENT r
|
|
4550
|
+
BMP r | FLIF r/w | MIFF r c | PEF r/w | TTC r
|
|
4551
|
+
BPG r | FLV r | MKA r | PFA r | TTF r
|
|
4552
|
+
BTF r | FPF r | MKS r | PFB r | TXT r
|
|
4553
|
+
CHM r | FPX r | MKV r | PFM r | VCF r
|
|
4554
|
+
COS r | GIF r/w | MNG r/w | PGF r | VRD r/w/c
|
|
4555
|
+
CR2 r/w | GPR r/w | MOBI r | PGM r/w | VSD r
|
|
4556
|
+
CR3 r/w | GZ r | MODD r | PLIST r | WAV r
|
|
4557
|
+
CRM r/w | HDP r/w | MOI r | PICT r | WDP r/w
|
|
4558
|
+
CRW r/w | HDR r | MOS r/w | PMP r | WEBP r
|
|
4559
|
+
CS1 r/w | HEIC r/w | MOV r/w | PNG r/w | WEBM r
|
|
4560
|
+
CSV r | HEIF r/w | MP3 r | PPM r/w | WMA r
|
|
4561
|
+
CZI r | HTML r | MP4 r/w | PPT r | WMV r
|
|
4562
|
+
DCM r | ICC r/w/c | MPC r | PPTX r | WTV r
|
|
4563
|
+
DCP r/w | ICS r | MPG r | PS r/w | WV r
|
|
4564
|
+
DCR r | IDML r | MPO r/w | PSB r/w | X3F r/w
|
|
4565
|
+
DFONT r | IIQ r/w | MQV r/w | PSD r/w | XCF r
|
|
4566
|
+
DIVX r | IND r/w | MRC r | PSP r | XLS r
|
|
4567
|
+
DJVU r | INSP r/w | MRW r/w | QTIF r/w | XLSX r
|
|
4568
|
+
DLL r | INSV r | MXF r | R3D r | XMP r/w/c
|
|
4569
|
+
DNG r/w | INX r | NEF r/w | RA r | ZIP r
|
|
4570
|
+
DOC r | ISO r | NKSC r/w | RAF r/w |
|
|
4571
|
+
DOCX r | ITC r | NRW r/w | RAM r |
|
|
4572
|
+
DPX r | J2C r | NUMBERS r | RAR r |
|
|
4544
4573
|
|
|
4545
4574
|
Meta Information
|
|
4546
4575
|
----------------------+----------------------+---------------------
|
|
@@ -5136,13 +5165,14 @@ The following examples demonstrate basic use of the B<-csv> option:
|
|
|
5136
5165
|
# update metadata for all images in a directory from CSV file
|
|
5137
5166
|
exiftool -csv=a.csv dir
|
|
5138
5167
|
|
|
5139
|
-
|
|
5140
|
-
the API MissingTagValue is set to an empty string
|
|
5168
|
+
When importing, empty values are ignored unless the B<-f> option is used and
|
|
5169
|
+
the API MissingTagValue is set to an empty string (in which case the tag is
|
|
5141
5170
|
deleted). Also, FileName and Directory columns are ignored if they exist
|
|
5142
|
-
(ie. ExifTool will not attempt to write these tags with a CSV import)
|
|
5143
|
-
force a tag to be deleted, use the B<-f>
|
|
5144
|
-
the CSV file (or to the MissingTagValue
|
|
5145
|
-
Multiple databases may be imported in a
|
|
5171
|
+
(ie. ExifTool will not attempt to write these tags with a CSV import), but
|
|
5172
|
+
all other columns are imported. To force a tag to be deleted, use the B<-f>
|
|
5173
|
+
option and set the value to "-" in the CSV file (or to the MissingTagValue
|
|
5174
|
+
if this API option was used). Multiple databases may be imported in a
|
|
5175
|
+
single command.
|
|
5146
5176
|
|
|
5147
5177
|
When exporting a CSV file, the B<-g> or B<-G> option adds group names to the
|
|
5148
5178
|
tag headings. If the B<-a> option is used to allow duplicate tag names, the
|
|
@@ -5436,7 +5466,7 @@ with this command:
|
|
|
5436
5466
|
|
|
5437
5467
|
produces output like this:
|
|
5438
5468
|
|
|
5439
|
-
-- Generated by ExifTool 12.
|
|
5469
|
+
-- Generated by ExifTool 12.41 --
|
|
5440
5470
|
File: a.jpg - 2003:10:31 15:44:19
|
|
5441
5471
|
(f/5.6, 1/60s, ISO 100)
|
|
5442
5472
|
File: b.jpg - 2006:05:23 11:57:38
|
|
@@ -5555,7 +5585,9 @@ level greater than 0, most other options are ignored and normal console
|
|
|
5555
5585
|
output is suppressed unless specific tags are extracted. Using B<-v0>
|
|
5556
5586
|
causes the console output buffer to be flushed after each line (which may be
|
|
5557
5587
|
useful to avoid delays when piping exiftool output), and prints the name of
|
|
5558
|
-
each processed file when writing
|
|
5588
|
+
each processed file when writing and the new file name when renaming,
|
|
5589
|
+
moving or copying. Verbose levels above B<-v0> do not flush after each
|
|
5590
|
+
line. Also see the B<-progress> option.
|
|
5559
5591
|
|
|
5560
5592
|
=item B<-w>[+|!] I<EXT> or I<FMT> (B<-textOut>)
|
|
5561
5593
|
|
|
@@ -5768,11 +5800,10 @@ an XMP extension for the output file.
|
|
|
5768
5800
|
=item B<-a>, B<--a> (B<-duplicates>, B<--duplicates>)
|
|
5769
5801
|
|
|
5770
5802
|
Allow (B<-a>) or suppress (B<--a>) duplicate tag names to be extracted. By
|
|
5771
|
-
default, duplicate tags are suppressed when reading unless the B<-ee> or
|
|
5772
|
-
|
|
5773
|
-
|
|
5774
|
-
|
|
5775
|
-
when copying.
|
|
5803
|
+
default, duplicate tags are suppressed when reading unless the B<-ee> or B<-X>
|
|
5804
|
+
options are used or the Duplicates option is enabled in the configuration file.
|
|
5805
|
+
When writing, this option allows multiple Warning messages to be shown.
|
|
5806
|
+
Duplicate tags are always extracted when copying.
|
|
5776
5807
|
|
|
5777
5808
|
=item B<-e> (B<--composite>)
|
|
5778
5809
|
|
|
@@ -7250,7 +7281,7 @@ the commands if B<-execute> was used).
|
|
|
7250
7281
|
|
|
7251
7282
|
=head1 AUTHOR
|
|
7252
7283
|
|
|
7253
|
-
Copyright 2003-
|
|
7284
|
+
Copyright 2003-2022, Phil Harvey
|
|
7254
7285
|
|
|
7255
7286
|
This is free software; you can redistribute it and/or modify it under the
|
|
7256
7287
|
same terms as Perl itself.
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
#
|
|
26
26
|
# May also be used for string i/o (just pass a scalar reference)
|
|
27
27
|
#
|
|
28
|
-
# Legal: Copyright (c) 2003-
|
|
28
|
+
# Legal: Copyright (c) 2003-2022 Phil Harvey (philharvey66 at gmail.com)
|
|
29
29
|
# This library is free software; you can redistribute it and/or
|
|
30
30
|
# modify it under the same terms as Perl itself.
|
|
31
31
|
#------------------------------------------------------------------------------
|
|
@@ -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-2022 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-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.
|
|
@@ -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-2022, 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.
|
|
@@ -259,7 +259,7 @@ scanning for AFCP information.
|
|
|
259
259
|
|
|
260
260
|
=head1 AUTHOR
|
|
261
261
|
|
|
262
|
-
Copyright 2003-
|
|
262
|
+
Copyright 2003-2022, 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.
|
|
@@ -287,7 +287,7 @@ information from AIFF (Audio Interchange File Format) audio files.
|
|
|
287
287
|
|
|
288
288
|
=head1 AUTHOR
|
|
289
289
|
|
|
290
|
-
Copyright 2003-
|
|
290
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
291
291
|
|
|
292
292
|
This library is free software; you can redistribute it and/or modify it
|
|
293
293
|
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-2022, 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.
|
|
@@ -305,7 +305,7 @@ APP12 meta information.
|
|
|
305
305
|
|
|
306
306
|
=head1 AUTHOR
|
|
307
307
|
|
|
308
|
-
Copyright 2003-
|
|
308
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
309
309
|
|
|
310
310
|
This library is free software; you can redistribute it and/or modify it
|
|
311
311
|
under the same terms as Perl itself.
|
|
@@ -876,7 +876,7 @@ Windows Media Audio (WMA) and Windows Media Video (WMV) files.
|
|
|
876
876
|
|
|
877
877
|
=head1 AUTHOR
|
|
878
878
|
|
|
879
|
-
Copyright 2003-
|
|
879
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
880
880
|
|
|
881
881
|
This library is free software; you can redistribute it and/or modify it
|
|
882
882
|
under the same terms as Perl itself.
|
|
@@ -149,7 +149,7 @@ Apple maker notes in EXIF information.
|
|
|
149
149
|
|
|
150
150
|
=head1 AUTHOR
|
|
151
151
|
|
|
152
|
-
Copyright 2003-
|
|
152
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
153
153
|
|
|
154
154
|
This library is free software; you can redistribute it and/or modify it
|
|
155
155
|
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-2022, 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-2022, 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-2022, 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-2022, 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.
|
|
@@ -275,7 +275,7 @@ information in BigTIFF images.
|
|
|
275
275
|
|
|
276
276
|
=head1 AUTHOR
|
|
277
277
|
|
|
278
|
-
Copyright 2003-
|
|
278
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
279
279
|
|
|
280
280
|
This library is free software; you can redistribute it and/or modify it
|
|
281
281
|
under the same terms as Perl itself.
|
|
@@ -669,7 +669,7 @@ L<Image::ExifTool::BuildTagLookup|Image::ExifTool::BuildTagLookup>.
|
|
|
669
669
|
|
|
670
670
|
~head1 AUTHOR
|
|
671
671
|
|
|
672
|
-
Copyright 2003-
|
|
672
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
673
673
|
|
|
674
674
|
This library is free software; you can redistribute it and/or modify it
|
|
675
675
|
under the same terms as Perl itself.
|
|
@@ -905,8 +905,10 @@ TagID: foreach $tagID (@keys) {
|
|
|
905
905
|
foreach (@grps) {
|
|
906
906
|
warn "Group name starts with 'ID-' for $short $name\n" if /^ID-/i;
|
|
907
907
|
}
|
|
908
|
-
if ($isXMP and not $$tagInfo{Avoid} and not $$tagInfo{Struct}
|
|
909
|
-
|
|
908
|
+
if ($isXMP and not $$tagInfo{Avoid} and not $$tagInfo{Struct} and
|
|
909
|
+
($$tagInfo{Writable} or $$table{WRITABLE}))
|
|
910
|
+
{
|
|
911
|
+
$dupXmpTag{$name} and warn "Duplicate writable XMP tag $name\n";
|
|
910
912
|
$dupXmpTag{$name} = 1;
|
|
911
913
|
}
|
|
912
914
|
# validate Name (must not start with a digit or else XML output will not be valid;
|
|
@@ -2760,7 +2762,7 @@ Returned list of writable pseudo tags.
|
|
|
2760
2762
|
|
|
2761
2763
|
=head1 AUTHOR
|
|
2762
2764
|
|
|
2763
|
-
Copyright 2003-
|
|
2765
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
2764
2766
|
|
|
2765
2767
|
This library is free software; you can redistribute it and/or modify it
|
|
2766
2768
|
under the same terms as Perl itself.
|
|
@@ -307,7 +307,7 @@ specification.
|
|
|
307
307
|
|
|
308
308
|
=head1 AUTHOR
|
|
309
309
|
|
|
310
|
-
Copyright 2003-
|
|
310
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
311
311
|
|
|
312
312
|
This library is free software; you can redistribute it and/or modify it
|
|
313
313
|
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.57';
|
|
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)
|
|
@@ -208,6 +208,7 @@ $VERSION = '4.55';
|
|
|
208
208
|
53 => 'Canon EF-S 18-55mm f/3.5-5.6 III', #Jon Charnas
|
|
209
209
|
54 => 'Canon EF-S 55-250mm f/4-5.6 IS II', #47
|
|
210
210
|
60 => 'Irix 11mm f/4', #50
|
|
211
|
+
63 => 'Irix 30mm F1.4 Dragonfly', #IB
|
|
211
212
|
80 => 'Canon TS-E 50mm f/2.8L Macro', #42
|
|
212
213
|
81 => 'Canon TS-E 90mm f/2.8L Macro', #42
|
|
213
214
|
82 => 'Canon TS-E 135mm f/4L Macro', #42
|
|
@@ -599,6 +600,9 @@ $VERSION = '4.55';
|
|
|
599
600
|
'61182.25' => 'Canon RF 100-400mm F5.6-8 IS USM + RF1.4x', #42 (NC)
|
|
600
601
|
'61182.26' => 'Canon RF 100-400mm F5.6-8 IS USM + RF2x', #42 (NC)
|
|
601
602
|
'61182.27' => 'Canon RF 16mm F2.8 STM', #42
|
|
603
|
+
'61182.28' => 'Canon RF 400mm F2.8L IS USM', #IB
|
|
604
|
+
'61182.29' => 'Canon RF 400mm F2.8L IS USM + RF1.4x', #IB
|
|
605
|
+
'61182.30' => 'Canon RF 400mm F2.8L IS USM + RF2x', #IB
|
|
602
606
|
#'61182.xx' => 'Canon RF 100mm F2.8L MACRO IS USM',
|
|
603
607
|
65535 => 'n/a',
|
|
604
608
|
);
|
|
@@ -970,8 +974,8 @@ my %canonQuality = (
|
|
|
970
974
|
4 => 'RAW',
|
|
971
975
|
5 => 'Superfine',
|
|
972
976
|
7 => 'CRAW', #42
|
|
973
|
-
130 => '
|
|
974
|
-
131 => '
|
|
977
|
+
130 => 'Light (RAW)', #github#119
|
|
978
|
+
131 => 'Standard (RAW)', #github#119
|
|
975
979
|
);
|
|
976
980
|
my %canonImageSize = (
|
|
977
981
|
-1 => 'n/a',
|
|
@@ -1018,7 +1022,7 @@ my %canonWhiteBalance = (
|
|
|
1018
1022
|
20 => 'PC Set4', #PH
|
|
1019
1023
|
21 => 'PC Set5', #PH
|
|
1020
1024
|
# 22 - Custom 2?
|
|
1021
|
-
23 => 'Auto (ambience priority)', #PH (5DS)
|
|
1025
|
+
23 => 'Auto (ambience priority)', #PH (5DS) (perhaps this needs re-thinking?: forum13295)
|
|
1022
1026
|
# 30 - Click White Balance?
|
|
1023
1027
|
# 31 - Shot Settings?
|
|
1024
1028
|
# 137 - Tungsten?
|
|
@@ -2053,6 +2057,13 @@ my %offOn = ( 0 => 'Off', 1 => 'On' );
|
|
|
2053
2057
|
TagTable => 'Image::ExifTool::Canon::HDRInfo',
|
|
2054
2058
|
}
|
|
2055
2059
|
},
|
|
2060
|
+
0x4026 => { #github#119
|
|
2061
|
+
Name => 'LogInfo',
|
|
2062
|
+
SubDirectory => {
|
|
2063
|
+
Validate => 'Image::ExifTool::Canon::Validate($dirData,$subdirStart,$size)',
|
|
2064
|
+
TagTable => 'Image::ExifTool::Canon::LogInfo',
|
|
2065
|
+
}
|
|
2066
|
+
},
|
|
2056
2067
|
0x4028 => { #PH
|
|
2057
2068
|
Name => 'AFConfig', # (AFTabInfo)
|
|
2058
2069
|
SubDirectory => {
|
|
@@ -2126,6 +2137,7 @@ my %offOn = ( 0 => 'Off', 1 => 'On' );
|
|
|
2126
2137
|
4 => 'Continuous, Low', #PH
|
|
2127
2138
|
5 => 'Continuous, High', #PH
|
|
2128
2139
|
6 => 'Silent Single', #PH
|
|
2140
|
+
8 => 'Continuous, High+', #WolfgangGulcker
|
|
2129
2141
|
# ref A: https://exiftool.org/forum/index.php/topic,5701.msg27843.html#msg27843
|
|
2130
2142
|
9 => 'Single, Silent', #A
|
|
2131
2143
|
10 => 'Continuous, Silent', #A
|
|
@@ -6789,6 +6801,9 @@ my %ciMaxFocal = (
|
|
|
6789
6801
|
284 => 'Canon RF 100-400mm F5.6-8 IS USM + RF1.4x', #42 (NC)
|
|
6790
6802
|
285 => 'Canon RF 100-400mm F5.6-8 IS USM + RF2x', #42 (NC)
|
|
6791
6803
|
288 => 'Canon RF 16mm F2.8 STM', #42
|
|
6804
|
+
289 => 'Canon RF 400mm F2.8L IS USM', #IB
|
|
6805
|
+
290 => 'Canon RF 400mm F2.8L IS USM + RF1.4x', #IB
|
|
6806
|
+
291 => 'Canon RF 400mm F2.8L IS USM + RF2x', #IB
|
|
6792
6807
|
#xxx => 'Canon RF 100mm F2.8L MACRO IS USM',
|
|
6793
6808
|
# Note: add new RF lenses to %canonLensTypes with ID 61182
|
|
6794
6809
|
},
|
|
@@ -8701,6 +8716,65 @@ my %filterConv = (
|
|
|
8701
8716
|
# 3 - maybe related to AutoImageAlign?
|
|
8702
8717
|
);
|
|
8703
8718
|
|
|
8719
|
+
# More color information (MakerNotes tag 0x4026) (ref github issue #119)
|
|
8720
|
+
%Image::ExifTool::Canon::LogInfo = (
|
|
8721
|
+
%binaryDataAttrs,
|
|
8722
|
+
FORMAT => 'int32s',
|
|
8723
|
+
FIRST_ENTRY => 1,
|
|
8724
|
+
PRIORITY => 0,
|
|
8725
|
+
4 => {
|
|
8726
|
+
Name => 'CompressionFormat',
|
|
8727
|
+
PrintConv => {
|
|
8728
|
+
0 => 'Editing (ALL-I)',
|
|
8729
|
+
1 => 'Standard (IPB)',
|
|
8730
|
+
2 => 'Light (IPB)',
|
|
8731
|
+
3 => 'Motion JPEG',
|
|
8732
|
+
4 => 'RAW', # either Standard or Light, depending on Quality
|
|
8733
|
+
},
|
|
8734
|
+
},
|
|
8735
|
+
6 => { # 0 to 7
|
|
8736
|
+
Name => 'Sharpness',
|
|
8737
|
+
RawConv => '$val == 0x7fffffff ? undef : $val',
|
|
8738
|
+
},
|
|
8739
|
+
7 => { # -4 to 4
|
|
8740
|
+
Name => 'Saturation',
|
|
8741
|
+
RawConv => '$val == 0x7fffffff ? undef : $val',
|
|
8742
|
+
%Image::ExifTool::Exif::printParameter,
|
|
8743
|
+
},
|
|
8744
|
+
8 => { # -4 to 4
|
|
8745
|
+
Name => 'ColorTone',
|
|
8746
|
+
RawConv => '$val == 0x7fffffff ? undef : $val',
|
|
8747
|
+
%Image::ExifTool::Exif::printParameter,
|
|
8748
|
+
},
|
|
8749
|
+
9 => {
|
|
8750
|
+
Name => 'ColorSpace2',
|
|
8751
|
+
RawConv => '$val == 0x7fffffff ? undef : $val',
|
|
8752
|
+
PrintConv => {
|
|
8753
|
+
0 => 'BT.709',
|
|
8754
|
+
1 => 'BT.2020',
|
|
8755
|
+
2 => 'CinemaGamut',
|
|
8756
|
+
},
|
|
8757
|
+
},
|
|
8758
|
+
10 => {
|
|
8759
|
+
Name => 'ColorMatrix',
|
|
8760
|
+
RawConv => '$val == 0x7fffffff ? undef : $val',
|
|
8761
|
+
PrintConv => {
|
|
8762
|
+
0 => 'EOS Original',
|
|
8763
|
+
1 => 'Neutral',
|
|
8764
|
+
},
|
|
8765
|
+
},
|
|
8766
|
+
11 => {
|
|
8767
|
+
Name => 'CanonLogVersion', # (increases dynamic range of sensor data)
|
|
8768
|
+
RawConv => '$val == 0x7fffffff ? undef : $val',
|
|
8769
|
+
PrintConv => {
|
|
8770
|
+
0 => 'OFF',
|
|
8771
|
+
1 => 'CLogV1',
|
|
8772
|
+
2 => 'CLogV2', # (NC)
|
|
8773
|
+
3 => 'CLogV3',
|
|
8774
|
+
},
|
|
8775
|
+
},
|
|
8776
|
+
);
|
|
8777
|
+
|
|
8704
8778
|
# AF configuration info (MakerNotes tag 0x4028) (ref PH)
|
|
8705
8779
|
%Image::ExifTool::Canon::AFConfig = (
|
|
8706
8780
|
%binaryDataAttrs,
|
|
@@ -10064,7 +10138,7 @@ Canon maker notes in EXIF information.
|
|
|
10064
10138
|
|
|
10065
10139
|
=head1 AUTHOR
|
|
10066
10140
|
|
|
10067
|
-
Copyright 2003-
|
|
10141
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
10068
10142
|
|
|
10069
10143
|
This library is free software; you can redistribute it and/or modify it
|
|
10070
10144
|
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-2022, 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.
|
|
@@ -877,7 +877,7 @@ tags.)
|
|
|
877
877
|
|
|
878
878
|
=head1 AUTHOR
|
|
879
879
|
|
|
880
|
-
Copyright 2003-
|
|
880
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
881
881
|
|
|
882
882
|
This library is free software; you can redistribute it and/or modify it
|
|
883
883
|
under the same terms as Perl itself.
|
|
@@ -2264,7 +2264,7 @@ files, and as a trailer in JPEG, CRW, CR2 and TIFF images.
|
|
|
2264
2264
|
|
|
2265
2265
|
=head1 AUTHOR
|
|
2266
2266
|
|
|
2267
|
-
Copyright 2003-
|
|
2267
|
+
Copyright 2003-2022, Phil Harvey (philharvey66 at gmail.com)
|
|
2268
2268
|
|
|
2269
2269
|
This library is free software; you can redistribute it and/or modify it
|
|
2270
2270
|
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-2022, 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.
|