exiftool-vendored.pl 12.40.0 → 12.43.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/Changes +71 -6
- package/bin/META.json +1 -1
- package/bin/META.yml +1 -1
- package/bin/README +2 -2
- package/bin/arg_files/exif2xmp.args +5 -0
- package/bin/arg_files/xmp2exif.args +6 -0
- package/bin/exiftool +54 -22
- package/bin/lib/Image/ExifTool/Apple.pm +11 -2
- package/bin/lib/Image/ExifTool/Canon.pm +45 -22
- package/bin/lib/Image/ExifTool/DJI.pm +60 -1
- package/bin/lib/Image/ExifTool/DNG.pm +8 -2
- package/bin/lib/Image/ExifTool/DarwinCore.pm +12 -1
- package/bin/lib/Image/ExifTool/Exif.pm +11 -2
- package/bin/lib/Image/ExifTool/FlashPix.pm +14 -1
- package/bin/lib/Image/ExifTool/FujiFilm.pm +21 -2
- package/bin/lib/Image/ExifTool/Geotag.pm +24 -4
- package/bin/lib/Image/ExifTool/ICC_Profile.pm +10 -8
- package/bin/lib/Image/ExifTool/ID3.pm +5 -5
- package/bin/lib/Image/ExifTool/LNK.pm +5 -2
- package/bin/lib/Image/ExifTool/MacOS.pm +9 -9
- package/bin/lib/Image/ExifTool/MakerNotes.pm +17 -1
- package/bin/lib/Image/ExifTool/Nikon.pm +21 -6
- package/bin/lib/Image/ExifTool/NikonCustom.pm +4 -1
- package/bin/lib/Image/ExifTool/Olympus.pm +22 -2
- package/bin/lib/Image/ExifTool/PDF.pm +2 -1
- package/bin/lib/Image/ExifTool/Panasonic.pm +10 -1
- package/bin/lib/Image/ExifTool/Parrot.pm +1 -0
- package/bin/lib/Image/ExifTool/Pentax.pm +1 -1
- package/bin/lib/Image/ExifTool/Photoshop.pm +6 -5
- package/bin/lib/Image/ExifTool/QuickTime.pm +1 -1
- package/bin/lib/Image/ExifTool/QuickTimeStream.pl +40 -8
- package/bin/lib/Image/ExifTool/README +5 -1
- package/bin/lib/Image/ExifTool/Samsung.pm +233 -2
- package/bin/lib/Image/ExifTool/Shortcuts.pm +3 -1
- package/bin/lib/Image/ExifTool/Sony.pm +35 -31
- package/bin/lib/Image/ExifTool/TagLookup.pm +2510 -2479
- package/bin/lib/Image/ExifTool/TagNames.pod +137 -85
- package/bin/lib/Image/ExifTool/WritePhotoshop.pl +5 -5
- package/bin/lib/Image/ExifTool/WriteQuickTime.pl +2 -2
- package/bin/lib/Image/ExifTool/Writer.pl +2 -1
- package/bin/lib/Image/ExifTool.pm +40 -16
- package/bin/lib/Image/ExifTool.pod +13 -4
- package/bin/perl-Image-ExifTool.spec +1 -1
- package/bin/pp_build_exe.args +4 -4
- package/package.json +14 -3
|
@@ -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 25802 tags, with 16493 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
|
|
@@ -629,6 +629,7 @@ for the official EXIF 2.32 specification.
|
|
|
629
629
|
MakerNoteCanon ExifIFD Canon
|
|
630
630
|
MakerNoteCasio ExifIFD Casio
|
|
631
631
|
MakerNoteCasio2 ExifIFD Casio Type2
|
|
632
|
+
MakerNoteDJIInfo ExifIFD DJI Info
|
|
632
633
|
MakerNoteDJI ExifIFD DJI
|
|
633
634
|
MakerNoteFLIR ExifIFD FLIR
|
|
634
635
|
MakerNoteFujiFilm ExifIFD FujiFilm
|
|
@@ -669,6 +670,7 @@ for the official EXIF 2.32 specification.
|
|
|
669
670
|
MakerNoteNintendo ExifIFD Nintendo
|
|
670
671
|
MakerNoteOlympus ExifIFD Olympus
|
|
671
672
|
MakerNoteOlympus2 ExifIFD Olympus
|
|
673
|
+
MakerNoteOlympus3 ExifIFD Olympus
|
|
672
674
|
MakerNoteLeica ExifIFD Panasonic
|
|
673
675
|
MakerNoteLeica2 ExifIFD Panasonic Leica2
|
|
674
676
|
MakerNoteLeica3 ExifIFD Panasonic Leica3
|
|
@@ -853,6 +855,7 @@ for the official EXIF 2.32 specification.
|
|
|
853
855
|
MakerNotePentax IFD0 Pentax
|
|
854
856
|
MakerNotePentax5 IFD0 Pentax
|
|
855
857
|
MakerNoteRicohPentax IFD0 Pentax
|
|
858
|
+
MakerNoteDJIInfo IFD0 DJI Info
|
|
856
859
|
DNGPrivateData IFD0 int8u!
|
|
857
860
|
0xc635 MakerNoteSafety IFD0 int16u
|
|
858
861
|
0xc640 RawImageSegmentation - no
|
|
@@ -6754,6 +6757,7 @@ Metadata tags that exist.
|
|
|
6754
6757
|
|
|
6755
6758
|
Tag Name Writable
|
|
6756
6759
|
-------- --------
|
|
6760
|
+
CreatorApp no
|
|
6757
6761
|
ManufacturerName no
|
|
6758
6762
|
MediaColor no
|
|
6759
6763
|
MediaWeight no
|
|
@@ -6978,6 +6982,7 @@ Tags extracted from the maker notes of iPhone images.
|
|
|
6978
6982
|
0x0008 AccelerationVector rational64s[3]
|
|
6979
6983
|
0x000a HDRImageType int32s
|
|
6980
6984
|
0x000b BurstUUID string
|
|
6985
|
+
0x000c FocusDistanceRange rational64s[2]
|
|
6981
6986
|
0x0011 MediaGroupUUID string
|
|
6982
6987
|
0x0015 ImageUniqueID string
|
|
6983
6988
|
|
|
@@ -8402,16 +8407,16 @@ WB tags for the Canon G9.
|
|
|
8402
8407
|
|
|
8403
8408
|
Index4 Tag Name Writable
|
|
8404
8409
|
------ -------- --------
|
|
8405
|
-
2
|
|
8406
|
-
10
|
|
8407
|
-
18
|
|
8408
|
-
26
|
|
8409
|
-
34
|
|
8410
|
-
42
|
|
8411
|
-
50
|
|
8412
|
-
58
|
|
8413
|
-
66
|
|
8414
|
-
74
|
|
8410
|
+
2 WB_GRBGLevelsAuto int32s[4]
|
|
8411
|
+
10 WB_GRBGLevelsDaylight int32s[4]
|
|
8412
|
+
18 WB_GRBGLevelsCloudy int32s[4]
|
|
8413
|
+
26 WB_GRBGLevelsTungsten int32s[4]
|
|
8414
|
+
34 WB_GRBGLevelsFluorescent int32s[4]
|
|
8415
|
+
42 WB_GRBGLevelsFluorHigh int32s[4]
|
|
8416
|
+
50 WB_GRBGLevelsFlash int32s[4]
|
|
8417
|
+
58 WB_GRBGLevelsUnderwater int32s[4]
|
|
8418
|
+
66 WB_GRBGLevelsCustom1 int32s[4]
|
|
8419
|
+
74 WB_GRBGLevelsCustom2 int32s[4]
|
|
8415
8420
|
|
|
8416
8421
|
=head3 Canon FaceDetect3 Tags
|
|
8417
8422
|
|
|
@@ -10650,6 +10655,30 @@ These tags belong to the ExifTool XMP-drone-dji family 1 group.
|
|
|
10650
10655
|
RtkStdLon real
|
|
10651
10656
|
SelfData string
|
|
10652
10657
|
|
|
10658
|
+
=head3 DJI Info Tags
|
|
10659
|
+
|
|
10660
|
+
Tags written by some DJI drones.
|
|
10661
|
+
|
|
10662
|
+
Tag ID Tag Name Writable
|
|
10663
|
+
------ -------- --------
|
|
10664
|
+
'FlightDegree(Y,P,R)' FlightDegree no
|
|
10665
|
+
'FlightSpeed(X,Y,Z)' FlightSpeed no
|
|
10666
|
+
'GimbalDegree(Y,P,R)' GimbalDegree no
|
|
10667
|
+
'adj_dbg_info' ADJDebugInfo no
|
|
10668
|
+
'ae_dbg_info' AEDebugInfo no
|
|
10669
|
+
'ae_histogram_info' AEHistogramInfo no
|
|
10670
|
+
'ae_liveview_histogram_info'
|
|
10671
|
+
AELiveViewHistogramInfo no
|
|
10672
|
+
'ae_liveview_local_histogram'
|
|
10673
|
+
AELiveViewLocalHistogram no
|
|
10674
|
+
'ae_local_histogram' AELocalHistogram no
|
|
10675
|
+
'af_dbg_info' AFDebugInfo no
|
|
10676
|
+
'awb_dbg_info' AWBDebugInfo no
|
|
10677
|
+
'hiso' Histogram no
|
|
10678
|
+
'hyperlapse_dbg_info' HyperlapsDebugInfo no
|
|
10679
|
+
'sensor_id' SensorID no
|
|
10680
|
+
'xidiri' Xidiri no
|
|
10681
|
+
|
|
10653
10682
|
=head3 DJI ThermalParams Tags
|
|
10654
10683
|
|
|
10655
10684
|
Thermal parameters extracted from APP4 of DJI RJPEG files from the ZH20T.
|
|
@@ -16640,6 +16669,7 @@ any information found here will be extracted, even if the tag is not listed.
|
|
|
16640
16669
|
0x0306 AFFineTune int8u
|
|
16641
16670
|
0x0307 AFFineTuneAdj int16s[3]
|
|
16642
16671
|
0x0308 FocusBracketStepSize int8u
|
|
16672
|
+
0x0309 AISubjectTrackingMode int16u
|
|
16643
16673
|
0x0400 FlashMode int16u
|
|
16644
16674
|
0x0401 FlashExposureComp rational64s
|
|
16645
16675
|
0x0403 FlashRemoteControl int16u
|
|
@@ -17431,29 +17461,30 @@ iPalm.
|
|
|
17431
17461
|
Tags extracted from the PANA and LEIC user data found in MP4 videos from
|
|
17432
17462
|
various Panasonic and Leica models.
|
|
17433
17463
|
|
|
17434
|
-
Index1
|
|
17435
|
-
------
|
|
17436
|
-
|
|
17437
|
-
|
|
17438
|
-
|
|
17439
|
-
|
|
17440
|
-
|
|
17441
|
-
|
|
17442
|
-
|
|
17443
|
-
|
|
17444
|
-
|
|
17445
|
-
|
|
17446
|
-
|
|
17447
|
-
|
|
17448
|
-
|
|
17449
|
-
|
|
17450
|
-
|
|
17451
|
-
|
|
17452
|
-
|
|
17453
|
-
|
|
17454
|
-
|
|
17455
|
-
|
|
17456
|
-
|
|
17464
|
+
Index1 Tag Name Writable
|
|
17465
|
+
------ -------- --------
|
|
17466
|
+
0 Make no
|
|
17467
|
+
4 Model no
|
|
17468
|
+
12 Model no
|
|
17469
|
+
16 JPEG-likeData EXIF
|
|
17470
|
+
22 Model no
|
|
17471
|
+
52 Version1 no
|
|
17472
|
+
62 Version2 no
|
|
17473
|
+
80 MakerNoteLeica5 Panasonic Leica5
|
|
17474
|
+
88 ThumbnailWidth no
|
|
17475
|
+
90 ThumbnailHeight no
|
|
17476
|
+
92 ThumbnailImage no
|
|
17477
|
+
1334 ThumbnailWidth no
|
|
17478
|
+
1338 ThumbnailHeight no
|
|
17479
|
+
1342 ThumbnailLength no
|
|
17480
|
+
1350 ThumbnailImage no
|
|
17481
|
+
1358 ThumbnailWidth no
|
|
17482
|
+
1362 ThumbnailHeight no
|
|
17483
|
+
1366 ThumbnailLength no
|
|
17484
|
+
1374 ThumbnailImage no
|
|
17485
|
+
16488 ExifData EXIF
|
|
17486
|
+
16512 ExifData EXIF
|
|
17487
|
+
0x00200080 ExifData EXIF
|
|
17457
17488
|
|
|
17458
17489
|
=head2 Pentax Tags
|
|
17459
17490
|
|
|
@@ -20759,39 +20790,39 @@ Tags in the encrypted SR2SubIFD
|
|
|
20759
20790
|
|
|
20760
20791
|
Tag ID Tag Name Writable
|
|
20761
20792
|
------ -------- --------
|
|
20762
|
-
0x7300 BlackLevel
|
|
20763
|
-
0x7302 WB_GRBGLevelsAuto
|
|
20764
|
-
0x7303 WB_GRBGLevels
|
|
20765
|
-
0x7310 BlackLevel
|
|
20766
|
-
0x7312 WB_RGGBLevelsAuto
|
|
20767
|
-
0x7313 WB_RGGBLevels
|
|
20768
|
-
0x7480 WB_RGBLevelsDaylight
|
|
20769
|
-
0x7481 WB_RGBLevelsCloudy
|
|
20770
|
-
0x7482 WB_RGBLevelsTungsten
|
|
20771
|
-
0x7483 WB_RGBLevelsFlash
|
|
20772
|
-
0x7484 WB_RGBLevels4500K
|
|
20773
|
-
0x7486 WB_RGBLevelsFluorescent
|
|
20793
|
+
0x7300 BlackLevel int16u[4]!
|
|
20794
|
+
0x7302 WB_GRBGLevelsAuto int16s[4]!
|
|
20795
|
+
0x7303 WB_GRBGLevels int16s[4]!
|
|
20796
|
+
0x7310 BlackLevel int16u[4]!
|
|
20797
|
+
0x7312 WB_RGGBLevelsAuto int16s[4]!
|
|
20798
|
+
0x7313 WB_RGGBLevels int16s[4]!
|
|
20799
|
+
0x7480 WB_RGBLevelsDaylight int16s[4]!
|
|
20800
|
+
0x7481 WB_RGBLevelsCloudy int16s[4]!
|
|
20801
|
+
0x7482 WB_RGBLevelsTungsten int16s[4]!
|
|
20802
|
+
0x7483 WB_RGBLevelsFlash int16s[4]!
|
|
20803
|
+
0x7484 WB_RGBLevels4500K int16s[4]!
|
|
20804
|
+
0x7486 WB_RGBLevelsFluorescent int16s[4]!
|
|
20774
20805
|
0x74a0 MaxApertureAtMaxFocal no
|
|
20775
20806
|
0x74a1 MaxApertureAtMinFocal no
|
|
20776
20807
|
0x74a2 MaxFocalLength no
|
|
20777
20808
|
0x74a3 MinFocalLength no
|
|
20778
20809
|
0x74c0 SR2DataIFD Sony SR2DataIFD
|
|
20779
20810
|
0x7800 ColorMatrix no
|
|
20780
|
-
0x7820 WB_RGBLevelsDaylight
|
|
20781
|
-
0x7821 WB_RGBLevelsCloudy
|
|
20782
|
-
0x7822 WB_RGBLevelsTungsten
|
|
20783
|
-
0x7823 WB_RGBLevelsFlash
|
|
20784
|
-
0x7824 WB_RGBLevels4500K
|
|
20785
|
-
0x7825 WB_RGBLevelsShade
|
|
20786
|
-
0x7826 WB_RGBLevelsFluorescent
|
|
20787
|
-
0x7827 WB_RGBLevelsFluorescentP1
|
|
20788
|
-
0x7828 WB_RGBLevelsFluorescentP2
|
|
20789
|
-
0x7829 WB_RGBLevelsFluorescentM1
|
|
20790
|
-
0x782a WB_RGBLevels8500K
|
|
20791
|
-
0x782b WB_RGBLevels6000K
|
|
20792
|
-
0x782c WB_RGBLevels3200K
|
|
20793
|
-
0x782d WB_RGBLevels2500K
|
|
20794
|
-
0x787f WhiteLevel
|
|
20811
|
+
0x7820 WB_RGBLevelsDaylight int16s[3]!
|
|
20812
|
+
0x7821 WB_RGBLevelsCloudy int16s[3]!
|
|
20813
|
+
0x7822 WB_RGBLevelsTungsten int16s[3]!
|
|
20814
|
+
0x7823 WB_RGBLevelsFlash int16s[3]!
|
|
20815
|
+
0x7824 WB_RGBLevels4500K int16s[3]!
|
|
20816
|
+
0x7825 WB_RGBLevelsShade int16s[3]!
|
|
20817
|
+
0x7826 WB_RGBLevelsFluorescent int16s[3]!
|
|
20818
|
+
0x7827 WB_RGBLevelsFluorescentP1 int16s[3]!
|
|
20819
|
+
0x7828 WB_RGBLevelsFluorescentP2 int16s[3]!
|
|
20820
|
+
0x7829 WB_RGBLevelsFluorescentM1 int16s[3]!
|
|
20821
|
+
0x782a WB_RGBLevels8500K int16s[3]!
|
|
20822
|
+
0x782b WB_RGBLevels6000K int16s[3]!
|
|
20823
|
+
0x782c WB_RGBLevels3200K int16s[3]!
|
|
20824
|
+
0x782d WB_RGBLevels2500K int16s[3]!
|
|
20825
|
+
0x787f WhiteLevel int16u[3]!
|
|
20795
20826
|
0x797d VignettingCorrParams no
|
|
20796
20827
|
0x7980 ChromaticAberrationCorrParams no
|
|
20797
20828
|
0x7982 DistortionCorrParams no
|
|
@@ -20954,6 +20985,7 @@ still proprietary) Adobe format.
|
|
|
20954
20985
|
MakerNoteCanon Canon
|
|
20955
20986
|
MakerNoteCasio Casio
|
|
20956
20987
|
MakerNoteCasio2 Casio Type2
|
|
20988
|
+
MakerNoteDJIInfo DJI Info
|
|
20957
20989
|
MakerNoteDJI DJI
|
|
20958
20990
|
MakerNoteFLIR FLIR
|
|
20959
20991
|
MakerNoteFujiFilm FujiFilm
|
|
@@ -20994,6 +21026,7 @@ still proprietary) Adobe format.
|
|
|
20994
21026
|
MakerNoteNintendo Nintendo
|
|
20995
21027
|
MakerNoteOlympus Olympus
|
|
20996
21028
|
MakerNoteOlympus2 Olympus
|
|
21029
|
+
MakerNoteOlympus3 Olympus
|
|
20997
21030
|
MakerNoteLeica Panasonic
|
|
20998
21031
|
MakerNoteLeica2 Panasonic Leica2
|
|
20999
21032
|
MakerNoteLeica3 Panasonic Leica3
|
|
@@ -21624,28 +21657,29 @@ unrecognized Windows Compound Binary file as a FlashPix (FPX) file. See
|
|
|
21624
21657
|
L<http://graphcomp.com/info/specs/livepicture/fpx.pdf> for the FlashPix
|
|
21625
21658
|
specification.
|
|
21626
21659
|
|
|
21627
|
-
Tag ID
|
|
21628
|
-
------
|
|
21629
|
-
"\x01CompObj"
|
|
21630
|
-
"\x05Audio Info"
|
|
21631
|
-
"\x05Data Object"
|
|
21660
|
+
Tag ID Tag Name Writable
|
|
21661
|
+
------ -------- --------
|
|
21662
|
+
"\x01CompObj" CompObj FlashPix CompObj
|
|
21663
|
+
"\x05Audio Info" AudioInfo FlashPix AudioInfo
|
|
21664
|
+
"\x05Data Object" DataObject FlashPix DataObject
|
|
21632
21665
|
"\x05DocumentSummaryInformation" DocumentInfo FlashPix DocumentInfo
|
|
21633
|
-
"\x05Extension List"
|
|
21634
|
-
"\x05Global Info"
|
|
21635
|
-
"\x05Image Contents"
|
|
21636
|
-
"\x05Image Info"
|
|
21637
|
-
"\x05Operation"
|
|
21638
|
-
"\x05Screen Nail"
|
|
21639
|
-
"\x05SummaryInformation"
|
|
21640
|
-
"\x05Transform"
|
|
21641
|
-
'Audio Stream'
|
|
21642
|
-
'
|
|
21643
|
-
'
|
|
21644
|
-
'
|
|
21645
|
-
'
|
|
21646
|
-
'
|
|
21647
|
-
'
|
|
21648
|
-
'
|
|
21666
|
+
"\x05Extension List" Extensions FlashPix Extensions
|
|
21667
|
+
"\x05Global Info" GlobalInfo FlashPix GlobalInfo
|
|
21668
|
+
"\x05Image Contents" Image FlashPix Image
|
|
21669
|
+
"\x05Image Info" ImageInfo FlashPix ImageInfo
|
|
21670
|
+
"\x05Operation" Operation FlashPix Operation
|
|
21671
|
+
"\x05Screen Nail" ScreenNail no
|
|
21672
|
+
"\x05SummaryInformation" SummaryInfo FlashPix SummaryInfo
|
|
21673
|
+
"\x05Transform" Transform FlashPix Transform
|
|
21674
|
+
'Audio Stream' AudioStream no
|
|
21675
|
+
'BasicFileInfo' BasicFileInfo no
|
|
21676
|
+
'Contents' Contents XMP
|
|
21677
|
+
'Current User' CurrentUser no
|
|
21678
|
+
'ICC Profile 0001' ICC_Profile ICC_Profile
|
|
21679
|
+
'Preview' PreviewImage no
|
|
21680
|
+
'Property' PreviewInfo FlashPix PreviewInfo
|
|
21681
|
+
'Subimage 0000 Header' SubimageHdr FlashPix SubimageHdr
|
|
21682
|
+
'WordDocument' WordDocument FlashPix WordDocument
|
|
21649
21683
|
|
|
21650
21684
|
=head3 FlashPix CompObj Tags
|
|
21651
21685
|
|
|
@@ -23738,6 +23772,7 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
23738
23772
|
DCVerbatimLocality string_
|
|
23739
23773
|
DCVerbatimLongitude string_
|
|
23740
23774
|
DCVerbatimSRS string_
|
|
23775
|
+
DCVerticalDatum string_
|
|
23741
23776
|
DCWaterBody string_
|
|
23742
23777
|
DCEvent DarwinCore Event Struct
|
|
23743
23778
|
EventDay integer_
|
|
@@ -23810,7 +23845,9 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
23810
23845
|
IdentificationRemarks string_
|
|
23811
23846
|
IdentificationVerificationStatus string_
|
|
23812
23847
|
IdentifiedBy string_
|
|
23848
|
+
IdentifiedByID string_
|
|
23813
23849
|
TypeStatus string_
|
|
23850
|
+
VerbatimIdentification string_
|
|
23814
23851
|
LivingSpecimen DarwinCore MaterialSample Struct
|
|
23815
23852
|
LivingSpecimenMaterialSampleID string_
|
|
23816
23853
|
MachineObservation DarwinCore Event Struct
|
|
@@ -23854,8 +23891,10 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
23854
23891
|
OccurrenceAssociatedTaxa string_
|
|
23855
23892
|
OccurrenceBehavior string_
|
|
23856
23893
|
OccurrenceCatalogNumber string_
|
|
23894
|
+
OccurrenceDegreeOfEstablishment string_
|
|
23857
23895
|
OccurrenceDisposition string_
|
|
23858
23896
|
OccurrenceEstablishmentMeans string_
|
|
23897
|
+
OccurrenceGeoreferenceVerificationStatus string_
|
|
23859
23898
|
OccurrenceIndividualCount string_
|
|
23860
23899
|
OccurrenceIndividualID string_
|
|
23861
23900
|
OccurrenceLifeStage string_
|
|
@@ -23869,6 +23908,7 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
23869
23908
|
OccurrencePreparations string_
|
|
23870
23909
|
OccurrencePreviousIdentifications string_
|
|
23871
23910
|
OccurrenceRecordedBy string_
|
|
23911
|
+
OccurrenceRecordedByID string_
|
|
23872
23912
|
OccurrenceRecordNumber string_
|
|
23873
23913
|
OccurrenceReproductiveCondition string_
|
|
23874
23914
|
OccurrenceSex string_
|
|
@@ -23899,6 +23939,7 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
23899
23939
|
RelationshipAccordingTo string_
|
|
23900
23940
|
RelationshipEstablishedDate date_
|
|
23901
23941
|
RelationshipOfResource string_
|
|
23942
|
+
RelationshipOfResourceID string_
|
|
23902
23943
|
RelationshipRemarks string_
|
|
23903
23944
|
ResourceID string_
|
|
23904
23945
|
ResourceRelationshipID string_
|
|
@@ -23906,6 +23947,7 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
23906
23947
|
TaxonAcceptedNameUsage string_
|
|
23907
23948
|
TaxonAcceptedNameUsageID string_
|
|
23908
23949
|
TaxonClass string_
|
|
23950
|
+
TaxonCultivarEpithet string_
|
|
23909
23951
|
TaxonFamily string_
|
|
23910
23952
|
TaxonGenus string_
|
|
23911
23953
|
TaxonHigherClassification string_
|
|
@@ -23984,6 +24026,7 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
23984
24026
|
VerbatimLocality string
|
|
23985
24027
|
VerbatimLongitude string
|
|
23986
24028
|
VerbatimSRS string
|
|
24029
|
+
VerticalDatum string
|
|
23987
24030
|
WaterBody string
|
|
23988
24031
|
|
|
23989
24032
|
=head3 DarwinCore Event Struct
|
|
@@ -24051,7 +24094,9 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
24051
24094
|
IdentificationRemarks string
|
|
24052
24095
|
IdentificationVerificationStatus string
|
|
24053
24096
|
IdentifiedBy string
|
|
24097
|
+
IdentifiedByID string
|
|
24054
24098
|
TypeStatus string
|
|
24099
|
+
VerbatimIdentification string
|
|
24055
24100
|
|
|
24056
24101
|
=head3 DarwinCore MeasurementOrFact Struct
|
|
24057
24102
|
|
|
@@ -24078,8 +24123,10 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
24078
24123
|
AssociatedTaxa string
|
|
24079
24124
|
Behavior string
|
|
24080
24125
|
CatalogNumber string
|
|
24126
|
+
DegreeOfEstablishment string
|
|
24081
24127
|
Disposition string
|
|
24082
24128
|
EstablishmentMeans string
|
|
24129
|
+
GeoreferenceVerificationStatus string
|
|
24083
24130
|
IndividualCount string
|
|
24084
24131
|
IndividualID string
|
|
24085
24132
|
LifeStage string
|
|
@@ -24094,6 +24141,7 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
24094
24141
|
PreviousIdentifications string
|
|
24095
24142
|
RecordNumber string
|
|
24096
24143
|
RecordedBy string
|
|
24144
|
+
RecordedByID string
|
|
24097
24145
|
ReproductiveCondition string
|
|
24098
24146
|
Sex string
|
|
24099
24147
|
|
|
@@ -24133,6 +24181,7 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
24133
24181
|
RelationshipAccordingTo string
|
|
24134
24182
|
RelationshipEstablishedDate date
|
|
24135
24183
|
RelationshipOfResource string
|
|
24184
|
+
RelationshipOfResourceID string
|
|
24136
24185
|
RelationshipRemarks string
|
|
24137
24186
|
ResourceID string
|
|
24138
24187
|
ResourceRelationshipID string
|
|
@@ -24144,6 +24193,7 @@ These tags belong to the ExifTool XMP-dwc family 1 group.
|
|
|
24144
24193
|
AcceptedNameUsage string
|
|
24145
24194
|
AcceptedNameUsageID string
|
|
24146
24195
|
Class string
|
|
24196
|
+
CultivarEpithet string
|
|
24147
24197
|
Family string
|
|
24148
24198
|
Genus string
|
|
24149
24199
|
HigherClassification string
|
|
@@ -26753,9 +26803,9 @@ ExifTool extracts ID3 and Lyrics3 information from MP3, MPEG, WAV, AIFF,
|
|
|
26753
26803
|
OGG, FLAC, APE, MPC and RealAudio files. ID3v2 tags which support multiple
|
|
26754
26804
|
languages (eg. Comment and Lyrics) are extracted by specifying the tag name,
|
|
26755
26805
|
followed by a dash ('-'), then a 3-character ISO 639-2 language code (eg.
|
|
26756
|
-
"Comment-spa"). See L<
|
|
26757
|
-
|
|
26758
|
-
|
|
26806
|
+
"Comment-spa"). See L<https://id3.org/> for the official ID3 specification
|
|
26807
|
+
and L<http://www.loc.gov/standards/iso639-2/php/code_list.php> for a list of
|
|
26808
|
+
ISO 639-2 language codes.
|
|
26759
26809
|
|
|
26760
26810
|
Tag Name Writable
|
|
26761
26811
|
-------- --------
|
|
@@ -37494,6 +37544,7 @@ for more details.
|
|
|
37494
37544
|
MakerNoteCasio
|
|
37495
37545
|
MakerNoteCasio2
|
|
37496
37546
|
MakerNoteDJI
|
|
37547
|
+
MakerNoteDJIInfo
|
|
37497
37548
|
MakerNoteFLIR
|
|
37498
37549
|
MakerNoteFujiFilm
|
|
37499
37550
|
MakerNoteGE
|
|
@@ -37534,6 +37585,7 @@ for more details.
|
|
|
37534
37585
|
MakerNoteNintendo
|
|
37535
37586
|
MakerNoteOlympus
|
|
37536
37587
|
MakerNoteOlympus2
|
|
37588
|
+
MakerNoteOlympus3
|
|
37537
37589
|
MakerNoteLeica
|
|
37538
37590
|
MakerNoteLeica2
|
|
37539
37591
|
MakerNoteLeica3
|
|
@@ -138,13 +138,13 @@ sub WritePhotoshop($$$)
|
|
|
138
138
|
unless ($tagInfo) {
|
|
139
139
|
# process subdirectory anyway if writable (except EXIF to avoid recursion)
|
|
140
140
|
# --> this allows IPTC to be processed if found here in TIFF images
|
|
141
|
-
# (
|
|
142
|
-
#
|
|
143
|
-
#
|
|
144
|
-
# if it happens again)
|
|
141
|
+
# (but allow EXIF to be written in PSD files if XMP or IPTC tags are
|
|
142
|
+
# being written because I have seen cases of XMP in PSD-EXIFInfo-IFD0
|
|
143
|
+
# and IPTC in PSD-EXIFInfo-IFD0-IPTC, see forum10768 and forum13198)
|
|
145
144
|
my $tmpInfo = $et->GetTagInfo($tagTablePtr, $tagID);
|
|
146
145
|
if ($tmpInfo and $$tmpInfo{SubDirectory} and
|
|
147
|
-
$tmpInfo->{SubDirectory}->{TagTable} ne 'Image::ExifTool::Exif::Main'
|
|
146
|
+
($tmpInfo->{SubDirectory}->{TagTable} ne 'Image::ExifTool::Exif::Main' or
|
|
147
|
+
($$et{FILE_TYPE} eq 'PSD' and ($$editDirs{0x0404} or $$editDirs{0x0424}))))
|
|
148
148
|
{
|
|
149
149
|
my $table = Image::ExifTool::GetTagTable($tmpInfo->{SubDirectory}->{TagTable});
|
|
150
150
|
$tagInfo = $tmpInfo if $$table{WRITE_PROC};
|
|
@@ -1391,8 +1391,8 @@ sub WriteQuickTime($$$)
|
|
|
1391
1391
|
$pos += $siz;
|
|
1392
1392
|
}
|
|
1393
1393
|
if ($msg) {
|
|
1394
|
-
# (allow empty sample description for 'url '
|
|
1395
|
-
if ($$et{HandlerType}
|
|
1394
|
+
# (allow empty sample description for non-audio/video handler types, eg. 'url ', 'meta')
|
|
1395
|
+
if ($$et{HandlerType}) {
|
|
1396
1396
|
my $grp = $$et{CUR_WRITE_GROUP} || $parent;
|
|
1397
1397
|
$et->Error("$msg for $grp");
|
|
1398
1398
|
return $rtnErr;
|
|
@@ -858,7 +858,7 @@ TAG: foreach $tagInfo (@matchingTags) {
|
|
|
858
858
|
($shift or ($shiftable eq '0' and $options{DelValue})))
|
|
859
859
|
{
|
|
860
860
|
$err = "$wgrp1:$tag is not shiftable";
|
|
861
|
-
$verbose
|
|
861
|
+
$verbose and print $out "$err\n";
|
|
862
862
|
next;
|
|
863
863
|
}
|
|
864
864
|
}
|
|
@@ -1270,6 +1270,7 @@ sub SetNewValuesFromFile($$;@)
|
|
|
1270
1270
|
GlobalTimeShift => $$options{GlobalTimeShift},
|
|
1271
1271
|
HexTagIDs => $$options{HexTagIDs},
|
|
1272
1272
|
IgnoreMinorErrors=>$$options{IgnoreMinorErrors},
|
|
1273
|
+
IgnoreTags => $$options{IgnoreTags},
|
|
1273
1274
|
Lang => $$options{Lang},
|
|
1274
1275
|
LargeFileSupport=> $$options{LargeFileSupport},
|
|
1275
1276
|
List => 1,
|
|
@@ -29,7 +29,7 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes
|
|
|
29
29
|
%jpegMarker %specialTags %fileTypeLookup $testLen $exeDir
|
|
30
30
|
%static_vars);
|
|
31
31
|
|
|
32
|
-
$VERSION = '12.
|
|
32
|
+
$VERSION = '12.43';
|
|
33
33
|
$RELEASE = '';
|
|
34
34
|
@ISA = qw(Exporter);
|
|
35
35
|
%EXPORT_TAGS = (
|
|
@@ -2209,6 +2209,20 @@ sub Options($$;@)
|
|
|
2209
2209
|
} else {
|
|
2210
2210
|
$$options{$param} = undef; # clear the list
|
|
2211
2211
|
}
|
|
2212
|
+
} elsif ($param eq 'IgnoreTags') {
|
|
2213
|
+
if (defined $newVal) {
|
|
2214
|
+
# parse list from delimited string if necessary
|
|
2215
|
+
my @ignoreList = (ref $newVal eq 'ARRAY') ? @$newVal : ($newVal =~ /[-\w?*:]+/g);
|
|
2216
|
+
ExpandShortcuts(\@ignoreList);
|
|
2217
|
+
# add to existing tags to ignore
|
|
2218
|
+
$$options{$param} or $$options{$param} = { };
|
|
2219
|
+
foreach (@ignoreList) {
|
|
2220
|
+
/^(.*:)?([-\w?*]+)#?$/ or next;
|
|
2221
|
+
$$options{$param}{lc $2} = 1;
|
|
2222
|
+
}
|
|
2223
|
+
} else {
|
|
2224
|
+
$$options{$param} = undef; # clear the option
|
|
2225
|
+
}
|
|
2212
2226
|
} elsif ($param eq 'ListJoin') {
|
|
2213
2227
|
$$options{$param} = $newVal;
|
|
2214
2228
|
# set the old List and ListSep options for backward compatibility
|
|
@@ -2321,6 +2335,7 @@ sub ClearOptions($)
|
|
|
2321
2335
|
HtmlDump => 0, # HTML dump (0-3, higher # = bigger limit)
|
|
2322
2336
|
HtmlDumpBase => undef, # base address for HTML dump
|
|
2323
2337
|
IgnoreMinorErrors => undef, # ignore minor errors when reading/writing
|
|
2338
|
+
IgnoreTags => undef, # list of tags to ignore when extracting
|
|
2324
2339
|
Lang => $defaultLang,# localized language for descriptions etc
|
|
2325
2340
|
LargeFileSupport => undef, # flag indicating support of 64-bit file offsets
|
|
2326
2341
|
List => undef, # extract lists of PrintConv values into arrays [no longer documented]
|
|
@@ -5863,7 +5878,7 @@ sub GetUnixTime($;$)
|
|
|
5863
5878
|
{
|
|
5864
5879
|
my ($timeStr, $isLocal) = @_;
|
|
5865
5880
|
return 0 if $timeStr eq '0000:00:00 00:00:00';
|
|
5866
|
-
my @tm = ($timeStr =~ /^(\d+)
|
|
5881
|
+
my @tm = ($timeStr =~ /^(\d+)[-:](\d+)[-:](\d+)\s+(\d+):(\d+):(\d+)(.*)/);
|
|
5867
5882
|
return undef unless @tm == 7;
|
|
5868
5883
|
unless (eval { require Time::Local }) {
|
|
5869
5884
|
warn "Time::Local is not installed\n";
|
|
@@ -5896,13 +5911,13 @@ sub GetUnixTime($;$)
|
|
|
5896
5911
|
sub ConvertFileSize($)
|
|
5897
5912
|
{
|
|
5898
5913
|
my $val = shift;
|
|
5899
|
-
$val <
|
|
5900
|
-
$val <
|
|
5901
|
-
$val <
|
|
5902
|
-
$val <
|
|
5903
|
-
$val <
|
|
5904
|
-
$val <
|
|
5905
|
-
return sprintf('%.0f
|
|
5914
|
+
$val < 2000 and return "$val bytes";
|
|
5915
|
+
$val < 10000 and return sprintf('%.1f kB', $val / 1000);
|
|
5916
|
+
$val < 2000000 and return sprintf('%.0f kB', $val / 1000);
|
|
5917
|
+
$val < 10000000 and return sprintf('%.1f MB', $val / 1000000);
|
|
5918
|
+
$val < 2000000000 and return sprintf('%.0f MB', $val / 1000000);
|
|
5919
|
+
$val < 10000000000 and return sprintf('%.1f GB', $val / 1000000000);
|
|
5920
|
+
return sprintf('%.0f GB', $val / 1000000000);
|
|
5906
5921
|
}
|
|
5907
5922
|
|
|
5908
5923
|
#------------------------------------------------------------------------------
|
|
@@ -7686,8 +7701,8 @@ sub DoProcessTIFF($$;$)
|
|
|
7686
7701
|
# check DNG version
|
|
7687
7702
|
if ($$self{DNGVersion}) {
|
|
7688
7703
|
my $ver = $$self{DNGVersion};
|
|
7689
|
-
# currently support up to DNG version 1.
|
|
7690
|
-
unless ($ver =~ /^(\d+) (\d+)/ and "$1.$2" <= 1.
|
|
7704
|
+
# currently support up to DNG version 1.6
|
|
7705
|
+
unless ($ver =~ /^(\d+) (\d+)/ and "$1.$2" <= 1.6) {
|
|
7691
7706
|
$ver =~ tr/ /./;
|
|
7692
7707
|
$self->Error("DNG Version $ver not yet tested", 1);
|
|
7693
7708
|
}
|
|
@@ -7955,11 +7970,11 @@ sub GetTagInfo($$$;$$$)
|
|
|
7955
7970
|
next;
|
|
7956
7971
|
}
|
|
7957
7972
|
}
|
|
7958
|
-
|
|
7959
|
-
|
|
7960
|
-
|
|
7973
|
+
# don't return Unknown tags unless that option is set (also see forum13716)
|
|
7974
|
+
if ($$tagInfo{Unknown} and not $$self{OPTIONS}{Unknown} and not
|
|
7975
|
+
($$self{OPTIONS}{Verbose} or $$self{HTML_DUMP} or
|
|
7976
|
+
($$self{OPTIONS}{Validate} and not $$tagInfo{AddedUnknown})))
|
|
7961
7977
|
{
|
|
7962
|
-
# don't return Unknown tags unless that option is set
|
|
7963
7978
|
return undef;
|
|
7964
7979
|
}
|
|
7965
7980
|
# return the tag information we found
|
|
@@ -7984,6 +7999,7 @@ sub GetTagInfo($$$;$$$)
|
|
|
7984
7999
|
Unknown => 1,
|
|
7985
8000
|
Writable => 0, # can't write unknown tags
|
|
7986
8001
|
PrintConv => $printConv,
|
|
8002
|
+
AddedUnknown => 1,
|
|
7987
8003
|
};
|
|
7988
8004
|
# add tag information to table
|
|
7989
8005
|
AddTagToTable($tagTablePtr, $tagID, $tagInfo);
|
|
@@ -8233,6 +8249,14 @@ sub FoundTag($$$;@)
|
|
|
8233
8249
|
$self->Warn("RawConv $tag: " . CleanWarning()) if $evalWarning;
|
|
8234
8250
|
return undef unless defined $value;
|
|
8235
8251
|
}
|
|
8252
|
+
# ignore specified tags (AFTER doing RawConv if necessary!)
|
|
8253
|
+
if ($$options{IgnoreTags}) {
|
|
8254
|
+
if ($$options{IgnoreTags}{all}) {
|
|
8255
|
+
return undef unless $$self{REQ_TAG_LOOKUP}{lc $tag};
|
|
8256
|
+
} else {
|
|
8257
|
+
return undef if $$options{IgnoreTags}{lc $tag};
|
|
8258
|
+
}
|
|
8259
|
+
}
|
|
8236
8260
|
# handle duplicate tag names
|
|
8237
8261
|
if (defined $$valueHash{$tag}) {
|
|
8238
8262
|
# add to list if there is an active list for this tag
|
|
@@ -8444,7 +8468,7 @@ sub SetFileType($;$$$)
|
|
|
8444
8468
|
|
|
8445
8469
|
#------------------------------------------------------------------------------
|
|
8446
8470
|
# Override the FileType and MIMEType tags
|
|
8447
|
-
# Inputs: 0) ExifTool object ref, 1) file type, 2) MIME type, 3) normal extension
|
|
8471
|
+
# Inputs: 0) ExifTool object ref, 1) file type, 2) MIME type, 3) normal extension (lower case)
|
|
8448
8472
|
# Notes: does nothing if FileType was not previously defined (ie. when writing)
|
|
8449
8473
|
sub OverrideFileType($$;$$)
|
|
8450
8474
|
{
|
|
@@ -776,6 +776,15 @@ images even if they don't have a recognizable header). Minor errors and
|
|
|
776
776
|
warnings are denoted by "[minor]" at the start of the message, or "[Minor]"
|
|
777
777
|
(with a capital "M") for warnings that affect processing when ignored.
|
|
778
778
|
|
|
779
|
+
=item IgnoreTags
|
|
780
|
+
|
|
781
|
+
List of tag names to ignore when reading. This may help in situations where
|
|
782
|
+
memory is limited because the ignored tag values are not stored in memory.
|
|
783
|
+
The tag names are case insensitive and group names and wildcards are not
|
|
784
|
+
allowed. A special tag name of "All" may be used to ignore all tags except
|
|
785
|
+
those specified by the L</RequestTags> option. Set to undef to clear the
|
|
786
|
+
previous IgnoreTags list. Default is undef.
|
|
787
|
+
|
|
779
788
|
=item Lang
|
|
780
789
|
|
|
781
790
|
Localized language for exiftool tag descriptions, etc. Available languages
|
|
@@ -1103,10 +1112,10 @@ L</ExtractInfo>:
|
|
|
1103
1112
|
Binary, Charset, CharsetEXIF, CharsetFileName, CharsetID3, CharsetIPTC,
|
|
1104
1113
|
CharsetPhotoshop, CharsetQuickTime, CharsetRIFF, Composite, ExtendedXMP,
|
|
1105
1114
|
ExtractEmbedded, FastScan, FixBase, HtmlDump, HtmlDumpBase,
|
|
1106
|
-
IgnoreMinorErrors, Lang, LargeFileSupport, MakerNotes,
|
|
1107
|
-
NoPDFList, Password, QuickTimeUTC (enforced 1904 time zero),
|
|
1108
|
-
RequestTags, SaveFormat, SavePath, ScanForXMP, Struct, TextOut,
|
|
1109
|
-
Verbose, XAttrTags and XMPAutoConv.
|
|
1115
|
+
IgnoreMinorErrors, IgnoreTags, Lang, LargeFileSupport, MakerNotes,
|
|
1116
|
+
MDItemTags, NoPDFList, Password, QuickTimeUTC (enforced 1904 time zero),
|
|
1117
|
+
RequestAll, RequestTags, SaveFormat, SavePath, ScanForXMP, Struct, TextOut,
|
|
1118
|
+
Unknown, Verbose, XAttrTags and XMPAutoConv.
|
|
1110
1119
|
|
|
1111
1120
|
=item Return Value:
|
|
1112
1121
|
|