exiftool_vendored 12.64.1 → 12.67.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 +46 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +2 -2
- data/bin/exiftool +30 -19
- data/bin/lib/Image/ExifTool/Apple.pm +14 -6
- data/bin/lib/Image/ExifTool/BigTIFF.pm +8 -1
- data/bin/lib/Image/ExifTool/Canon.pm +32 -12
- data/bin/lib/Image/ExifTool/FlashPix.pm +8 -2
- data/bin/lib/Image/ExifTool/FujiFilm.pm +4 -1
- data/bin/lib/Image/ExifTool/Geotag.pm +1 -1
- data/bin/lib/Image/ExifTool/Nikon.pm +570 -67
- data/bin/lib/Image/ExifTool/NikonCustom.pm +862 -61
- data/bin/lib/Image/ExifTool/PDF.pm +18 -8
- data/bin/lib/Image/ExifTool/PLUS.pm +19 -4
- data/bin/lib/Image/ExifTool/Pentax.pm +3 -1
- data/bin/lib/Image/ExifTool/QuickTime.pm +18 -10
- data/bin/lib/Image/ExifTool/Samsung.pm +227 -227
- data/bin/lib/Image/ExifTool/Sony.pm +128 -24
- data/bin/lib/Image/ExifTool/TagLookup.pm +4609 -4592
- data/bin/lib/Image/ExifTool/TagNames.pod +474 -26
- data/bin/lib/Image/ExifTool/Writer.pl +8 -2
- data/bin/lib/Image/ExifTool/XMP2.pl +1 -1
- data/bin/lib/Image/ExifTool.pm +120 -96
- data/bin/lib/Image/ExifTool.pod +41 -6
- data/bin/perl-Image-ExifTool.spec +1 -1
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +6 -188
@@ -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.62';
|
38
38
|
|
39
39
|
sub ProcessSRF($$$);
|
40
40
|
sub ProcessSR2($$$);
|
@@ -162,6 +162,7 @@ sub PrintInvLensSpec($;$$);
|
|
162
162
|
32877 => 'Sony E 15mm F1.4 G', #JR
|
163
163
|
32878 => 'Sony FE 20-70mm F4 G', #JR
|
164
164
|
32879 => 'Sony FE 50mm F1.4 GM', #JR
|
165
|
+
32884 => 'Sony FE 70-200mm F4 Macro G OSS II', #JR
|
165
166
|
|
166
167
|
# (comment this out so LensID will report the LensModel, which is more useful)
|
167
168
|
# 32952 => 'Metabones Canon EF Speed Booster Ultra', #JR (corresponds to 184, but 'Advanced' mode, LensMount reported as E-mount)
|
@@ -178,6 +179,10 @@ sub PrintInvLensSpec($;$$);
|
|
178
179
|
33082 => 'Sony FE 200-600mm F5.6-6.3 G OSS + 2X Teleconverter', #JR
|
179
180
|
33083 => 'Sony FE 600mm F4 GM OSS + 1.4X Teleconverter', #JR (NC)
|
180
181
|
33084 => 'Sony FE 600mm F4 GM OSS + 2X Teleconverter', #JR
|
182
|
+
33085 => 'Sony FE 70-200mm F2.8 GM OSS II + 1.4X Teleconverter', #JR
|
183
|
+
33086 => 'Sony FE 70-200mm F2.8 GM OSS II + 2X Teleconverter', #JR
|
184
|
+
33087 => 'Sony FE 70-200mm F4 Macro G OSS II + 1.4X Teleconverter', #JR
|
185
|
+
33088 => 'Sony FE 70-200mm F4 Macro G OSS II + 2X Teleconverter', #JR
|
181
186
|
|
182
187
|
49201 => 'Zeiss Touit 12mm F2.8', #JR (lens firmware Ver.02)
|
183
188
|
49202 => 'Zeiss Touit 32mm F1.8', #JR (lens firmware Ver.02)
|
@@ -1062,7 +1067,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1062
1067
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::Tag2010h' },
|
1063
1068
|
},{
|
1064
1069
|
Name => 'Tag2010i', # ?
|
1065
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|7M3|7RM3A?|7RM4A?|9|9M2)|DSC-(RX10M4|RX100M6|RX100M5A|RX100M7|HX95|HX99|RX0M2)|ZV-(1F?|E10))\b/',
|
1070
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7C|7M3|7RM3A?|7RM4A?|9|9M2)|DSC-(RX10M4|RX100M6|RX100M5A|RX100M7|HX95|HX99|RX0M2)|ZV-(1F?|1M2|E10))\b/',
|
1066
1071
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::Tag2010i' },
|
1067
1072
|
},{
|
1068
1073
|
Name => 'Tag_0x2010',
|
@@ -1513,6 +1518,10 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1513
1518
|
'1 2' => 'RAW + Fine',
|
1514
1519
|
'1 3' => 'RAW + Extra Fine',
|
1515
1520
|
'1 4' => 'RAW + Light', #JR
|
1521
|
+
'2 0' => 'S-size RAW',
|
1522
|
+
'3 0' => 'M-size RAW', # ILCE-1/7RM5, APS-C mode
|
1523
|
+
'3 2' => 'M-size RAW + Fine',
|
1524
|
+
'3 3' => 'M-size RAW + Extra Fine',
|
1516
1525
|
},
|
1517
1526
|
},
|
1518
1527
|
0x202f => { #JR (ILCE-7RM3)
|
@@ -1638,7 +1647,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1638
1647
|
# from mid-2015: ILCE-7RM2/7SM2/6300 and newer models use different offsets
|
1639
1648
|
{
|
1640
1649
|
Name => 'Tag9050a',
|
1641
|
-
Condition => '$$self{Model} !~ /^(DSC-|Stellar|ILCE-(1|6100|6300|6400|6500|6600|7C|7M3|7M4|7RM2|7RM3A?|7RM4A?|7RM5|7SM2|7SM3|9|9M2)|ILCA-99M2|ILME-FX3|ZV-)/',
|
1650
|
+
Condition => '$$self{Model} !~ /^(DSC-|Stellar|ILCE-(1|6100|6300|6400|6500|6600|6700|7C|7M3|7M4|7RM2|7RM3A?|7RM4A?|7RM5|7SM2|7SM3|9|9M2)|ILCA-99M2|ILME-FX3|ZV-)/',
|
1642
1651
|
SubDirectory => {
|
1643
1652
|
TagTable => 'Image::ExifTool::Sony::Tag9050a',
|
1644
1653
|
ByteOrder => 'LittleEndian',
|
@@ -1657,6 +1666,13 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1657
1666
|
TagTable => 'Image::ExifTool::Sony::Tag9050c',
|
1658
1667
|
ByteOrder => 'LittleEndian',
|
1659
1668
|
},
|
1669
|
+
},{
|
1670
|
+
Name => 'Tag9050d',
|
1671
|
+
Condition => '$$self{Model} =~ /^(ILCE-6700|ZV-E1)/',
|
1672
|
+
SubDirectory => {
|
1673
|
+
TagTable => 'Image::ExifTool::Sony::Tag9050d',
|
1674
|
+
ByteOrder => 'LittleEndian',
|
1675
|
+
},
|
1660
1676
|
},{
|
1661
1677
|
Name => 'Sony_0x9050',
|
1662
1678
|
%unknownCipherData,
|
@@ -1670,12 +1686,12 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1670
1686
|
# 0xd0 (e) H90, W650, W690: tag9400 decoding appears not valid/different
|
1671
1687
|
# 0x23 (e) for DSC-RX10/HX60V/HX350/HX400V/WX220/WX350, ILCE-7/7R/5000/6000, ILCA-68/77M2
|
1672
1688
|
# 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
|
1673
|
-
# 0x26 (e) for ILCE-6100/6400/6600/7M3/7RM3/9, DSC-RX0M2/RX10M4/RX100M5A/RX100M6/HX99
|
1674
|
-
# 0x28 (e) for ILCE-7RM4/9M2, DSC-RX100M7, ZV-1/E10
|
1689
|
+
# 0x26 (e) for ILCE-6100/6400/6600/7M3/7RM3/9, DSC-RX0M2/RX10M4/RX100M5A/RX100M6/HX95/HX99
|
1690
|
+
# 0x28 (e) for ILCE-7RM4/9M2, DSC-RX100M7, ZV-1/1F/1M2/E10
|
1675
1691
|
# 0x31 (e) for ILCE-1/7M4/7SM3, ILME-FX3
|
1676
1692
|
# 0x32 (e) for ILCE-7RM5, ILME-FX30
|
1677
|
-
# 0x33 (e) for ZV-E1
|
1678
|
-
# first byte decoded: 40, 204, 202, 27, 58, 62, 48, 215, 28, 106, 89 respectively
|
1693
|
+
# 0x33 (e) for ILCE-6700, ZV-E1
|
1694
|
+
# first byte decoded: 40, 204, 202, 27, 58, 62, 48, 215, 28, 106, 89, 63 respectively
|
1679
1695
|
{
|
1680
1696
|
Name => 'Tag9400a',
|
1681
1697
|
Condition => q{
|
@@ -1788,8 +1804,10 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1788
1804
|
# 0x1c 0x01 ILCE-9
|
1789
1805
|
# 0x1d 0x01 DSC-RX10M4
|
1790
1806
|
# 0x1e 0x01 ILCE-7M3/7RM3, DSC-RX100M5A/RX100M6
|
1791
|
-
# 0x1f 0x01 DSC-HX99
|
1807
|
+
# 0x1f 0x01 DSC-HX95/HX99
|
1792
1808
|
# 0x20 0x01 ILCE-6100/6400/6600/7RM4/9M2, ILCE-9 v5.00-v6.00, DSC-RX0M2/RX100M7
|
1809
|
+
# 0x21 0x01 ZV-1/1F/1M2/E10
|
1810
|
+
# 0x27 0x01 ZV-E1
|
1793
1811
|
# var var SLT-A58/A99V, HV, ILCA-68/77M2/99M2
|
1794
1812
|
# only valid when first byte 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x17, 0x19, 0x1a, 0x1c (enciphered 0x8a, 0x70, 0xb6, 0x69, 0x88, 0x20, 0x30, 0xd7, 0xbb, 0x92, 0x28)
|
1795
1813
|
# Condition => '$$self{DoubleCipher} ? $$valPt =~ /^[\x7e\x46\x1d\x18\x3a\x95\x24\x26\xd6]\x01/ : $$valPt =~ /^[\x8a\x70\xb6\x69\x88\x20\x30\xd7\xbb\x92\x28]\x01/',
|
@@ -1813,8 +1831,8 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1813
1831
|
# 13 0 9 2 2 DSC-QX10/QX100/RX100M2
|
1814
1832
|
# 15 0 35 2 2 ILCA-68/77M2, ILCE-5000/5100/6000/7/7R/7S/7M2/QX1, DSC-HX60V/HX350/HX400V/QX30/RX10/RX100M3/WX220/WX350
|
1815
1833
|
# 16 0 85 2 2 DSC-HX80/HX90V/WX500
|
1816
|
-
# 17 0 232 1 2 DSC-RX0/RX0M2/RX1RM2/RX10M2/RX10M3/RX10M4/RX100M4/RX100M5/RX100M5A/RX100M6/RX100M7/HX99, ILCE-6100/6300/6400/6500/6600/7C/7M3/7RM2/7RM3/7RM4/7SM2/9/9M2, ILCA-99M2, ZV-1
|
1817
|
-
# 18 0 20 0 164 ILCE-7SM3
|
1834
|
+
# 17 0 232 1 2 DSC-RX0/RX0M2/RX1RM2/RX10M2/RX10M3/RX10M4/RX100M4/RX100M5/RX100M5A/RX100M6/RX100M7/HX95/HX99, ILCE-6100/6300/6400/6500/6600/7C/7M3/7RM2/7RM3/7RM4/7SM2/9/9M2, ILCA-99M2, ZV-1/1F/1M2/E10
|
1835
|
+
# 18 0 20 0 164 ILCE-7SM3, ZV-E1
|
1818
1836
|
# other values for Panorama images and several other models
|
1819
1837
|
0x9404 => [{
|
1820
1838
|
Name => 'Tag9404a',
|
@@ -1848,7 +1866,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1848
1866
|
# 142 var (0x25 = 37 var enc.) DSC-HX80/HX90V/RX1RM2/RX10M2/RX10M3/RX100M4/WX500, ILCE-6300/7RM2/7SM2
|
1849
1867
|
# 144 var (0xe1 = 225 var enc.) DSC-RX100M5
|
1850
1868
|
# 145 var (0x76 = 118 var enc.) ILCA-99M2, ILCE-6500, DSC-RX0
|
1851
|
-
# 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
|
1869
|
+
# 163 var (0x8b = 139 var enc.) ILCE-6100/6400/6600/7C/7M3/7RM3/7RM4/9/9M2, DSC-RX0M2/RX10M4/RX100M5A/RX100M6/RX100M7/HX95/HX99, ZV-1/1F/1M2/E10
|
1852
1870
|
# July 2020: ILCE-7SM3 doesn't write this tag anymore, but writes 0x9416
|
1853
1871
|
0x9405 => [{
|
1854
1872
|
Name => 'Tag9405a',
|
@@ -1868,9 +1886,10 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1868
1886
|
Name => 'Tag9406',
|
1869
1887
|
# - first byte must be 0x01 or 0x02 (enciphered 0x01 or 0x08),
|
1870
1888
|
# or 0x03 (enc. 0x1b) for ILCE-6100/6300/6400/6500/6600/7M3/7RM2/7RM3/7RM4/7SM2/9/9M2, and ILCA-99M2
|
1889
|
+
# or 0x04 (enc. 0x40) for ILCE-6700, ZV-E1
|
1871
1890
|
# third byte must be 0x02 or 0x03 (enciphered 0x08 or 0x1b) - ref JR
|
1872
1891
|
# (applies to most SLT/ILCA and NEX/ILCE models, but no DSC models)
|
1873
|
-
Condition => '$$valPt =~ /^[\x01\x08\x1b].[\x08\x1b]/s',
|
1892
|
+
Condition => '$$valPt =~ /^[\x01\x08\x1b].[\x08\x1b]/s or $$valPt =~ /^[\x40]/s',
|
1874
1893
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::Tag9406' },
|
1875
1894
|
},{
|
1876
1895
|
Name => 'Sony_0x9406',
|
@@ -2071,6 +2090,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
2071
2090
|
390 => 'ILCE-7RM5', #IB
|
2072
2091
|
391 => 'ILME-FX30', #JR
|
2073
2092
|
393 => 'ZV-E1', #JR
|
2093
|
+
394 => 'ILCE-6700', #JR
|
2074
2094
|
395 => 'ZV-1M2', #JR
|
2075
2095
|
},
|
2076
2096
|
},
|
@@ -2104,7 +2124,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
2104
2124
|
FL => 'FL', # "moody finish with sharp contrast and calm coloring as well as the impressive sky and colors of the greens"
|
2105
2125
|
IN => 'IN', # "matte textures by suppressing the contrast and saturation"
|
2106
2126
|
SH => 'SH', # "bright, transparent, soft, and vivid mood"
|
2107
|
-
# (...also Custom Look 1-6, but don't
|
2127
|
+
# (...also Custom Look 1-6, but don't know the values)
|
2108
2128
|
},
|
2109
2129
|
},
|
2110
2130
|
0xb021 => { #2
|
@@ -2363,6 +2383,8 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
2363
2383
|
PrintConv => {
|
2364
2384
|
-32768 => 'Low',
|
2365
2385
|
-9 => '-9/3', #JR
|
2386
|
+
-8 => '-8/3', #JR
|
2387
|
+
-7 => '-7/3', #JR
|
2366
2388
|
-6 => '-6/3', #JR
|
2367
2389
|
-5 => '-5/3', #JR
|
2368
2390
|
-4 => '-4/3', #JR
|
@@ -8083,6 +8105,52 @@ my %isoSetting2010 = (
|
|
8083
8105
|
},
|
8084
8106
|
);
|
8085
8107
|
|
8108
|
+
%Image::ExifTool::Sony::Tag9050d = ( #JR
|
8109
|
+
PROCESS_PROC => \&ProcessEnciphered,
|
8110
|
+
WRITE_PROC => \&WriteEnciphered,
|
8111
|
+
CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
|
8112
|
+
FORMAT => 'int8u',
|
8113
|
+
NOTES => 'Valid for ILCE-6700/ZV-E1.',
|
8114
|
+
WRITABLE => 1,
|
8115
|
+
FIRST_ENTRY => 0,
|
8116
|
+
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
8117
|
+
0x000a => {
|
8118
|
+
Name => 'ShutterCount',
|
8119
|
+
# number of mechanical shutter actuations, does not increase during electronic shutter / Silent Shooting
|
8120
|
+
Condition => '$$self{Model} =~ /^(ILCE-6700)/',
|
8121
|
+
Format => 'int32u',
|
8122
|
+
Notes => 'total number of image exposures made by the camera',
|
8123
|
+
RawConv => '$val & 0x00ffffff',
|
8124
|
+
PrintConv => 'sprintf("%6d",$val)',
|
8125
|
+
PrintConvInv => '$val',
|
8126
|
+
},
|
8127
|
+
0x001a => { # appr. same value as Exif ExposureTime, but not valid in HDR-modes
|
8128
|
+
Name => 'SonyExposureTime',
|
8129
|
+
Format => 'int16u',
|
8130
|
+
ValueConv => '$val ? 2 ** (16 - $val/256) : 0',
|
8131
|
+
ValueConvInv => '$val ? int((16 - log($val) / log(2)) * 256 + 0.5) : 0',
|
8132
|
+
PrintConv => '$val ? Image::ExifTool::Exif::PrintExposureTime($val) : "Bulb"',
|
8133
|
+
PrintConvInv => 'lc($val) eq "bulb" ? 0 : Image::ExifTool::Exif::ConvertFraction($val)',
|
8134
|
+
},
|
8135
|
+
0x001c => { # appr. same value as Exif ExposureTime, but not valid in HDR-modes
|
8136
|
+
Name => 'SonyFNumber',
|
8137
|
+
Format => 'int16u',
|
8138
|
+
ValueConv => '2 ** (($val/256 - 16) / 2)',
|
8139
|
+
ValueConvInv => '(log($val)*2/log(2)+16)*256',
|
8140
|
+
PrintConv => 'sprintf("%.1f",$val)',
|
8141
|
+
PrintConvInv => '$val',
|
8142
|
+
},
|
8143
|
+
0x001f => {
|
8144
|
+
Name => 'ReleaseMode2',
|
8145
|
+
%releaseMode2,
|
8146
|
+
},
|
8147
|
+
0x0038 => {
|
8148
|
+
Name => 'InternalSerialNumber', #(NC)
|
8149
|
+
Format => 'int8u[6]',
|
8150
|
+
PrintConv => 'unpack "H*", pack "C*", split " ", $val',
|
8151
|
+
},
|
8152
|
+
);
|
8153
|
+
|
8086
8154
|
%Image::ExifTool::Sony::Tag9400a = ( #JR
|
8087
8155
|
PROCESS_PROC => \&ProcessEnciphered,
|
8088
8156
|
WRITE_PROC => \&WriteEnciphered,
|
@@ -8309,7 +8377,7 @@ my %isoSetting2010 = (
|
|
8309
8377
|
},
|
8310
8378
|
0x002a => [{
|
8311
8379
|
Name => 'Quality2',
|
8312
|
-
Condition => '$$self{Model} !~ /^(ILCE-(1|7M4|7RM5|7SM3)|ILME-(FX3|FX30)|ZV-E1)\b/',
|
8380
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|6700|7M4|7RM5|7SM3)|ILME-(FX3|FX30)|ZV-E1)\b/',
|
8313
8381
|
PrintConv => {
|
8314
8382
|
0 => 'JPEG',
|
8315
8383
|
1 => 'RAW',
|
@@ -8328,13 +8396,13 @@ my %isoSetting2010 = (
|
|
8328
8396
|
}],
|
8329
8397
|
0x0047 => {
|
8330
8398
|
Name => 'SonyImageHeight',
|
8331
|
-
Condition => '$$self{Model} !~ /^(ILCE-(1|7M4|7RM5|7SM3)|ILME-(FX3|FX30)|ZV-E1)\b/',
|
8399
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|6700|7M4|7RM5|7SM3)|ILME-(FX3|FX30)|ZV-E1)\b/',
|
8332
8400
|
Format => 'int16u',
|
8333
8401
|
PrintConv => '$val > 0 ? 8*$val : "n.a."',
|
8334
8402
|
},
|
8335
8403
|
0x0053 => {
|
8336
8404
|
Name => 'ModelReleaseYear',
|
8337
|
-
Condition => '$$self{Model} !~ /^(ILCE-(1|7M4|7RM5|7SM3)|ILME-(FX3|FX30)|ZV-E1)\b/',
|
8405
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|6700|7M4|7RM5|7SM3)|ILME-(FX3|FX30)|ZV-E1)\b/',
|
8338
8406
|
Format => 'int8u',
|
8339
8407
|
PrintConv => 'sprintf("20%.2d", $val)',
|
8340
8408
|
},
|
@@ -8453,7 +8521,8 @@ my %isoSetting2010 = (
|
|
8453
8521
|
14 => 'Tracking',
|
8454
8522
|
15 => 'Face Tracking',
|
8455
8523
|
20 => 'Animal Eye Tracking',
|
8456
|
-
# 21 => '???', # (ILCE-7SM3)
|
8524
|
+
# 21 => '???', # (ILCE-1/6700/7SM3, ILME-FX3, ZV-E1: tracking ... mostly human face ...)
|
8525
|
+
# 22 => '???', # (ILCE-6700, ZV-E1: tracking ...)
|
8457
8526
|
255 => 'Manual',
|
8458
8527
|
},
|
8459
8528
|
},
|
@@ -8924,19 +8993,29 @@ my %isoSetting2010 = (
|
|
8924
8993
|
FORMAT => 'int8u',
|
8925
8994
|
WRITABLE => 1,
|
8926
8995
|
FIRST_ENTRY => 0,
|
8996
|
+
DATAMEMBER => [ 0 ],
|
8927
8997
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
8928
8998
|
# 0x0000: 1 for SLT-A37/A57/A65/A77, NEX-5N/7/F3/VG20
|
8929
8999
|
# 2 for SLT-A58/99V, NEX-3N/5R/5T/6/VG30/VG900, ILCA-68/77M2, ILCE-3000/3500/7/7M2/7R/7S/5000/6000
|
8930
9000
|
# 3 for ILCA-99M2, ILCE-6100/6300/6400/6500/6600/7M3/7RM2/7RM3/7RM4/7SM2/9/9M2
|
9001
|
+
# 4 for ILCE-6700, ZV-E1
|
9002
|
+
0x0000 => { Name => 'Ver9406', Hidden => 1, RawConv => '$$self{Ver9406} = $val; $$self{OPTIONS}{Unknown}<2 ? undef : $val' },
|
8931
9003
|
# 0x0001+0x0002: Int16u, seen 580 - 770: similar to "BatteryUnknown" ??
|
8932
9004
|
# 0x0005: int8u, seen 73 - 117: maybe Fahrenheit? Higher than "AmbientTemperature", but same trend.
|
8933
|
-
0x0005 => {
|
9005
|
+
0x0005 => [{
|
8934
9006
|
Name => 'BatteryTemperature',
|
9007
|
+
Condition => '$$self{Ver9406} != 4',
|
8935
9008
|
ValueConv => '($val - 32) / 1.8', # convert to Celsius
|
8936
9009
|
ValueConvInv => '$val * 1.8 + 32',
|
8937
9010
|
PrintConv => 'sprintf("%.1f C",$val)',
|
8938
9011
|
PrintConvInv => '$val=~s/\s*C//; $val',
|
8939
|
-
},
|
9012
|
+
},{
|
9013
|
+
Name => 'BatteryLevel',
|
9014
|
+
Condition => '$$self{Ver9406} == 4',
|
9015
|
+
RawConv => '$val ? $val : undef', # only valid when not 0
|
9016
|
+
PrintConv => '"$val%"',
|
9017
|
+
PrintConvInv => '$val=~s/\s*\%//; $val',
|
9018
|
+
}],
|
8940
9019
|
# 0x0006: usually 0, seen non-zero values only for SLT-A99V, ILCA-77M2/99M2 and ILCE-7/7R/7RM2/9: BatteryLevel Grip ?
|
8941
9020
|
0x0006 => {
|
8942
9021
|
Name => 'BatteryLevelGrip1',
|
@@ -8947,6 +9026,7 @@ my %isoSetting2010 = (
|
|
8947
9026
|
# 0x0007: seen values from 8 - 105, decreasing in sequences of images: BatteryLevel
|
8948
9027
|
0x0007 => {
|
8949
9028
|
Name => 'BatteryLevel',
|
9029
|
+
Condition => '$$self{Ver9406} != 4',
|
8950
9030
|
PrintConv => '"$val%"',
|
8951
9031
|
PrintConvInv => '$val=~s/\s*\%//; $val',
|
8952
9032
|
},
|
@@ -9659,7 +9739,7 @@ my %isoSetting2010 = (
|
|
9659
9739
|
WRITE_PROC => \&WriteEnciphered,
|
9660
9740
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
|
9661
9741
|
FORMAT => 'int8u',
|
9662
|
-
NOTES => 'Valid for the ILCE-1/7M4/7RM5/7SM3, ILME-FX3.',
|
9742
|
+
NOTES => 'Valid for the ILCE-1/6700/7M4/7RM5/7SM3, ILME-FX3/FX30, ZV-E1.',
|
9663
9743
|
FIRST_ENTRY => 0,
|
9664
9744
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
9665
9745
|
0x0000 => { Name => 'Tag9416_0000', PrintConv => 'sprintf("%3d",$val)', RawConv => '$$self{TagVersion} = $val' },
|
@@ -9796,10 +9876,34 @@ my %isoSetting2010 = (
|
|
9796
9876
|
Condition => '$$self{Model} =~ /^(ILCE-7M4)/',
|
9797
9877
|
Format => 'int16s[16]',
|
9798
9878
|
},
|
9799
|
-
|
9879
|
+
0x089d => { # Note: 32 values for these newer models, and 32 non-zero values present for new lenses like SEL2470GM2 and SEL2470G
|
9800
9880
|
Name => 'VignettingCorrParams',
|
9801
|
-
Condition => '$$self{Model} =~ /^(ILCE-7RM5|ILME-FX30)\b/',
|
9802
|
-
Format => 'int16s[
|
9881
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6700|7RM5)|ILME-FX30|ZV-E1)\b/',
|
9882
|
+
Format => 'int16s[32]',
|
9883
|
+
},
|
9884
|
+
0x08b5 => {
|
9885
|
+
Name => 'APS-CSizeCapture',
|
9886
|
+
Condition => '$$self{Model} =~ /^(ILCE-(1|7SM3)|ILME-FX3)\b/',
|
9887
|
+
PrintConv => {
|
9888
|
+
0 => 'Off',
|
9889
|
+
1 => 'On',
|
9890
|
+
},
|
9891
|
+
},
|
9892
|
+
0x08b7 => {
|
9893
|
+
Name => 'APS-CSizeCapture',
|
9894
|
+
Condition => '$$self{Model} =~ /^(ILCE-7M4)/',
|
9895
|
+
PrintConv => {
|
9896
|
+
0 => 'Off',
|
9897
|
+
1 => 'On',
|
9898
|
+
},
|
9899
|
+
},
|
9900
|
+
0x08e5 => {
|
9901
|
+
Name => 'APS-CSizeCapture',
|
9902
|
+
Condition => '$$self{Model} =~ /^(ILCE-7RM5|ZV-E1)\b/',
|
9903
|
+
PrintConv => {
|
9904
|
+
0 => 'Off',
|
9905
|
+
1 => 'On',
|
9906
|
+
},
|
9803
9907
|
},
|
9804
9908
|
0x0914 => {
|
9805
9909
|
Name => 'ChromaticAberrationCorrParams',
|
@@ -9813,7 +9917,7 @@ my %isoSetting2010 = (
|
|
9813
9917
|
},
|
9814
9918
|
0x0945 => {
|
9815
9919
|
Name => 'ChromaticAberrationCorrParams',
|
9816
|
-
Condition => '$$self{Model} =~ /^(ILCE-7RM5|ILME-FX30)\b/',
|
9920
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6700|7RM5)|ILME-FX30|ZV-E1)\b/',
|
9817
9921
|
Format => 'int16s[32]',
|
9818
9922
|
},
|
9819
9923
|
);
|