exiftool_vendored 12.50.0 → 12.52.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/Changes +39 -2
- data/bin/MANIFEST +2 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +2 -2
- data/bin/exiftool +5 -4
- data/bin/lib/Image/ExifTool/Casio.pm +3 -3
- data/bin/lib/Image/ExifTool/FLIR.pm +6 -5
- data/bin/lib/Image/ExifTool/GPS.pm +11 -5
- data/bin/lib/Image/ExifTool/Geotag.pm +12 -4
- data/bin/lib/Image/ExifTool/JPEG.pm +1 -0
- data/bin/lib/Image/ExifTool/Jpeg2000.pm +24 -3
- data/bin/lib/Image/ExifTool/Lang/de.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/fr.pm +6015 -759
- data/bin/lib/Image/ExifTool/Lang/sk.pm +1927 -0
- data/bin/lib/Image/ExifTool/Matroska.pm +261 -45
- data/bin/lib/Image/ExifTool/Nikon.pm +470 -272
- data/bin/lib/Image/ExifTool/NikonCustom.pm +139 -106
- data/bin/lib/Image/ExifTool/Olympus.pm +3 -2
- data/bin/lib/Image/ExifTool/PNG.pm +8 -1
- data/bin/lib/Image/ExifTool/QuickTime.pm +4 -1
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +44 -11
- data/bin/lib/Image/ExifTool/README +2 -1
- data/bin/lib/Image/ExifTool/Sony.pm +4 -4
- data/bin/lib/Image/ExifTool/TagInfoXML.pm +11 -6
- data/bin/lib/Image/ExifTool/TagLookup.pm +4543 -4491
- data/bin/lib/Image/ExifTool/TagNames.pod +227 -37
- data/bin/lib/Image/ExifTool/WriteQuickTime.pl +12 -7
- data/bin/lib/Image/ExifTool/WriteXMP.pl +15 -1
- data/bin/lib/Image/ExifTool/Writer.pl +33 -13
- data/bin/lib/Image/ExifTool/ZIP.pm +19 -7
- data/bin/lib/Image/ExifTool.pm +36 -15
- data/bin/perl-Image-ExifTool.spec +1 -1
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +3 -2
@@ -64,7 +64,7 @@ use Image::ExifTool::Exif;
|
|
64
64
|
use Image::ExifTool::GPS;
|
65
65
|
use Image::ExifTool::XMP;
|
66
66
|
|
67
|
-
$VERSION = '4.
|
67
|
+
$VERSION = '4.15';
|
68
68
|
|
69
69
|
sub LensIDConv($$$);
|
70
70
|
sub ProcessNikonAVI($$$);
|
@@ -369,6 +369,7 @@ sub GetAFPointGrid($$;$);
|
|
369
369
|
'48 54 3E 3E 0C 0C 4B 06' => 'Sigma 30mm F1.4 EX DC HSM',
|
370
370
|
'F8 54 3E 3E 0C 0C 4B 06' => 'Sigma 30mm F1.4 EX DC HSM', #JD
|
371
371
|
'91 54 44 44 0C 0C 4B 06' => 'Sigma 35mm F1.4 DG HSM', #30
|
372
|
+
'BD 54 48 48 0C 0C 4B 46' => 'Sigma 40mm F1.4 DG HSM | A', #30
|
372
373
|
'DE 54 50 50 0C 0C 4B 06' => 'Sigma 50mm F1.4 EX DG HSM',
|
373
374
|
'88 54 50 50 0C 0C 4B 06' => 'Sigma 50mm F1.4 DG HSM | A',
|
374
375
|
'02 48 50 50 24 24 02 00' => 'Sigma Macro 50mm F2.8', #https://exiftool.org/forum/index.php/topic,4027.0.html
|
@@ -382,6 +383,7 @@ sub GetAFPointGrid($$;$);
|
|
382
383
|
'32 54 6A 6A 24 24 35 02.2' => 'Sigma Macro 105mm F2.8 EX DG', #JD
|
383
384
|
'E5 54 6A 6A 24 24 35 02' => 'Sigma Macro 105mm F2.8 EX DG',
|
384
385
|
'97 48 6A 6A 24 24 4B 0E' => 'Sigma Macro 105mm F2.8 EX DG OS HSM',
|
386
|
+
'BE 54 6A 6A 0C 0C 4B 46' => 'Sigma 105mm F1.4 DG HSM | A', #30
|
385
387
|
'48 48 76 76 24 24 4B 06' => 'Sigma APO Macro 150mm F2.8 EX DG HSM',
|
386
388
|
'F5 48 76 76 24 24 4B 06' => 'Sigma APO Macro 150mm F2.8 EX DG HSM', #24
|
387
389
|
'99 48 76 76 24 24 4B 0E' => 'Sigma APO Macro 150mm F2.8 EX DG OS HSM', #(Christian Hesse)
|
@@ -437,7 +439,7 @@ sub GetAFPointGrid($$;$);
|
|
437
439
|
'90 40 2D 80 2C 40 4B 0E' => 'Sigma 18-200mm F3.5-6.3 II DC OS HSM', #JohnHelour
|
438
440
|
'89 30 2D 80 2C 40 4B 0E' => 'Sigma 18-200mm F3.5-6.3 DC Macro OS HS | C', #JoeSchonberg
|
439
441
|
'A5 40 2D 88 2C 40 4B 0E' => 'Sigma 18-250mm F3.5-6.3 DC OS HSM',
|
440
|
-
|
442
|
+
# LensFStops varies with FocalLength for this lens (ref 2):
|
441
443
|
'92 2C 2D 88 2C 40 4B 0E' => 'Sigma 18-250mm F3.5-6.3 DC Macro OS HSM', #2
|
442
444
|
'87 2C 2D 8E 2C 40 4B 0E' => 'Sigma 18-300mm F3.5-6.3 DC Macro HSM', #30
|
443
445
|
# '92 2C 2D 88 2C 40 4B 0E' (250mm)
|
@@ -829,6 +831,53 @@ my %activeDLightingZ7 = (
|
|
829
831
|
5 => 'Extra High',
|
830
832
|
);
|
831
833
|
|
834
|
+
my %aFAreaModeZ9 = (
|
835
|
+
0 => 'Pinpoint',
|
836
|
+
1 => 'Single',
|
837
|
+
2 => 'Dynamic',
|
838
|
+
3 => 'Wide (S)',
|
839
|
+
4 => 'Wide (L)',
|
840
|
+
5 => '3D',
|
841
|
+
6 => 'Auto',
|
842
|
+
11 => 'Subject Tracking',
|
843
|
+
12 => 'Wide (C1)',
|
844
|
+
13 => 'Wide (C2)',
|
845
|
+
);
|
846
|
+
|
847
|
+
my %banksZ9 = (
|
848
|
+
0 => 'A',
|
849
|
+
1 => 'B',
|
850
|
+
2 => 'C',
|
851
|
+
3 => 'D',
|
852
|
+
);
|
853
|
+
|
854
|
+
my %bracketIncrementZ9 = (
|
855
|
+
0 => '0.3',
|
856
|
+
#1 => '0.5',
|
857
|
+
2 => '0.7',
|
858
|
+
3 => '1.0',
|
859
|
+
4 => '2.0',
|
860
|
+
5 => '3.0',
|
861
|
+
);
|
862
|
+
|
863
|
+
my %bracketSetZ9 = (
|
864
|
+
0 => 'AE/Flash',
|
865
|
+
1 => 'AE',
|
866
|
+
2 => 'Flash',
|
867
|
+
3 => 'White Balance',
|
868
|
+
4 => 'Active-D Lighting',
|
869
|
+
);
|
870
|
+
|
871
|
+
my %bracketProgramZ9 = (
|
872
|
+
0 => 'Disabled',
|
873
|
+
2 => '2F',
|
874
|
+
3 => '3F',
|
875
|
+
4 => '4F',
|
876
|
+
5 => '5F',
|
877
|
+
7 => '7F',
|
878
|
+
9 => '9F',
|
879
|
+
);
|
880
|
+
|
832
881
|
my %flashControlModeZ7 = (
|
833
882
|
0 => 'TTL',
|
834
883
|
1 => 'Auto External Flash',
|
@@ -857,6 +906,29 @@ my %focusModeZ7 = (
|
|
857
906
|
4 => 'AF-F', # full frame
|
858
907
|
);
|
859
908
|
|
909
|
+
my %hDMIOutputResolutionZ9 = (
|
910
|
+
0 => 'Auto',
|
911
|
+
1 => '4320p',
|
912
|
+
2 => '2160p',
|
913
|
+
3 => '1080p',
|
914
|
+
#4 => '1080i',
|
915
|
+
5 => '720p',
|
916
|
+
#6 => '576p',
|
917
|
+
#7 => '480p',
|
918
|
+
);
|
919
|
+
|
920
|
+
my %imageAreaZ9 = (
|
921
|
+
0 => 'FX',
|
922
|
+
1 => 'DX',
|
923
|
+
4 => '16:9',
|
924
|
+
8 => '1:1',
|
925
|
+
);
|
926
|
+
|
927
|
+
my %imageAreaZ9b = (
|
928
|
+
0 => 'FX',
|
929
|
+
1 => 'DX',
|
930
|
+
);
|
931
|
+
|
860
932
|
my %infoZSeries = (
|
861
933
|
Condition => '$$self{Model} =~ /^NIKON Z (5|50|6|6_2|7|7_2|fc|9)\b/i',
|
862
934
|
Notes => 'Z Series cameras thru December 2021',
|
@@ -895,6 +967,66 @@ my %iSOAutoHiLimitZ7 = (
|
|
895
967
|
32 => 'ISO Hi 2.0',
|
896
968
|
);
|
897
969
|
|
970
|
+
my %iSOAutoShutterTimeZ9 = (
|
971
|
+
-15 => 'Auto', #z9 firmware 1.00 maps both 'Auto' and '30 s' to -15
|
972
|
+
-12 => '15 s',
|
973
|
+
-9 => '8 s',
|
974
|
+
-6 => '4 s',
|
975
|
+
-3 => '2 s',
|
976
|
+
0 => '1 s',
|
977
|
+
1 => '1/1.3 s',
|
978
|
+
2 => '1/1.6 s',
|
979
|
+
3 => '1/2 s',
|
980
|
+
4 => '1/2.5 s',
|
981
|
+
5 => '1/3 s',
|
982
|
+
6 => '1/4 s',
|
983
|
+
7 => '1/5 s',
|
984
|
+
8 => '1/6 s',
|
985
|
+
9 => '1/8 s',
|
986
|
+
10 => '1/10 s',
|
987
|
+
11 => '1/13 s',
|
988
|
+
12 => '1/15 s',
|
989
|
+
13 => '1/20 s',
|
990
|
+
14 => '1/25 s',
|
991
|
+
15 => '1/30 s',
|
992
|
+
16 => '1/40 s',
|
993
|
+
17 => '1/50 s',
|
994
|
+
18 => '1/60 s',
|
995
|
+
19 => '1/80 s',
|
996
|
+
20 => '1/100 s',
|
997
|
+
21 => '1/120 s',
|
998
|
+
22 => '1/160 s',
|
999
|
+
23 => '1/200 s',
|
1000
|
+
24 => '1/250 s',
|
1001
|
+
25 => '1/320 s',
|
1002
|
+
26 => '1/400 s',
|
1003
|
+
27 => '1/500 s',
|
1004
|
+
28 => '1/640 s',
|
1005
|
+
29 => '1/800 s',
|
1006
|
+
30 => '1/1000 s',
|
1007
|
+
31 => '1/1250 s',
|
1008
|
+
32 => '1/1600 s',
|
1009
|
+
33 => '1/2000 s',
|
1010
|
+
34 => '1/2500 s',
|
1011
|
+
35 => '1/3200 s',
|
1012
|
+
36 => '1/4000 s',
|
1013
|
+
37 => '1/5000 s',
|
1014
|
+
37.5 => '1/6000 s',
|
1015
|
+
38 => '1/6400 s',
|
1016
|
+
39 => '1/8000 s',
|
1017
|
+
40 => '1/10000 s',
|
1018
|
+
40.5 => '1/12000 s',
|
1019
|
+
41 => '1/13000 s',
|
1020
|
+
42 => '1/16000 s',
|
1021
|
+
);
|
1022
|
+
|
1023
|
+
my %languageZ9 = (
|
1024
|
+
4 => 'English',
|
1025
|
+
5 => 'Spanish',
|
1026
|
+
7 => 'French',
|
1027
|
+
15 => 'Portuguese'
|
1028
|
+
);
|
1029
|
+
|
898
1030
|
my %meteringModeZ7 = (
|
899
1031
|
0 => 'Matrix',
|
900
1032
|
1 => 'Center',
|
@@ -902,6 +1034,30 @@ my %meteringModeZ7 = (
|
|
902
1034
|
3 => 'Highlight'
|
903
1035
|
);
|
904
1036
|
|
1037
|
+
my %monitorBrightnessZ9 = (
|
1038
|
+
0 => '-5',
|
1039
|
+
1 => '-4',
|
1040
|
+
2 => '-3',
|
1041
|
+
3 => '-2',
|
1042
|
+
4 => '-1',
|
1043
|
+
5 => '0',
|
1044
|
+
6 => '1',
|
1045
|
+
7 => '2',
|
1046
|
+
8 => '3',
|
1047
|
+
9 => '4',
|
1048
|
+
10 => '5',
|
1049
|
+
14 => 'Hi1',
|
1050
|
+
15 => 'Hi2',
|
1051
|
+
16 => 'Lo2',
|
1052
|
+
17 => 'Lo1',
|
1053
|
+
);
|
1054
|
+
|
1055
|
+
my %movieFlickerReductionZ9 = (
|
1056
|
+
0 => 'Auto',
|
1057
|
+
1 => '50Hz',
|
1058
|
+
2 => '60Hz',
|
1059
|
+
);
|
1060
|
+
|
905
1061
|
my %movieFrameRateZ7 = (
|
906
1062
|
0 => '120p',
|
907
1063
|
1 => '100p',
|
@@ -912,6 +1068,33 @@ my %movieFrameRateZ7 = (
|
|
912
1068
|
6 => '24p',
|
913
1069
|
);
|
914
1070
|
|
1071
|
+
my %movieFrameSizeZ9 = (
|
1072
|
+
1 => '1920x1080',
|
1073
|
+
2 => '3840x2160',
|
1074
|
+
3 => '7680x4320',
|
1075
|
+
);
|
1076
|
+
|
1077
|
+
my %movieToneMapZ9 = (
|
1078
|
+
0 => 'SDR',
|
1079
|
+
1 => 'HLG',
|
1080
|
+
2 => 'N-Log',
|
1081
|
+
);
|
1082
|
+
|
1083
|
+
my %movieTypeZ9 = (
|
1084
|
+
1 => 'H.265 8-bit (MP4)',
|
1085
|
+
2 => 'H.265 8-bit (MOV)',
|
1086
|
+
3 => 'H.265 10-bit (MOV)',
|
1087
|
+
4 => 'ProRes 422 HQ 10-bit (MOV)',
|
1088
|
+
5 => 'ProRes RAW HQ 12-bit (MOV)',
|
1089
|
+
6 => 'NRAW 12-bit (NEV)'
|
1090
|
+
);
|
1091
|
+
|
1092
|
+
my %multipleExposureModeZ9 = (
|
1093
|
+
0 => 'Off',
|
1094
|
+
1 => 'On',
|
1095
|
+
2 => 'On (Series)',
|
1096
|
+
);
|
1097
|
+
|
915
1098
|
my %offLowNormalHighZ7 = (
|
916
1099
|
0 => 'Off',
|
917
1100
|
1 => 'Low',
|
@@ -919,10 +1102,11 @@ my %offLowNormalHighZ7 = (
|
|
919
1102
|
3 => 'High',
|
920
1103
|
);
|
921
1104
|
|
922
|
-
my %
|
923
|
-
|
924
|
-
|
925
|
-
|
1105
|
+
my %secondarySlotFunctionZ9 = (
|
1106
|
+
0 => 'Overflow',
|
1107
|
+
1 => 'Backup',
|
1108
|
+
2 => 'NEF Primary + JPG Secondary',
|
1109
|
+
3 => 'JPG Primary + JPG Secondary',
|
926
1110
|
);
|
927
1111
|
|
928
1112
|
my %subjectDetectionZ9 = (
|
@@ -933,6 +1117,34 @@ my %subjectDetectionZ9 = (
|
|
933
1117
|
4 => 'Vehicles',
|
934
1118
|
);
|
935
1119
|
|
1120
|
+
my %timeZoneZ9 = (
|
1121
|
+
3 => '+10:00 (Sydney)',
|
1122
|
+
5 => '+09:00 (Tokyo)',
|
1123
|
+
6 => '+08:00 (Beijing, Honk Kong, Sinapore)',
|
1124
|
+
10 => '+05:45 (Kathmandu)',
|
1125
|
+
11 => '+05:30 (New Dehli)',
|
1126
|
+
12 => '+05:00 (Islamabad)',
|
1127
|
+
13 => '+04:30 (Kabul)',
|
1128
|
+
14 => '+04:00 (Abu Dhabi)',
|
1129
|
+
15 => '+03:30 (Tehran)',
|
1130
|
+
16 => '+03:00 (Moscow, Nairobi)',
|
1131
|
+
17 => '+02:00 (Athens, Helsinki)',
|
1132
|
+
18 => '+01:00 (Madrid, Paris, Berlin)',
|
1133
|
+
19 => '+00:00 (London)',
|
1134
|
+
20 => '-01:00 (Azores)',
|
1135
|
+
21 => '-02:00 (Fernando de Noronha)',
|
1136
|
+
22 => '-03:00 (Buenos Aires, Sao Paulo)',
|
1137
|
+
23 => '-03:30 (Newfoundland)',
|
1138
|
+
24 => '-04:00 (Manaus, Caracas)',
|
1139
|
+
25 => '-05:00 (New York, Toronto, Lima)',
|
1140
|
+
26 => '-06:00 (Chicago, Mexico City)',
|
1141
|
+
27 => '-07:00 (Denver)',
|
1142
|
+
28 => '-08:00 (Los Angeles, Vancouver)',
|
1143
|
+
29 => '-09:00 (Anchorage)',
|
1144
|
+
30 => '-10:00 (Hawaii)',
|
1145
|
+
);
|
1146
|
+
|
1147
|
+
|
936
1148
|
my %vRModeZ9 = (
|
937
1149
|
0 => 'Off',
|
938
1150
|
1 => 'Normal',
|
@@ -2091,7 +2303,7 @@ my %base64coord = (
|
|
2091
2303
|
TagTable => 'Image::ExifTool::Nikon::ShotInfoZ9',
|
2092
2304
|
DecryptStart => 4,
|
2093
2305
|
# TODO: eventually set the length dynamically according to actual offsets!
|
2094
|
-
DecryptLen => 0xec4b +
|
2306
|
+
DecryptLen => 0xec4b + 2196, # decoded thru end of Offset26
|
2095
2307
|
ByteOrder => 'LittleEndian',
|
2096
2308
|
},
|
2097
2309
|
},
|
@@ -5053,6 +5265,7 @@ my %nikonFocalConversions = (
|
|
5053
5265
|
31 => 'Nikkor Z 24-120 f/4', #28
|
5054
5266
|
32 => 'Nikkor Z 800mm f/6.3 VR S', #28
|
5055
5267
|
36 => 'Nikkor Z 400mm f/4.5 VR S', #IB
|
5268
|
+
39 => 'Nikkor Z 17-28mm f/2.8', #IB
|
5056
5269
|
},
|
5057
5270
|
},
|
5058
5271
|
0x35 => { #28
|
@@ -8250,15 +8463,26 @@ my %nikonFocalConversions = (
|
|
8250
8463
|
# account for variable location of menu settings data
|
8251
8464
|
Hook => '$varSize = $$self{MenuSettingsZ9Offset} - 0xec4b',
|
8252
8465
|
},
|
8253
|
-
0xec4b =>
|
8254
|
-
|
8255
|
-
|
8256
|
-
|
8257
|
-
|
8258
|
-
|
8466
|
+
0xec4b => [
|
8467
|
+
{
|
8468
|
+
Name => 'MenuSettingsZ9',
|
8469
|
+
Condition => '$$self{FirmwareVersion} lt "03.00"',
|
8470
|
+
Format => 'undef[1646]',
|
8471
|
+
Notes => 'Firmware versions 2.11 and earlier',
|
8472
|
+
SubDirectory => {
|
8473
|
+
TagTable => 'Image::ExifTool::Nikon::MenuSettingsZ9',
|
8474
|
+
},
|
8259
8475
|
},
|
8260
|
-
|
8261
|
-
|
8476
|
+
{
|
8477
|
+
Name => 'MenuSettingsZ9',
|
8478
|
+
Notes => 'Firmware versions 3.0 and later',
|
8479
|
+
Format => 'undef[1948]',
|
8480
|
+
SubDirectory => {
|
8481
|
+
TagTable => 'Image::ExifTool::Nikon::MenuSettingsZ9Firmware3',
|
8482
|
+
},
|
8483
|
+
},
|
8484
|
+
],
|
8485
|
+
# note: DecryptLen currently set to 0xec4b + 2196
|
8262
8486
|
);
|
8263
8487
|
|
8264
8488
|
%Image::ExifTool::Nikon::MenuSettingsZ7II = (
|
@@ -8366,8 +8590,8 @@ my %nikonFocalConversions = (
|
|
8366
8590
|
PrintConv => '$val>0.99 ? "Full" : sprintf("%.1f%%",$val*100)',
|
8367
8591
|
PrintConvInv => '$val=~/(\d+)/ ? $1/100 : 1',
|
8368
8592
|
},
|
8369
|
-
346 => { Name => 'FlashWirelessOption', PrintConv => \%flashWirelessOptionZ7, Unknown => 1},
|
8370
|
-
348 => { Name => 'FlashRemoteControl', PrintConv => \%flashRemoteControlZ7,
|
8593
|
+
346 => { Name => 'FlashWirelessOption', PrintConv => \%flashWirelessOptionZ7, Unknown => 1 },
|
8594
|
+
348 => { Name => 'FlashRemoteControl', PrintConv => \%flashRemoteControlZ7, Unknown => 1 },
|
8371
8595
|
352 => {
|
8372
8596
|
Name => 'FlashMasterControlMode', # tag name chosen for compatibility with those found in FlashInfo0102 & FlashInfo0103
|
8373
8597
|
RawConv => '$$self{FlashGroupOptionsMasterMode} = $val',
|
@@ -8392,12 +8616,12 @@ my %nikonFocalConversions = (
|
|
8392
8616
|
PrintConv => '$val>0.99 ? "Full" : sprintf("%.1f%%",$val*100)',
|
8393
8617
|
PrintConvInv => '$val=~/(\d+)/ ? $1/100 : 1',
|
8394
8618
|
},
|
8395
|
-
#360 => {Name => 'FlashGroupAControlMode'
|
8396
|
-
#368 => {Name => 'FlashGroupBControlMode'
|
8397
|
-
#376 => {Name => 'FlashGroupCControlMode'
|
8398
|
-
#384 => {Name => 'FlashGroupDControlMode'
|
8399
|
-
#392 => {Name => 'FlashGroupEControlMode'
|
8400
|
-
#400 => {Name => 'FlashGroupFControlMode'
|
8619
|
+
#360 => { Name => 'FlashGroupAControlMode' }, # commented out to reduce output volume - mapping follows FlashMasterControlMode with FlashGroupACompensation at 362 and FlashGroupAOutput at 368
|
8620
|
+
#368 => { Name => 'FlashGroupBControlMode' }, # commented out to reduce output volume - mapping follows FlashMasterControlMode with FlashGroupBCompensation at 370 and FlashGroupBOutput at 374
|
8621
|
+
#376 => { Name => 'FlashGroupCControlMode' }, # commented out to reduce output volume - mapping follows FlashMasterControlMode with FlashGroupCCompensation at 378 and FlashGroupCOutput at 382
|
8622
|
+
#384 => { Name => 'FlashGroupDControlMode' }, # commented out to reduce output volume - mapping follows FlashMasterControlMode with FlashGroupDCompensation at 386 and FlashGroupDOutput at 390
|
8623
|
+
#392 => { Name => 'FlashGroupEControlMode' }, # commented out to reduce output volume - mapping follows FlashMasterControlMode with FlashGroupECompensation at 394 and FlashGroupEOutput at 398
|
8624
|
+
#400 => { Name => 'FlashGroupFControlMode' }, # commented out to reduce output volume - mapping follows FlashMasterControlMode with FlashGroupFCompensation at 402 and FlashGroupFOutput at 406
|
8401
8625
|
#434 => FocusMode
|
8402
8626
|
#436 => AFAreaMode
|
8403
8627
|
#438 => VibrationReduction
|
@@ -8405,8 +8629,8 @@ my %nikonFocalConversions = (
|
|
8405
8629
|
#444 => BracketProgram
|
8406
8630
|
#446 => BracketIncrement
|
8407
8631
|
#463 => SilentPhotography
|
8408
|
-
502 => { Name => 'MovieFrameSize', PrintConv => \%movieFrameSizeZ9, Unknown => 1},
|
8409
|
-
504 => { Name => 'MovieFrameRate',
|
8632
|
+
502 => { Name => 'MovieFrameSize', PrintConv => \%movieFrameSizeZ9, Unknown => 1 },
|
8633
|
+
504 => { Name => 'MovieFrameRate', PrintConv => \%movieFrameRateZ7, Unknown => 1 },
|
8410
8634
|
506 => {
|
8411
8635
|
Name => 'MovieSlowMotion',
|
8412
8636
|
Unknown => 1,
|
@@ -8435,9 +8659,9 @@ my %nikonFocalConversions = (
|
|
8435
8659
|
PrintConv => \%iSOAutoHiLimitZ7,
|
8436
8660
|
},
|
8437
8661
|
#520 => MovieWhiteBalanceSameAsPhoto
|
8438
|
-
568 => { Name => 'MovieActiveD-Lighting',
|
8439
|
-
572 => { Name => 'MovieHighISONoiseReduction', PrintConv => \%offLowNormalHighZ7, Unknown => 1},
|
8440
|
-
574 => { Name => 'MovieVignetteControl',
|
8662
|
+
568 => { Name => 'MovieActiveD-Lighting', PrintConv => \%activeDLightingZ7, Unknown => 1 },
|
8663
|
+
572 => { Name => 'MovieHighISONoiseReduction', PrintConv => \%offLowNormalHighZ7, Unknown => 1 },
|
8664
|
+
574 => { Name => 'MovieVignetteControl', PrintConv => \%offLowNormalHighZ7, Unknown => 1 },
|
8441
8665
|
576 => {
|
8442
8666
|
Name => 'MovieVignetteControlSameAsPhoto',
|
8443
8667
|
Unknown => 1,
|
@@ -8453,7 +8677,7 @@ my %nikonFocalConversions = (
|
|
8453
8677
|
Unknown => 1,
|
8454
8678
|
PrintConv => \%offOn
|
8455
8679
|
},
|
8456
|
-
584 => { Name => 'MovieFocusMode', PrintConv => \%focusModeZ7, Unknown => 1},
|
8680
|
+
584 => { Name => 'MovieFocusMode', PrintConv => \%focusModeZ7, Unknown => 1 },
|
8457
8681
|
#586 => MovieAFAreaMode
|
8458
8682
|
590 => {
|
8459
8683
|
Name => 'MovieVibrationReduction',
|
@@ -8493,11 +8717,7 @@ my %nikonFocalConversions = (
|
|
8493
8717
|
140 => {
|
8494
8718
|
Name => 'MultipleExposureMode',
|
8495
8719
|
RawConv => '$$self{MultipleExposureMode} = $val',
|
8496
|
-
PrintConv =>
|
8497
|
-
0 => 'Off',
|
8498
|
-
1 => 'On (Series)',
|
8499
|
-
2 => 'On',
|
8500
|
-
},
|
8720
|
+
PrintConv => \%multipleExposureModeZ9,
|
8501
8721
|
},
|
8502
8722
|
142 => {Name => 'MultiExposureShots', Condition => '$$self{MultipleExposureMode} != 0' }, #range 2-9
|
8503
8723
|
188 => {
|
@@ -8533,27 +8753,11 @@ my %nikonFocalConversions = (
|
|
8533
8753
|
PrintConv => \%offOn,
|
8534
8754
|
Condition => '$$self{FocusShiftShooting} > 0',
|
8535
8755
|
},
|
8536
|
-
274 => {
|
8537
|
-
|
8538
|
-
|
8539
|
-
0 => 'A',
|
8540
|
-
1 => 'B',
|
8541
|
-
2 => 'C',
|
8542
|
-
3 => 'D',
|
8543
|
-
},
|
8544
|
-
},
|
8545
|
-
276 => { Name => 'ExtendedMenuBanks', PrintConv => \%offOn, }, #single tag from both Photo & Video menus
|
8546
|
-
308 => {
|
8547
|
-
Name => 'PhotoShootingMenuBankImageArea',
|
8548
|
-
PrintConv => {
|
8549
|
-
0 => 'FX',
|
8550
|
-
1 => 'DX',
|
8551
|
-
4 => '16:9',
|
8552
|
-
8 => '1:1',
|
8553
|
-
},
|
8554
|
-
},
|
8756
|
+
274 => { Name => 'PhotoShootingMenuBank', PrintConv => \%banksZ9 },
|
8757
|
+
276 => { Name => 'ExtendedMenuBanks', PrintConv => \%offOn }, #single tag from both Photo & Video menus
|
8758
|
+
308 => { Name => 'PhotoShootingMenuBankImageArea', PrintConv => \%imageAreaZ9 },
|
8555
8759
|
#310 ImageQuality
|
8556
|
-
322 => { Name => 'AutoISO', PrintConv => \%offOn
|
8760
|
+
322 => { Name => 'AutoISO', PrintConv => \%offOn },
|
8557
8761
|
324 => {
|
8558
8762
|
Name => 'ISOAutoHiLimit',
|
8559
8763
|
Format => 'int16u',
|
@@ -8575,58 +8779,7 @@ my %nikonFocalConversions = (
|
|
8575
8779
|
Name => 'ISOAutoShutterTime', #shutter speed is 2 ** (-$val/24)
|
8576
8780
|
ValueConv => '$val / 8',
|
8577
8781
|
Format => 'int16s',
|
8578
|
-
PrintConv =>
|
8579
|
-
-15 => 'Auto', #z9 firmware 1.00 maps both 'Auto' and '30 s' to -15
|
8580
|
-
-12 => '15 s',
|
8581
|
-
-9 => '8 s',
|
8582
|
-
-6 => '4 s',
|
8583
|
-
-3 => '2 s',
|
8584
|
-
0 => '1 s',
|
8585
|
-
1 => '1/1.3 s',
|
8586
|
-
2 => '1/1.6 s',
|
8587
|
-
3 => '1/2 s',
|
8588
|
-
4 => '1/2.5 s',
|
8589
|
-
5 => '1/3 s',
|
8590
|
-
6 => '1/4 s',
|
8591
|
-
7 => '1/5 s',
|
8592
|
-
8 => '1/6 s',
|
8593
|
-
9 => '1/8 s',
|
8594
|
-
10 => '1/10 s',
|
8595
|
-
11 => '1/13 s',
|
8596
|
-
12 => '1/15 s',
|
8597
|
-
13 => '1/20 s',
|
8598
|
-
14 => '1/25 s',
|
8599
|
-
15 => '1/30 s',
|
8600
|
-
16 => '1/40 s',
|
8601
|
-
17 => '1/50 s',
|
8602
|
-
18 => '1/60 s',
|
8603
|
-
19 => '1/80 s',
|
8604
|
-
20 => '1/100 s',
|
8605
|
-
21 => '1/120 s',
|
8606
|
-
22 => '1/160 s',
|
8607
|
-
23 => '1/200 s',
|
8608
|
-
24 => '1/250 s',
|
8609
|
-
25 => '1/320 s',
|
8610
|
-
26 => '1/400 s',
|
8611
|
-
27 => '1/500 s',
|
8612
|
-
28 => '1/640 s',
|
8613
|
-
29 => '1/800 s',
|
8614
|
-
30 => '1/1000 s',
|
8615
|
-
31 => '1/1250 s',
|
8616
|
-
32 => '1/1600 s',
|
8617
|
-
33 => '1/2000 s',
|
8618
|
-
34 => '1/2500 s',
|
8619
|
-
35 => '1/3200 s',
|
8620
|
-
36 => '1/4000 s',
|
8621
|
-
37 => '1/5000 s',
|
8622
|
-
37.5 => '1/6000 s',
|
8623
|
-
38 => '1/6400 s',
|
8624
|
-
39 => '1/8000 s',
|
8625
|
-
40 => '1/10000 s',
|
8626
|
-
40.5 => '1/12000 s',
|
8627
|
-
41 => '1/13000 s',
|
8628
|
-
42 => '1/16000 s',
|
8629
|
-
},
|
8782
|
+
PrintConv => \%iSOAutoShutterTimeZ9,
|
8630
8783
|
},
|
8631
8784
|
#336 WhiteBalance
|
8632
8785
|
#406 PictureControl
|
@@ -8635,8 +8788,8 @@ my %nikonFocalConversions = (
|
|
8635
8788
|
#412 => { Name => 'NoiseReduction', PrintConv => \%offOn }, #Long Exposure Noise Reduction
|
8636
8789
|
#414 HighISONoiseReduction
|
8637
8790
|
#414 VignetteControl
|
8638
|
-
416 => { Name => 'MovieVignetteControl',
|
8639
|
-
418 => { Name => 'DiffractionCompensation',
|
8791
|
+
416 => { Name => 'MovieVignetteControl', PrintConv => \%offLowNormalHighZ7, Unknown => 1 },
|
8792
|
+
418 => { Name => 'DiffractionCompensation', PrintConv => \%offOn }, #value can be set from both the Photo Shoot Menu and the Video Shooting Menu
|
8640
8793
|
#419 AutoDistortionControl #value can be set from both the Photo Shoot Menu and the Video Shooting Menu
|
8641
8794
|
420 => { Name => 'FlickerReductionShooting', PrintConv => \%offOn },
|
8642
8795
|
#422 MeteringMode
|
@@ -8671,94 +8824,39 @@ my %nikonFocalConversions = (
|
|
8671
8824
|
PrintConvInv => '$val=~/(\d+)/ ? $1/100 : 1',
|
8672
8825
|
},
|
8673
8826
|
#442 flash wirelss control 0=> 'Off' 1=> 'CMD'
|
8674
|
-
444 => { Name => 'FlashRemoteControl', PrintConv => \%flashRemoteControlZ7,
|
8675
|
-
456 => { Name => 'FlashWirelessOption', PrintConv => \%flashWirelessOptionZ7, Unknown => 1},
|
8827
|
+
444 => { Name => 'FlashRemoteControl', PrintConv => \%flashRemoteControlZ7, Unknown => 1 },
|
8828
|
+
456 => { Name => 'FlashWirelessOption', PrintConv => \%flashWirelessOptionZ7, Unknown => 1 },
|
8676
8829
|
#526 FocusMode
|
8677
|
-
528 => {
|
8678
|
-
|
8679
|
-
PrintConv => {
|
8680
|
-
1 => 'Single',
|
8681
|
-
2 => 'Dynamic',
|
8682
|
-
3 => 'Wide (S)',
|
8683
|
-
4 => 'Wide (L)',
|
8684
|
-
5 => '3D',
|
8685
|
-
6 => 'Auto',
|
8686
|
-
12 => 'Wide (C1)',
|
8687
|
-
13 => 'Wide (C2)',
|
8688
|
-
},
|
8689
|
-
},
|
8690
|
-
530 => { Name => 'VRMode', PrintConv => \%vRModeZ9},
|
8830
|
+
528 => { Name => 'AFAreaMode',PrintConv => \%aFAreaModeZ9 },
|
8831
|
+
530 => { Name => 'VRMode', PrintConv => \%vRModeZ9 },
|
8691
8832
|
534 => {
|
8692
8833
|
Name => 'BracketSet',
|
8693
8834
|
RawConv => '$$self{BracketSet} = $val',
|
8694
|
-
PrintConv =>
|
8695
|
-
0 => 'AE/Flash',
|
8696
|
-
1 => 'AE',
|
8697
|
-
2 => 'Flash',
|
8698
|
-
3 => 'White Balance',
|
8699
|
-
4 => 'Active-D Lighting',
|
8700
|
-
},
|
8835
|
+
PrintConv => \%bracketSetZ9,
|
8701
8836
|
},
|
8702
8837
|
536 => {
|
8703
8838
|
Name => 'BracketProgram',
|
8704
8839
|
Condition => '$$self{BracketSet} < 3',
|
8705
8840
|
Notes => 'AE and/or Flash Bracketing',
|
8706
|
-
PrintConv =>
|
8707
|
-
0 => 'Disabled',
|
8708
|
-
2 => '2F',
|
8709
|
-
3 => '3F',
|
8710
|
-
4 => '4F',
|
8711
|
-
5 => '5F',
|
8712
|
-
7 => '7F',
|
8713
|
-
9 => '9F',
|
8714
|
-
},
|
8841
|
+
PrintConv => \%bracketProgramZ9,
|
8715
8842
|
},
|
8716
8843
|
538 => {
|
8717
8844
|
Name => 'BracketIncrement',
|
8718
8845
|
Condition => '$$self{BracketSet} < 3',
|
8719
8846
|
Notes => 'AE and/or Flash Bracketing',
|
8720
|
-
PrintConv =>
|
8721
|
-
0 => '0.3',
|
8722
|
-
#1 => '0.5',
|
8723
|
-
2 => '0.7',
|
8724
|
-
3 => '1.0',
|
8725
|
-
4 => '2.0',
|
8726
|
-
5 => '3.0',
|
8727
|
-
},
|
8847
|
+
PrintConv => \%bracketIncrementZ9,
|
8728
8848
|
},
|
8729
8849
|
#544 BracketProgram for ADL
|
8730
|
-
556 => {
|
8731
|
-
|
8732
|
-
|
8733
|
-
0 => 'Overflow',
|
8734
|
-
1 => 'Backup',
|
8735
|
-
2 => 'NEF Primary + JPG Secondary',
|
8736
|
-
3 => 'JPG Primary + JPG Secondary',
|
8737
|
-
},
|
8738
|
-
},
|
8739
|
-
572 => { Name => 'DXCropAlert', PrintConv => \%offOn, },
|
8740
|
-
574 => { Name => 'SubjectDetection', PrintConv => \%subjectDetectionZ9},
|
8850
|
+
556 => { Name => 'SecondarySlotFunction', PrintConv => \%secondarySlotFunctionZ9 },
|
8851
|
+
572 => { Name => 'DXCropAlert', PrintConv => \%offOn },
|
8852
|
+
574 => { Name => 'SubjectDetection', PrintConv => \%subjectDetectionZ9 },
|
8741
8853
|
604 => {
|
8742
8854
|
Name => 'MovieImageArea',
|
8743
8855
|
Unknown => 1,
|
8744
|
-
Mask => 0x01,
|
8745
|
-
PrintConv =>
|
8746
|
-
0 => 'FX',
|
8747
|
-
1 => 'DX',
|
8748
|
-
},
|
8749
|
-
},
|
8750
|
-
614 => {
|
8751
|
-
Name => 'MovieType',
|
8752
|
-
Unknown => 1,
|
8753
|
-
PrintConv => {
|
8754
|
-
1 => 'H.265 8-bit (MP4)',
|
8755
|
-
2 => 'H.265 8-bit (MOV)',
|
8756
|
-
3 => 'H.265 10-bit (MOV)',
|
8757
|
-
4 => 'ProRes 422 HQ 10-bit (MOV)',
|
8758
|
-
5 => 'ProRes RAW HQ 12-bit (MOV)',
|
8759
|
-
6 => 'NRAW 12-bit (NEV)'
|
8760
|
-
},
|
8856
|
+
Mask => 0x01, # without the mask 4 => 'FX', 5 => DX. only the 2nd Z-series field encountered with a mask
|
8857
|
+
PrintConv => \%imageAreaZ9b,
|
8761
8858
|
},
|
8859
|
+
614 => { Name => 'MovieType', PrintConv => \%movieTypeZ9, Unknown => 1 },
|
8762
8860
|
616 => {
|
8763
8861
|
Name => 'MovieISOAutoHiLimit',
|
8764
8862
|
Format => 'int16u',
|
@@ -8767,115 +8865,44 @@ my %nikonFocalConversions = (
|
|
8767
8865
|
ValueConvInv => '8 * ($val + 104)',
|
8768
8866
|
PrintConv => \%iSOAutoHiLimitZ7,
|
8769
8867
|
},
|
8770
|
-
618 => { Name => 'MovieISOAutoControlManualMode', PrintConv => \%offOn, Unknown => 1},
|
8868
|
+
618 => { Name => 'MovieISOAutoControlManualMode', PrintConv => \%offOn, Unknown => 1 },
|
8771
8869
|
620 => {
|
8772
8870
|
Name => 'MovieISOAutoManualMode',
|
8773
8871
|
Format => 'int16u',
|
8774
8872
|
Unknown => 1,
|
8775
8873
|
ValueConv => '($val-104)/8',
|
8776
|
-
|
8874
|
+
ValueConvInv => '8 * ($val + 104)',
|
8777
8875
|
PrintConv => \%iSOAutoHiLimitZ7,
|
8778
8876
|
},
|
8779
|
-
696 => { Name => 'MovieActiveD-Lighting',
|
8780
|
-
698 => { Name => 'MovieHighISONoiseReduction', PrintConv => \%offLowNormalHighZ7, Unknown => 1},
|
8781
|
-
704 => {
|
8782
|
-
|
8783
|
-
|
8784
|
-
|
8785
|
-
|
8786
|
-
|
8787
|
-
|
8788
|
-
},
|
8789
|
-
|
8790
|
-
708 => { Name => 'MovieFocusMode', PrintConv => \%focusModeZ7, Unknown => 1},
|
8791
|
-
710 => {
|
8792
|
-
Name => 'MovieAFAreaMode',
|
8793
|
-
PrintConv => {
|
8794
|
-
1 => 'Single',
|
8795
|
-
3 => 'Wide (S)',
|
8796
|
-
4 => 'Wide (L)',
|
8797
|
-
6 => 'Auto',
|
8798
|
-
11 => 'Subject Tracking',
|
8799
|
-
},
|
8800
|
-
},
|
8801
|
-
712 => { Name => 'MovieVRMode', PrintConv => \%vRModeZ9, Unknown => 1},
|
8802
|
-
716 => { Name => 'MovieElectronicVR', PrintConv => \%offOn, Unknown => 1 }, #distinct from MoveieVRMode
|
8803
|
-
718 => { Name => 'MovieSoundRecording', PrintConv => { 0 => 'Off', 1 => 'On', 2 => 'On' }, Unknown => 1 }, #not sure why the unusal mapping with 2 => 'On'
|
8804
|
-
720 => { Name => 'MicrophoneSensitivity', Unknown => 1}, #1-20
|
8805
|
-
722 => { Name => 'MicrophoneAttenuator', PrintConv => \%offOn, Unknown => 1 }, #distinct from MoveieVRMode
|
8877
|
+
696 => { Name => 'MovieActiveD-Lighting', PrintConv => \%activeDLightingZ7, Unknown => 1 },
|
8878
|
+
698 => { Name => 'MovieHighISONoiseReduction', PrintConv => \%offLowNormalHighZ7, Unknown => 1 },
|
8879
|
+
704 => { Name => 'MovieFlickerReduction', PrintConv => \%movieFlickerReductionZ9 },
|
8880
|
+
706 => { Name => 'MovieMeteringMode', PrintConv => \%meteringModeZ7, Unknown => 1 },
|
8881
|
+
708 => { Name => 'MovieFocusMode', PrintConv => \%focusModeZ7, Unknown => 1 },
|
8882
|
+
710 => { Name => 'MovieAFAreaMode', PrintConv => \%aFAreaModeZ9 },
|
8883
|
+
712 => { Name => 'MovieVRMode', PrintConv => \%vRModeZ9, Unknown => 1 },
|
8884
|
+
716 => { Name => 'MovieElectronicVR', PrintConv => \%offOn, Unknown => 1 }, #distinct from MoveieVRMode
|
8885
|
+
718 => { Name => 'MovieSoundRecording', PrintConv => { 0 => 'Off', 1 => 'Auto', 2 => 'Manual' }, Unknown => 1 },
|
8886
|
+
720 => { Name => 'MicrophoneSensitivity', Unknown => 1 }, #1-20
|
8887
|
+
722 => { Name => 'MicrophoneAttenuator', PrintConv => \%offOn, Unknown => 1 }, #distinct from MoveieVRMode
|
8806
8888
|
724 => { Name => 'MicrophoneFrequencyResponse', PrintConv => { 0 => 'Wide Range', 1 => 'Vocal Range' }, Unknown => 1 },
|
8807
|
-
726 => { Name => 'WindNoiseReduction',
|
8808
|
-
748 => {
|
8809
|
-
|
8810
|
-
|
8811
|
-
|
8812
|
-
|
8813
|
-
|
8814
|
-
2 => 'N-Log',
|
8815
|
-
},
|
8816
|
-
},
|
8817
|
-
754 => { Name => 'MovieFrameSize', PrintConv => \%movieFrameSizeZ9, Unknown => 1},
|
8818
|
-
756 => { Name => 'MovieFrameRate', PrintConv => \%movieFrameRateZ7, Unknown => 1},
|
8819
|
-
762 => { Name => 'MicrophoneJackPower', PrintConv => \%offOn, Unknown => 1 },
|
8820
|
-
763 => { Name => 'MovieDXCropAlert', PrintConv => \%offOn, Unknown => 1 },
|
8821
|
-
764 => { Name => 'MovieSubjectDetection', PrintConv => \%subjectDetectionZ9, Unknown => 1},
|
8889
|
+
726 => { Name => 'WindNoiseReduction', PrintConv => \%offOn, Unknown => 1 },
|
8890
|
+
748 => { Name => 'MovieToneMap', PrintConv => \%movieToneMapZ9, Unknown => 1 },
|
8891
|
+
754 => { Name => 'MovieFrameSize', PrintConv => \%movieFrameSizeZ9, Unknown => 1 },
|
8892
|
+
756 => { Name => 'MovieFrameRate', PrintConv => \%movieFrameRateZ7, Unknown => 1 },
|
8893
|
+
762 => { Name => 'MicrophoneJackPower', PrintConv => \%offOn, Unknown => 1 },
|
8894
|
+
763 => { Name => 'MovieDXCropAlert', PrintConv => \%offOn, Unknown => 1 },
|
8895
|
+
764 => { Name => 'MovieSubjectDetection', PrintConv => \%subjectDetectionZ9, Unknown => 1 },
|
8822
8896
|
799 => {
|
8823
8897
|
Name => 'CustomSettingsZ9',
|
8824
8898
|
Format => 'undef[608]',
|
8825
8899
|
SubDirectory => { TagTable => 'Image::ExifTool::NikonCustom::SettingsZ9' },
|
8826
8900
|
},
|
8827
|
-
1426 => {
|
8828
|
-
|
8829
|
-
|
8830
|
-
|
8831
|
-
|
8832
|
-
5 => 'Spanish',
|
8833
|
-
7 => 'French',
|
8834
|
-
},
|
8835
|
-
},
|
8836
|
-
1428 => {
|
8837
|
-
Name => 'TimeZone',
|
8838
|
-
PrintConv => {
|
8839
|
-
5 => '+09:00 (Tokyo)',
|
8840
|
-
6 => '+08:00 (Beijing, Honk Kong, Sinapore)',
|
8841
|
-
10 => '+05:45 (Kathmandu)',
|
8842
|
-
11 => '+05:30 (New Dehli)',
|
8843
|
-
12 => '+05:00 (Islamabad)',
|
8844
|
-
13 => '+04:30 (Kabul)',
|
8845
|
-
14 => '+04:00 (Abu Dhabi)',
|
8846
|
-
15 => '+03:30 (Tehran)',
|
8847
|
-
16 => '+03:00 (Moscow, Nairobi)',
|
8848
|
-
17 => '+02:00 (Athens, Helsinki)',
|
8849
|
-
18 => '+01:00 (Madrid, Paris, Berlin)',
|
8850
|
-
19 => '+00:00 (London)',
|
8851
|
-
20 => '-01:00 (Azores)',
|
8852
|
-
21 => '-02:00 (Fernando de Noronha)',
|
8853
|
-
22 => '-03:00 (Buenos Aires, Sao Paulo)',
|
8854
|
-
23 => '-03:30 (Newfoundland)',
|
8855
|
-
24 => '-04:00 (Manaus, Caracas)',
|
8856
|
-
25 => '-05:00 (New York, Toronto, Lima)',
|
8857
|
-
26 => '-06:00 (Chicago, Mexico City)',
|
8858
|
-
27 => '-07:00 (Denver)',
|
8859
|
-
28 => '-08:00 (Los Angeles, Vancouver)',
|
8860
|
-
29 => '-09:00 (Anchorage)',
|
8861
|
-
30 => '-10:00 (Hawaii)',
|
8862
|
-
},
|
8863
|
-
},
|
8864
|
-
1434 => {Name => 'MonitorBrightness', ValueConv => '$val - 5', Unknown => 1}, # settings: -5 to +5
|
8865
|
-
1456 => { Name => 'AFFineTune', PrintConv => \%offOn, Unknown => 1 },
|
8866
|
-
1552 => {
|
8867
|
-
Name => 'HDMIOutputResolution',
|
8868
|
-
PrintConv => {
|
8869
|
-
0 => 'Auto',
|
8870
|
-
1 => '4320p',
|
8871
|
-
2 => '2160p',
|
8872
|
-
3 => '1080p',
|
8873
|
-
#4 => '1080i',
|
8874
|
-
5 => '720p',
|
8875
|
-
#6 => '576p',
|
8876
|
-
#7 => '480p',
|
8877
|
-
},
|
8878
|
-
},
|
8901
|
+
1426 => { Name => 'Language', PrintConv => \%languageZ9, Unknown => 1 },
|
8902
|
+
1428 => { Name => 'TimeZone', PrintConv => \%timeZoneZ9 },
|
8903
|
+
1434 => { Name => 'MonitorBrightness', ValueConv => '$val - 5', Unknown => 1 }, # settings: -5 to +5
|
8904
|
+
1456 => { Name => 'AFFineTune', PrintConv => \%offOn, Unknown => 1 },
|
8905
|
+
1552 => { Name => 'HDMIOutputResolution', PrintConv => \%hDMIOutputResolutionZ9 },
|
8879
8906
|
1565 => { Name => 'SetClockFromLocationData', PrintConv => \%offOn, Unknown => 1 },
|
8880
8907
|
1572 => { Name => 'AirplaneMode', PrintConv => \%offOn, Unknown => 1 },
|
8881
8908
|
1573 => { Name => 'EmptySlotRelease', PrintConv => { 0 => 'Disable Release', 1 => 'Enable Release' }, Unknown => 1 },
|
@@ -8884,6 +8911,177 @@ my %nikonFocalConversions = (
|
|
8884
8911
|
1636 => { Name => 'USBPowerDelivery', PrintConv => \%offOn, Unknown => 1 },
|
8885
8912
|
1645 => { Name => 'SensorShield', PrintConv => { 0 => 'Stays Open', 1 => 'Closes' }, Unknown => 1 },
|
8886
8913
|
);
|
8914
|
+
%Image::ExifTool::Nikon::MenuSettingsZ9Firmware3 = ( #starts at Offset26 + 248
|
8915
|
+
%binaryDataAttrs,
|
8916
|
+
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
|
8917
|
+
DATAMEMBER => [ 154, 204, 208, 248, 554 ],
|
8918
|
+
IS_SUBDIR => [ 847 ],
|
8919
|
+
NOTES => 'These tags are used by the Z9 firmware 3.00.',
|
8920
|
+
154 => {
|
8921
|
+
Name => 'MultipleExposureMode',
|
8922
|
+
RawConv => '$$self{MultipleExposureMode} = $val',
|
8923
|
+
PrintConv => \%multipleExposureModeZ9,
|
8924
|
+
},
|
8925
|
+
156 => {Name => 'MultiExposureShots', Condition => '$$self{MultipleExposureMode} != 0'}, #range 2-9
|
8926
|
+
204 => {
|
8927
|
+
Name => 'Intervals',
|
8928
|
+
Format => 'int32u',
|
8929
|
+
RawConv => '$$self{IntervalShootingIntervals} = $val',
|
8930
|
+
Condition => '$$self{IntervalShooting} > 0',
|
8931
|
+
},
|
8932
|
+
208 => {
|
8933
|
+
Name => 'ShotsPerInterval',
|
8934
|
+
Format => 'int32u',
|
8935
|
+
RawConv => '$$self{IntervalShootingShotsPerInterval} = $val',
|
8936
|
+
Condition => '$$self{IntervalShooting} > 0',
|
8937
|
+
},
|
8938
|
+
248 => {
|
8939
|
+
Name => 'FocusShiftNumberShots', #1-300
|
8940
|
+
RawConv => '$$self{FocusShiftNumberShots} = $val',
|
8941
|
+
Condition => '$$self{FocusShiftShooting} > 0',
|
8942
|
+
},
|
8943
|
+
252 => {
|
8944
|
+
Name => 'FocusShiftStepWidth', #1(Narrow) to 10 (Wide)
|
8945
|
+
Condition => '$$self{FocusShiftShooting} > 0',
|
8946
|
+
},
|
8947
|
+
256 => {
|
8948
|
+
Name => 'FocusShiftInterval',
|
8949
|
+
Condition => '$$self{FocusShiftShooting} > 0',
|
8950
|
+
PrintConv => '$val == 1? "1 Second" : sprintf("%.0f Seconds",$val)',
|
8951
|
+
},
|
8952
|
+
260 => {
|
8953
|
+
Name => 'FocusShiftExposureLock',
|
8954
|
+
Unknown => 1,
|
8955
|
+
PrintConv => \%offOn,
|
8956
|
+
Condition => '$$self{FocusShiftShooting} > 0',
|
8957
|
+
},
|
8958
|
+
290 => { Name => 'PhotoShootingMenuBank', PrintConv => \%banksZ9 },
|
8959
|
+
292 => { Name => 'ExtendedMenuBanks', PrintConv => \%offOn }, # single tag from both Photo & Video menus
|
8960
|
+
328 => { Name => 'PhotoShootingMenuBankImageArea', PrintConv => \%imageAreaZ9 },
|
8961
|
+
342 => { Name => 'AutoISO', PrintConv => \%offOn },
|
8962
|
+
344 => {
|
8963
|
+
Name => 'ISOAutoHiLimit',
|
8964
|
+
Format => 'int16u',
|
8965
|
+
Unknown => 1,
|
8966
|
+
ValueConv => '($val-104)/8',
|
8967
|
+
ValueConvInv => '8 * ($val + 104)',
|
8968
|
+
PrintConv => \%iSOAutoHiLimitZ7,
|
8969
|
+
},
|
8970
|
+
346 => {
|
8971
|
+
Name => 'ISOAutoFlashLimit',
|
8972
|
+
Format => 'int16u',
|
8973
|
+
Unknown => 1,
|
8974
|
+
ValueConv => '($val-104)/8',
|
8975
|
+
ValueConvInv => '8 * ($val + 104)',
|
8976
|
+
PrintConv => \%iSOAutoHiLimitZ7,
|
8977
|
+
},
|
8978
|
+
354 => {
|
8979
|
+
Name => 'ISOAutoShutterTime', # shutter speed is 2 ** (-$val/24)
|
8980
|
+
ValueConv => '$val / 8',
|
8981
|
+
Format => 'int16s',
|
8982
|
+
PrintConv => \%iSOAutoShutterTimeZ9,
|
8983
|
+
},
|
8984
|
+
436 => { Name => 'MovieVignetteControl', PrintConv => \%offLowNormalHighZ7, Unknown => 1 },
|
8985
|
+
438 => { Name => 'DiffractionCompensation', PrintConv => \%offOn }, # value can be set from both the Photo Shoot Menu and the Video Shooting Menu
|
8986
|
+
440 => { Name => 'FlickerReductionShooting',PrintConv => \%offOn },
|
8987
|
+
548 => { Name => 'AFAreaMode', PrintConv => \%aFAreaModeZ9},
|
8988
|
+
550 => { Name => 'VRMode', PrintConv => \%vRModeZ9},
|
8989
|
+
554 => {
|
8990
|
+
Name => 'BracketSet',
|
8991
|
+
RawConv => '$$self{BracketSet} = $val',
|
8992
|
+
PrintConv => \%bracketSetZ9,
|
8993
|
+
},
|
8994
|
+
556 => {
|
8995
|
+
Name => 'BracketProgram',
|
8996
|
+
Condition => '$$self{BracketSet} < 3',
|
8997
|
+
Notes => 'AE and/or Flash Bracketing',
|
8998
|
+
PrintConv => \%bracketProgramZ9,
|
8999
|
+
},
|
9000
|
+
558 => {
|
9001
|
+
Name => 'BracketIncrement',
|
9002
|
+
Condition => '$$self{BracketSet} < 3',
|
9003
|
+
Notes => 'AE and/or Flash Bracketing',
|
9004
|
+
PrintConv => \%bracketIncrementZ9,
|
9005
|
+
},
|
9006
|
+
576 => { Name => 'SecondarySlotFunction', PrintConv => \%secondarySlotFunctionZ9 },
|
9007
|
+
592 => { Name => 'DXCropAlert', PrintConv => \%offOn },
|
9008
|
+
594 => { Name => 'SubjectDetection', PrintConv => \%subjectDetectionZ9 },
|
9009
|
+
636 => { Name => 'HighFrequencyFlickerReductionShooting', PrintConv => \%offOn, Unknown => 1 }, # new with firmware 3.0
|
9010
|
+
646 => {
|
9011
|
+
Name => 'MovieImageArea',
|
9012
|
+
Unknown => 1,
|
9013
|
+
Mask => 0x01, # without the mask 4 => 'FX' 5 => DX only the 2nd Z-series field encountered with a mask.
|
9014
|
+
PrintConv => \%imageAreaZ9b,
|
9015
|
+
},
|
9016
|
+
656 => { Name => 'MovieType', PrintConv => \%movieTypeZ9, Unknown => 1 },
|
9017
|
+
658 => {
|
9018
|
+
Name => 'MovieISOAutoHiLimit',
|
9019
|
+
Format => 'int16u',
|
9020
|
+
Unknown => 1,
|
9021
|
+
ValueConv => '($val-104)/8',
|
9022
|
+
ValueConvInv => '8 * ($val + 104)',
|
9023
|
+
PrintConv => \%iSOAutoHiLimitZ7,
|
9024
|
+
},
|
9025
|
+
660 => { Name => 'MovieISOAutoControlManualMode', PrintConv => \%offOn, Unknown => 1 },
|
9026
|
+
662 => {
|
9027
|
+
Name => 'MovieISOAutoManualMode',
|
9028
|
+
Format => 'int16u',
|
9029
|
+
Unknown => 1,
|
9030
|
+
ValueConv => '($val-104)/8',
|
9031
|
+
ValueConvInv => '8 * ($val + 104)',
|
9032
|
+
PrintConv => \%iSOAutoHiLimitZ7,
|
9033
|
+
},
|
9034
|
+
736 => { Name => 'MovieActiveD-Lighting', PrintConv => \%activeDLightingZ7, Unknown => 1 },
|
9035
|
+
738 => { Name => 'MovieHighISONoiseReduction', PrintConv => \%offLowNormalHighZ7, Unknown => 1 },
|
9036
|
+
744 => { Name => 'MovieFlickerReduction', PrintConv => \%movieFlickerReductionZ9 },
|
9037
|
+
746 => { Name => 'MovieMeteringMode', PrintConv => \%meteringModeZ7, Unknown => 1 },
|
9038
|
+
748 => { Name => 'MovieFocusMode', PrintConv => \%focusModeZ7, Unknown => 1 },
|
9039
|
+
750 => { Name => 'MovieAFAreaMode', PrintConv => \%aFAreaModeZ9 },
|
9040
|
+
752 => { Name => 'MovieVRMode', PrintConv => \%vRModeZ9, Unknown => 1 },
|
9041
|
+
756 => { Name => 'MovieElectronicVR', PrintConv => \%offOn, Unknown => 1 }, # distinct from MoveieVRMode
|
9042
|
+
758 => { Name => 'MovieSoundRecording', PrintConv => { 0 => 'Off', 1 => 'Auto', 2 => 'Manual' }, Unknown => 1 },
|
9043
|
+
760 => { Name => 'MicrophoneSensitivity', Unknown => 1 }, # 1-20
|
9044
|
+
762 => { Name => 'MicrophoneAttenuator', PrintConv => \%offOn, Unknown => 1 }, # distinct from MoveieVRMode
|
9045
|
+
764 => { Name => 'MicrophoneFrequencyResponse',PrintConv => { 0 => 'Wide Range', 1 => 'Vocal Range' }, Unknown => 1 },
|
9046
|
+
766 => { Name => 'WindNoiseReduction', PrintConv => \%offOn, Unknown => 1 },
|
9047
|
+
788 => { Name => 'MovieToneMap', PrintConv => \%movieToneMapZ9, Unknown => 1 },
|
9048
|
+
794 => { Name => 'MovieFrameSize', PrintConv => \%movieFrameSizeZ9, Unknown => 1 },
|
9049
|
+
796 => { Name => 'MovieFrameRate', PrintConv => \%movieFrameRateZ7, Unknown => 1 },
|
9050
|
+
802 => { Name => 'MicrophoneJackPower', PrintConv => \%offOn, Unknown => 1 },
|
9051
|
+
803 => { Name => 'MovieDXCropAlert', PrintConv => \%offOn, Unknown => 1 },
|
9052
|
+
804 => { Name => 'MovieSubjectDetection', PrintConv => \%subjectDetectionZ9, Unknown => 1 },
|
9053
|
+
812 => { Name => 'MovieHighResZoom', PrintConv => \%offOn, Unknown => 1 },
|
9054
|
+
847 => {
|
9055
|
+
Name => 'CustomSettingsZ9',
|
9056
|
+
Format => 'undef[608]',
|
9057
|
+
SubDirectory => { TagTable => 'Image::ExifTool::NikonCustom::SettingsZ9' },
|
9058
|
+
},
|
9059
|
+
1474 => { Name => 'Language', PrintConv => \%languageZ9, Unknown => 1 },
|
9060
|
+
1476 => { Name => 'TimeZone', PrintConv => \%timeZoneZ9 },
|
9061
|
+
1482 => { Name => 'MonitorBrightness', PrintConv => \%monitorBrightnessZ9, Unknown => 1 }, # settings: -5 to +5. Added with firmware 3.0: Lo1, Lo2, Hi1, Hi2
|
9062
|
+
1504 => { Name => 'AFFineTune', PrintConv => \%offOn, Unknown => 1 },
|
9063
|
+
1600 => { Name => 'HDMIOutputResolution', PrintConv => \%hDMIOutputResolutionZ9 },
|
9064
|
+
1613 => { Name => 'SetClockFromLocationData', PrintConv => \%offOn, Unknown => 1 },
|
9065
|
+
1620 => { Name => 'AirplaneMode', PrintConv => \%offOn, Unknown => 1 },
|
9066
|
+
1621 => { Name => 'EmptySlotRelease', PrintConv => { 0 => 'Disable Release', 1 => 'Enable Release' }, Unknown => 1 },
|
9067
|
+
1656 => { Name => 'EnergySavingMode', PrintConv =>\%offOn, Unknown => 1 },
|
9068
|
+
1680 => { Name => 'RecordLocationData', PrintConv => \%offOn, Unknown => 1 },
|
9069
|
+
1684 => { Name => 'USBPowerDelivery', PrintConv => \%offOn, Unknown => 1 },
|
9070
|
+
1693 => { Name => 'SensorShield', PrintConv => { 0 => 'Stays Open', 1 => 'Closes' }, Unknown => 1 },
|
9071
|
+
1754 => {
|
9072
|
+
Name => 'FocusShiftAutoReset',
|
9073
|
+
Unknown => 1,
|
9074
|
+
PrintConv => \%offOn,
|
9075
|
+
Condition => '$$self{FocusShiftShooting} > 0',
|
9076
|
+
},
|
9077
|
+
#1824 ReleaseTimingIndicatorTypeADelay CSd14-b 0 => '1/200' ... 15 => '1/6'
|
9078
|
+
#1826 VerticalISOButton CSf2
|
9079
|
+
#1828 ExposureCompensationButton CSf2
|
9080
|
+
#1830 ISOButton CSf2
|
9081
|
+
#1890 ViewModeShowEffectsOfSettings CSd9-a 0=>'Always', 1=> 'Only When Flash Not Used'
|
9082
|
+
#1892 DispButton CSf2
|
9083
|
+
#1936 FocusPointDisplayOption3DTrackingColor CSa11-d 0=> 'White', 1= => 'Red'
|
9084
|
+
);
|
8887
9085
|
|
8888
9086
|
# Flash information (ref JD)
|
8889
9087
|
%Image::ExifTool::Nikon::FlashInfo0100 = (
|