exiftool_vendored 12.64.1 → 12.65.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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.61';
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 konw the values)
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
- 0x089b => {
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[16]',
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
  );