exiftool_vendored 12.18.0 → 12.33.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 +236 -4
- data/bin/MANIFEST +23 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +45 -43
- data/bin/arg_files/xmp2exif.args +2 -1
- data/bin/config_files/acdsee.config +193 -6
- data/bin/config_files/convert_regions.config +25 -14
- data/bin/config_files/cuepointlist.config +70 -0
- data/bin/config_files/example.config +2 -9
- data/bin/exiftool +152 -97
- data/bin/fmt_files/gpx.fmt +2 -2
- data/bin/fmt_files/gpx_wpt.fmt +2 -2
- data/bin/fmt_files/kml.fmt +1 -1
- data/bin/fmt_files/kml_track.fmt +1 -1
- data/bin/lib/Image/ExifTool/Apple.pm +3 -2
- data/bin/lib/Image/ExifTool/BuildTagLookup.pm +31 -13
- data/bin/lib/Image/ExifTool/CBOR.pm +331 -0
- data/bin/lib/Image/ExifTool/Canon.pm +44 -19
- data/bin/lib/Image/ExifTool/DJI.pm +6 -6
- data/bin/lib/Image/ExifTool/DPX.pm +13 -2
- data/bin/lib/Image/ExifTool/DjVu.pm +6 -5
- data/bin/lib/Image/ExifTool/Exif.pm +124 -13
- data/bin/lib/Image/ExifTool/FITS.pm +13 -2
- data/bin/lib/Image/ExifTool/FlashPix.pm +35 -10
- data/bin/lib/Image/ExifTool/FujiFilm.pm +19 -8
- data/bin/lib/Image/ExifTool/GPS.pm +22 -11
- data/bin/lib/Image/ExifTool/Geotag.pm +13 -2
- data/bin/lib/Image/ExifTool/GoPro.pm +16 -1
- data/bin/lib/Image/ExifTool/ICC_Profile.pm +2 -2
- data/bin/lib/Image/ExifTool/ID3.pm +15 -3
- data/bin/lib/Image/ExifTool/JPEG.pm +74 -4
- data/bin/lib/Image/ExifTool/JSON.pm +30 -5
- data/bin/lib/Image/ExifTool/Jpeg2000.pm +395 -16
- data/bin/lib/Image/ExifTool/LIF.pm +153 -0
- data/bin/lib/Image/ExifTool/Lang/nl.pm +60 -59
- data/bin/lib/Image/ExifTool/M2TS.pm +137 -5
- data/bin/lib/Image/ExifTool/MIE.pm +4 -3
- data/bin/lib/Image/ExifTool/MRC.pm +341 -0
- data/bin/lib/Image/ExifTool/MWG.pm +3 -3
- data/bin/lib/Image/ExifTool/MXF.pm +1 -1
- data/bin/lib/Image/ExifTool/MacOS.pm +3 -3
- data/bin/lib/Image/ExifTool/Microsoft.pm +298 -82
- data/bin/lib/Image/ExifTool/Nikon.pm +18 -5
- data/bin/lib/Image/ExifTool/NikonSettings.pm +19 -2
- data/bin/lib/Image/ExifTool/Olympus.pm +10 -3
- data/bin/lib/Image/ExifTool/Other.pm +93 -0
- data/bin/lib/Image/ExifTool/PDF.pm +9 -12
- data/bin/lib/Image/ExifTool/PNG.pm +8 -7
- data/bin/lib/Image/ExifTool/Panasonic.pm +28 -3
- data/bin/lib/Image/ExifTool/Pentax.pm +28 -5
- data/bin/lib/Image/ExifTool/PhaseOne.pm +4 -3
- data/bin/lib/Image/ExifTool/Photoshop.pm +6 -0
- data/bin/lib/Image/ExifTool/QuickTime.pm +234 -75
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +283 -141
- data/bin/lib/Image/ExifTool/README +5 -2
- data/bin/lib/Image/ExifTool/RIFF.pm +89 -12
- data/bin/lib/Image/ExifTool/Samsung.pm +48 -10
- data/bin/lib/Image/ExifTool/Shortcuts.pm +9 -0
- data/bin/lib/Image/ExifTool/Sony.pm +230 -69
- data/bin/lib/Image/ExifTool/TagInfoXML.pm +1 -0
- data/bin/lib/Image/ExifTool/TagLookup.pm +4145 -4029
- data/bin/lib/Image/ExifTool/TagNames.pod +671 -287
- data/bin/lib/Image/ExifTool/Torrent.pm +18 -11
- data/bin/lib/Image/ExifTool/WriteExif.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePDF.pl +1 -0
- data/bin/lib/Image/ExifTool/WritePNG.pl +2 -0
- data/bin/lib/Image/ExifTool/WritePostScript.pl +1 -0
- data/bin/lib/Image/ExifTool/WriteQuickTime.pl +55 -21
- data/bin/lib/Image/ExifTool/WriteXMP.pl +7 -3
- data/bin/lib/Image/ExifTool/Writer.pl +47 -10
- data/bin/lib/Image/ExifTool/XMP.pm +45 -15
- data/bin/lib/Image/ExifTool/XMP2.pl +3 -1
- data/bin/lib/Image/ExifTool/XMPStruct.pl +3 -1
- data/bin/lib/Image/ExifTool/ZISRAW.pm +121 -2
- data/bin/lib/Image/ExifTool.pm +233 -81
- data/bin/lib/Image/ExifTool.pod +114 -93
- data/bin/perl-Image-ExifTool.spec +43 -42
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +28 -13
@@ -34,7 +34,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
34
34
|
use Image::ExifTool::Exif;
|
35
35
|
use Image::ExifTool::Minolta;
|
36
36
|
|
37
|
-
$VERSION = '3.
|
37
|
+
$VERSION = '3.46';
|
38
38
|
|
39
39
|
sub ProcessSRF($$$);
|
40
40
|
sub ProcessSR2($$$);
|
@@ -143,11 +143,18 @@ sub PrintInvLensSpec($;$$);
|
|
143
143
|
32852 => 'Sony FE 600mm F4 GM OSS', #IB
|
144
144
|
32853 => 'Sony E 16-55mm F2.8 G', #IB/JR
|
145
145
|
32854 => 'Sony E 70-350mm F4.5-6.3 G OSS', #IB/JR
|
146
|
+
32855 => 'Sony FE C 16-35mm T3.1 G', #JR (SELC1635G) (max aperture is 2.8)
|
146
147
|
32858 => 'Sony FE 35mm F1.8', #JR/IB
|
147
148
|
32859 => 'Sony FE 20mm F1.8 G', #IB/JR
|
148
149
|
32860 => 'Sony FE 12-24mm F2.8 GM', #JR/IB
|
150
|
+
32862 => 'Sony FE 50mm F1.2 GM', #IB/JR
|
151
|
+
32863 => 'Sony FE 14mm F1.8 GM', #IB
|
149
152
|
32864 => 'Sony FE 28-60mm F4-5.6', #JR
|
150
153
|
32865 => 'Sony FE 35mm F1.4 GM', #IB/JR
|
154
|
+
32866 => 'Sony FE 24mm F2.8 G', #IB
|
155
|
+
32867 => 'Sony FE 40mm F2.5 G', #IB
|
156
|
+
32868 => 'Sony FE 50mm F2.5 G', #IB
|
157
|
+
32874 => 'Sony FE 70-200mm F2.8 GM OSS II', #IB
|
151
158
|
|
152
159
|
# (comment this out so LensID will report the LensModel, which is more useful)
|
153
160
|
# 32952 => 'Metabones Canon EF Speed Booster Ultra', #JR (corresponds to 184, but 'Advanced' mode, LensMount reported as E-mount)
|
@@ -188,7 +195,13 @@ sub PrintInvLensSpec($;$$);
|
|
188
195
|
49463 => 'Tamron 28-200mm F2.8-5.6 Di III RXD', #JR (Model A071)
|
189
196
|
49464 => 'Tamron 70-300mm F4.5-6.3 Di III RXD', #JR (Model A047)
|
190
197
|
49465 => 'Tamron 17-70mm F2.8 Di III-A VC RXD', #JR (Model B070)
|
191
|
-
|
198
|
+
49466 => 'Tamron 150-500mm F5-6.7 Di III VC VXD', #JR (Model A057)
|
199
|
+
49467 => 'Tamron 11-20mm F2.8 Di III-A RXD', #JR (Model B060)
|
200
|
+
49468 => 'Tamron 18-300mm F3.5-6.3 Di III-A VC VXD', #JR (Model B061)
|
201
|
+
|
202
|
+
49473 => 'Tokina atx-m 85mm F1.8 FE or Viltrox lens', #JR
|
203
|
+
49473.1 => 'Viltrox 23mm F1.4 E', #JR
|
204
|
+
49473.2 => 'Viltrox 56mm F1.4 E', #JR
|
192
205
|
49712 => 'Tokina FiRIN 20mm F2 FE AF', # (firmware Ver.01)
|
193
206
|
49713 => 'Tokina FiRIN 100mm F2.8 FE MACRO', # (firmware Ver.01)
|
194
207
|
|
@@ -222,6 +235,12 @@ sub PrintInvLensSpec($;$$);
|
|
222
235
|
50522 => 'Sigma 105mm F2.8 DG DN MACRO | A', #JR (020)
|
223
236
|
50523 => 'Sigma 65mm F2 DG DN | C', #IB (020)
|
224
237
|
50524 => 'Sigma 35mm F2 DG DN | C', #IB (020)
|
238
|
+
50525 => 'Sigma 24mm F3.5 DG DN | C', #JR (021)
|
239
|
+
50526 => 'Sigma 28-70mm F2.8 DG DN | C', #JR (021)
|
240
|
+
50527 => 'Sigma 150-600mm F5-6.3 DG DN OS | S', #JR (021)
|
241
|
+
50528 => 'Sigma 35mm F1.4 DG DN | A', #IB/JR (021)
|
242
|
+
50529 => 'Sigma 90mm F2.8 DG DN | C', #JR (021)
|
243
|
+
50530 => 'Sigma 24mm F2 DG DN | C', #JR (021)
|
225
244
|
|
226
245
|
50992 => 'Voigtlander SUPER WIDE-HELIAR 15mm F4.5 III', #JR
|
227
246
|
50993 => 'Voigtlander HELIAR-HYPER WIDE 10mm F5.6', #IB
|
@@ -235,6 +254,7 @@ sub PrintInvLensSpec($;$$);
|
|
235
254
|
51001 => 'Voigtlander NOKTON 21mm F1.4 Aspherical', #JR
|
236
255
|
51002 => 'Voigtlander APO-LANTHAR 50mm F2 Aspherical', #JR
|
237
256
|
51003 => 'Voigtlander NOKTON 35mm F1.2 Aspherical SE', #JR
|
257
|
+
51006 => 'Voigtlander APO-LANTHAR 35mm F2 Aspherical', #JR
|
238
258
|
|
239
259
|
# lenses listed in the Sigma MC-11 list, but not yet seen:
|
240
260
|
# 504xx => 'Sigma 18-200mm F3.5-6.3 DC MACRO OS HSM | C + MC-11', # (014)
|
@@ -250,6 +270,7 @@ sub PrintInvLensSpec($;$$);
|
|
250
270
|
51510 => 'Samyang AF 18mm F2.8 or Samyang AF 35mm F1.8', #JR
|
251
271
|
51510.1 => 'Samyang AF 35mm F1.8', #JR
|
252
272
|
51512 => 'Samyang AF 75mm F1.8', #IB/JR
|
273
|
+
51514 => 'Samyang AF 24mm F1.8', #IB
|
253
274
|
);
|
254
275
|
|
255
276
|
# ExposureProgram values (ref PH, mainly decoded from A200)
|
@@ -624,9 +645,10 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
624
645
|
3 => 'Standard',
|
625
646
|
4 => 'Economy',
|
626
647
|
5 => 'Extra Fine',
|
627
|
-
6 => 'RAW + JPEG',
|
648
|
+
6 => 'RAW + JPEG/HEIF',
|
628
649
|
7 => 'Compressed RAW',
|
629
650
|
8 => 'Compressed RAW + JPEG',
|
651
|
+
9 => 'Light', #JR
|
630
652
|
0xffffffff => 'n/a', #PH (SLT-A57 panorama)
|
631
653
|
},
|
632
654
|
},
|
@@ -1011,7 +1033,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1011
1033
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::Tag2010h' },
|
1012
1034
|
},{
|
1013
1035
|
Name => 'Tag2010i', # ?
|
1014
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|7M3|
|
1036
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|7M3|7RM3A?|7RM4A?|9|9M2)|DSC-(RX10M4|RX100M6|RX100M5A|RX100M7|HX99|RX0M2)|ZV-(1|E10))\b/',
|
1015
1037
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::Tag2010i' },
|
1016
1038
|
},{
|
1017
1039
|
Name => 'Tag_0x2010',
|
@@ -1119,7 +1141,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1119
1141
|
},
|
1120
1142
|
},{
|
1121
1143
|
Name => 'AFAreaModeSetting',
|
1122
|
-
Condition => '$$self{Model} =~ /^(NEX-|ILCE-|DSC-(RX10M4|RX100M6|RX100M7|RX100M5A|HX99|RX0M2))/',
|
1144
|
+
Condition => '$$self{Model} =~ /^(NEX-|ILCE-|ILME-|DSC-(RX10M4|RX100M6|RX100M7|RX100M5A|HX99|RX0M2))/',
|
1123
1145
|
Notes => 'NEX, ILCE and some DSC models',
|
1124
1146
|
RawConv => '$$self{AFAreaILCE} = $val',
|
1125
1147
|
DataMember => 'AFAreaILCE',
|
@@ -1155,7 +1177,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1155
1177
|
# observed values in range (0 0) to (640 480), with center (320 240) often seen
|
1156
1178
|
# for NEX-5R/6, positions appear to be in an 11x9 grid
|
1157
1179
|
Name => 'FlexibleSpotPosition',
|
1158
|
-
Condition => '$$self{Model} =~ /^(NEX-|ILCE-|DSC-(RX10M4|RX100M6|RX100M7|RX100M5A|HX99|RX0M2))/',
|
1180
|
+
Condition => '$$self{Model} =~ /^(NEX-|ILCE-|ILME-|DSC-(RX10M4|RX100M6|RX100M7|RX100M5A|HX99|RX0M2))/',
|
1159
1181
|
Writable => 'int16u',
|
1160
1182
|
Count => 2,
|
1161
1183
|
Notes => q{
|
@@ -1170,7 +1192,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1170
1192
|
# doesn't seem to apply to DSC models (always 0)
|
1171
1193
|
Name => 'AFPointSelected',
|
1172
1194
|
Condition => q{
|
1173
|
-
($$self{Model} =~ /^(SLT-|HV)/) or ($$self{Model} =~ /^ILCE
|
1195
|
+
($$self{Model} =~ /^(SLT-|HV)/) or ($$self{Model} =~ /^(ILCE-|ILME-)/ and
|
1174
1196
|
defined $$self{AFAreaILCE} and $$self{AFAreaILCE} == 4)
|
1175
1197
|
},
|
1176
1198
|
Notes => 'SLT models or ILCE with LA-EA2/EA4',
|
@@ -1248,7 +1270,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1248
1270
|
Name => 'AFPointSelected',
|
1249
1271
|
# non-zero only when AFAreaMode is 'Zone', and 'Expanded-Flexible-Spot' for ILCE-6300/7RM2/7SM2
|
1250
1272
|
# each Zone has 3x3 AF Areas --> 9 positions within 5x5 total Contrast AF Areas
|
1251
|
-
Condition => '$$self{Model} =~ /^(NEX-|ILCE-)/',
|
1273
|
+
Condition => '$$self{Model} =~ /^(NEX-|ILCE-|ILME-)/',
|
1252
1274
|
Notes => 'NEX and ILCE models',
|
1253
1275
|
Writable => 'int8u',
|
1254
1276
|
PrintConv => {
|
@@ -1405,6 +1427,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1405
1427
|
PrintConv => {
|
1406
1428
|
0 => 'Compressed RAW',
|
1407
1429
|
1 => 'Uncompressed RAW',
|
1430
|
+
2 => 'Lossless Compressed RAW', #JR (NC) seen for ILCE-1
|
1408
1431
|
65535 => 'n/a', # seen for ILCE-7SM3 JPEG-only
|
1409
1432
|
},
|
1410
1433
|
},
|
@@ -1452,13 +1475,15 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1452
1475
|
Count => 2,
|
1453
1476
|
PrintConv => {
|
1454
1477
|
'0 0' => 'n/a',
|
1455
|
-
'0 1' => 'Standard
|
1456
|
-
'0 2' => 'Fine
|
1457
|
-
'0 3' => 'Extra Fine
|
1478
|
+
'0 1' => 'Standard',
|
1479
|
+
'0 2' => 'Fine',
|
1480
|
+
'0 3' => 'Extra Fine',
|
1481
|
+
'0 4' => 'Light', #JR
|
1458
1482
|
'1 0' => 'RAW',
|
1459
|
-
'1 1' => 'RAW + Standard
|
1460
|
-
'1 2' => 'RAW + Fine
|
1461
|
-
'1 3' => 'RAW + Extra Fine
|
1483
|
+
'1 1' => 'RAW + Standard',
|
1484
|
+
'1 2' => 'RAW + Fine',
|
1485
|
+
'1 3' => 'RAW + Extra Fine',
|
1486
|
+
'1 4' => 'RAW + Light', #JR
|
1462
1487
|
},
|
1463
1488
|
},
|
1464
1489
|
0x202f => { #JR (ILCE-7RM3)
|
@@ -1479,7 +1504,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1479
1504
|
my ($a,$b,$c,$d) = split ' ', $val;
|
1480
1505
|
my @a = $a =~ /../g;
|
1481
1506
|
return undef unless @a == 4;
|
1482
|
-
return Set32u((hex($d)<<22) | ($a[0]<<17) | ($a[1]<<12) | ($a[2]<<6) | $a[3]) . chr($b) . chr($c);
|
1507
|
+
return Set32u((hex($d)<<22) | ($a[0]<<17) | ($a[1]<<12) | ($a[2]<<6) | $a[3]) . chr($b & 0xff) . chr($c & 0xff);
|
1483
1508
|
},
|
1484
1509
|
PrintConv => {
|
1485
1510
|
'00000000 0 0 0x0' => 'n/a',
|
@@ -1504,13 +1529,57 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1504
1529
|
PrintConv => 'sprintf("%.8d",$val)',
|
1505
1530
|
PrintConvInv => '$val',
|
1506
1531
|
},
|
1507
|
-
# 0x2032 -
|
1508
|
-
|
1509
|
-
|
1510
|
-
|
1511
|
-
|
1512
|
-
|
1513
|
-
|
1532
|
+
# 0x2032 - 0x2039: from July 2020 for ILCE-7SM3, ILCE-1, ILME-FX3 and newer
|
1533
|
+
0x2032 => {
|
1534
|
+
Name => 'Shadows',
|
1535
|
+
Writable => 'int32s',
|
1536
|
+
PrintConv => '$val > 0 ? "+$val" : $val',
|
1537
|
+
PrintConvInv => '$val',
|
1538
|
+
},
|
1539
|
+
0x2033 => {
|
1540
|
+
Name => 'Highlights',
|
1541
|
+
Writable => 'int32s',
|
1542
|
+
PrintConv => '$val > 0 ? "+$val" : $val',
|
1543
|
+
PrintConvInv => '$val',
|
1544
|
+
},
|
1545
|
+
0x2034 => {
|
1546
|
+
Name => 'Fade',
|
1547
|
+
Writable => 'int32s',
|
1548
|
+
PrintConv => '$val > 0 ? "+$val" : $val',
|
1549
|
+
PrintConvInv => '$val',
|
1550
|
+
},
|
1551
|
+
0x2035 => {
|
1552
|
+
Name => 'SharpnessRange',
|
1553
|
+
Writable => 'int32s',
|
1554
|
+
PrintConv => '$val > 0 ? "+$val" : $val',
|
1555
|
+
PrintConvInv => '$val',
|
1556
|
+
},
|
1557
|
+
0x2036 => {
|
1558
|
+
Name => 'Clarity',
|
1559
|
+
Writable => 'int32s',
|
1560
|
+
PrintConv => '$val > 0 ? "+$val" : $val',
|
1561
|
+
PrintConvInv => '$val',
|
1562
|
+
},
|
1563
|
+
0x2037 => {
|
1564
|
+
Name => 'FocusFrameSize',
|
1565
|
+
Format => 'int16u',
|
1566
|
+
Count => '3',
|
1567
|
+
Notes => 'width and height of FocusFrame, centered on FocusLocation',
|
1568
|
+
PrintConv => q{
|
1569
|
+
my @a = split ' ', $val;
|
1570
|
+
return $a[2] ? sprintf('%3dx%3d', $a[0], $a[1]) : 'n/a';
|
1571
|
+
},
|
1572
|
+
PrintConvInv => '$val =~ /(\d+)x(\d+)/ ? "$1 $2 257" : "0 0 0"',
|
1573
|
+
},
|
1574
|
+
0x2039 => { #JR
|
1575
|
+
Name => 'JPEG-HEIFSwitch', # (name used in camera menus)
|
1576
|
+
Writable => 'int16u',
|
1577
|
+
PrintConv => {
|
1578
|
+
0 => 'JPEG',
|
1579
|
+
1 => 'HEIF',
|
1580
|
+
65535 => 'n/a',
|
1581
|
+
},
|
1582
|
+
},
|
1514
1583
|
0x3000 => {
|
1515
1584
|
Name => 'ShotInfo',
|
1516
1585
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::ShotInfo' },
|
@@ -1539,21 +1608,21 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1539
1608
|
# from mid-2015: ILCE-7RM2/7SM2/6300 and newer models use different offsets
|
1540
1609
|
{
|
1541
1610
|
Name => 'Tag9050a',
|
1542
|
-
Condition => '$$self{Model} !~ /^(DSC-|Stellar|ILCE-(1|6100|6300|6400|6500|6600|7C|7M3|7RM2|
|
1611
|
+
Condition => '$$self{Model} !~ /^(DSC-|Stellar|ILCE-(1|6100|6300|6400|6500|6600|7C|7M3|7RM2|7RM3A?|7RM4A?|7SM2|7SM3|9|9M2)|ILCA-99M2|ILME-FX3|ZV-)/',
|
1543
1612
|
SubDirectory => {
|
1544
1613
|
TagTable => 'Image::ExifTool::Sony::Tag9050a',
|
1545
1614
|
ByteOrder => 'LittleEndian',
|
1546
1615
|
},
|
1547
1616
|
},{
|
1548
1617
|
Name => 'Tag9050b',
|
1549
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6100|6300|6400|6500|6600|7C|7M3|7RM2|
|
1618
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6100|6300|6400|6500|6600|7C|7M3|7RM2|7RM3A?|7RM4A?|7SM2|9|9M2)|ILCA-99M2|ZV-E10)/',
|
1550
1619
|
SubDirectory => {
|
1551
1620
|
TagTable => 'Image::ExifTool::Sony::Tag9050b',
|
1552
1621
|
ByteOrder => 'LittleEndian',
|
1553
1622
|
},
|
1554
1623
|
},{
|
1555
1624
|
Name => 'Tag9050c',
|
1556
|
-
Condition => '$$self{Model} =~ /^(ILCE-(1|7SM3))/',
|
1625
|
+
Condition => '$$self{Model} =~ /^(ILCE-(1|7SM3)|ILME-FX3)/',
|
1557
1626
|
SubDirectory => {
|
1558
1627
|
TagTable => 'Image::ExifTool::Sony::Tag9050c',
|
1559
1628
|
ByteOrder => 'LittleEndian',
|
@@ -1572,8 +1641,8 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1572
1641
|
# 0x23 (e) for DSC-RX10/HX60V/HX350/HX400V/WX220/WX350, ILCE-7/7R/5000/6000, ILCA-68/77M2
|
1573
1642
|
# 0x24 (e) for ILCA-99M2,ILCE-5100/6300/6500/7M2/7RM2/7S/7SM2/QX1, DSC-HX80/HX90V/QX30/RX0/RX100M3/RX100M4/RX100M5/RX10M2/RX10M3/RX1RM2/WX500
|
1574
1643
|
# 0x26 (e) for ILCE-6100/6400/6600/7M3/7RM3/9, DSC-RX0M2/RX10M4/RX100M5A/RX100M6/HX99
|
1575
|
-
# 0x28 (e) for ILCE-7RM4/9M2, DSC-RX100M7, ZV-1
|
1576
|
-
# 0x31 (e) for ILCE-1,
|
1644
|
+
# 0x28 (e) for ILCE-7RM4/9M2, DSC-RX100M7, ZV-1/E10
|
1645
|
+
# 0x31 (e) for ILCE-1/7SM3, ILME-FX3
|
1577
1646
|
# first byte decoded: 40, 204, 202, 27, 58, 62, 48, 215, 28, 106 respectively
|
1578
1647
|
{
|
1579
1648
|
Name => 'Tag9400a',
|
@@ -1588,7 +1657,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1588
1657
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::Tag9400b' },
|
1589
1658
|
},{
|
1590
1659
|
Name => 'Tag9400c',
|
1591
|
-
Condition => '$$valPt =~ /^[\x23\x24\x26\x28\x31]/',
|
1660
|
+
Condition => '$$valPt =~ /^[\x23\x24\x26\x28\x31]/',
|
1592
1661
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::Tag9400c' },
|
1593
1662
|
},{
|
1594
1663
|
Name => 'Sony_0x9400',
|
@@ -1747,7 +1816,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1747
1816
|
# 142 var (0x25 = 37 var enc.) DSC-HX80/HX90V/RX1RM2/RX10M2/RX10M3/RX100M4/WX500, ILCE-6300/7RM2/7SM2
|
1748
1817
|
# 144 var (0xe1 = 225 var enc.) DSC-RX100M5
|
1749
1818
|
# 145 var (0x76 = 118 var enc.) ILCA-99M2, ILCE-6500, DSC-RX0
|
1750
|
-
# 163 var (0x8b = 139 var enc.) ILCE-6100/6400/6600/7C/7M3/7RM3/7RM4/9/9M2, DSC-RX0M2/RX10M4/RX100M5A/RX100M6/RX100M7/HX99, ZV-1
|
1819
|
+
# 163 var (0x8b = 139 var enc.) ILCE-6100/6400/6600/7C/7M3/7RM3/7RM4/9/9M2, DSC-RX0M2/RX10M4/RX100M5A/RX100M6/RX100M7/HX99, ZV-1/E10
|
1751
1820
|
# July 2020: ILCE-7SM3 doesn't write this tag anymore, but writes 0x9416
|
1752
1821
|
0x9405 => [{
|
1753
1822
|
Name => 'Tag9405a',
|
@@ -1801,7 +1870,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1801
1870
|
},
|
1802
1871
|
0x940c => [{
|
1803
1872
|
Name => 'Tag940c',
|
1804
|
-
Condition => '$$self{Model} =~ /^(NEX-|ILCE-|Lunar)\b/',
|
1873
|
+
Condition => '$$self{Model} =~ /^(NEX-|ILCE-|ILME-|Lunar|ZV-E10)\b/',
|
1805
1874
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::Tag940c' },
|
1806
1875
|
},{
|
1807
1876
|
Name => 'Sony_0x940c',
|
@@ -1957,8 +2026,12 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1957
2026
|
379 => 'ILCE-6100', #IB/JR
|
1958
2027
|
380 => 'ZV-1', #JR
|
1959
2028
|
381 => 'ILCE-7C', #JR
|
2029
|
+
382 => 'ZV-E10', #JR
|
1960
2030
|
383 => 'ILCE-7SM3',
|
1961
2031
|
384 => 'ILCE-1', #PH
|
2032
|
+
385 => 'ILME-FX3', #JR
|
2033
|
+
386 => 'ILCE-7RM3A', #JR
|
2034
|
+
387 => 'ILCE-7RM4A', #forum12542
|
1962
2035
|
},
|
1963
2036
|
},
|
1964
2037
|
0xb020 => { #2
|
@@ -6069,6 +6142,10 @@ my %pictureProfile2010 = (
|
|
6069
6142
|
31 => 'Gamma S-Log3 (PP8 or PP9)', #14
|
6070
6143
|
33 => 'Gamma HLG2 (PP10)', #14
|
6071
6144
|
34 => 'Gamma HLG3', #IB
|
6145
|
+
37 => 'FL',
|
6146
|
+
38 => 'VV2',
|
6147
|
+
39 => 'IN',
|
6148
|
+
40 => 'SH',
|
6072
6149
|
},
|
6073
6150
|
);
|
6074
6151
|
my %isoSetting2010 = (
|
@@ -6113,7 +6190,7 @@ my %isoSetting2010 = (
|
|
6113
6190
|
43 => 160000,
|
6114
6191
|
44 => 204800,
|
6115
6192
|
45 => 256000,
|
6116
|
-
46 => 320000,
|
6193
|
+
46 => 320000,
|
6117
6194
|
47 => 409600,
|
6118
6195
|
);
|
6119
6196
|
|
@@ -7541,13 +7618,13 @@ my %isoSetting2010 = (
|
|
7541
7618
|
# March 2019: ILCE-9 with v5.0x firmware follows ILCE-6400 in many tags ...
|
7542
7619
|
0x0050 => {
|
7543
7620
|
Name => 'ShutterCount2',
|
7544
|
-
Condition => '(($$self{FlashFired} & 0x01) != 1) and ($$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|
|
7621
|
+
Condition => '(($$self{FlashFired} & 0x01) != 1) and ($$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|7RM4A?|9M2)|ZV-E10)/ or $$self{Software} =~ /^ILCE-9 (v5.0|v6.0)/)',
|
7545
7622
|
Format => 'int32u',
|
7546
7623
|
RawConv => '$val & 0x00ffffff',
|
7547
7624
|
},
|
7548
7625
|
0x0052 => {
|
7549
7626
|
Name => 'ShutterCount2',
|
7550
|
-
Condition => '(($$self{FlashFired} & 0x01) != 1) and ($$self{Model} =~ /^(ILCE-(7M3|
|
7627
|
+
Condition => '(($$self{FlashFired} & 0x01) != 1) and ($$self{Model} =~ /^(ILCE-(7M3|7RM3A?))/)',
|
7551
7628
|
Format => 'int32u',
|
7552
7629
|
RawConv => '$val & 0x00ffffff',
|
7553
7630
|
},
|
@@ -7558,13 +7635,13 @@ my %isoSetting2010 = (
|
|
7558
7635
|
# 0x0058, 0x0061: E-Mount: ShutterCount and dateTime
|
7559
7636
|
0x0058 => { # appears not valid when flash is used ... not for ILCA-99M2
|
7560
7637
|
Name => 'ShutterCount2',
|
7561
|
-
Condition => '(($$self{FlashFired} & 0x01) != 1) and ($$self{Model} !~ /^(ILCA-99M2|ILCE-(6100|6400|6600|7C|7M3|
|
7638
|
+
Condition => '(($$self{FlashFired} & 0x01) != 1) and ($$self{Model} !~ /^(ILCA-99M2|ILCE-(6100|6400|6600|7C|7M3|7RM3A?|7RM4A?|9M2)|ZV-E10)/) and $$self{Software} !~ /^ILCE-9 (v5.0|v6.0)/',
|
7562
7639
|
Format => 'int32u',
|
7563
7640
|
RawConv => '$val & 0x00ffffff',
|
7564
7641
|
},
|
7565
7642
|
0x0061 => { # only minutes-seconds, not for ILCA-99M2, ILCE-9
|
7566
7643
|
Name => 'SonyTimeMinSec',
|
7567
|
-
Condition => '$$self{Model} !~ /^(ILCA-99M2|ILCE-(6100|6400|6600|7C|7M3|
|
7644
|
+
Condition => '$$self{Model} !~ /^(ILCA-99M2|ILCE-(6100|6400|6600|7C|7M3|7RM3A?|7RM4A?|9|9M2)|ZV-E10)/',
|
7568
7645
|
Format => 'undef[2]',
|
7569
7646
|
ValueConv => q{
|
7570
7647
|
my @v = unpack('C*', $val);
|
@@ -7573,17 +7650,17 @@ my %isoSetting2010 = (
|
|
7573
7650
|
},
|
7574
7651
|
0x006b => {
|
7575
7652
|
Name => 'ReleaseMode2',
|
7576
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|
|
7653
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|7RM4A?|9M2)|ZV-E10)/ or $$self{Software} =~ /^ILCE-9 (v5.0|v6.0)/',
|
7577
7654
|
%releaseMode2,
|
7578
7655
|
},
|
7579
7656
|
0x006d => {
|
7580
7657
|
Name => 'ReleaseMode2',
|
7581
|
-
Condition => '$$self{Model} =~ /^(ILCE-(7M3|
|
7658
|
+
Condition => '$$self{Model} =~ /^(ILCE-(7M3|7RM3A?))/',
|
7582
7659
|
%releaseMode2,
|
7583
7660
|
},
|
7584
7661
|
0x0073 => {
|
7585
7662
|
Name => 'ReleaseMode2',
|
7586
|
-
Condition => '$$self{Model} !~ /^(ILCE-(6100|6400|6600|7C|7M3|
|
7663
|
+
Condition => '$$self{Model} !~ /^(ILCE-(6100|6400|6600|7C|7M3|7RM3A?|7RM4A?|9M2)|ZV-E10)/ and $$self{Software} !~ /^ILCE-9 (v5.0|v6.0)/',
|
7587
7664
|
%releaseMode2,
|
7588
7665
|
},
|
7589
7666
|
0x0088 => {
|
@@ -7662,7 +7739,7 @@ my %isoSetting2010 = (
|
|
7662
7739
|
#
|
7663
7740
|
0x019f => {
|
7664
7741
|
Name => 'ShutterCount3',
|
7665
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|7M3|
|
7742
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|7M3|7RM3A?|7RM4A?|9|9M2)|ZV-E10)\b/',
|
7666
7743
|
Format => 'int32u',
|
7667
7744
|
RawConv => '$val == 0 ? undef : $val',
|
7668
7745
|
},
|
@@ -7680,7 +7757,7 @@ my %isoSetting2010 = (
|
|
7680
7757
|
},
|
7681
7758
|
0x01eb => {
|
7682
7759
|
Name => 'APS-CSizeCapture',
|
7683
|
-
Condition => '$$self{Model} =~ /^ILCE-(
|
7760
|
+
Condition => '$$self{Model} =~ /^ILCE-(7RM4A?|7C|9M2)|ZV-E10/ or $$self{Software} =~ /^ILCE-9 (v5.0|v6.0)/',
|
7684
7761
|
PrintConv => {
|
7685
7762
|
0 => 'Off',
|
7686
7763
|
1 => 'On',
|
@@ -7688,7 +7765,7 @@ my %isoSetting2010 = (
|
|
7688
7765
|
},
|
7689
7766
|
0x01ed => {
|
7690
7767
|
Name => 'LensSpecFeatures',
|
7691
|
-
Condition => '$$self{Model} =~ /^ILCE-(
|
7768
|
+
Condition => '$$self{Model} =~ /^ILCE-(7RM4A?|7C|9M2)|ZV-E10/ or $$self{Software} =~ /^ILCE-9 (v5.0|v6.0)/',
|
7692
7769
|
Priority => 0,
|
7693
7770
|
Format => 'undef[2]',
|
7694
7771
|
ValueConv => 'join " ", unpack "H2H2", $val',
|
@@ -7701,7 +7778,7 @@ my %isoSetting2010 = (
|
|
7701
7778
|
},
|
7702
7779
|
0x01ee => {
|
7703
7780
|
Name => 'APS-CSizeCapture',
|
7704
|
-
Condition => '$$self{Model} =~ /^(ILCE-(7M3|
|
7781
|
+
Condition => '$$self{Model} =~ /^(ILCE-(7M3|7RM3A?|9))\b/ and $$self{Software} !~ /^ILCE-9 (v5.0|v6.0)/',
|
7705
7782
|
PrintConv => {
|
7706
7783
|
0 => 'Off',
|
7707
7784
|
1 => 'On',
|
@@ -7709,7 +7786,7 @@ my %isoSetting2010 = (
|
|
7709
7786
|
},
|
7710
7787
|
0x01f0 => {
|
7711
7788
|
Name => 'LensSpecFeatures',
|
7712
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7M3|
|
7789
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7M3|7RM3A?|9))\b/ and $$self{Software} !~ /^ILCE-9 (v5.0|v6.0)/',
|
7713
7790
|
Priority => 0,
|
7714
7791
|
Format => 'undef[2]',
|
7715
7792
|
ValueConv => 'join " ", unpack "H2H2", $val',
|
@@ -7790,7 +7867,7 @@ my %isoSetting2010 = (
|
|
7790
7867
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
|
7791
7868
|
FORMAT => 'int8u',
|
7792
7869
|
NOTES => q{
|
7793
|
-
Valid from July 2020 for ILCE-1/7SM3.
|
7870
|
+
Valid from July 2020 for ILCE-1/7SM3, ILME-FX3.
|
7794
7871
|
},
|
7795
7872
|
WRITABLE => 1,
|
7796
7873
|
FIRST_ENTRY => 0,
|
@@ -7877,6 +7954,13 @@ my %isoSetting2010 = (
|
|
7877
7954
|
},
|
7878
7955
|
0x0088 => {
|
7879
7956
|
Name => 'InternalSerialNumber', #(NC)
|
7957
|
+
Condition => '$$self{Model} =~ /^(ILCE-7SM3|ILME-FX3)/',
|
7958
|
+
Format => 'int8u[6]',
|
7959
|
+
PrintConv => 'unpack "H*", pack "C*", split " ", $val',
|
7960
|
+
},
|
7961
|
+
0x008a => {
|
7962
|
+
Name => 'InternalSerialNumber', #(NC)
|
7963
|
+
Condition => '$$self{Model} =~ /^(ILCE-1)/',
|
7880
7964
|
Format => 'int8u[6]',
|
7881
7965
|
PrintConv => 'unpack "H*", pack "C*", split " ", $val',
|
7882
7966
|
},
|
@@ -8106,25 +8190,35 @@ my %isoSetting2010 = (
|
|
8106
8190
|
8 => 'Rotate 270 CW',
|
8107
8191
|
},
|
8108
8192
|
},
|
8109
|
-
0x002a => {
|
8193
|
+
0x002a => [{
|
8110
8194
|
Name => 'Quality2',
|
8111
|
-
Condition => '$$self{Model} !~ /^(ILCE-(1|7SM3))\b/',
|
8195
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|7SM3)|ILME-FX3)\b/',
|
8112
8196
|
PrintConv => {
|
8113
8197
|
0 => 'JPEG',
|
8114
8198
|
1 => 'RAW',
|
8115
8199
|
2 => 'RAW + JPEG',
|
8116
8200
|
3 => 'JPEG + MPO', # 3D images
|
8117
8201
|
},
|
8118
|
-
},
|
8202
|
+
},{
|
8203
|
+
Name => 'Quality2',
|
8204
|
+
Condition => '$$self{Model} =~ /^(ILCE-(1|7SM3)|ILME-FX3)\b/',
|
8205
|
+
PrintConv => {
|
8206
|
+
1 => 'JPEG',
|
8207
|
+
2 => 'RAW',
|
8208
|
+
3 => 'RAW + JPEG',
|
8209
|
+
4 => 'HEIF',
|
8210
|
+
6 => 'RAW + HEIF',
|
8211
|
+
},
|
8212
|
+
}],
|
8119
8213
|
0x0047 => {
|
8120
8214
|
Name => 'SonyImageHeight',
|
8121
|
-
Condition => '$$self{Model} !~ /^(ILCE-(1|7SM3))\b/',
|
8215
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|7SM3)|ILME-FX3)\b/',
|
8122
8216
|
Format => 'int16u',
|
8123
8217
|
PrintConv => '$val > 0 ? 8*$val : "n.a."',
|
8124
8218
|
},
|
8125
8219
|
0x0053 => {
|
8126
8220
|
Name => 'ModelReleaseYear',
|
8127
|
-
Condition => '$$self{Model} !~ /^(ILCE-(1|7SM3))\b/',
|
8221
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|7SM3)|ILME-FX3)\b/',
|
8128
8222
|
Format => 'int8u',
|
8129
8223
|
PrintConv => 'sprintf("20%.2d", $val)',
|
8130
8224
|
},
|
@@ -8281,8 +8375,8 @@ my %isoSetting2010 = (
|
|
8281
8375
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
8282
8376
|
DATAMEMBER => [ 0x04 ],
|
8283
8377
|
0x04 => {
|
8284
|
-
# seen values 0,2,3,18,32,49,50,83,148
|
8285
|
-
# CameraTemperature is valid for all values except 0
|
8378
|
+
# seen values 0,2,3,18,19,32,49,50,83,130,132,148,213,229,255
|
8379
|
+
# CameraTemperature is valid for all values above except ==0 and >=130
|
8286
8380
|
Name => 'TempTest2',
|
8287
8381
|
DataMember => 'TempTest2',
|
8288
8382
|
Hidden => 1,
|
@@ -8603,7 +8697,7 @@ my %isoSetting2010 = (
|
|
8603
8697
|
},
|
8604
8698
|
0x0342 => {
|
8605
8699
|
Name => 'LensZoomPosition',
|
8606
|
-
Condition => '$$self{Model} !~ /^(ILCA-|ILCE-(7RM2|7M3|
|
8700
|
+
Condition => '$$self{Model} !~ /^(ILCA-|ILCE-(7RM2|7M3|7RM3A?|7RM4A?|7SM2|6100|6300|6400|6500|6600|7C|9|9M2)|DSC-(HX80|HX90V|HX99|RX0|RX10M2|RX10M3|RX10M4|RX100M4|RX100M5|RX100M5A|RX100M6|RX100M7|WX500)|ZV-)/',
|
8607
8701
|
Format => 'int16u',
|
8608
8702
|
PrintConv => 'sprintf("%.0f%%",$val/10.24)',
|
8609
8703
|
PrintConvInv => '$val=~s/ ?%$//; $val * 10.24',
|
@@ -8615,7 +8709,7 @@ my %isoSetting2010 = (
|
|
8615
8709
|
},
|
8616
8710
|
0x034e => {
|
8617
8711
|
Name => 'LensZoomPosition',
|
8618
|
-
Condition => '$$self{Model} =~ /^(DSC-(RX100M5|RX100M5A|RX100M6|RX100M7|RX10M4|HX99)|ILCE-(6100|6400|6600|7C|7M3|
|
8712
|
+
Condition => '$$self{Model} =~ /^(DSC-(RX100M5|RX100M5A|RX100M6|RX100M7|RX10M4|HX99)|ILCE-(6100|6400|6600|7C|7M3|7RM3A?|7RM4A?|9M2)|ZV-E10)/',
|
8619
8713
|
Format => 'int16u',
|
8620
8714
|
PrintConv => 'sprintf("%.0f%%",$val/10.24)',
|
8621
8715
|
PrintConvInv => '$val=~s/ ?%$//; $val * 10.24',
|
@@ -8627,7 +8721,7 @@ my %isoSetting2010 = (
|
|
8627
8721
|
},
|
8628
8722
|
0x035c => {
|
8629
8723
|
Name => 'VignettingCorrParams',
|
8630
|
-
Condition => '$$self{Model} =~ /^(ILCA-99M2|ILCE-(6100|6400|6500|6600|7C|7M3|
|
8724
|
+
Condition => '$$self{Model} =~ /^(ILCA-99M2|ILCE-(6100|6400|6500|6600|7C|7M3|7RM3A?|7RM4A?|9|9M2)|ZV-E10)/',
|
8631
8725
|
Format => 'int16s[16]',
|
8632
8726
|
},
|
8633
8727
|
0x035a => {
|
@@ -8664,7 +8758,7 @@ my %isoSetting2010 = (
|
|
8664
8758
|
},
|
8665
8759
|
0x03b8 => {
|
8666
8760
|
Name => 'ChromaticAberrationCorrParams',
|
8667
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|7M3|
|
8761
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|7M3|7RM3A?|7RM4A?|9|9M2)|ZV-E10)/',
|
8668
8762
|
Format => 'int16s[32]',
|
8669
8763
|
},
|
8670
8764
|
);
|
@@ -8784,7 +8878,7 @@ my %isoSetting2010 = (
|
|
8784
8878
|
FIRST_ENTRY => 0,
|
8785
8879
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
8786
8880
|
DATAMEMBER => [ 0x0008 ],
|
8787
|
-
NOTES => '
|
8881
|
+
NOTES => 'E-mount cameras only.',
|
8788
8882
|
|
8789
8883
|
# 0x0001 - 0 for all NEX and ILCE-3000/3500, 20 for all other ILCE (17 for ILCE samples from Sony.net)
|
8790
8884
|
# 0x0008 - LensMount, but different values from Tag9405-0x0105 and Tag9050-0x0604.
|
@@ -9195,11 +9289,11 @@ my %isoSetting2010 = (
|
|
9195
9289
|
|
9196
9290
|
# 0x1a06 onwards - first seen for ILCE-7RM2: appears to be some kind of metering image
|
9197
9291
|
# but not valid anymore for ILCE-6400, ILCE-9 v5.0x
|
9198
|
-
0x1a06 => { Name => 'TiffMeteringImageWidth', Condition => '$$self{Model} =~ /^(ILCE-(6300|6500|7M3|7RM2|
|
9199
|
-
0x1a07 => { Name => 'TiffMeteringImageHeight', Condition => '$$self{Model} =~ /^(ILCE-(6300|6500|7M3|7RM2|
|
9292
|
+
0x1a06 => { Name => 'TiffMeteringImageWidth', Condition => '$$self{Model} =~ /^(ILCE-(6300|6500|7M3|7RM2|7RM3A?|7SM2|9))\b/ and $$self{Software} !~ /^ILCE-9 (v5.0|v6.0)/' },
|
9293
|
+
0x1a07 => { Name => 'TiffMeteringImageHeight', Condition => '$$self{Model} =~ /^(ILCE-(6300|6500|7M3|7RM2|7RM3A?|7SM2|9))\b/ and $$self{Software} !~ /^ILCE-9 (v5.0|v6.0)/' },
|
9200
9294
|
0x1a08 => { # (2640 bytes: 1 set of 44x30 int16u values)
|
9201
9295
|
Name => 'TiffMeteringImage',
|
9202
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6300|6500|7M3|7RM2|
|
9296
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6300|6500|7M3|7RM2|7RM3A?|7SM2|9))\b/ and $$self{Software} !~ /^ILCE-9 (v5.0|v6.0)/',
|
9203
9297
|
Format => 'undef[2640]',
|
9204
9298
|
Notes => q{
|
9205
9299
|
13(?)-bit intensity data from 1320 (1200) metering segments, extracted as a
|
@@ -9411,7 +9505,7 @@ my %isoSetting2010 = (
|
|
9411
9505
|
WRITE_PROC => \&WriteEnciphered,
|
9412
9506
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
|
9413
9507
|
FORMAT => 'int8u',
|
9414
|
-
NOTES => 'Valid for the ILCE-1/7SM3.',
|
9508
|
+
NOTES => 'Valid for the ILCE-1/7SM3, ILME-FX3.',
|
9415
9509
|
FIRST_ENTRY => 0,
|
9416
9510
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
9417
9511
|
0x0000 => { Name => 'Tag9416_0000', PrintConv => 'sprintf("%3d",$val)', RawConv => '$$self{TagVersion} = $val' },
|
@@ -10038,17 +10132,40 @@ my %isoSetting2010 = (
|
|
10038
10132
|
0x3210 => { Name => 'Sony_rtmd_0x3210', Format => 'int8u', %hidUnk },
|
10039
10133
|
0x3219 => { Name => 'Sony_rtmd_0x3219', Format => 'int8u', %hidUnk },
|
10040
10134
|
0x321a => { Name => 'Sony_rtmd_0x321a', Format => 'int8u', %hidUnk },
|
10041
|
-
0x8000 => {
|
10135
|
+
0x8000 => { #forum12218
|
10136
|
+
Name => 'FNumber',
|
10137
|
+
Format => 'int16u',
|
10138
|
+
ValueConv => '2 ** (8-$val/8192)',
|
10139
|
+
PrintConv => 'Image::ExifTool::Exif::PrintFNumber($val)',
|
10140
|
+
},
|
10042
10141
|
0x8001 => { Name => 'Sony_rtmd_0x8001', Format => 'int16u', %hidUnk },
|
10142
|
+
0x8004 => { Name => 'Sony_rtmd_0x8004', Format => 'int16u', %hidUnk },
|
10143
|
+
0x8005 => { Name => 'Sony_rtmd_0x8005', Format => 'int16u', %hidUnk },
|
10144
|
+
0x800a => { Name => 'Sony_rtmd_0x800a', Format => 'int16u', %hidUnk },
|
10145
|
+
0x800b => { Name => 'Sony_rtmd_0x800b', Format => 'int16u', %hidUnk },
|
10043
10146
|
# 0x8100 - 16 bytes starting with 0x060e2b340401
|
10044
10147
|
0x8100 => { Name => 'Sony_rtmd_0x8100', Format => 'int8u', %hidUnk },
|
10045
10148
|
0x8101 => { Name => 'Sony_rtmd_0x8101', Format => 'int8u', %hidUnk }, # seen: 0,1
|
10046
|
-
|
10047
|
-
|
10048
|
-
|
10049
|
-
|
10050
|
-
|
10051
|
-
|
10149
|
+
0x8104 => { Name => 'Sony_rtmd_0x8104', Format => 'int16u', %hidUnk }, # seen: 35616
|
10150
|
+
0x8105 => { Name => 'Sony_rtmd_0x8105', Format => 'int16u', %hidUnk }, # seen: 20092
|
10151
|
+
0x8106 => { Name => 'Sony_rtmd_0x8106', Format => 'int32u', %hidUnk }, # seen: "25 1","24000 1001" frame rate?
|
10152
|
+
0x8109 => { #forum12218
|
10153
|
+
Name => 'ExposureTime',
|
10154
|
+
Format => 'rational64u',
|
10155
|
+
PrintConv => 'Image::ExifTool::Exif::PrintExposureTime($val)',
|
10156
|
+
},
|
10157
|
+
0x810a => { #PH (NC, based on samples from forum12218)
|
10158
|
+
Name => 'MasterGainAdjustment',
|
10159
|
+
Format => 'int16u',
|
10160
|
+
ValueConv => '$val / 100',
|
10161
|
+
PrintConv => 'sprintf("%.2f dB", $val)',
|
10162
|
+
},
|
10163
|
+
0x810b => { Name => 'ISO', Format => 'int16u' }, #forum12218
|
10164
|
+
0x810c => { #PH (NC, based on samples from forum12218)
|
10165
|
+
Name => 'ElectricalExtenderMagnification',
|
10166
|
+
Format => 'int16u',
|
10167
|
+
},
|
10168
|
+
0x810d => { Name => 'Sony_rtmd_0x810d', Format => 'int8u', %hidUnk }, # seen: 0,1
|
10052
10169
|
0x8115 => { Name => 'Sony_rtmd_0x8115', Format => 'int16u', %hidUnk }, # seen: 100
|
10053
10170
|
# 0x8300 - container for other tags in this format
|
10054
10171
|
0x8500 => {
|
@@ -10127,9 +10244,20 @@ my %isoSetting2010 = (
|
|
10127
10244
|
},
|
10128
10245
|
0xe000 => { Name => 'Sony_rtmd_0xe000', Format => 'int8u', %hidUnk }, # (16 bytes)
|
10129
10246
|
0xe300 => { Name => 'Sony_rtmd_0xe300', Format => 'int8u', %hidUnk }, # seen: 0,1
|
10130
|
-
0xe301 => { Name => 'Sony_rtmd_0xe301', Format => 'int32u', %hidUnk }, # seen: 100
|
10247
|
+
0xe301 => { Name => 'Sony_rtmd_0xe301', Format => 'int32u', %hidUnk }, # seen: 100,1600,12800
|
10131
10248
|
0xe302 => { Name => 'Sony_rtmd_0xe302', Format => 'int8u', %hidUnk }, # seen: 1
|
10132
|
-
0xe303 => {
|
10249
|
+
0xe303 => { #forum12218
|
10250
|
+
Name => 'WhiteBalance',
|
10251
|
+
Format => 'int8u',
|
10252
|
+
PrintConv => {
|
10253
|
+
1 => 'Incandescent',
|
10254
|
+
2 => 'Fluorescent',
|
10255
|
+
4 => 'Daylight',
|
10256
|
+
5 => 'Cloudy',
|
10257
|
+
6 => 'Custom', # ("Shade" uses this value too)
|
10258
|
+
255 => 'Preset',
|
10259
|
+
},
|
10260
|
+
},
|
10133
10261
|
0xe304 => {
|
10134
10262
|
Name => 'DateTime',
|
10135
10263
|
Groups => { 2 => 'Time' },
|
@@ -10137,6 +10265,19 @@ my %isoSetting2010 = (
|
|
10137
10265
|
ValueConv => 'my @a=unpack("x1H4H2H2H2H2H2",$val); "$a[0]:$a[1]:$a[2] $a[3]:$a[4]:$a[5]"',
|
10138
10266
|
PrintConv => '$self->ConvertDateTime($val)',
|
10139
10267
|
},
|
10268
|
+
0xe435 => { Name => 'Sony_rtmd_0xe435', Format => 'int32u', %hidUnk }, # seen: 2000
|
10269
|
+
0xe437 => { Name => 'Sony_rtmd_0xe437', Format => 'int32s', %hidUnk }, # seen: -3800 to -3400
|
10270
|
+
0xe43b => {
|
10271
|
+
Name => 'PitchRollYaw',
|
10272
|
+
Format => 'int16s',
|
10273
|
+
RawConv => 'substr($val, 8)',
|
10274
|
+
},
|
10275
|
+
0xe445 => { Name => 'Sony_rtmd_0xe445', Format => 'int32u', %hidUnk }, # seen: 2000
|
10276
|
+
0xe44b => {
|
10277
|
+
Name => 'Accelerometer', # (NC)
|
10278
|
+
Format => 'int16s',
|
10279
|
+
RawConv => 'substr($val, 8)',
|
10280
|
+
},
|
10140
10281
|
# f010 - 2048 bytes
|
10141
10282
|
# f020 - 543 bytes
|
10142
10283
|
);
|
@@ -10184,6 +10325,26 @@ my %isoSetting2010 = (
|
|
10184
10325
|
ValueConv => '"$val[0] $val[1]Z"',
|
10185
10326
|
PrintConv => '$self->ConvertDateTime($val)',
|
10186
10327
|
},
|
10328
|
+
GPSLatitude => {
|
10329
|
+
SubDoc => 1, # generate for all sub-documents
|
10330
|
+
Groups => { 2 => 'Location' },
|
10331
|
+
Require => {
|
10332
|
+
0 => 'Sony:GPSLatitude',
|
10333
|
+
1 => 'Sony:GPSLatitudeRef',
|
10334
|
+
},
|
10335
|
+
ValueConv => '$val[1] =~ /^S/i ? -$val[0] : $val[0]',
|
10336
|
+
PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")',
|
10337
|
+
},
|
10338
|
+
GPSLongitude => {
|
10339
|
+
SubDoc => 1, # generate for all sub-documents
|
10340
|
+
Groups => { 2 => 'Location' },
|
10341
|
+
Require => {
|
10342
|
+
0 => 'Sony:GPSLongitude',
|
10343
|
+
1 => 'Sony:GPSLongitudeRef',
|
10344
|
+
},
|
10345
|
+
ValueConv => '$val[1] =~ /^W/i ? -$val[0] : $val[0]',
|
10346
|
+
PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "E")',
|
10347
|
+
},
|
10187
10348
|
);
|
10188
10349
|
|
10189
10350
|
# add our composite tags
|