exiftool-vendored.pl 12.65.0 → 12.69.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.
- package/bin/Changes +60 -2
- package/bin/MANIFEST +5 -0
- package/bin/META.json +1 -1
- package/bin/META.yml +1 -1
- package/bin/README +7 -7
- package/bin/exiftool +30 -21
- package/bin/lib/Image/ExifTool/Apple.pm +6 -2
- package/bin/lib/Image/ExifTool/Canon.pm +55 -13
- package/bin/lib/Image/ExifTool/DNG.pm +25 -2
- package/bin/lib/Image/ExifTool/Exif.pm +95 -13
- package/bin/lib/Image/ExifTool/FujiFilm.pm +20 -1
- package/bin/lib/Image/ExifTool/Geotag.pm +17 -12
- package/bin/lib/Image/ExifTool/Nikon.pm +47 -11
- package/bin/lib/Image/ExifTool/PLUS.pm +19 -4
- package/bin/lib/Image/ExifTool/PNG.pm +14 -7
- package/bin/lib/Image/ExifTool/Panasonic.pm +13 -9
- package/bin/lib/Image/ExifTool/Pentax.pm +8 -1
- package/bin/lib/Image/ExifTool/PhotoMechanic.pm +2 -1
- package/bin/lib/Image/ExifTool/QuickTime.pm +62 -52
- package/bin/lib/Image/ExifTool/README +7 -3
- package/bin/lib/Image/ExifTool/RIFF.pm +8 -2
- package/bin/lib/Image/ExifTool/Sony.pm +66 -21
- package/bin/lib/Image/ExifTool/TagLookup.pm +6881 -6709
- package/bin/lib/Image/ExifTool/TagNames.pod +454 -37
- package/bin/lib/Image/ExifTool/Validate.pm +18 -16
- package/bin/lib/Image/ExifTool/WriteCanonRaw.pl +2 -2
- package/bin/lib/Image/ExifTool/WriteExif.pl +14 -4
- package/bin/lib/Image/ExifTool/WriteQuickTime.pl +2 -0
- package/bin/lib/Image/ExifTool/WriteRIFF.pl +22 -3
- package/bin/lib/Image/ExifTool/Writer.pl +53 -11
- package/bin/lib/Image/ExifTool/XISF.pm +185 -0
- package/bin/lib/Image/ExifTool/XMP.pm +67 -2
- package/bin/lib/Image/ExifTool/XMP2.pl +36 -1
- package/bin/lib/Image/ExifTool.pm +45 -20
- package/bin/lib/Image/ExifTool.pod +20 -10
- package/bin/perl-Image-ExifTool.spec +6 -6
- package/bin/pp_build_exe.args +5 -4
- package/package.json +2 -2
|
@@ -48,7 +48,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
|
48
48
|
use Image::ExifTool::Exif;
|
|
49
49
|
use Image::ExifTool::GPS;
|
|
50
50
|
|
|
51
|
-
$VERSION = '2.
|
|
51
|
+
$VERSION = '2.88';
|
|
52
52
|
|
|
53
53
|
sub ProcessMOV($$;$);
|
|
54
54
|
sub ProcessKeys($$$);
|
|
@@ -2393,6 +2393,7 @@ my %isImageData = ( av01 => 1, avc1 => 1, hvc1 => 1, lhv1 => 1, hvt1 => 1 );
|
|
|
2393
2393
|
Name => 'Audible_tags',
|
|
2394
2394
|
SubDirectory => { TagTable => 'Image::ExifTool::Audible::tags' },
|
|
2395
2395
|
},
|
|
2396
|
+
# ludt - directory containing 'tlou' tag
|
|
2396
2397
|
);
|
|
2397
2398
|
|
|
2398
2399
|
# Unknown information stored in HTC One (M8) videos - PH
|
|
@@ -2903,65 +2904,69 @@ my %isImageData = ( av01 => 1, avc1 => 1, hvc1 => 1, lhv1 => 1, hvt1 => 1 );
|
|
|
2903
2904
|
Name => 'ColorPrimaries',
|
|
2904
2905
|
Format => 'int16u',
|
|
2905
2906
|
PrintConv => {
|
|
2906
|
-
|
|
2907
|
-
|
|
2908
|
-
|
|
2909
|
-
|
|
2910
|
-
|
|
2911
|
-
|
|
2912
|
-
|
|
2913
|
-
|
|
2914
|
-
|
|
2915
|
-
|
|
2916
|
-
|
|
2917
|
-
|
|
2918
|
-
|
|
2907
|
+
1 => 'BT.709',
|
|
2908
|
+
2 => 'Unspecified',
|
|
2909
|
+
4 => 'BT.470 System M (historical)',
|
|
2910
|
+
5 => 'BT.470 System B, G (historical)',
|
|
2911
|
+
6 => 'BT.601',
|
|
2912
|
+
7 => 'SMPTE 240',
|
|
2913
|
+
8 => 'Generic film (color filters using illuminant C)',
|
|
2914
|
+
9 => 'BT.2020, BT.2100',
|
|
2915
|
+
10 => 'SMPTE 428 (CIE 1931 XYZ)', #forum14766
|
|
2916
|
+
11 => 'SMPTE RP 431-2',
|
|
2917
|
+
12 => 'SMPTE EG 432-1',
|
|
2918
|
+
22 => 'EBU Tech. 3213-E',
|
|
2919
|
+
},
|
|
2919
2920
|
},
|
|
2920
2921
|
6 => {
|
|
2921
2922
|
Name => 'TransferCharacteristics',
|
|
2922
2923
|
Format => 'int16u',
|
|
2923
2924
|
PrintConv => {
|
|
2924
|
-
|
|
2925
|
-
|
|
2926
|
-
|
|
2927
|
-
|
|
2928
|
-
|
|
2929
|
-
|
|
2930
|
-
|
|
2931
|
-
|
|
2932
|
-
|
|
2933
|
-
|
|
2934
|
-
|
|
2935
|
-
|
|
2936
|
-
|
|
2937
|
-
|
|
2938
|
-
|
|
2939
|
-
|
|
2940
|
-
|
|
2941
|
-
|
|
2942
|
-
|
|
2943
|
-
|
|
2925
|
+
0 => 'For future use (0)',
|
|
2926
|
+
1 => 'BT.709',
|
|
2927
|
+
2 => 'Unspecified',
|
|
2928
|
+
3 => 'For future use (3)',
|
|
2929
|
+
4 => 'BT.470 System M (historical)', # Gamma 2.2? (ref forum14960)
|
|
2930
|
+
5 => 'BT.470 System B, G (historical)', # Gamma 2.8? (ref forum14960)
|
|
2931
|
+
6 => 'BT.601',
|
|
2932
|
+
7 => 'SMPTE 240 M',
|
|
2933
|
+
8 => 'Linear',
|
|
2934
|
+
9 => 'Logarithmic (100 : 1 range)',
|
|
2935
|
+
10 => 'Logarithmic (100 * Sqrt(10) : 1 range)',
|
|
2936
|
+
11 => 'IEC 61966-2-4',
|
|
2937
|
+
12 => 'BT.1361',
|
|
2938
|
+
13 => 'sRGB or sYCC',
|
|
2939
|
+
14 => 'BT.2020 10-bit systems',
|
|
2940
|
+
15 => 'BT.2020 12-bit systems',
|
|
2941
|
+
16 => 'SMPTE ST 2084, ITU BT.2100 PQ',
|
|
2942
|
+
17 => 'SMPTE ST 428',
|
|
2943
|
+
18 => 'BT.2100 HLG, ARIB STD-B67',
|
|
2944
|
+
},
|
|
2944
2945
|
},
|
|
2945
2946
|
8 => {
|
|
2946
2947
|
Name => 'MatrixCoefficients',
|
|
2947
2948
|
Format => 'int16u',
|
|
2948
2949
|
PrintConv => {
|
|
2949
|
-
|
|
2950
|
-
|
|
2951
|
-
|
|
2952
|
-
|
|
2953
|
-
|
|
2954
|
-
|
|
2955
|
-
|
|
2956
|
-
|
|
2957
|
-
|
|
2958
|
-
|
|
2959
|
-
|
|
2960
|
-
|
|
2961
|
-
|
|
2962
|
-
|
|
2963
|
-
|
|
2964
|
-
|
|
2950
|
+
0 => 'Identity matrix',
|
|
2951
|
+
1 => 'BT.709',
|
|
2952
|
+
2 => 'Unspecified',
|
|
2953
|
+
3 => 'For future use (3)',
|
|
2954
|
+
4 => 'US FCC 73.628',
|
|
2955
|
+
5 => 'BT.470 System B, G (historical)',
|
|
2956
|
+
6 => 'BT.601',
|
|
2957
|
+
7 => 'SMPTE 240 M',
|
|
2958
|
+
8 => 'YCgCo',
|
|
2959
|
+
9 => 'BT.2020 non-constant luminance, BT.2100 YCbCr',
|
|
2960
|
+
10 => 'BT.2020 constant luminance',
|
|
2961
|
+
11 => 'SMPTE ST 2085 YDzDx',
|
|
2962
|
+
12 => 'Chromaticity-derived non-constant luminance',
|
|
2963
|
+
13 => 'Chromaticity-derived constant luminance',
|
|
2964
|
+
14 => 'BT.2100 ICtCp',
|
|
2965
|
+
},
|
|
2966
|
+
},
|
|
2967
|
+
10 => {
|
|
2968
|
+
Name => 'VideoFullRangeFlag',
|
|
2969
|
+
Mask => 0x80,
|
|
2965
2970
|
},
|
|
2966
2971
|
);
|
|
2967
2972
|
|
|
@@ -6399,6 +6404,8 @@ my %isImageData = ( av01 => 1, avc1 => 1, hvc1 => 1, lhv1 => 1, hvt1 => 1 );
|
|
|
6399
6404
|
Writable => 'int8s', #27
|
|
6400
6405
|
PrintConv => { 0 => 'No', 1 => 'Yes' },
|
|
6401
6406
|
},
|
|
6407
|
+
ownr => 'Owner', #PH (obscure) (ref ChrisAdan private communication)
|
|
6408
|
+
'xid ' => 'ISRC', #PH
|
|
6402
6409
|
);
|
|
6403
6410
|
|
|
6404
6411
|
# tag decoded from timed face records
|
|
@@ -7663,7 +7670,7 @@ my %isImageData = ( av01 => 1, avc1 => 1, hvc1 => 1, lhv1 => 1, hvt1 => 1 );
|
|
|
7663
7670
|
SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::Rights' },
|
|
7664
7671
|
},
|
|
7665
7672
|
name => { Name => 'UserName', Groups => { 2 => 'Author' } },
|
|
7666
|
-
# chtb
|
|
7673
|
+
# chtb - seen 632 bytes of random data
|
|
7667
7674
|
# priv - private data
|
|
7668
7675
|
# sign
|
|
7669
7676
|
# adkm - Adobe DRM key management system (ref http://download.macromedia.com/f4v/video_file_format_spec_v10_1.pdf)
|
|
@@ -7686,6 +7693,9 @@ my %isImageData = ( av01 => 1, avc1 => 1, hvc1 => 1, lhv1 => 1, hvt1 => 1 );
|
|
|
7686
7693
|
},
|
|
7687
7694
|
medi => 'MediaFlags', #PH (?)
|
|
7688
7695
|
mode => 'ModeFlags', #PH (?) 0x04 is HD flag (https://compilr.com/heksesang/requiem-mac/UnDrm.java)
|
|
7696
|
+
# sing - seen 4 zeros
|
|
7697
|
+
# hi32 - seen "00 00 00 04"
|
|
7698
|
+
|
|
7689
7699
|
);
|
|
7690
7700
|
|
|
7691
7701
|
# MP4 hint sample description box (ref 5)
|
|
@@ -9492,7 +9502,7 @@ sub ProcessMOV($$;$)
|
|
|
9492
9502
|
$et->HandleTag($tagTablePtr, "$tag-offset", $raf->Tell()) if $$tagTablePtr{"$tag-offset"};
|
|
9493
9503
|
}
|
|
9494
9504
|
# stop processing at mdat/idat if -fast2 is used
|
|
9495
|
-
last if $fast > 1 and ($tag eq 'mdat' or $tag eq 'idat');
|
|
9505
|
+
last if $fast > 1 and ($tag eq 'mdat' or ($tag eq 'idat' and $$et{FileType} ne 'HEIC'));
|
|
9496
9506
|
# load values only if associated with a tag (or verbose) and not too big
|
|
9497
9507
|
if ($size > 0x2000000) { # start to get worried above 32 MB
|
|
9498
9508
|
# check for RIFF trailer (written by Auto-Vox dashcam)
|
|
@@ -343,9 +343,10 @@ numerical, and generated automatically otherwise.
|
|
|
343
343
|
but applied automatically to individual tags. Value specifies
|
|
344
344
|
pattern for split, or 1 for default pattern ',?\\s+'.
|
|
345
345
|
|
|
346
|
-
'Avoid' - avoid creating this tag if possible.
|
|
347
|
-
effective if another tag exists with the same
|
|
348
|
-
this flag also sets the default Priority to 0
|
|
346
|
+
'Avoid' - avoid creating this tag when writing if possible.
|
|
347
|
+
This is only effective if another tag exists with the same
|
|
348
|
+
name. Setting this flag also sets the default Priority to 0
|
|
349
|
+
for this tag.
|
|
349
350
|
|
|
350
351
|
'Binary' - set to 1 for binary data. This has the same effect
|
|
351
352
|
as setting ValueConv to '\$val', but it it a bit cleaner and
|
|
@@ -917,6 +918,9 @@ numerical, and generated automatically otherwise.
|
|
|
917
918
|
FixedSize : [EXIF only] Hack to ignore value size and use this instead.
|
|
918
919
|
Only valid if Format is also defined.
|
|
919
920
|
|
|
921
|
+
TruncateOK : [EXIF only] Hack to demote a truncated value in an IFD to a
|
|
922
|
+
minor error.
|
|
923
|
+
|
|
920
924
|
Struct : [XMP tags only] Reference to structure hash for structured XMP
|
|
921
925
|
tags. See "STRUCTURES" section below for more details. (For
|
|
922
926
|
backward compatibility, this may be a name to an entry in
|
|
@@ -30,7 +30,7 @@ use strict;
|
|
|
30
30
|
use vars qw($VERSION $AUTOLOAD);
|
|
31
31
|
use Image::ExifTool qw(:DataAccess :Utils);
|
|
32
32
|
|
|
33
|
-
$VERSION = '1.
|
|
33
|
+
$VERSION = '1.66';
|
|
34
34
|
|
|
35
35
|
sub ConvertTimecode($);
|
|
36
36
|
sub ProcessSGLT($$$);
|
|
@@ -555,7 +555,7 @@ my %code2charset = (
|
|
|
555
555
|
},
|
|
556
556
|
},{ # (WebP) - have also seen with "Exif\0\0" header - PH
|
|
557
557
|
Name => 'EXIF',
|
|
558
|
-
Condition => '$$valPt =~ /^Exif\0\0(II\x2a\0|MM\0\x2a)/ and $self->Warn("Improper EXIF header",1)',
|
|
558
|
+
Condition => '$$valPt =~ /^Exif\0\0(II\x2a\0|MM\0\x2a)/ and ($self->Warn("Improper EXIF header",1) or 1)',
|
|
559
559
|
SubDirectory => {
|
|
560
560
|
TagTable => 'Image::ExifTool::Exif::Main',
|
|
561
561
|
ProcessProc => \&Image::ExifTool::ProcessTIFF,
|
|
@@ -570,6 +570,12 @@ my %code2charset = (
|
|
|
570
570
|
Notes => 'WebP files',
|
|
571
571
|
SubDirectory => { TagTable => 'Image::ExifTool::XMP::Main' },
|
|
572
572
|
},
|
|
573
|
+
"XMP\0" => {
|
|
574
|
+
Name => 'XMP',
|
|
575
|
+
Notes => 'incorrectly written WebP files',
|
|
576
|
+
Condition => '$self->Warn("Incorrect XMP tag ID", 1) or 1',
|
|
577
|
+
SubDirectory => { TagTable => 'Image::ExifTool::XMP::Main' },
|
|
578
|
+
},
|
|
573
579
|
ICCP => { #14 (WebP)
|
|
574
580
|
Name => 'ICC_Profile',
|
|
575
581
|
Notes => 'WebP files',
|
|
@@ -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.63';
|
|
38
38
|
|
|
39
39
|
sub ProcessSRF($$$);
|
|
40
40
|
sub ProcessSR2($$$);
|
|
@@ -163,6 +163,7 @@ sub PrintInvLensSpec($;$$);
|
|
|
163
163
|
32878 => 'Sony FE 20-70mm F4 G', #JR
|
|
164
164
|
32879 => 'Sony FE 50mm F1.4 GM', #JR
|
|
165
165
|
32884 => 'Sony FE 70-200mm F4 Macro G OSS II', #JR
|
|
166
|
+
32885 => 'Sony FE 16-35mm F2.8 GM II', #JR
|
|
166
167
|
|
|
167
168
|
# (comment this out so LensID will report the LensModel, which is more useful)
|
|
168
169
|
# 32952 => 'Metabones Canon EF Speed Booster Ultra', #JR (corresponds to 184, but 'Advanced' mode, LensMount reported as E-mount)
|
|
@@ -219,6 +220,9 @@ sub PrintInvLensSpec($;$$);
|
|
|
219
220
|
49473 => 'Tokina atx-m 85mm F1.8 FE or Viltrox lens', #JR
|
|
220
221
|
49473.1 => 'Viltrox 23mm F1.4 E', #JR
|
|
221
222
|
49473.2 => 'Viltrox 56mm F1.4 E', #JR
|
|
223
|
+
49474 => 'Tamron 70-180mm F2.8 Di III VXD G2 or Viltrox lens', #JR (Model A065)
|
|
224
|
+
49474.1 => 'Viltrox 23mm F1.4 E', #JR
|
|
225
|
+
49474.2 => 'Viltrox 16mm F1.8 FE', #JR
|
|
222
226
|
49712 => 'Tokina FiRIN 20mm F2 FE AF', # (firmware Ver.01)
|
|
223
227
|
49713 => 'Tokina FiRIN 100mm F2.8 FE MACRO', # (firmware Ver.01)
|
|
224
228
|
49714 => 'Tokina atx-m 11-18mm F2.8 E', #JR
|
|
@@ -270,6 +274,7 @@ sub PrintInvLensSpec($;$$);
|
|
|
270
274
|
50539 => 'Sigma 50mm F1.4 DG DN | A', #JR (023)
|
|
271
275
|
50540 => 'Sigma 14mm F1.4 DG DN | A', #JR (023)
|
|
272
276
|
50544 => 'Sigma 23mm F1.4 DC DN | C', #JR (023)
|
|
277
|
+
50547 => 'Sigma 10-18mm F2.8 DC DN | C', #JR (023)
|
|
273
278
|
|
|
274
279
|
50992 => 'Voigtlander SUPER WIDE-HELIAR 15mm F4.5 III', #JR
|
|
275
280
|
50993 => 'Voigtlander HELIAR-HYPER WIDE 10mm F5.6', #IB
|
|
@@ -1304,7 +1309,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1304
1309
|
Name => 'AFPointSelected',
|
|
1305
1310
|
# non-zero only when AFAreaMode is 'Zone', and 'Expanded-Flexible-Spot' for ILCE-6300/7RM2/7SM2
|
|
1306
1311
|
# each Zone has 3x3 AF Areas --> 9 positions within 5x5 total Contrast AF Areas
|
|
1307
|
-
Condition => '$$self{Model} =~ /^(NEX-|ILCE-|ILME-)/',
|
|
1312
|
+
Condition => '$$self{Model} =~ /^(NEX-|ILCE-|ILME-|ZV-|DSC-RX)/',
|
|
1308
1313
|
Notes => 'NEX and ILCE models',
|
|
1309
1314
|
Writable => 'int8u',
|
|
1310
1315
|
PrintConv => {
|
|
@@ -1326,7 +1331,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1326
1331
|
# but not used by ILCA-99M2 anymore ... ?
|
|
1327
1332
|
0x2020 => [{
|
|
1328
1333
|
Name => 'AFPointsUsed',
|
|
1329
|
-
Condition => '$$self{Model} !~ /^(ILCA-|DSC-)/', # (doesn't seem to apply to DSC-models)
|
|
1334
|
+
Condition => '$$self{Model} !~ /^(ILCA-|DSC-|ZV-)/', # (doesn't seem to apply to DSC-models)
|
|
1330
1335
|
Notes => 'SLT models, or NEX/ILCE with A-mount lenses',
|
|
1331
1336
|
BitsPerWord => 8,
|
|
1332
1337
|
BitsTotal => 80,
|
|
@@ -1618,7 +1623,16 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1618
1623
|
65535 => 'n/a',
|
|
1619
1624
|
},
|
|
1620
1625
|
},
|
|
1621
|
-
# 0x203a -
|
|
1626
|
+
# 0x203a - 0x2044: seen from October 2021 for ILCE-7M4 and newer
|
|
1627
|
+
# 0x203a - int8u[32]
|
|
1628
|
+
# 0x203c - undef[26] only non-zero data in Continuous drive mode
|
|
1629
|
+
# 0x203d - int32u
|
|
1630
|
+
# 0x203e - int8u: seen 0, 1, 2, 3, 4 and 255: possibly nr. of detected/tracked faces?
|
|
1631
|
+
# 0x203f - int16u
|
|
1632
|
+
# 0x2041 - int8u
|
|
1633
|
+
# 0x2044 - int32u[2] in ILCE-6700/7CM2/7CR, ILCE-7M4 v1.10, ILCE-7RM5 JPG and ZV-E1:
|
|
1634
|
+
# ARW: seen 143360 53248 and 139264 53248
|
|
1635
|
+
# JPG: [~filesize] 53248
|
|
1622
1636
|
0x3000 => {
|
|
1623
1637
|
Name => 'ShotInfo',
|
|
1624
1638
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::ShotInfo' },
|
|
@@ -1654,7 +1668,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1654
1668
|
},
|
|
1655
1669
|
},{
|
|
1656
1670
|
Name => 'Tag9050b',
|
|
1657
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6100|6300|6400|6500|6600|7C|7M3|7RM2|7RM3A?|7RM4A?|7SM2|9|9M2)|ILCA-99M2|ZV-E10)/',
|
|
1671
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6100|6300|6400|6500|6600|7C|7M3|7RM2|7RM3A?|7RM4A?|7SM2|9|9M2)|ILCA-99M2|ZV-E10)\b/',
|
|
1658
1672
|
SubDirectory => {
|
|
1659
1673
|
TagTable => 'Image::ExifTool::Sony::Tag9050b',
|
|
1660
1674
|
ByteOrder => 'LittleEndian',
|
|
@@ -1668,7 +1682,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1668
1682
|
},
|
|
1669
1683
|
},{
|
|
1670
1684
|
Name => 'Tag9050d',
|
|
1671
|
-
Condition => '$$self{Model} =~ /^(ILCE-6700|ZV-E1)/',
|
|
1685
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6700|7CM2|7CR)|ZV-E1)\b/',
|
|
1672
1686
|
SubDirectory => {
|
|
1673
1687
|
TagTable => 'Image::ExifTool::Sony::Tag9050d',
|
|
1674
1688
|
ByteOrder => 'LittleEndian',
|
|
@@ -1690,7 +1704,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1690
1704
|
# 0x28 (e) for ILCE-7RM4/9M2, DSC-RX100M7, ZV-1/1F/1M2/E10
|
|
1691
1705
|
# 0x31 (e) for ILCE-1/7M4/7SM3, ILME-FX3
|
|
1692
1706
|
# 0x32 (e) for ILCE-7RM5, ILME-FX30
|
|
1693
|
-
# 0x33 (e) for ILCE-6700, ZV-E1
|
|
1707
|
+
# 0x33 (e) for ILCE-6700, 7CM2, 7CR, ZV-E1
|
|
1694
1708
|
# first byte decoded: 40, 204, 202, 27, 58, 62, 48, 215, 28, 106, 89, 63 respectively
|
|
1695
1709
|
{
|
|
1696
1710
|
Name => 'Tag9400a',
|
|
@@ -1807,7 +1821,11 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1807
1821
|
# 0x1f 0x01 DSC-HX95/HX99
|
|
1808
1822
|
# 0x20 0x01 ILCE-6100/6400/6600/7RM4/9M2, ILCE-9 v5.00-v6.00, DSC-RX0M2/RX100M7
|
|
1809
1823
|
# 0x21 0x01 ZV-1/1F/1M2/E10
|
|
1810
|
-
#
|
|
1824
|
+
# 0x22 (34) ILCE-7SM3, ILME-FX3
|
|
1825
|
+
# 0x24 (36) ILCE-1
|
|
1826
|
+
# 0x25 (37) ILCE-7M4
|
|
1827
|
+
# 0x26 (38) ILCE-7RM5, ILME-FX30
|
|
1828
|
+
# 0x27 (39) ILCE-6700/7CM2/7CR, ZV-E1
|
|
1811
1829
|
# var var SLT-A58/A99V, HV, ILCA-68/77M2/99M2
|
|
1812
1830
|
# 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)
|
|
1813
1831
|
# 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/',
|
|
@@ -2092,6 +2110,8 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
2092
2110
|
393 => 'ZV-E1', #JR
|
|
2093
2111
|
394 => 'ILCE-6700', #JR
|
|
2094
2112
|
395 => 'ZV-1M2', #JR
|
|
2113
|
+
396 => 'ILCE-7CR', #JR
|
|
2114
|
+
397 => 'ILCE-7CM2', #JR
|
|
2095
2115
|
},
|
|
2096
2116
|
},
|
|
2097
2117
|
0xb020 => { #2
|
|
@@ -7896,7 +7916,7 @@ my %isoSetting2010 = (
|
|
|
7896
7916
|
},
|
|
7897
7917
|
0x01eb => {
|
|
7898
7918
|
Name => 'APS-CSizeCapture',
|
|
7899
|
-
Condition => '$$self{Model} =~ /^ILCE-(7RM4A?|7C|9M2)
|
|
7919
|
+
Condition => '$$self{Model} =~ /^ILCE-(7RM4A?|7C|9M2)/ or $$self{Software} =~ /^ILCE-9 (v5.0|v6.0)/',
|
|
7900
7920
|
PrintConv => {
|
|
7901
7921
|
0 => 'Off',
|
|
7902
7922
|
1 => 'On',
|
|
@@ -8110,14 +8130,14 @@ my %isoSetting2010 = (
|
|
|
8110
8130
|
WRITE_PROC => \&WriteEnciphered,
|
|
8111
8131
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
|
|
8112
8132
|
FORMAT => 'int8u',
|
|
8113
|
-
NOTES => 'Valid for ILCE-6700/ZV-E1.',
|
|
8133
|
+
NOTES => 'Valid for ILCE-6700/7CM2/7CR/ZV-E1.',
|
|
8114
8134
|
WRITABLE => 1,
|
|
8115
8135
|
FIRST_ENTRY => 0,
|
|
8116
8136
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
|
8117
8137
|
0x000a => {
|
|
8118
8138
|
Name => 'ShutterCount',
|
|
8119
8139
|
# number of mechanical shutter actuations, does not increase during electronic shutter / Silent Shooting
|
|
8120
|
-
Condition => '$$self{Model} =~ /^(ILCE-6700)/',
|
|
8140
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6700|7CM2|7CR))/',
|
|
8121
8141
|
Format => 'int32u',
|
|
8122
8142
|
Notes => 'total number of image exposures made by the camera',
|
|
8123
8143
|
RawConv => '$val & 0x00ffffff',
|
|
@@ -8377,7 +8397,7 @@ my %isoSetting2010 = (
|
|
|
8377
8397
|
},
|
|
8378
8398
|
0x002a => [{
|
|
8379
8399
|
Name => 'Quality2',
|
|
8380
|
-
Condition => '$$self{Model} !~ /^(ILCE-(1|6700|7M4|7RM5|7SM3)|ILME-(FX3|FX30)|ZV-E1)\b/',
|
|
8400
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|6700|7CM2|7CR|7M4|7RM5|7SM3)|ILME-(FX3|FX30)|ZV-E1)\b/',
|
|
8381
8401
|
PrintConv => {
|
|
8382
8402
|
0 => 'JPEG',
|
|
8383
8403
|
1 => 'RAW',
|
|
@@ -8402,7 +8422,7 @@ my %isoSetting2010 = (
|
|
|
8402
8422
|
},
|
|
8403
8423
|
0x0053 => {
|
|
8404
8424
|
Name => 'ModelReleaseYear',
|
|
8405
|
-
Condition => '$$self{Model} !~ /^(ILCE-(1|6700|7M4|7RM5|7SM3)|ILME-(FX3|FX30)|ZV-E1)\b/',
|
|
8425
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|6700|7CM2|7CR|7M4|7RM5|7SM3)|ILME-(FX3|FX30)|ZV-E1)\b/',
|
|
8406
8426
|
Format => 'int8u',
|
|
8407
8427
|
PrintConv => 'sprintf("20%.2d", $val)',
|
|
8408
8428
|
},
|
|
@@ -8521,8 +8541,8 @@ my %isoSetting2010 = (
|
|
|
8521
8541
|
14 => 'Tracking',
|
|
8522
8542
|
15 => 'Face Tracking',
|
|
8523
8543
|
20 => 'Animal Eye Tracking',
|
|
8524
|
-
|
|
8525
|
-
# 22 => '???',
|
|
8544
|
+
21 => 'Human Eye Tracking', # always "Face tracking", seen for ILCE-7SM3, ILCE-1 and newer
|
|
8545
|
+
# 22 => 'Object Tracking???', # always "Lock On AF", seen for ILCE-6700, ZV-E1 (no animal or human in picture)
|
|
8526
8546
|
255 => 'Manual',
|
|
8527
8547
|
},
|
|
8528
8548
|
},
|
|
@@ -8997,11 +9017,12 @@ my %isoSetting2010 = (
|
|
|
8997
9017
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
|
8998
9018
|
# 0x0000: 1 for SLT-A37/A57/A65/A77, NEX-5N/7/F3/VG20
|
|
8999
9019
|
# 2 for SLT-A58/99V, NEX-3N/5R/5T/6/VG30/VG900, ILCA-68/77M2, ILCE-3000/3500/7/7M2/7R/7S/5000/6000
|
|
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
|
|
9020
|
+
# 3 for ILCA-99M2, ILCE-6100/6300/6400/6500/6600/7C/7M3/7M4/7RM2/7RM3/7RM4/7RM5/7SM2/7SM3/9/9M2/1
|
|
9021
|
+
# 4 for ILCE-6700/7CM2/7CR, ZV-E1
|
|
9002
9022
|
0x0000 => { Name => 'Ver9406', Hidden => 1, RawConv => '$$self{Ver9406} = $val; $$self{OPTIONS}{Unknown}<2 ? undef : $val' },
|
|
9003
9023
|
# 0x0001+0x0002: Int16u, seen 580 - 770: similar to "BatteryUnknown" ??
|
|
9004
9024
|
# 0x0005: int8u, seen 73 - 117: maybe Fahrenheit? Higher than "AmbientTemperature", but same trend.
|
|
9025
|
+
# 0x0004: for Ver9406=4: seen 3, 5, 7: when 3 or 7 0x0005 appears valid; when 5, 0x0005 always 0
|
|
9005
9026
|
0x0005 => [{
|
|
9006
9027
|
Name => 'BatteryTemperature',
|
|
9007
9028
|
Condition => '$$self{Ver9406} != 4',
|
|
@@ -9739,7 +9760,7 @@ my %isoSetting2010 = (
|
|
|
9739
9760
|
WRITE_PROC => \&WriteEnciphered,
|
|
9740
9761
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
|
|
9741
9762
|
FORMAT => 'int8u',
|
|
9742
|
-
NOTES => 'Valid for the ILCE-1/6700/7M4/7RM5/7SM3, ILME-FX3/FX30, ZV-E1.',
|
|
9763
|
+
NOTES => 'Valid for the ILCE-1/6700/7CM2/7CR/7M4/7RM5/7SM3, ILME-FX3/FX30, ZV-E1.',
|
|
9743
9764
|
FIRST_ENTRY => 0,
|
|
9744
9765
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
|
9745
9766
|
0x0000 => { Name => 'Tag9416_0000', PrintConv => 'sprintf("%3d",$val)', RawConv => '$$self{TagVersion} = $val' },
|
|
@@ -9783,12 +9804,36 @@ my %isoSetting2010 = (
|
|
|
9783
9804
|
PrintConvInv => '$val',
|
|
9784
9805
|
},
|
|
9785
9806
|
0x001d => { %sequenceImageNumber },
|
|
9807
|
+
0x002b => { %releaseMode2 },
|
|
9786
9808
|
0x0035 => {
|
|
9787
9809
|
Name => 'ExposureProgram',
|
|
9788
9810
|
Priority => 0,
|
|
9789
9811
|
SeparateTable => 'ExposureProgram3',
|
|
9790
9812
|
PrintConv => \%sonyExposureProgram3,
|
|
9791
9813
|
},
|
|
9814
|
+
0x0037 => {
|
|
9815
|
+
Name => 'CreativeStyle',
|
|
9816
|
+
PrintConv => {
|
|
9817
|
+
0 => 'Standard',
|
|
9818
|
+
1 => 'Vivid',
|
|
9819
|
+
2 => 'Neutral',
|
|
9820
|
+
3 => 'Portrait',
|
|
9821
|
+
4 => 'Landscape',
|
|
9822
|
+
5 => 'B&W',
|
|
9823
|
+
6 => 'Clear',
|
|
9824
|
+
7 => 'Deep',
|
|
9825
|
+
8 => 'Light',
|
|
9826
|
+
9 => 'Sunset',
|
|
9827
|
+
10 => 'Night View/Portrait',
|
|
9828
|
+
11 => 'Autumn Leaves',
|
|
9829
|
+
13 => 'Sepia',
|
|
9830
|
+
15 => 'FL',
|
|
9831
|
+
16 => 'VV2',
|
|
9832
|
+
17 => 'IN',
|
|
9833
|
+
18 => 'SH',
|
|
9834
|
+
255 => 'Off',
|
|
9835
|
+
},
|
|
9836
|
+
},
|
|
9792
9837
|
0x0048 => {
|
|
9793
9838
|
Name => 'LensMount',
|
|
9794
9839
|
Condition => '$$self{Model} !~ /^(DSC-)/',
|
|
@@ -9876,9 +9921,9 @@ my %isoSetting2010 = (
|
|
|
9876
9921
|
Condition => '$$self{Model} =~ /^(ILCE-7M4)/',
|
|
9877
9922
|
Format => 'int16s[16]',
|
|
9878
9923
|
},
|
|
9879
|
-
0x089d => { # Note: 32 values for these newer models, and 32 non-zero values present for new lenses like SEL2470GM2 and
|
|
9924
|
+
0x089d => { # Note: 32 values for these newer models, and 32 non-zero values present for new lenses like SEL2470GM2 and SEL2070G
|
|
9880
9925
|
Name => 'VignettingCorrParams',
|
|
9881
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6700|7RM5)|ILME-FX30|ZV-E1)\b/',
|
|
9926
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6700|7CM2|7CR|7RM5)|ILME-FX30|ZV-E1)\b/',
|
|
9882
9927
|
Format => 'int16s[32]',
|
|
9883
9928
|
},
|
|
9884
9929
|
0x08b5 => {
|
|
@@ -9917,7 +9962,7 @@ my %isoSetting2010 = (
|
|
|
9917
9962
|
},
|
|
9918
9963
|
0x0945 => {
|
|
9919
9964
|
Name => 'ChromaticAberrationCorrParams',
|
|
9920
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6700|7RM5)|ILME-FX30|ZV-E1)\b/',
|
|
9965
|
+
Condition => '$$self{Model} =~ /^(ILCE-(6700|7CM2|7CR|7RM5)|ILME-FX30|ZV-E1)\b/',
|
|
9921
9966
|
Format => 'int16s[32]',
|
|
9922
9967
|
},
|
|
9923
9968
|
);
|