exiftool_vendored 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.
- checksums.yaml +4 -4
- data/bin/Changes +35 -1
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +2 -2
- data/bin/exiftool +134 -102
- data/bin/lib/Image/ExifTool/Canon.pm +19 -13
- data/bin/lib/Image/ExifTool/Exif.pm +11 -6
- data/bin/lib/Image/ExifTool/Font.pm +3 -4
- data/bin/lib/Image/ExifTool/ICC_Profile.pm +2 -1
- data/bin/lib/Image/ExifTool/JSON.pm +7 -6
- data/bin/lib/Image/ExifTool/LNK.pm +15 -2
- data/bin/lib/Image/ExifTool/Olympus.pm +4 -3
- data/bin/lib/Image/ExifTool/QuickTime.pm +22 -2
- data/bin/lib/Image/ExifTool/Red.pm +19 -9
- data/bin/lib/Image/ExifTool/Samsung.pm +127 -4
- data/bin/lib/Image/ExifTool/Sony.pm +4 -2
- data/bin/lib/Image/ExifTool/TagLookup.pm +70 -0
- data/bin/lib/Image/ExifTool/TagNames.pod +127 -5
- data/bin/lib/Image/ExifTool/WriteQuickTime.pl +8 -1
- data/bin/lib/Image/ExifTool.pm +18 -6
- data/bin/perl-Image-ExifTool.spec +1 -1
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +1 -1
|
@@ -7840,6 +7840,7 @@ my %tagExists = (
|
|
|
7840
7840
|
'adjustedtbnimagewidth' => 1,
|
|
7841
7841
|
'adjustmentdata' => 1,
|
|
7842
7842
|
'adjustmentssettingsstatisticslightmap' => 1,
|
|
7843
|
+
'adjustmentvalue' => 1,
|
|
7843
7844
|
'adobe_cm' => 1,
|
|
7844
7845
|
'adobecmtype' => 1,
|
|
7845
7846
|
'adobecrw' => 1,
|
|
@@ -7948,6 +7949,7 @@ my %tagExists = (
|
|
|
7948
7949
|
'alphaoffset' => 1,
|
|
7949
7950
|
'alphapreprocessing' => 1,
|
|
7950
7951
|
'alphasample' => 1,
|
|
7952
|
+
'alphavalue' => 1,
|
|
7951
7953
|
'alternatealtitude' => 1,
|
|
7952
7954
|
'alternateduotonecolors' => 1,
|
|
7953
7955
|
'alternateellipsoidheight' => 1,
|
|
@@ -8719,11 +8721,26 @@ my %tagExists = (
|
|
|
8719
8721
|
'cleanfaxdata' => 1,
|
|
8720
8722
|
'clientid' => 1,
|
|
8721
8723
|
'clipboundary' => 1,
|
|
8724
|
+
'clipcenterx' => 1,
|
|
8725
|
+
'clipcentery' => 1,
|
|
8726
|
+
'clipheight' => 1,
|
|
8727
|
+
'cliphflip' => 1,
|
|
8728
|
+
'cliphflipeffect' => 1,
|
|
8729
|
+
'cliphozperspective' => 1,
|
|
8730
|
+
'clipinfovalue' => 1,
|
|
8722
8731
|
'clipobjects' => 1,
|
|
8723
8732
|
'clippath' => 1,
|
|
8724
8733
|
'clippingboundary' => 1,
|
|
8725
8734
|
'clippinglimit' => 1,
|
|
8726
8735
|
'clippingpathname' => 1,
|
|
8736
|
+
'cliprotate' => 1,
|
|
8737
|
+
'cliprotateeffect' => 1,
|
|
8738
|
+
'cliprotation' => 1,
|
|
8739
|
+
'cliprotationeffect' => 1,
|
|
8740
|
+
'clipverperspective' => 1,
|
|
8741
|
+
'clipvflip' => 1,
|
|
8742
|
+
'clipvflipeffect' => 1,
|
|
8743
|
+
'clipwidth' => 1,
|
|
8727
8744
|
'cloneid' => 1,
|
|
8728
8745
|
'cloneobject' => 1,
|
|
8729
8746
|
'clonetype' => 1,
|
|
@@ -8895,6 +8912,7 @@ my %tagExists = (
|
|
|
8895
8912
|
'confidencemapimage' => 1,
|
|
8896
8913
|
'confirmedobjectsize' => 1,
|
|
8897
8914
|
'connectionspaceilluminant' => 1,
|
|
8915
|
+
'connectortype' => 1,
|
|
8898
8916
|
'consecutivebadfaxlines' => 1,
|
|
8899
8917
|
'consoledata' => 1,
|
|
8900
8918
|
'consolefedata' => 1,
|
|
@@ -9183,6 +9201,7 @@ my %tagExists = (
|
|
|
9183
9201
|
'defectlistpacked' => 1,
|
|
9184
9202
|
'defineobject' => 1,
|
|
9185
9203
|
'definequantizationtable' => 1,
|
|
9204
|
+
'definition' => 1,
|
|
9186
9205
|
'delay' => 1,
|
|
9187
9206
|
'delaycols' => 1,
|
|
9188
9207
|
'delaytime' => 1,
|
|
@@ -9420,9 +9439,11 @@ my %tagExists = (
|
|
|
9420
9439
|
'ef' => 1,
|
|
9421
9440
|
'effect' => 1,
|
|
9422
9441
|
'effectivebw' => 1,
|
|
9442
|
+
'effectleveloriginal' => 1,
|
|
9423
9443
|
'effectstrength' => 1,
|
|
9424
9444
|
'effectsvisible' => 1,
|
|
9425
9445
|
'effecttype' => 1,
|
|
9446
|
+
'effectvalue' => 1,
|
|
9426
9447
|
'eighteenpercentpoint' => 1,
|
|
9427
9448
|
'eighthlanguage' => 1,
|
|
9428
9449
|
'electricalextendermagnification' => 1,
|
|
@@ -9469,12 +9490,15 @@ my %tagExists = (
|
|
|
9469
9490
|
'encryption' => 1,
|
|
9470
9491
|
'enddate' => 1,
|
|
9471
9492
|
'endianness' => 1,
|
|
9493
|
+
'endmotionvideo' => 1,
|
|
9472
9494
|
'endpoints' => 1,
|
|
9473
9495
|
'endtime' => 1,
|
|
9474
9496
|
'endtimecode' => 1,
|
|
9475
9497
|
'entrypoint' => 1,
|
|
9476
9498
|
'entrytype' => 1,
|
|
9477
9499
|
'environmentmap' => 1,
|
|
9500
|
+
'environmenttarget' => 1,
|
|
9501
|
+
'environmenttargetunicode' => 1,
|
|
9478
9502
|
'envvardata' => 1,
|
|
9479
9503
|
'eppim' => 1,
|
|
9480
9504
|
'eprint' => 1,
|
|
@@ -9700,6 +9724,7 @@ my %tagExists = (
|
|
|
9700
9724
|
'filmrollnumber' => 1,
|
|
9701
9725
|
'filmsize' => 1,
|
|
9702
9726
|
'filter' => 1,
|
|
9727
|
+
'filterindication' => 1,
|
|
9703
9728
|
'filterinfo' => 1,
|
|
9704
9729
|
'filtering' => 1,
|
|
9705
9730
|
'filtermodel' => 1,
|
|
@@ -9708,6 +9733,7 @@ my %tagExists = (
|
|
|
9708
9733
|
'filterparametersexportexportdata' => 1,
|
|
9709
9734
|
'filterpartnumber' => 1,
|
|
9710
9735
|
'filterserialnumber' => 1,
|
|
9736
|
+
'filtertype' => 1,
|
|
9711
9737
|
'finalflushsequence' => 1,
|
|
9712
9738
|
'finalframeblocks' => 1,
|
|
9713
9739
|
'finetune' => 1,
|
|
@@ -9918,6 +9944,7 @@ my %tagExists = (
|
|
|
9918
9944
|
'genericflagdata01' => 1,
|
|
9919
9945
|
'genflags' => 1,
|
|
9920
9946
|
'gengraphicsmode' => 1,
|
|
9947
|
+
'genimageversion' => 1,
|
|
9921
9948
|
'genmediaheader' => 1,
|
|
9922
9949
|
'genmediainfo' => 1,
|
|
9923
9950
|
'genmediaversion' => 1,
|
|
@@ -10143,6 +10170,7 @@ my %tagExists = (
|
|
|
10143
10170
|
'highisomode' => 1,
|
|
10144
10171
|
'highlightdata' => 1,
|
|
10145
10172
|
'highlightendpoints' => 1,
|
|
10173
|
+
'highlightmarkers' => 1,
|
|
10146
10174
|
'highnote' => 1,
|
|
10147
10175
|
'highvelocity' => 1,
|
|
10148
10176
|
'hindsightsettings' => 1,
|
|
@@ -10425,15 +10453,25 @@ my %tagExists = (
|
|
|
10425
10453
|
'irwindowtransmission' => 1,
|
|
10426
10454
|
'is_protected' => 1,
|
|
10427
10455
|
'is_trusted' => 1,
|
|
10456
|
+
'isaifilterreeditonly' => 1,
|
|
10457
|
+
'isapplyshapecorrection' => 1,
|
|
10428
10458
|
'isartbokeh' => 1,
|
|
10429
10459
|
'isattachment' => 1,
|
|
10430
10460
|
'isbasefont' => 1,
|
|
10461
|
+
'isblending' => 1,
|
|
10462
|
+
'isbrightnessipe' => 1,
|
|
10431
10463
|
'iscompleted' => 1,
|
|
10464
|
+
'iscontrastipe' => 1,
|
|
10465
|
+
'isdecoreeditonly' => 1,
|
|
10432
10466
|
'isdeleted' => 1,
|
|
10467
|
+
'isexposureipe' => 1,
|
|
10433
10468
|
'isfixedpitch' => 1,
|
|
10434
10469
|
'isfixedv' => 1,
|
|
10435
10470
|
'isinfoa100' => 1,
|
|
10471
|
+
'ismotionvideomute' => 1,
|
|
10436
10472
|
'isnetworkfeed' => 1,
|
|
10473
|
+
'isnewreeditonly' => 1,
|
|
10474
|
+
'isnotreedit' => 1,
|
|
10437
10475
|
'isoautooffset' => 1,
|
|
10438
10476
|
'isocalibrationgaintable' => 1,
|
|
10439
10477
|
'isoinfo' => 1,
|
|
@@ -10446,6 +10484,9 @@ my %tagExists = (
|
|
|
10446
10484
|
'isprotected' => 1,
|
|
10447
10485
|
'isrcnumber' => 1,
|
|
10448
10486
|
'isrecurring' => 1,
|
|
10487
|
+
'issaturationipe' => 1,
|
|
10488
|
+
'isscaleai' => 1,
|
|
10489
|
+
'istrimmotionvideo' => 1,
|
|
10449
10490
|
'isvbr' => 1,
|
|
10450
10491
|
'it8header' => 1,
|
|
10451
10492
|
'italic' => 1,
|
|
@@ -10713,7 +10754,9 @@ my %tagExists = (
|
|
|
10713
10754
|
'licenseedir' => 1,
|
|
10714
10755
|
'licenseinfourl' => 1,
|
|
10715
10756
|
'licenseurl' => 1,
|
|
10757
|
+
'lightbalance' => 1,
|
|
10716
10758
|
'lightingopt' => 1,
|
|
10759
|
+
'lightleveloriginal' => 1,
|
|
10717
10760
|
'lightness' => 1,
|
|
10718
10761
|
'lightroomworkflow' => 1,
|
|
10719
10762
|
'lights' => 1,
|
|
@@ -10827,6 +10870,7 @@ my %tagExists = (
|
|
|
10827
10870
|
'maininfoifd' => 1,
|
|
10828
10871
|
'makeandmodel' => 1,
|
|
10829
10872
|
'makemodel' => 1,
|
|
10873
|
+
'makernotebyteorder' => 1,
|
|
10830
10874
|
'makernotepentax5a' => 1,
|
|
10831
10875
|
'makernotepentax5b' => 1,
|
|
10832
10876
|
'makernotepentax5c' => 1,
|
|
@@ -11267,6 +11311,7 @@ my %tagExists = (
|
|
|
11267
11311
|
'nativeyresolution' => 1,
|
|
11268
11312
|
'nbcd' => 1,
|
|
11269
11313
|
'ncc' => 1,
|
|
11314
|
+
'ndeversion' => 1,
|
|
11270
11315
|
'nemoblurkernel' => 1,
|
|
11271
11316
|
'nemodarklimit' => 1,
|
|
11272
11317
|
'nemogainfactors' => 1,
|
|
@@ -11504,6 +11549,8 @@ my %tagExists = (
|
|
|
11504
11549
|
'originalmedia' => 1,
|
|
11505
11550
|
'originalmediatype' => 1,
|
|
11506
11551
|
'originalmedium' => 1,
|
|
11552
|
+
'originalpath' => 1,
|
|
11553
|
+
'originalpathhashkey' => 1,
|
|
11507
11554
|
'originalpayloadframecount' => 1,
|
|
11508
11555
|
'originalrawcreator' => 1,
|
|
11509
11556
|
'originalrawfiletype' => 1,
|
|
@@ -11755,9 +11802,19 @@ my %tagExists = (
|
|
|
11755
11802
|
'popularimeter' => 1,
|
|
11756
11803
|
'popupfillattributes' => 1,
|
|
11757
11804
|
'popupflash' => 1,
|
|
11805
|
+
'portraiteffectid' => 1,
|
|
11806
|
+
'portraiteffectidoriginal' => 1,
|
|
11807
|
+
'portraiteffectlevel' => 1,
|
|
11808
|
+
'portraiteffectvalue' => 1,
|
|
11809
|
+
'portraitexifrotation' => 1,
|
|
11810
|
+
'portraitlightlevel' => 1,
|
|
11758
11811
|
'portraitmatrix' => 1,
|
|
11759
11812
|
'portraitoffset' => 1,
|
|
11813
|
+
'portraitrefocusx' => 1,
|
|
11814
|
+
'portraitrefocusy' => 1,
|
|
11760
11815
|
'portraittonescaletable' => 1,
|
|
11816
|
+
'portraittouchx' => 1,
|
|
11817
|
+
'portraittouchy' => 1,
|
|
11761
11818
|
'poseyawdegrees' => 1,
|
|
11762
11819
|
'position' => 1,
|
|
11763
11820
|
'postertime' => 1,
|
|
@@ -12092,6 +12149,7 @@ my %tagExists = (
|
|
|
12092
12149
|
'redtrc' => 1,
|
|
12093
12150
|
'redx' => 1,
|
|
12094
12151
|
'redy' => 1,
|
|
12152
|
+
'reeditdata' => 1,
|
|
12095
12153
|
'reelnumber' => 1,
|
|
12096
12154
|
'reeltimecode' => 1,
|
|
12097
12155
|
'reference' => 1,
|
|
@@ -12102,6 +12160,8 @@ my %tagExists = (
|
|
|
12102
12160
|
'reflection' => 1,
|
|
12103
12161
|
'reflectionhardcopyorigcolorimetry' => 1,
|
|
12104
12162
|
'reflectionprintoutputcolorimetry' => 1,
|
|
12163
|
+
'refocusxoriginal' => 1,
|
|
12164
|
+
'refocusyoriginal' => 1,
|
|
12105
12165
|
'refresh' => 1,
|
|
12106
12166
|
'regionxformtackpoint' => 1,
|
|
12107
12167
|
'registerreadtiming' => 1,
|
|
@@ -12144,6 +12204,7 @@ my %tagExists = (
|
|
|
12144
12204
|
'replyto' => 1,
|
|
12145
12205
|
'representativedisparityfar' => 1,
|
|
12146
12206
|
'representativedisparitynear' => 1,
|
|
12207
|
+
'representativeframeloc' => 1,
|
|
12147
12208
|
'representativeimage' => 1,
|
|
12148
12209
|
'requestid' => 1,
|
|
12149
12210
|
'requeststate' => 1,
|
|
@@ -12160,6 +12221,7 @@ my %tagExists = (
|
|
|
12160
12221
|
'reservedblob7' => 1,
|
|
12161
12222
|
'reservedblob8' => 1,
|
|
12162
12223
|
'reservedblob9' => 1,
|
|
12224
|
+
'resize' => 1,
|
|
12163
12225
|
'resolutioninfo' => 1,
|
|
12164
12226
|
'resolutionxlengthunit' => 1,
|
|
12165
12227
|
'resolutionxunit' => 1,
|
|
@@ -12436,6 +12498,7 @@ my %tagExists = (
|
|
|
12436
12498
|
'sensorrightborder' => 1,
|
|
12437
12499
|
'sensorvelocityeast' => 1,
|
|
12438
12500
|
'sensorvelocitynorth' => 1,
|
|
12501
|
+
'sepversion' => 1,
|
|
12439
12502
|
'seqcount' => 1,
|
|
12440
12503
|
'seqfinal' => 1,
|
|
12441
12504
|
'seqframeinfo' => 1,
|
|
@@ -12664,6 +12727,7 @@ my %tagExists = (
|
|
|
12664
12727
|
'starring' => 1,
|
|
12665
12728
|
'startdate' => 1,
|
|
12666
12729
|
'startedgecode' => 1,
|
|
12730
|
+
'startmotionvideo' => 1,
|
|
12667
12731
|
'startofframe' => 1,
|
|
12668
12732
|
'startreading' => 1,
|
|
12669
12733
|
'starttime' => 1,
|
|
@@ -13044,6 +13108,7 @@ my %tagExists = (
|
|
|
13044
13108
|
'tonescale9' => 1,
|
|
13045
13109
|
'tonescale9spline' => 1,
|
|
13046
13110
|
'tonespaceflow' => 1,
|
|
13111
|
+
'tonevalue' => 1,
|
|
13047
13112
|
'tonscaletable' => 1,
|
|
13048
13113
|
'tool_name' => 1,
|
|
13049
13114
|
'tool_version' => 1,
|
|
@@ -13066,6 +13131,8 @@ my %tagExists = (
|
|
|
13066
13131
|
'totalparts' => 1,
|
|
13067
13132
|
'totalsamples' => 1,
|
|
13068
13133
|
'totalsize' => 1,
|
|
13134
|
+
'touchxoriginal' => 1,
|
|
13135
|
+
'touchyoriginal' => 1,
|
|
13069
13136
|
'toycamerafilter' => 1,
|
|
13070
13137
|
'trackaperture' => 1,
|
|
13071
13138
|
'trackcategory' => 1,
|
|
@@ -13375,6 +13442,8 @@ my %tagExists = (
|
|
|
13375
13442
|
'watched' => 1,
|
|
13376
13443
|
'watercolorfilter' => 1,
|
|
13377
13444
|
'watermark' => 1,
|
|
13445
|
+
'watermarkremoved' => 1,
|
|
13446
|
+
'watermarkremovedoriginal' => 1,
|
|
13378
13447
|
'watermarktype' => 1,
|
|
13379
13448
|
'watermarkurl' => 1,
|
|
13380
13449
|
'wave' => 1,
|
|
@@ -13428,6 +13497,7 @@ my %tagExists = (
|
|
|
13428
13497
|
'wbredtungsten' => 1,
|
|
13429
13498
|
'wbsettings' => 1,
|
|
13430
13499
|
'wbsettings2' => 1,
|
|
13500
|
+
'wbtemperature' => 1,
|
|
13431
13501
|
'wcsprofiles' => 1,
|
|
13432
13502
|
'weaponfired' => 1,
|
|
13433
13503
|
'weaponload' => 1,
|
|
@@ -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};
|
data/bin/lib/Image/ExifTool.pm
CHANGED
|
@@ -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);
|