exiftool_vendored 12.56.0 → 12.58.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 -2
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +2 -2
- data/bin/config_files/rotate_regions.config +1 -1
- data/bin/exiftool +95 -47
- data/bin/lib/Image/ExifTool/AIFF.pm +2 -2
- data/bin/lib/Image/ExifTool/APE.pm +2 -2
- data/bin/lib/Image/ExifTool/BuildTagLookup.pm +19 -15
- data/bin/lib/Image/ExifTool/Canon.pm +26 -6
- data/bin/lib/Image/ExifTool/DJI.pm +28 -2
- data/bin/lib/Image/ExifTool/Exif.pm +24 -5
- data/bin/lib/Image/ExifTool/FlashPix.pm +6 -2
- data/bin/lib/Image/ExifTool/FujiFilm.pm +1 -0
- data/bin/lib/Image/ExifTool/GPS.pm +7 -2
- data/bin/lib/Image/ExifTool/JPEG.pm +14 -2
- data/bin/lib/Image/ExifTool/Jpeg2000.pm +5 -5
- data/bin/lib/Image/ExifTool/LNK.pm +5 -4
- data/bin/lib/Image/ExifTool/MIE.pm +3 -3
- data/bin/lib/Image/ExifTool/MPEG.pm +2 -2
- data/bin/lib/Image/ExifTool/MakerNotes.pm +2 -2
- data/bin/lib/Image/ExifTool/Minolta.pm +6 -7
- data/bin/lib/Image/ExifTool/Nikon.pm +998 -903
- data/bin/lib/Image/ExifTool/NikonCustom.pm +2 -2
- data/bin/lib/Image/ExifTool/NikonSettings.pm +1 -1
- data/bin/lib/Image/ExifTool/Olympus.pm +3 -1
- data/bin/lib/Image/ExifTool/Pentax.pm +8 -5
- data/bin/lib/Image/ExifTool/Photoshop.pm +38 -7
- data/bin/lib/Image/ExifTool/QuickTime.pm +23 -7
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +3 -1
- data/bin/lib/Image/ExifTool/README +19 -2
- data/bin/lib/Image/ExifTool/RIFF.pm +3 -3
- data/bin/lib/Image/ExifTool/Rawzor.pm +2 -2
- data/bin/lib/Image/ExifTool/Sigma.pm +5 -4
- data/bin/lib/Image/ExifTool/Sony.pm +23 -1
- data/bin/lib/Image/ExifTool/TagLookup.pm +4670 -4628
- data/bin/lib/Image/ExifTool/TagNames.pod +261 -89
- data/bin/lib/Image/ExifTool/Validate.pm +5 -5
- data/bin/lib/Image/ExifTool/WriteExif.pl +42 -0
- data/bin/lib/Image/ExifTool/Writer.pl +39 -17
- data/bin/lib/Image/ExifTool/XMP.pm +2 -2
- data/bin/lib/Image/ExifTool.pm +94 -33
- data/bin/lib/Image/ExifTool.pod +4 -4
- data/bin/perl-Image-ExifTool.spec +1 -1
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +2 -2
|
@@ -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 26381 tags, with 16854 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
|
|
@@ -28,7 +28,8 @@ gives the order of values for a serial data stream.
|
|
|
28
28
|
A B<Tag Name> is the handle by which the information is accessed in
|
|
29
29
|
ExifTool. In some instances, more than one name may correspond to a single
|
|
30
30
|
tag ID. In these cases, the actual name used depends on the context in
|
|
31
|
-
which the information is found.
|
|
31
|
+
which the information is found. Valid characters in a tag name are A-Z,
|
|
32
|
+
a-z, 0-9, hyphen (-) and underline (_). Case is not significant. A
|
|
32
33
|
question mark (C<?>) after a tag name indicates that the information is
|
|
33
34
|
either not understood, not verified, or not very useful -- these tags are
|
|
34
35
|
not extracted by ExifTool unless the Unknown (-u) option is enabled. Be
|
|
@@ -124,6 +125,8 @@ L<https://www.w3.org/Graphics/JPEG/jfif3.pdf> for the JPEG specification.
|
|
|
124
125
|
FPXR FlashPix
|
|
125
126
|
InfiRayFactory InfiRay Factory
|
|
126
127
|
ThermalParams DJI ThermalParams
|
|
128
|
+
ThermalParams2 DJI ThermalParams2
|
|
129
|
+
ThermalParams3 DJI ThermalParams3
|
|
127
130
|
PreviewImage no
|
|
128
131
|
'APP5' RMETA Ricoh RMETA
|
|
129
132
|
SamsungUniqueID Samsung APP5
|
|
@@ -140,6 +143,7 @@ L<https://www.w3.org/Graphics/JPEG/jfif3.pdf> for the JPEG specification.
|
|
|
140
143
|
Huawei Unknown
|
|
141
144
|
Qualcomm Qualcomm
|
|
142
145
|
InfiRayOpMode InfiRay OpMode
|
|
146
|
+
DJI-DBG DJI Info
|
|
143
147
|
'APP8' SPIFF JPEG SPIFF
|
|
144
148
|
InfiRayIsothermal InfiRay Isothermal
|
|
145
149
|
'APP9' MediaJukebox JPEG MediaJukebox
|
|
@@ -7082,6 +7086,9 @@ Tags extracted from Photoshop layer information.
|
|
|
7082
7086
|
'_xnam' LayerNames no+
|
|
7083
7087
|
'_xopc' LayerOpacities no+
|
|
7084
7088
|
'_xrct' LayerRectangles no+
|
|
7089
|
+
'_xvis' LayerVisible no+
|
|
7090
|
+
'lclr' LayerColors no+
|
|
7091
|
+
'lsct' LayerSections no+
|
|
7085
7092
|
'luni' LayerUnicodeNames no+
|
|
7086
7093
|
'lyid' LayerIDs? no+
|
|
7087
7094
|
'shmd' LayerModifyDates no+
|
|
@@ -10863,6 +10870,30 @@ Thermal parameters extracted from APP4 of DJI RJPEG files from the ZH20T.
|
|
|
10863
10870
|
86 DB no
|
|
10864
10871
|
88 KK no
|
|
10865
10872
|
|
|
10873
|
+
=head3 DJI ThermalParams2 Tags
|
|
10874
|
+
|
|
10875
|
+
Thermal parameters extracted from APP4 of DJI M3T RJPEG files.
|
|
10876
|
+
|
|
10877
|
+
Index1 Tag Name Writable
|
|
10878
|
+
------ -------- --------
|
|
10879
|
+
0 AmbientTemperature no
|
|
10880
|
+
4 ObjectDistance no
|
|
10881
|
+
8 Emissivity no
|
|
10882
|
+
12 RelativeHumidity no
|
|
10883
|
+
16 ReflectedTemperature no
|
|
10884
|
+
101 IDString no
|
|
10885
|
+
|
|
10886
|
+
=head3 DJI ThermalParams3 Tags
|
|
10887
|
+
|
|
10888
|
+
Thermal parameters extracted from APP4 of some DJI RJPEG files.
|
|
10889
|
+
|
|
10890
|
+
Index1 Tag Name Writable
|
|
10891
|
+
------ -------- --------
|
|
10892
|
+
4 RelativeHumidity no
|
|
10893
|
+
6 ObjectDistance no
|
|
10894
|
+
8 Emissivity no
|
|
10895
|
+
10 ReflectedTemperature no
|
|
10896
|
+
|
|
10866
10897
|
=head2 FLIR Tags
|
|
10867
10898
|
|
|
10868
10899
|
Information extracted from the maker notes of JPEG images from thermal
|
|
@@ -13704,6 +13735,8 @@ DiMAGE X and Xt.
|
|
|
13704
13735
|
ShotInfoD300b Nikon ShotInfoD300b
|
|
13705
13736
|
ShotInfoD300S Nikon ShotInfoD300S
|
|
13706
13737
|
ShotInfoD700 Nikon ShotInfoD700
|
|
13738
|
+
ShotInfoD780 Nikon ShotInfoD780
|
|
13739
|
+
ShotInfoD7500 Nikon ShotInfoD7500
|
|
13707
13740
|
ShotInfoD800 Nikon ShotInfoD800
|
|
13708
13741
|
ShotInfoD810 Nikon ShotInfoD810
|
|
13709
13742
|
ShotInfoD850 Nikon ShotInfoD850
|
|
@@ -13713,7 +13746,6 @@ DiMAGE X and Xt.
|
|
|
13713
13746
|
ShotInfoD7000 Nikon ShotInfoD7000
|
|
13714
13747
|
ShotInfoD4 Nikon ShotInfoD4
|
|
13715
13748
|
ShotInfoD4S Nikon ShotInfoD4S
|
|
13716
|
-
ShotInfoD5 Nikon ShotInfoD500
|
|
13717
13749
|
ShotInfoD500 Nikon ShotInfoD500
|
|
13718
13750
|
ShotInfoD6 Nikon ShotInfoD6
|
|
13719
13751
|
ShotInfoD610 Nikon ShotInfoD610
|
|
@@ -14244,6 +14276,34 @@ firmware 1.02f.
|
|
|
14244
14276
|
647 ShutterCount int32u
|
|
14245
14277
|
804 CustomSettingsD700 NikonCustom SettingsD700
|
|
14246
14278
|
|
|
14279
|
+
=head3 Nikon ShotInfoD780 Tags
|
|
14280
|
+
|
|
14281
|
+
These tags are extracted from encrypted data in images from the D780.
|
|
14282
|
+
|
|
14283
|
+
Index Tag Name Writable
|
|
14284
|
+
----- -------- --------
|
|
14285
|
+
0 ShotInfoVersion no
|
|
14286
|
+
4 FirmwareVersion no
|
|
14287
|
+
156 OrientOffset Nikon OrientationInfo
|
|
14288
|
+
|
|
14289
|
+
=head3 Nikon OrientationInfo Tags
|
|
14290
|
+
|
|
14291
|
+
Index1 Tag Name Writable
|
|
14292
|
+
------ -------- --------
|
|
14293
|
+
0 RollAngle fixed32u
|
|
14294
|
+
4 PitchAngle fixed32u
|
|
14295
|
+
8 YawAngle fixed32u
|
|
14296
|
+
|
|
14297
|
+
=head3 Nikon ShotInfoD7500 Tags
|
|
14298
|
+
|
|
14299
|
+
These tags are extracted from encrypted data in images from the D7500.
|
|
14300
|
+
|
|
14301
|
+
Index Tag Name Writable
|
|
14302
|
+
----- -------- --------
|
|
14303
|
+
0 ShotInfoVersion no
|
|
14304
|
+
4 FirmwareVersion no
|
|
14305
|
+
160 OrientOffset Nikon OrientationInfo
|
|
14306
|
+
|
|
14247
14307
|
=head3 Nikon ShotInfoD800 Tags
|
|
14248
14308
|
|
|
14249
14309
|
These tags are extracted from encrypted data in images from the D800.
|
|
@@ -14264,24 +14324,38 @@ These tags are extracted from encrypted data in images from the D800.
|
|
|
14264
14324
|
|
|
14265
14325
|
=head3 Nikon ShotInfoD810 Tags
|
|
14266
14326
|
|
|
14267
|
-
These tags are extracted from encrypted data in images from the D810.
|
|
14268
|
-
that the indices listed below are for firmware version 1.0, but they may be
|
|
14269
|
-
different for other firmware versions.
|
|
14327
|
+
These tags are extracted from encrypted data in images from the D810.
|
|
14270
14328
|
|
|
14271
14329
|
Index Tag Name Writable
|
|
14272
14330
|
----- -------- --------
|
|
14273
14331
|
0 ShotInfoVersion no
|
|
14274
14332
|
4 FirmwareVersion no
|
|
14275
|
-
|
|
14276
|
-
|
|
14277
|
-
|
|
14278
|
-
|
|
14279
|
-
|
|
14280
|
-
|
|
14281
|
-
|
|
14282
|
-
|
|
14283
|
-
|
|
14284
|
-
|
|
14333
|
+
16 SettingsOffset Nikon SettingsInfoD810
|
|
14334
|
+
36 BracketingOffset Nikon BracketingInfoD810
|
|
14335
|
+
56 ISOAutoOffset Nikon ISOAutoInfoD810
|
|
14336
|
+
64 CustomSettingsOffset NikonCustom SettingsD810
|
|
14337
|
+
132 OrientationOffset Nikon OrientationInfo
|
|
14338
|
+
|
|
14339
|
+
=head3 Nikon SettingsInfoD810 Tags
|
|
14340
|
+
|
|
14341
|
+
Index1 Tag Name Writable
|
|
14342
|
+
------ -------- --------
|
|
14343
|
+
316 SecondarySlotFunction int8u & 0x03
|
|
14344
|
+
|
|
14345
|
+
=head3 Nikon BracketingInfoD810 Tags
|
|
14346
|
+
|
|
14347
|
+
Index1 Tag Name Writable
|
|
14348
|
+
------ -------- --------
|
|
14349
|
+
15 AEBracketingSteps int8u & 0xff
|
|
14350
|
+
16 WBBracketingSteps int8u & 0xff
|
|
14351
|
+
23 NikonMeteringMode int8u & 0x03
|
|
14352
|
+
|
|
14353
|
+
=head3 Nikon ISOAutoInfoD810 Tags
|
|
14354
|
+
|
|
14355
|
+
Index1 Tag Name Writable
|
|
14356
|
+
------ -------- --------
|
|
14357
|
+
4 ISOAutoShutterTime int8u & 0x3f
|
|
14358
|
+
5 ISOAutoHiLimit int8u & 0xff
|
|
14285
14359
|
|
|
14286
14360
|
=head3 Nikon ShotInfoD850 Tags
|
|
14287
14361
|
|
|
@@ -14291,13 +14365,23 @@ These tags are extracted from encrypted data in images from the D850.
|
|
|
14291
14365
|
----- -------- --------
|
|
14292
14366
|
0 ShotInfoVersion no
|
|
14293
14367
|
4 FirmwareVersion no
|
|
14294
|
-
|
|
14295
|
-
|
|
14296
|
-
|
|
14297
|
-
|
|
14298
|
-
|
|
14299
|
-
|
|
14300
|
-
|
|
14368
|
+
16 MenuSettingsOffset Nikon MenuSettingsD850
|
|
14369
|
+
76 MoreSettingsOffset Nikon MoreSettingsD850
|
|
14370
|
+
88 CustomSettingsOffset NikonCustom SettingsD850
|
|
14371
|
+
160 OrientationOffset Nikon OrientationInfo
|
|
14372
|
+
|
|
14373
|
+
=head3 Nikon MenuSettingsD850 Tags
|
|
14374
|
+
|
|
14375
|
+
Index1 Tag Name Writable
|
|
14376
|
+
------ -------- --------
|
|
14377
|
+
1757 PhotoShootingMenuBankImageArea int8u & 0x07
|
|
14378
|
+
|
|
14379
|
+
=head3 Nikon MoreSettingsD850 Tags
|
|
14380
|
+
|
|
14381
|
+
Index1 Tag Name Writable
|
|
14382
|
+
------ -------- --------
|
|
14383
|
+
36 PhotoShootingMenuBank int8u & 0x03
|
|
14384
|
+
37 PrimarySlot int8u & 0x80
|
|
14301
14385
|
|
|
14302
14386
|
=head3 Nikon ShotInfoD5000 Tags
|
|
14303
14387
|
|
|
@@ -14369,9 +14453,7 @@ These tags are extracted from encrypted data in images from the D4S.
|
|
|
14369
14453
|
6378 ISOAutoShutterTime int8u & 0x3f
|
|
14370
14454
|
6379 ISOAutoHiLimit int8u & 0xff
|
|
14371
14455
|
6461 CustomSettingsD4S NikonCustom SettingsD4
|
|
14372
|
-
13579
|
|
14373
|
-
13583 PitchAngle fixed32u
|
|
14374
|
-
13587 YawAngle fixed32u
|
|
14456
|
+
13579 OrientationInfo Nikon OrientationInfo
|
|
14375
14457
|
13971 Rotation int8u & 0x30
|
|
14376
14458
|
|
|
14377
14459
|
=head3 Nikon ShotInfoD500 Tags
|
|
@@ -14382,27 +14464,61 @@ These tags are extracted from encrypted data in images from the D5 and D500.
|
|
|
14382
14464
|
----- -------- --------
|
|
14383
14465
|
0 ShotInfoVersion no
|
|
14384
14466
|
4 FirmwareVersion no
|
|
14385
|
-
|
|
14386
|
-
|
|
14387
|
-
|
|
14388
|
-
|
|
14389
|
-
|
|
14390
|
-
|
|
14391
|
-
|
|
14392
|
-
|
|
14393
|
-
|
|
14394
|
-
|
|
14395
|
-
|
|
14396
|
-
|
|
14397
|
-
|
|
14398
|
-
|
|
14399
|
-
|
|
14400
|
-
|
|
14467
|
+
16 RotationInfoOffset Nikon RotationInfoD500
|
|
14468
|
+
20 JPGInfoOffset Nikon JPGInfoD500
|
|
14469
|
+
44 BracketingOffset Nikon BracketingInfoD500
|
|
14470
|
+
80 ShootingMenuOffset Nikon ShootingMenuD500
|
|
14471
|
+
88 CustomSettingsOffset Nikon CustomSettingsD500
|
|
14472
|
+
160 OrientationOffset Nikon OrientationInfo
|
|
14473
|
+
168 OtherOffset Nikon OtherInfoD500
|
|
14474
|
+
|
|
14475
|
+
=head3 Nikon RotationInfoD500 Tags
|
|
14476
|
+
|
|
14477
|
+
Index1 Tag Name Writable
|
|
14478
|
+
------ -------- --------
|
|
14479
|
+
26 Rotation int8u & 0x03
|
|
14480
|
+
32 Interval int8u~
|
|
14481
|
+
36 IntervalFrame int8u~
|
|
14482
|
+
1330 FlickerReductionIndicator int8u & 0x01
|
|
14483
|
+
|
|
14484
|
+
=head3 Nikon JPGInfoD500 Tags
|
|
14485
|
+
|
|
14486
|
+
Index1 Tag Name Writable
|
|
14487
|
+
------ -------- --------
|
|
14488
|
+
36 JPGCompression int8u & 0x01
|
|
14489
|
+
|
|
14490
|
+
=head3 Nikon BracketingInfoD500 Tags
|
|
14491
|
+
|
|
14492
|
+
Index1 Tag Name Writable
|
|
14493
|
+
------ -------- --------
|
|
14494
|
+
15 AEBracketingSteps int8u & 0xff
|
|
14495
|
+
16 WBBracketingSteps int8u & 0xff
|
|
14496
|
+
23 ADLBracketingStep int8u & 0xf0
|
|
14497
|
+
24 ADLBracketingType int8u & 0x0f
|
|
14498
|
+
|
|
14499
|
+
=head3 Nikon ShootingMenuD500 Tags
|
|
14500
|
+
|
|
14501
|
+
Index1 Tag Name Writable
|
|
14502
|
+
------ -------- --------
|
|
14503
|
+
0 PhotoShootingMenuBank int8u & 0x03
|
|
14504
|
+
2 PrimarySlot int8u & 0x80
|
|
14505
|
+
4 ISOAutoShutterTime int8u & 0x3f
|
|
14506
|
+
5 ISOAutoHiLimit int8u & 0xff
|
|
14507
|
+
7 FlickerReduction int8u & 0x20
|
|
14508
|
+
7.1 PhotoShootingMenuBankImageArea int8u & 0x07
|
|
14509
|
+
|
|
14510
|
+
=head3 Nikon CustomSettingsD500 Tags
|
|
14511
|
+
|
|
14512
|
+
Index1 Tag Name Writable
|
|
14513
|
+
------ -------- --------
|
|
14514
|
+
0 CustomSettingsD5 NikonCustom SettingsD5
|
|
14401
14515
|
CustomSettingsD500 NikonCustom SettingsD500
|
|
14402
|
-
|
|
14403
|
-
|
|
14404
|
-
|
|
14405
|
-
|
|
14516
|
+
|
|
14517
|
+
=head3 Nikon OtherInfoD500 Tags
|
|
14518
|
+
|
|
14519
|
+
Index1 Tag Name Writable
|
|
14520
|
+
------ -------- --------
|
|
14521
|
+
532 NikonMeteringMode int8u & 0x03
|
|
14406
14522
|
|
|
14407
14523
|
=head3 Nikon ShotInfoD6 Tags
|
|
14408
14524
|
|
|
@@ -14412,28 +14528,38 @@ These tags are extracted from encrypted data in images from the D6.
|
|
|
14412
14528
|
----- -------- --------
|
|
14413
14529
|
0 ShotInfoVersion no
|
|
14414
14530
|
4 FirmwareVersion no
|
|
14415
|
-
|
|
14416
|
-
|
|
14417
|
-
|
|
14418
|
-
|
|
14419
|
-
|
|
14420
|
-
|
|
14421
|
-
|
|
14422
|
-
|
|
14423
|
-
|
|
14424
|
-
|
|
14425
|
-
|
|
14426
|
-
|
|
14427
|
-
|
|
14428
|
-
|
|
14429
|
-
|
|
14430
|
-
|
|
14431
|
-
|
|
14432
|
-
|
|
14433
|
-
|
|
14434
|
-
|
|
14435
|
-
|
|
14436
|
-
|
|
14531
|
+
48 SequenceOffset Nikon SeqInfoD6
|
|
14532
|
+
156 OrientationOffset Nikon OrientationInfo
|
|
14533
|
+
164 IntervalOffset Nikon IntervalInfoD6
|
|
14534
|
+
|
|
14535
|
+
=head3 Nikon SeqInfoD6 Tags
|
|
14536
|
+
|
|
14537
|
+
Index1 Tag Name Writable
|
|
14538
|
+
------ -------- --------
|
|
14539
|
+
36 IntervalShooting int16u~
|
|
14540
|
+
|
|
14541
|
+
=head3 Nikon IntervalInfoD6 Tags
|
|
14542
|
+
|
|
14543
|
+
Index1 Tag Name Writable
|
|
14544
|
+
------ -------- --------
|
|
14545
|
+
380 Intervals int32u
|
|
14546
|
+
384 ShotsPerInterval int32u
|
|
14547
|
+
388 IntervalExposureSmoothing int8u
|
|
14548
|
+
390 IntervalPriority int8u
|
|
14549
|
+
424 FocusShiftNumberShots int8u
|
|
14550
|
+
428 FocusShiftStepWidth int8u
|
|
14551
|
+
432 FocusShiftInterval int8u~
|
|
14552
|
+
436 FocusShiftExposureLock int8u
|
|
14553
|
+
526 DiffractionCompensation int8u
|
|
14554
|
+
532 FlashControlMode int8u
|
|
14555
|
+
538 FlashGNDistance? no
|
|
14556
|
+
542 FlashOutput? int8u
|
|
14557
|
+
552 FlashRemoteControl? int8u
|
|
14558
|
+
556 FlashMasterControlMode int8u
|
|
14559
|
+
558 FlashMasterCompensation? int8s
|
|
14560
|
+
562 FlashMasterOutput? int8u
|
|
14561
|
+
564 FlashWirelessOption? int8u
|
|
14562
|
+
714 MovieType? int8u
|
|
14437
14563
|
|
|
14438
14564
|
=head3 Nikon ShotInfoD610 Tags
|
|
14439
14565
|
|
|
@@ -14453,13 +14579,28 @@ These tags are extracted from encrypted data in images from the Z7II.
|
|
|
14453
14579
|
----- -------- --------
|
|
14454
14580
|
0 ShotInfoVersion no
|
|
14455
14581
|
4 FirmwareVersion no
|
|
14456
|
-
|
|
14457
|
-
|
|
14458
|
-
|
|
14459
|
-
|
|
14460
|
-
|
|
14461
|
-
|
|
14462
|
-
|
|
14582
|
+
48 IntervalOffset Nikon IntervalInfoZ7II
|
|
14583
|
+
56 PortraitOffset Nikon PortraitInfoZ7II
|
|
14584
|
+
152 OrientationOffset Nikon OrientationInfo
|
|
14585
|
+
160 MenuOffset Nikon MenuInfoZ7II
|
|
14586
|
+
|
|
14587
|
+
=head3 Nikon IntervalInfoZ7II Tags
|
|
14588
|
+
|
|
14589
|
+
Index1 Tag Name Writable
|
|
14590
|
+
------ -------- --------
|
|
14591
|
+
36 IntervalShooting int16u~
|
|
14592
|
+
|
|
14593
|
+
=head3 Nikon PortraitInfoZ7II Tags
|
|
14594
|
+
|
|
14595
|
+
Index1 Tag Name Writable
|
|
14596
|
+
------ -------- --------
|
|
14597
|
+
160 PortraitImpressionBalance int8u[2]~
|
|
14598
|
+
|
|
14599
|
+
=head3 Nikon MenuInfoZ7II Tags
|
|
14600
|
+
|
|
14601
|
+
Index1 Tag Name Writable
|
|
14602
|
+
------ -------- --------
|
|
14603
|
+
16 MenuSettingsOffsetZ7II Nikon MenuSettingsZ7II
|
|
14463
14604
|
|
|
14464
14605
|
=head3 Nikon MenuSettingsZ7II Tags
|
|
14465
14606
|
|
|
@@ -14467,6 +14608,7 @@ These tags are used by the Z5, Z6, Z7, Z6II, Z7II, Z50 and Zfc.
|
|
|
14467
14608
|
|
|
14468
14609
|
Index1 Tag Name Writable
|
|
14469
14610
|
------ -------- --------
|
|
14611
|
+
92 ReleaseMode no
|
|
14470
14612
|
160 IntervalDurationHours int32u
|
|
14471
14613
|
164 IntervalDurationMinutes int32u
|
|
14472
14614
|
168 IntervalDurationSeconds int32u
|
|
@@ -14513,17 +14655,34 @@ These tags are extracted from encrypted data in images from the Z9.
|
|
|
14513
14655
|
----- -------- --------
|
|
14514
14656
|
0 ShotInfoVersion no
|
|
14515
14657
|
4 FirmwareVersion no
|
|
14516
|
-
|
|
14517
|
-
|
|
14518
|
-
|
|
14519
|
-
|
|
14520
|
-
|
|
14521
|
-
|
|
14522
|
-
|
|
14523
|
-
|
|
14524
|
-
|
|
14525
|
-
|
|
14526
|
-
|
|
14658
|
+
48 SequenceOffset Nikon SeqInfoZ9
|
|
14659
|
+
88 Offset13 Nikon Offset13InfoZ9
|
|
14660
|
+
132 OrientOffset Nikon OrientationInfo
|
|
14661
|
+
140 MenuOffset Nikon MenuInfoZ9
|
|
14662
|
+
|
|
14663
|
+
=head3 Nikon SeqInfoZ9 Tags
|
|
14664
|
+
|
|
14665
|
+
Index1 Tag Name Writable
|
|
14666
|
+
------ -------- --------
|
|
14667
|
+
32 FocusShiftShooting int8u~
|
|
14668
|
+
40 IntervalShooting int16u~
|
|
14669
|
+
|
|
14670
|
+
=head3 Nikon Offset13InfoZ9 Tags
|
|
14671
|
+
|
|
14672
|
+
Index1 Tag Name Writable
|
|
14673
|
+
------ -------- --------
|
|
14674
|
+
3048 AFAreaInitialXPosition int8s~
|
|
14675
|
+
3049 AFAreaInitialYPosition int8s~
|
|
14676
|
+
3050 AFAreaInitialWidth no
|
|
14677
|
+
3051 AFAreaInitialHeight no
|
|
14678
|
+
|
|
14679
|
+
=head3 Nikon MenuInfoZ9 Tags
|
|
14680
|
+
|
|
14681
|
+
Index1 Tag Name Writable
|
|
14682
|
+
------ -------- --------
|
|
14683
|
+
16 MenuSettingsOffsetZ9 Nikon MenuSettingsZ9
|
|
14684
|
+
MenuSettingsOffsetZ9v3 -
|
|
14685
|
+
Nikon MenuSettingsZ9v3
|
|
14527
14686
|
|
|
14528
14687
|
=head3 Nikon MenuSettingsZ9 Tags
|
|
14529
14688
|
|
|
@@ -14563,6 +14722,7 @@ These tags are used by the Z9.
|
|
|
14563
14722
|
556 SecondarySlotFunction int8u
|
|
14564
14723
|
572 DXCropAlert int8u
|
|
14565
14724
|
574 SubjectDetection int8u
|
|
14725
|
+
576 DynamicAFAreaSize int8u
|
|
14566
14726
|
604 MovieImageArea? int8u & 0x01
|
|
14567
14727
|
614 MovieType? int8u
|
|
14568
14728
|
616 MovieISOAutoHiLimit? int16u
|
|
@@ -14601,7 +14761,7 @@ These tags are used by the Z9.
|
|
|
14601
14761
|
1636 USBPowerDelivery? int8u
|
|
14602
14762
|
1645 SensorShield? int8u
|
|
14603
14763
|
|
|
14604
|
-
=head3 Nikon
|
|
14764
|
+
=head3 Nikon MenuSettingsZ9v3 Tags
|
|
14605
14765
|
|
|
14606
14766
|
These tags are used by the Z9 firmware 3.00.
|
|
14607
14767
|
|
|
@@ -14638,6 +14798,7 @@ These tags are used by the Z9 firmware 3.00.
|
|
|
14638
14798
|
576 SecondarySlotFunction int8u
|
|
14639
14799
|
592 DXCropAlert int8u
|
|
14640
14800
|
594 SubjectDetection int8u
|
|
14801
|
+
596 DynamicAFAreaSize int8u
|
|
14641
14802
|
636 HighFrequencyFlickerReductionShooting? int8u
|
|
14642
14803
|
646 MovieImageArea? int8u & 0x01
|
|
14643
14804
|
656 MovieType? int8u
|
|
@@ -14839,15 +15000,16 @@ Tags found in the encrypted LensData from cameras such as the Z6 and Z7.
|
|
|
14839
15000
|
18 MaxApertureAtMaxFocal int8u
|
|
14840
15001
|
19 MCUVersion int8u
|
|
14841
15002
|
20 EffectiveMaxAperture int8u
|
|
15003
|
+
47 NewLensData undef[17]
|
|
14842
15004
|
48 LensID int16u
|
|
14843
|
-
53 LensMountType
|
|
15005
|
+
53 LensMountType int8u
|
|
14844
15006
|
54 MaxAperture int16u
|
|
14845
15007
|
56 FNumber int16u
|
|
14846
15008
|
60 FocalLength int16u
|
|
14847
15009
|
76 FocusDistanceRangeWidth? int8u
|
|
14848
15010
|
78 FocusDistance int16u~
|
|
14849
15011
|
86 LensDriveEnd? int8u
|
|
14850
|
-
90 LensPositionAbsolute
|
|
15012
|
+
90 LensPositionAbsolute int32s
|
|
14851
15013
|
|
|
14852
15014
|
=head3 Nikon LensDataUnknown Tags
|
|
14853
15015
|
|
|
@@ -21977,6 +22139,10 @@ unrecognized Windows Compound Binary file as a FlashPix (FPX) file. See
|
|
|
21977
22139
|
L<http://graphcomp.com/info/specs/livepicture/fpx.pdf> for the FlashPix
|
|
21978
22140
|
specification.
|
|
21979
22141
|
|
|
22142
|
+
Note that Microsoft is not consistent with the time zone used for some
|
|
22143
|
+
date/time tags, and it may be either UTC or local time depending on the
|
|
22144
|
+
software used to create the file.
|
|
22145
|
+
|
|
21980
22146
|
Tag ID Tag Name Writable
|
|
21981
22147
|
------ -------- --------
|
|
21982
22148
|
"\x01CompObj" CompObj FlashPix CompObj
|
|
@@ -27705,6 +27871,11 @@ QuickTime-based files; it extracts other track-specific and timed metadata,
|
|
|
27705
27871
|
but can not yet edit tags in these locations (with the exception of
|
|
27706
27872
|
track-level date/time tags).
|
|
27707
27873
|
|
|
27874
|
+
Beware that the Keys tags are actually stored inside the ItemList in the
|
|
27875
|
+
file, so deleting the ItemList group as a block (ie. C<-ItemList:all=>) also
|
|
27876
|
+
deletes Keys tags. Instead, to preserve Keys tags the ItemList tags may be
|
|
27877
|
+
deleted individually with C<-QuickTime:ItemList:all=>.
|
|
27878
|
+
|
|
27708
27879
|
Alternate language tags may be accessed for
|
|
27709
27880
|
L<ItemList|Image::ExifTool::TagNames/QuickTime ItemList Tags> and
|
|
27710
27881
|
L<Keys|Image::ExifTool::TagNames/QuickTime Keys Tags> tags by adding
|
|
@@ -37947,6 +38118,7 @@ FileName.
|
|
|
37947
38118
|
ICC_Profile ICC_Profile yes!
|
|
37948
38119
|
ID3Size File no
|
|
37949
38120
|
IPTC IPTC yes!
|
|
38121
|
+
ImageDataMD5 File no
|
|
37950
38122
|
ImageHeight File no
|
|
37951
38123
|
ImageWidth File no
|
|
37952
38124
|
JPEGDigest File no
|
|
@@ -17,7 +17,7 @@ package Image::ExifTool::Validate;
|
|
|
17
17
|
use strict;
|
|
18
18
|
use vars qw($VERSION %exifSpec);
|
|
19
19
|
|
|
20
|
-
$VERSION = '1.
|
|
20
|
+
$VERSION = '1.20';
|
|
21
21
|
|
|
22
22
|
use Image::ExifTool qw(:Utils);
|
|
23
23
|
use Image::ExifTool::Exif;
|
|
@@ -437,8 +437,8 @@ sub ValidateExif($$$$$$$$)
|
|
|
437
437
|
$et->Warn(sprintf('Wrong IFD for 0x%.4x %s (should be %s not %s)', $tag, $$ti{Name}, $wgp, $ifd));
|
|
438
438
|
}
|
|
439
439
|
}
|
|
440
|
-
} elsif (not $otherSpec{$$et{
|
|
441
|
-
(not $otherSpec{$$et{
|
|
440
|
+
} elsif (not $otherSpec{$$et{FileType}} or
|
|
441
|
+
(not $otherSpec{$$et{FileType}}{$tag} and not $otherSpec{$$et{FileType}}{All}))
|
|
442
442
|
{
|
|
443
443
|
if ($tagTablePtr eq \%Image::ExifTool::Exif::Main or $$tagInfo{Unknown}) {
|
|
444
444
|
$et->Warn(sprintf('Non-standard %s tag 0x%.4x %s', $ifd, $tag, $$ti{Name}), 1);
|
|
@@ -459,8 +459,8 @@ sub ValidateExif($$$$$$$$)
|
|
|
459
459
|
$et->Warn(sprintf('Non-standard count (%d) for %s 0x%.4x %s', $count, $ifd, $tag, $$ti{Name}));
|
|
460
460
|
}
|
|
461
461
|
}
|
|
462
|
-
} elsif (not $otherSpec{$$et{
|
|
463
|
-
(not $otherSpec{$$et{
|
|
462
|
+
} elsif (not $otherSpec{$$et{FileType}} or
|
|
463
|
+
(not $otherSpec{$$et{FileType}}{$tag} and not $otherSpec{$$et{FileType}}{All}))
|
|
464
464
|
{
|
|
465
465
|
$et->Warn(sprintf('Unknown %s tag 0x%.4x', $ifd, $tag), 1);
|
|
466
466
|
}
|
|
@@ -419,6 +419,48 @@ sub ValidateImageData($$$;$)
|
|
|
419
419
|
}
|
|
420
420
|
}
|
|
421
421
|
|
|
422
|
+
#------------------------------------------------------------------------------
|
|
423
|
+
# Add specified image data to ImageDataMD5 hash
|
|
424
|
+
# Inputs: 0) ExifTool ref, 1) dirInfo ref, 2) lookup for [tagInfo,value] based on tagID
|
|
425
|
+
sub AddImageDataMD5($$$)
|
|
426
|
+
{
|
|
427
|
+
my ($et, $dirInfo, $offsetInfo) = @_;
|
|
428
|
+
my ($tagID, $offset, $buff);
|
|
429
|
+
|
|
430
|
+
my $verbose = $et->Options('Verbose');
|
|
431
|
+
my $md5 = $$et{ImageDataMD5};
|
|
432
|
+
my $raf = $$dirInfo{RAF};
|
|
433
|
+
my $base = $$dirInfo{Base} || 0;
|
|
434
|
+
|
|
435
|
+
foreach $tagID (sort keys %$offsetInfo) {
|
|
436
|
+
next unless ref $$offsetInfo{$tagID} eq 'ARRAY'; # ignore scalar tag values used for Validate
|
|
437
|
+
my $tagInfo = $$offsetInfo{$tagID}[0];
|
|
438
|
+
next unless $$tagInfo{IsImageData} and $$tagInfo{OffsetPair}; # only consider image data
|
|
439
|
+
my $sizeID = $$tagInfo{OffsetPair};
|
|
440
|
+
next unless $sizeID and $$offsetInfo{$sizeID};
|
|
441
|
+
my @offsets = split ' ', $$offsetInfo{$tagID}[1];
|
|
442
|
+
my @sizes = split ' ', $$offsetInfo{$sizeID}[1];
|
|
443
|
+
my $total = 0;
|
|
444
|
+
foreach $offset (@offsets) {
|
|
445
|
+
my $size = shift @sizes;
|
|
446
|
+
next unless $offset =~ /^\d+$/ and $size and $size =~ /^\d+$/ and $size;
|
|
447
|
+
next unless $raf->Seek($offset+$base, 0);
|
|
448
|
+
while ($size) {
|
|
449
|
+
my $bytes = $size > 65536 ? 65536 : $size;
|
|
450
|
+
$raf->Read($buff, $bytes) or last;
|
|
451
|
+
$md5->add($buff);
|
|
452
|
+
$total += length($buff);
|
|
453
|
+
$size -= $bytes;
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
if ($verbose) {
|
|
457
|
+
my $name = "$$dirInfo{DirName}:$$tagInfo{Name}";
|
|
458
|
+
$name =~ s/Offsets|Start$//;
|
|
459
|
+
$et->VPrint(0, "$$et{INDENT}(ImageDataMD5: $total bytes of $name data)\n");
|
|
460
|
+
}
|
|
461
|
+
}
|
|
462
|
+
}
|
|
463
|
+
|
|
422
464
|
#------------------------------------------------------------------------------
|
|
423
465
|
# Handle error while writing EXIF
|
|
424
466
|
# Inputs: 0) ExifTool ref, 1) error string, 2) tag table ref
|