exiftool-vendored.exe 13.40.0 → 13.42.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/exiftool.exe +0 -0
- package/bin/exiftool_files/exiftool.pl +109 -91
- package/bin/exiftool_files/lib/Image/ExifTool/Canon.pm +19 -13
- package/bin/exiftool_files/lib/Image/ExifTool/Exif.pm +11 -6
- package/bin/exiftool_files/lib/Image/ExifTool/Font.pm +3 -4
- package/bin/exiftool_files/lib/Image/ExifTool/ICC_Profile.pm +2 -1
- package/bin/exiftool_files/lib/Image/ExifTool/JSON.pm +7 -6
- package/bin/exiftool_files/lib/Image/ExifTool/LNK.pm +15 -2
- package/bin/exiftool_files/lib/Image/ExifTool/Olympus.pm +4 -3
- package/bin/exiftool_files/lib/Image/ExifTool/QuickTime.pm +22 -2
- package/bin/exiftool_files/lib/Image/ExifTool/Red.pm +19 -9
- package/bin/exiftool_files/lib/Image/ExifTool/Samsung.pm +127 -4
- package/bin/exiftool_files/lib/Image/ExifTool/Sony.pm +4 -2
- package/bin/exiftool_files/lib/Image/ExifTool/TagLookup.pm +70 -0
- package/bin/exiftool_files/lib/Image/ExifTool/TagNames.pod +127 -5
- package/bin/exiftool_files/lib/Image/ExifTool/WriteQuickTime.pl +8 -1
- package/bin/exiftool_files/lib/Image/ExifTool.pm +18 -6
- package/bin/exiftool_files/windows_exiftool.txt +24 -14
- package/package.json +4 -4
|
@@ -12,7 +12,7 @@ meta information extracted from or written to a file.
|
|
|
12
12
|
=head1 TAG TABLES
|
|
13
13
|
|
|
14
14
|
The tables listed below give the names of all tags recognized by ExifTool.
|
|
15
|
-
They contain a total of
|
|
15
|
+
They contain a total of 28932 tags, with 17990 unique tag names.
|
|
16
16
|
|
|
17
17
|
B<Tag ID>, B<Index#> or B<Sequence> is given in the first column of each
|
|
18
18
|
table. A B<Tag ID> is the computer-readable equivalent of a tag name, and
|
|
@@ -9541,7 +9541,7 @@ These tags are used by the R5, R5 and EOS 1DXmkIII.
|
|
|
9541
9541
|
|
|
9542
9542
|
=head3 Canon ColorData11 Tags
|
|
9543
9543
|
|
|
9544
|
-
These tags are used by the EOS R3, R7 and R6mkII
|
|
9544
|
+
These tags are used by the EOS R3, R7, R50 and R6mkII
|
|
9545
9545
|
|
|
9546
9546
|
Index2 Tag Name Writable
|
|
9547
9547
|
------ -------- --------
|
|
@@ -9630,7 +9630,7 @@ These tags are used by the EOS R3, R7 and R6mkII
|
|
|
9630
9630
|
|
|
9631
9631
|
=head3 Canon ColorData12 Tags
|
|
9632
9632
|
|
|
9633
|
-
These tags are used by the EOS R1 and
|
|
9633
|
+
These tags are used by the EOS R1, R5mkII and R50V
|
|
9634
9634
|
|
|
9635
9635
|
Index2 Tag Name Writable
|
|
9636
9636
|
------ -------- --------
|
|
@@ -21924,7 +21924,9 @@ HEIC images from models such as the S10+.
|
|
|
21924
21924
|
EmbeddedVideoFile no
|
|
21925
21925
|
EmbeddedVideoType no
|
|
21926
21926
|
MCCData no
|
|
21927
|
-
PEg_Info
|
|
21927
|
+
PEg_Info Samsung PEgInfo
|
|
21928
|
+
ReEditData Samsung ReEditData
|
|
21929
|
+
OriginalPathHashKey no
|
|
21928
21930
|
RemasterInfo no
|
|
21929
21931
|
SamsungCaptureInfo no
|
|
21930
21932
|
SingleShotDepthMap no
|
|
@@ -21940,6 +21942,114 @@ HEIC images from models such as the S10+.
|
|
|
21940
21942
|
16 DepthMapWidth no
|
|
21941
21943
|
17 DepthMapHeight no
|
|
21942
21944
|
|
|
21945
|
+
=head3 Samsung PEgInfo Tags
|
|
21946
|
+
|
|
21947
|
+
Tag ID Tag Name Writable
|
|
21948
|
+
------ -------- --------
|
|
21949
|
+
'connectorType' ConnectorType no
|
|
21950
|
+
'genImageVersion' GenImageVersion no
|
|
21951
|
+
|
|
21952
|
+
=head3 Samsung ReEditData Tags
|
|
21953
|
+
|
|
21954
|
+
Tag ID Tag Name Writable
|
|
21955
|
+
------ -------- --------
|
|
21956
|
+
'adjustmentValue' AdjustmentValue no
|
|
21957
|
+
'clipInfoValue' ClipInfoValue Samsung ClipInfo
|
|
21958
|
+
'effectValue' EffectValue Samsung EffectInfo
|
|
21959
|
+
'endMotionVideo' EndMotionVideo no
|
|
21960
|
+
'isAIFilterReEditOnly' IsAIFilterReEditOnly no
|
|
21961
|
+
'isApplyShapeCorrection'
|
|
21962
|
+
IsApplyShapeCorrection no
|
|
21963
|
+
'isBlending' IsBlending no
|
|
21964
|
+
'isDecoReEditOnly' IsDecoReEditOnly no
|
|
21965
|
+
'isMotionVideoMute' IsMotionVideoMute no
|
|
21966
|
+
'isNewReEditOnly' IsNewReEditOnly no
|
|
21967
|
+
'isNotReEdit' IsNotReEdit no
|
|
21968
|
+
'isScaleAI' IsScaleAI no
|
|
21969
|
+
'isTrimMotionVideo' IsTrimMotionVideo no
|
|
21970
|
+
'ndeVersion' NDEVersion no
|
|
21971
|
+
'originalPath' OriginalPath no
|
|
21972
|
+
'portraitEffectValue' PortraitEffectValue Samsung PortraitEffect
|
|
21973
|
+
'reSize' ReSize no
|
|
21974
|
+
'representativeFrameLoc'
|
|
21975
|
+
RepresentativeFrameLoc no
|
|
21976
|
+
'rotation' Rotation no
|
|
21977
|
+
'sepVersion' SEPVersion no
|
|
21978
|
+
'startMotionVideo' StartMotionVideo no
|
|
21979
|
+
'toneValue' ToneValue Samsung ToneInfo
|
|
21980
|
+
|
|
21981
|
+
=head3 Samsung ClipInfo Tags
|
|
21982
|
+
|
|
21983
|
+
Tag ID Tag Name Writable
|
|
21984
|
+
------ -------- --------
|
|
21985
|
+
'mCenterX' ClipCenterX no
|
|
21986
|
+
'mCenterY' ClipCenterY no
|
|
21987
|
+
'mHFlip' ClipHFlip no
|
|
21988
|
+
'mHFlipEffect' ClipHFlipEffect no
|
|
21989
|
+
'mHeight' ClipHeight no
|
|
21990
|
+
'mHozPerspective' ClipHozPerspective no
|
|
21991
|
+
'mRotate' ClipRotate no
|
|
21992
|
+
'mRotateEffect' ClipRotateEffect no
|
|
21993
|
+
'mRotation' ClipRotation no
|
|
21994
|
+
'mRotationEffect' ClipRotationEffect no
|
|
21995
|
+
'mVFlip' ClipVFlip no
|
|
21996
|
+
'mVFlipEffect' ClipVFlipEffect no
|
|
21997
|
+
'mVerPerspective' ClipVerPerspective no
|
|
21998
|
+
'mWidth' ClipWidth no
|
|
21999
|
+
|
|
22000
|
+
=head3 Samsung EffectInfo Tags
|
|
22001
|
+
|
|
22002
|
+
Tag ID Tag Name Writable
|
|
22003
|
+
------ -------- --------
|
|
22004
|
+
'alphaValue' AlphaValue no
|
|
22005
|
+
'filterIndication' FilterIndication no
|
|
22006
|
+
'filterType' FilterType no
|
|
22007
|
+
|
|
22008
|
+
=head3 Samsung PortraitEffect Tags
|
|
22009
|
+
|
|
22010
|
+
Tag ID Tag Name Writable
|
|
22011
|
+
------ -------- --------
|
|
22012
|
+
'effectId' PortraitEffectID no
|
|
22013
|
+
'effectIdOriginal' PortraitEffectIDOriginal no
|
|
22014
|
+
'effectLevel' PortraitEffectLevel no
|
|
22015
|
+
'effectLevelOriginal' EffectLevelOriginal no
|
|
22016
|
+
'exifRotation' PortraitExifRotation no
|
|
22017
|
+
'lightLevel' PortraitLightLevel no
|
|
22018
|
+
'lightLevelOriginal' LightLevelOriginal no
|
|
22019
|
+
'refocusX' PortraitRefocusX no
|
|
22020
|
+
'refocusXOriginal' RefocusXOriginal no
|
|
22021
|
+
'refocusY' PortraitRefocusY no
|
|
22022
|
+
'refocusYOriginal' RefocusYOriginal no
|
|
22023
|
+
'touchX' PortraitTouchX no
|
|
22024
|
+
'touchXOriginal' TouchXOriginal no
|
|
22025
|
+
'touchY' PortraitTouchY no
|
|
22026
|
+
'touchYOriginal' TouchYOriginal no
|
|
22027
|
+
'waterMarkRemoved' WaterMarkRemoved no
|
|
22028
|
+
'waterMarkRemovedOriginal'
|
|
22029
|
+
WaterMarkRemovedOriginal no
|
|
22030
|
+
|
|
22031
|
+
=head3 Samsung ToneInfo Tags
|
|
22032
|
+
|
|
22033
|
+
Tag ID Tag Name Writable
|
|
22034
|
+
------ -------- --------
|
|
22035
|
+
'brightness' Brightness no
|
|
22036
|
+
'contrast' Contrast no
|
|
22037
|
+
'definition' Definition no
|
|
22038
|
+
'exposure' Exposure no
|
|
22039
|
+
'highlight' Highlight no
|
|
22040
|
+
'hue' Hue no
|
|
22041
|
+
'isBrightnessIPE' IsBrightnessIPE no
|
|
22042
|
+
'isContrastIPE' IsContrastIPE no
|
|
22043
|
+
'isExposureIPE' IsExposureIPE no
|
|
22044
|
+
'isSaturationIPE' IsSaturationIPE no
|
|
22045
|
+
'lightbalance' Lightbalance no
|
|
22046
|
+
'saturation' Saturation no
|
|
22047
|
+
'shadow' Shadow no
|
|
22048
|
+
'sharpness' Sharpness no
|
|
22049
|
+
'tint' Tint no
|
|
22050
|
+
'wbMode' WBMode no
|
|
22051
|
+
'wbTemperature' WBTemperature no
|
|
22052
|
+
|
|
21943
22053
|
=head3 Samsung SingleShotMeta Tags
|
|
21944
22054
|
|
|
21945
22055
|
Tag ID Tag Name Writable
|
|
@@ -24074,10 +24184,12 @@ some models when the ExtractEmbedded option is used.
|
|
|
24074
24184
|
Tag ID Tag Name Writable
|
|
24075
24185
|
------ -------- --------
|
|
24076
24186
|
0x8000 FNumber no
|
|
24187
|
+
0x8106 FrameRate no
|
|
24077
24188
|
0x8109 ExposureTime no
|
|
24078
24189
|
0x810a MasterGainAdjustment no
|
|
24079
24190
|
0x810b ISO no
|
|
24080
24191
|
0x810c ElectricalExtenderMagnification no
|
|
24192
|
+
0x8114 SerialNumber no
|
|
24081
24193
|
0x8500 GPSVersionID no
|
|
24082
24194
|
0x8501 GPSLatitudeRef no
|
|
24083
24195
|
0x8502 GPSLatitude no
|
|
@@ -30720,6 +30832,7 @@ for the official QuickTime specification.
|
|
|
30720
30832
|
'free' KodakFree Kodak Free
|
|
30721
30833
|
Pittasoft QuickTime Pittasoft
|
|
30722
30834
|
ThumbnailImage no
|
|
30835
|
+
HighlightMarkers no
|
|
30723
30836
|
Free? no
|
|
30724
30837
|
'ftyp' FileType QuickTime FileType
|
|
30725
30838
|
'gdat' GPSData QuickTime Stream
|
|
@@ -36442,6 +36555,7 @@ Tags extracted from Redcode R3D video files.
|
|
|
36442
36555
|
0x1096 Filter no
|
|
36443
36556
|
0x10a0 Brain no
|
|
36444
36557
|
0x10a1 Sensor no
|
|
36558
|
+
0x10be Quality no
|
|
36445
36559
|
0x200d ColorTemperature no
|
|
36446
36560
|
0x204b RGBCurves no
|
|
36447
36561
|
0x2066 OriginalFrameRate no
|
|
@@ -40696,7 +40810,7 @@ Information extracted from MS Shell Link (Windows shortcut) files.
|
|
|
40696
40810
|
0x30020 CommandLineArguments no
|
|
40697
40811
|
0x30040 IconFileName no
|
|
40698
40812
|
0xa0000000 UnknownData LNK UnknownData
|
|
40699
|
-
0xa0000001 EnvVarData LNK
|
|
40813
|
+
0xa0000001 EnvVarData LNK EnvVarData
|
|
40700
40814
|
0xa0000002 ConsoleData LNK ConsoleData
|
|
40701
40815
|
0xa0000003 TrackerData LNK TrackerData
|
|
40702
40816
|
0xa0000004 ConsoleFEData LNK ConsoleFEData
|
|
@@ -40741,6 +40855,13 @@ Information extracted from MS Shell Link (Windows shortcut) files.
|
|
|
40741
40855
|
------ -------- --------
|
|
40742
40856
|
[no tags known]
|
|
40743
40857
|
|
|
40858
|
+
=head3 LNK EnvVarData Tags
|
|
40859
|
+
|
|
40860
|
+
Index1 Tag Name Writable
|
|
40861
|
+
------ -------- --------
|
|
40862
|
+
8 EnvironmentTarget no
|
|
40863
|
+
268 EnvironmentTargetUnicode no
|
|
40864
|
+
|
|
40744
40865
|
=head3 LNK ConsoleData Tags
|
|
40745
40866
|
|
|
40746
40867
|
Index1 Tag Name Writable
|
|
@@ -41690,6 +41811,7 @@ FileName.
|
|
|
41690
41811
|
JPEGQualityEstimate File no
|
|
41691
41812
|
JUMBF JUMBF no
|
|
41692
41813
|
MIMEType File no
|
|
41814
|
+
MakerNoteByteOrder File no
|
|
41693
41815
|
MaxVal File no
|
|
41694
41816
|
NewGUID ExifTool no
|
|
41695
41817
|
Now ExifTool no
|
|
@@ -1731,7 +1731,14 @@ ItemID2: foreach $id (reverse sort { $a <=> $b } keys %$items) {
|
|
|
1731
1731
|
# (note that $tag may be a binary Keys index here)
|
|
1732
1732
|
foreach $tag (@addTags) {
|
|
1733
1733
|
my $tagInfo = $$dirs{$tag} || $$newTags{$tag};
|
|
1734
|
-
|
|
1734
|
+
unless (ref $tagInfo eq 'HASH') { # (shouldn't happen, but somehow there is forum17260)
|
|
1735
|
+
# (also can happen if Meta exists but Keys does not since 'keys' is an array ref.
|
|
1736
|
+
# SonyPMW-EX1R.mp4 has a Movie-Meta atom with XML and no Keys that triggers this
|
|
1737
|
+
# issue. Note that in this case the Meta HandlerType is 'meta' instead of 'mdta',
|
|
1738
|
+
# which isn't a problem for ExifTool, but may be for other software?)
|
|
1739
|
+
next unless ref $tagInfo eq 'ARRAY';
|
|
1740
|
+
$tagInfo = $et->GetTagInfo($tagTablePtr, $tag) or next;
|
|
1741
|
+
}
|
|
1735
1742
|
next if defined $$tagInfo{CanCreate} and not $$tagInfo{CanCreate};
|
|
1736
1743
|
next if defined $$tagInfo{MediaType} and $$et{MediaType} ne $$tagInfo{MediaType};
|
|
1737
1744
|
my $subdir = $$tagInfo{SubDirectory};
|
|
@@ -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 $advFmtSelf $configFile @configFiles $noConfig);
|
|
31
31
|
|
|
32
|
-
$VERSION = '13.
|
|
32
|
+
$VERSION = '13.42';
|
|
33
33
|
$RELEASE = '';
|
|
34
34
|
@ISA = qw(Exporter);
|
|
35
35
|
%EXPORT_TAGS = (
|
|
@@ -392,8 +392,9 @@ my %createTypes = map { $_ => 1 } qw(XMP ICC MIE VRD DR4 EXIF EXV);
|
|
|
392
392
|
LFR => 'LFP', # (Light Field RAW)
|
|
393
393
|
LIF => ['LIF', 'Leica Image File'],
|
|
394
394
|
LNK => ['LNK', 'Windows shortcut'],
|
|
395
|
+
LRF => ['MOV', 'Low-Resolution video File'], # (DJI)
|
|
395
396
|
LRI => ['LRI', 'Light RAW'],
|
|
396
|
-
LRV => ['MOV', 'Low-Resolution Video'],
|
|
397
|
+
LRV => ['MOV', 'Low-Resolution Video'], # (GoPro)
|
|
397
398
|
M2T => 'M2TS',
|
|
398
399
|
M2TS => ['M2TS', 'MPEG-2 Transport Stream'],
|
|
399
400
|
M2V => ['MPEG', 'MPEG-2 Video'],
|
|
@@ -1818,6 +1819,13 @@ my %systemTagsNotes = (
|
|
|
1818
1819
|
MM => 'Big-endian (Motorola, MM)',
|
|
1819
1820
|
},
|
|
1820
1821
|
},
|
|
1822
|
+
MakerNoteByteOrder => {
|
|
1823
|
+
Notes => 'byte order of maker notes. Generated only if different from ExifByteOrder',
|
|
1824
|
+
PrintConv => {
|
|
1825
|
+
II => 'Little-endian (Intel, II)',
|
|
1826
|
+
MM => 'Big-endian (Motorola, MM)',
|
|
1827
|
+
},
|
|
1828
|
+
},
|
|
1821
1829
|
ExifUnicodeByteOrder => {
|
|
1822
1830
|
Writable => 1,
|
|
1823
1831
|
WriteOnly => 1,
|
|
@@ -8626,6 +8634,7 @@ sub DoProcessTIFF($$;$)
|
|
|
8626
8634
|
my $ifdName = ($$dirInfo{DirName} and $$dirInfo{DirName} =~ /^(ExifIFD|GPS)$/) ? $1 : 'IFD0';
|
|
8627
8635
|
if (not $tagTablePtr or $$tagTablePtr{GROUPS}{0} eq 'EXIF') {
|
|
8628
8636
|
$self->FoundTag('ExifByteOrder', $byteOrder) unless $outfile;
|
|
8637
|
+
$$self{ExifByteOrder} = $byteOrder;
|
|
8629
8638
|
} elsif ($$tagTablePtr{GROUPS}{0} eq 'MakerNotes') { # (for writing CR3 maker notes)
|
|
8630
8639
|
$ifdName = $$tagTablePtr{GROUPS}{0};
|
|
8631
8640
|
} else {
|
|
@@ -9685,10 +9694,10 @@ sub VPrint($$@)
|
|
|
9685
9694
|
# Print verbose directory information
|
|
9686
9695
|
# Inputs: 0) ExifTool object reference, 1) directory name or dirInfo ref
|
|
9687
9696
|
# 2) number of entries in directory (or 0 if unknown)
|
|
9688
|
-
# 3) optional size of directory in bytes
|
|
9689
|
-
sub VerboseDir(
|
|
9697
|
+
# 3) optional size of directory in bytes, 4) optional byte order for -v3 output
|
|
9698
|
+
sub VerboseDir($$;$$$)
|
|
9690
9699
|
{
|
|
9691
|
-
my ($self, $name, $entries, $size) = @_;
|
|
9700
|
+
my ($self, $name, $entries, $size, $byteOrder) = @_;
|
|
9692
9701
|
return unless $$self{OPTIONS}{Verbose};
|
|
9693
9702
|
if (ref $name eq 'HASH') {
|
|
9694
9703
|
$size = $$name{DirLen} unless $size;
|
|
@@ -9698,6 +9707,9 @@ sub VerboseDir($$;$$)
|
|
|
9698
9707
|
my $out = $$self{OPTIONS}{TextOut};
|
|
9699
9708
|
my $str = ($entries or defined $entries and not $size) ? " with $entries entries" : '';
|
|
9700
9709
|
$str .= ", $size bytes" if $size;
|
|
9710
|
+
if ($byteOrder and $$self{OPTIONS}{Verbose} > 2) {
|
|
9711
|
+
$str .= ', ' . (GetByteOrder() eq 'II' ? 'Little-endian' : 'Big-endian');
|
|
9712
|
+
}
|
|
9701
9713
|
print $out "$indent+ [$name directory$str]\n";
|
|
9702
9714
|
}
|
|
9703
9715
|
|
|
@@ -9820,7 +9832,7 @@ sub ProcessBinaryData($$$)
|
|
|
9820
9832
|
# extract known tags in numerical order
|
|
9821
9833
|
@tags = sort { ($a < 0 ? $a + 1e9 : $a) <=> ($b < 0 ? $b + 1e9 : $b) } TagTableKeys($tagTablePtr);
|
|
9822
9834
|
}
|
|
9823
|
-
$self->VerboseDir('BinaryData', undef, $size) if $verbose;
|
|
9835
|
+
$self->VerboseDir('BinaryData', undef, $size, GetByteOrder()) if $verbose;
|
|
9824
9836
|
# avoid creating unknown tags for tags that fail condition if Unknown is 1
|
|
9825
9837
|
$$self{NO_UNKNOWN} = 1 if $unknown < 2;
|
|
9826
9838
|
my ($index, %val);
|
|
@@ -742,11 +742,16 @@ OPTIONS
|
|
|
742
742
|
single command.
|
|
743
743
|
|
|
744
744
|
Specific tags may be imported from the CSV database by adding
|
|
745
|
-
-*TAG* options to the command
|
|
746
|
-
exclusions taking priority. Group names and
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
745
|
+
-*TAG* options to the command after -csv=*CSVFILE*, or excluded
|
|
746
|
+
with --*TAG*, with exclusions taking priority. Group names and
|
|
747
|
+
wildcards in tag names are allowed, but the group name must match
|
|
748
|
+
exactly the group in the CSV file (eg. a "XMP-dc:Subject" column in
|
|
749
|
+
the CSV file won't match "-XMP:Subject" on the command line. Also,
|
|
750
|
+
tags from the CSV may be redirected and written to different tags
|
|
751
|
+
in the target file with support for advanced-formatting expressions
|
|
752
|
+
using the same syntax as the -tagsFromFile feature. If no tags are
|
|
753
|
+
specified, then all tags except FileName, Directory and excluded
|
|
754
|
+
tags are imported (in the same order as the database entries).
|
|
750
755
|
|
|
751
756
|
When exporting a CSV file, the -g or -G option adds group names to
|
|
752
757
|
the tag headings. If the -a option is used to allow duplicate tag
|
|
@@ -771,8 +776,8 @@ OPTIONS
|
|
|
771
776
|
importing.
|
|
772
777
|
|
|
773
778
|
Special feature: -csv+=*CSVFILE* may be used to add items to
|
|
774
|
-
existing lists. This affects only list-type tags. Also
|
|
775
|
-
the -j option.
|
|
779
|
+
existing lists in the file. This affects only list-type tags. Also
|
|
780
|
+
applies to the -j option.
|
|
776
781
|
|
|
777
782
|
Note that this and the -plot options are fundamentally different
|
|
778
783
|
than all other output format options because they require
|
|
@@ -939,18 +944,23 @@ OPTIONS
|
|
|
939
944
|
JSON file may be suffixed with a "#" to disable print conversion.
|
|
940
945
|
|
|
941
946
|
Specific tags may be imported from the JSON database by adding
|
|
942
|
-
-*TAG* options to the command
|
|
943
|
-
exclusions taking priority. Group names and wildcards
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
+
-*TAG* options to the command after -j=*JSONFILE*, or excluded with
|
|
948
|
+
--*TAG*, with exclusions taking priority. Group names and wildcards
|
|
949
|
+
in tag names are allowed, but the group name must match exactly the
|
|
950
|
+
group in the JSON file (eg. a "XMP-dc:Subject" entry in the JSON
|
|
951
|
+
file won't match "-XMP:Subject" on the command line. Also, tags
|
|
952
|
+
from JSON may be redirected and written to different tags in the
|
|
953
|
+
target file with support for advanced-formatting expressions using
|
|
954
|
+
the same syntax as the -tagsFromFile feature. If no tags are
|
|
955
|
+
specified, then all tags except FileName, Directory and excluded
|
|
956
|
+
tags are imported (in the same order as the database entries).
|
|
947
957
|
|
|
948
958
|
Unlike CSV import, empty values are not ignored, and will cause an
|
|
949
959
|
empty value to be written if supported by the specific metadata
|
|
950
960
|
type. Tags are deleted by using the -f option and setting the tag
|
|
951
961
|
value to "-" (or to the MissingTagValue setting if this API option
|
|
952
962
|
was used). Importing with -j+=*JSONFILE* causes new values to be
|
|
953
|
-
added to existing lists.
|
|
963
|
+
added to existing lists in the target file.
|
|
954
964
|
|
|
955
965
|
-l (-long)
|
|
956
966
|
Use long 2-line Canon-style output format. Adds a description and
|
|
@@ -1088,7 +1098,7 @@ OPTIONS
|
|
|
1088
1098
|
|
|
1089
1099
|
produces output like this:
|
|
1090
1100
|
|
|
1091
|
-
-- Generated by ExifTool 13.
|
|
1101
|
+
-- Generated by ExifTool 13.42 --
|
|
1092
1102
|
File: a.jpg - 2003:10:31 15:44:19
|
|
1093
1103
|
(f/5.6, 1/60s, ISO 100)
|
|
1094
1104
|
File: b.jpg - 2006:05:23 11:57:38
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "exiftool-vendored.exe",
|
|
3
|
-
"version": "13.
|
|
3
|
+
"version": "13.42.0",
|
|
4
4
|
"description": "Vendored win32 ExifTool for Node.js",
|
|
5
5
|
"main": "./index.js",
|
|
6
6
|
"homepage": "https://github.com/photostructure/exiftool-vendored.exe#readme",
|
|
@@ -51,11 +51,11 @@
|
|
|
51
51
|
},
|
|
52
52
|
"devDependencies": {
|
|
53
53
|
"cross-zip": "^4.0.1",
|
|
54
|
-
"mocha": "^11.7.
|
|
55
|
-
"npm-check-updates": "^19.1.
|
|
54
|
+
"mocha": "^11.7.5",
|
|
55
|
+
"npm-check-updates": "^19.1.2",
|
|
56
56
|
"npm-run-all": "4.1.5",
|
|
57
57
|
"prettier": "^3.6.2",
|
|
58
|
-
"release-it": "^19.0.
|
|
58
|
+
"release-it": "^19.0.6",
|
|
59
59
|
"xml2js": "^0.6.2"
|
|
60
60
|
}
|
|
61
61
|
}
|