exiftool_vendored 12.17.1 → 12.18.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.
- checksums.yaml +4 -4
- data/bin/Changes +10 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +2 -2
- data/bin/exiftool +2 -2
- data/bin/lib/Image/ExifTool.pm +1 -1
- data/bin/lib/Image/ExifTool/Canon.pm +20 -2
- data/bin/lib/Image/ExifTool/Nikon.pm +2 -4
- data/bin/lib/Image/ExifTool/NikonSettings.pm +10 -10
- data/bin/lib/Image/ExifTool/QuickTime.pm +21 -15
- data/bin/lib/Image/ExifTool/Sony.pm +18 -18
- data/bin/lib/Image/ExifTool/TagLookup.pm +1 -1
- data/bin/lib/Image/ExifTool/TagNames.pod +7 -5
- data/bin/perl-Image-ExifTool.spec +1 -1
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 94a7d3e31a469a8fc6a58b020168e7076b56172144d98ffeda12f7b49d65a0a0
|
|
4
|
+
data.tar.gz: 18000853a1b6ae5728074fa49602ff41851844abbde34022ddc8971218607cf0
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c1283d44ee24b5b60c13795ad8868359b616522db3b191060a81df0b8bde2f3f31d5dd57e7bebd05de9e2ac7a0ba1d4eba041d024824fbb077084930484ba49f
|
|
7
|
+
data.tar.gz: 79356beb3ffe088861e355a00c66439c6a4d28c6dfe7efc4591902da5d5d32649fbf110283507c5259ac77bc73f66d5504b64478b0570dfd5df3fb2eb7805221
|
data/bin/Changes
CHANGED
|
@@ -7,6 +7,16 @@ RSS feed: https://exiftool.org/rss.xml
|
|
|
7
7
|
Note: The most recent production release is Version 12.16. (Other versions are
|
|
8
8
|
considered development releases, and are not uploaded to MetaCPAN.)
|
|
9
9
|
|
|
10
|
+
Feb. 9, 2021 - Version 12.18
|
|
11
|
+
|
|
12
|
+
- Added a new SonyModelID
|
|
13
|
+
- Decode a number of Sony tags for the ILCE-1 (thanks Jos Roost)
|
|
14
|
+
- Decode a couple of new Canon tags (thanks LibRaw)
|
|
15
|
+
- Patched to read differently formatted UserData:Keywords as written by iPhone
|
|
16
|
+
- Patched to tolerate out-of-order Nikon MakerNote IFD entries when obtaining
|
|
17
|
+
tags necessary for decryption
|
|
18
|
+
- Fixed a few possible Condition warnings for some NikonSettings tags
|
|
19
|
+
|
|
10
20
|
Feb. 3, 2021 - Version 12.17
|
|
11
21
|
|
|
12
22
|
- Added a new Canon FocusMode value
|
data/bin/META.json
CHANGED
data/bin/META.yml
CHANGED
data/bin/README
CHANGED
|
@@ -106,8 +106,8 @@ your home directory, then you would type the following commands in a
|
|
|
106
106
|
terminal window to extract and run ExifTool:
|
|
107
107
|
|
|
108
108
|
cd ~/Desktop
|
|
109
|
-
gzip -dc Image-ExifTool-12.
|
|
110
|
-
cd Image-ExifTool-12.
|
|
109
|
+
gzip -dc Image-ExifTool-12.18.tar.gz | tar -xf -
|
|
110
|
+
cd Image-ExifTool-12.18
|
|
111
111
|
./exiftool t/images/ExifTool.jpg
|
|
112
112
|
|
|
113
113
|
Note: These commands extract meta information from one of the test images.
|
data/bin/exiftool
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
use strict;
|
|
11
11
|
require 5.004;
|
|
12
12
|
|
|
13
|
-
my $version = '12.
|
|
13
|
+
my $version = '12.18';
|
|
14
14
|
|
|
15
15
|
# add our 'lib' directory to the include list BEFORE 'use Image::ExifTool'
|
|
16
16
|
my $exeDir;
|
|
@@ -5369,7 +5369,7 @@ with this command:
|
|
|
5369
5369
|
|
|
5370
5370
|
produces output like this:
|
|
5371
5371
|
|
|
5372
|
-
-- Generated by ExifTool 12.
|
|
5372
|
+
-- Generated by ExifTool 12.18 --
|
|
5373
5373
|
File: a.jpg - 2003:10:31 15:44:19
|
|
5374
5374
|
(f/5.6, 1/60s, ISO 100)
|
|
5375
5375
|
File: b.jpg - 2006:05:23 11:57:38
|
data/bin/lib/Image/ExifTool.pm
CHANGED
|
@@ -28,7 +28,7 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes
|
|
|
28
28
|
%mimeType $swapBytes $swapWords $currentByteOrder %unpackStd
|
|
29
29
|
%jpegMarker %specialTags %fileTypeLookup $testLen $exePath);
|
|
30
30
|
|
|
31
|
-
$VERSION = '12.
|
|
31
|
+
$VERSION = '12.18';
|
|
32
32
|
$RELEASE = '';
|
|
33
33
|
@ISA = qw(Exporter);
|
|
34
34
|
%EXPORT_TAGS = (
|
|
@@ -88,7 +88,7 @@ sub ProcessCTMD($$$);
|
|
|
88
88
|
sub ProcessExifInfo($$$);
|
|
89
89
|
sub SwapWords($);
|
|
90
90
|
|
|
91
|
-
$VERSION = '4.
|
|
91
|
+
$VERSION = '4.44';
|
|
92
92
|
|
|
93
93
|
# Note: Removed 'USM' from 'L' lenses since it is redundant - PH
|
|
94
94
|
# (or is it? Ref 32 shows 5 non-USM L-type lenses)
|
|
@@ -4539,6 +4539,16 @@ my %ciMaxFocal = (
|
|
|
4539
4539
|
2 => 'Rotate 270 CW',
|
|
4540
4540
|
},
|
|
4541
4541
|
},
|
|
4542
|
+
0x3a => { #IB
|
|
4543
|
+
Name => 'CameraOrientation',
|
|
4544
|
+
Condition => '$$self{Model} =~ /\b(1200D|REBEL T5|Kiss X70)\b/',
|
|
4545
|
+
Notes => '1200D only',
|
|
4546
|
+
PrintConv => {
|
|
4547
|
+
0 => 'Horizontal (normal)',
|
|
4548
|
+
1 => 'Rotate 90 CW',
|
|
4549
|
+
2 => 'Rotate 270 CW',
|
|
4550
|
+
},
|
|
4551
|
+
},
|
|
4542
4552
|
0x55 => {
|
|
4543
4553
|
Name => 'FocusDistanceUpper',
|
|
4544
4554
|
Condition => '$$self{Model} =~ /EOS 60D$/',
|
|
@@ -4679,7 +4689,7 @@ my %ciMaxFocal = (
|
|
|
4679
4689
|
FIRST_ENTRY => 0,
|
|
4680
4690
|
PRIORITY => 0,
|
|
4681
4691
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
|
|
4682
|
-
NOTES => 'CameraInfo tags for the EOS
|
|
4692
|
+
NOTES => 'CameraInfo tags for the EOS 80D.',
|
|
4683
4693
|
0x03 => { %ciFNumber },
|
|
4684
4694
|
0x04 => { %ciExposureTime },
|
|
4685
4695
|
0x06 => { %ciISO },
|
|
@@ -5255,6 +5265,14 @@ my %ciMaxFocal = (
|
|
|
5255
5265
|
0x06 => { %ciISO },
|
|
5256
5266
|
0x1b => { %ciCameraTemperature }, # (700D + 0)
|
|
5257
5267
|
0x23 => { %ciFocalLength }, # (700D + 0)
|
|
5268
|
+
0x96 => { #IB (700D + 0x19)
|
|
5269
|
+
Name => 'CameraOrientation',
|
|
5270
|
+
PrintConv => {
|
|
5271
|
+
0 => 'Horizontal (normal)',
|
|
5272
|
+
1 => 'Rotate 90 CW',
|
|
5273
|
+
2 => 'Rotate 270 CW',
|
|
5274
|
+
},
|
|
5275
|
+
},
|
|
5258
5276
|
0xa5 => { # (700D + 0x19)
|
|
5259
5277
|
Name => 'FocusDistanceUpper',
|
|
5260
5278
|
%focusDistanceByteSwap,
|
|
@@ -62,7 +62,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
|
62
62
|
use Image::ExifTool::Exif;
|
|
63
63
|
use Image::ExifTool::GPS;
|
|
64
64
|
|
|
65
|
-
$VERSION = '3.
|
|
65
|
+
$VERSION = '3.93';
|
|
66
66
|
|
|
67
67
|
sub LensIDConv($$$);
|
|
68
68
|
sub ProcessNikonAVI($$$);
|
|
@@ -9945,12 +9945,10 @@ sub PrescanExif($$$)
|
|
|
9945
9945
|
$dataLen = length $data;
|
|
9946
9946
|
$dirStart = 0;
|
|
9947
9947
|
}
|
|
9948
|
-
# loop through
|
|
9949
|
-
my ($lastTag) = sort { $b <=> $a } keys %$tagHash; # (reverse sort)
|
|
9948
|
+
# loop through Nikon MakerNote IFD entries
|
|
9950
9949
|
for ($index=0; $index<$numEntries; ++$index) {
|
|
9951
9950
|
my $entry = $dirStart + 2 + 12 * $index;
|
|
9952
9951
|
my $tagID = Get16u($dataPt, $entry);
|
|
9953
|
-
last if $tagID > $lastTag; # (assuming tags are in order)
|
|
9954
9952
|
next unless exists $$tagHash{$tagID}; # only extract required tags
|
|
9955
9953
|
my $format = Get16u($dataPt, $entry+2);
|
|
9956
9954
|
next if $format < 1 or $format > 13;
|
|
@@ -17,7 +17,7 @@ use strict;
|
|
|
17
17
|
use vars qw($VERSION);
|
|
18
18
|
use Image::ExifTool qw(:DataAccess :Utils);
|
|
19
19
|
|
|
20
|
-
$VERSION = '1.
|
|
20
|
+
$VERSION = '1.02';
|
|
21
21
|
|
|
22
22
|
sub ProcessNikonSettings($$$);
|
|
23
23
|
|
|
@@ -911,14 +911,14 @@ my %infoD6 = (
|
|
|
911
911
|
},
|
|
912
912
|
0x05a => [{ # CSf6-b-1 and CSf6-b-2 (D6), CSf5-b-1 and CSf5-b-2 (Z7_2), (continued from above)
|
|
913
913
|
Name => 'CmdDialsChangeMainSub',
|
|
914
|
-
Condition => '$$self{CmdDialsChangeMainSubExposure} == 1',
|
|
914
|
+
Condition => '$$self{CmdDialsChangeMainSubExposure} and $$self{CmdDialsChangeMainSubExposure} == 1',
|
|
915
915
|
PrintConv => {
|
|
916
916
|
1 => 'Autofocus On, Exposure On',
|
|
917
917
|
2 => 'Autofocus Off, Exposure On',
|
|
918
918
|
},
|
|
919
919
|
},{
|
|
920
920
|
Name => 'CmdDialsChangeMainSub',
|
|
921
|
-
Condition => '$$self{CmdDialsChangeMainSubExposure} == 2',
|
|
921
|
+
Condition => '$$self{CmdDialsChangeMainSubExposure} and $$self{CmdDialsChangeMainSubExposure} == 2',
|
|
922
922
|
PrintConv => {
|
|
923
923
|
1 => 'Autofocus On, Exposure On (Mode A)',
|
|
924
924
|
2 => 'Autofocus Off, Exposure On (Mode A)',
|
|
@@ -1014,7 +1014,7 @@ my %infoD6 = (
|
|
|
1014
1014
|
}],
|
|
1015
1015
|
0x08b => [{ # CSf6-a-1 and CSf6-a-2 (D6), CSf5-a-1 and CSf5-a-2 (Z7_2), (continued from above)
|
|
1016
1016
|
Name => 'CmdDialsReverseRotation',
|
|
1017
|
-
Condition => '$$self{CmdDialsReverseRotExposureComp} == 1',
|
|
1017
|
+
Condition => '$$self{CmdDialsReverseRotExposureComp} and $$self{CmdDialsReverseRotExposureComp} == 1',
|
|
1018
1018
|
PrintConv => {
|
|
1019
1019
|
1 => 'No',
|
|
1020
1020
|
2 => 'Shutter Speed & Aperture',
|
|
@@ -1313,7 +1313,7 @@ my %infoD6 = (
|
|
|
1313
1313
|
1 => 'Power Aperture (Open)',
|
|
1314
1314
|
2 => 'Exposure Compensation',
|
|
1315
1315
|
3 => 'Subject Tracking',
|
|
1316
|
-
4 => 'LiveView Info Display On/Off
|
|
1316
|
+
4 => 'LiveView Info Display On/Off',
|
|
1317
1317
|
5 => 'Grid Display',
|
|
1318
1318
|
6 => 'Zoom (Low)',
|
|
1319
1319
|
7 => 'Zoom (1:1)',
|
|
@@ -1357,7 +1357,7 @@ my %infoD6 = (
|
|
|
1357
1357
|
1 => 'Power Aperture (Close)',
|
|
1358
1358
|
2 => 'Exposure Compensation',
|
|
1359
1359
|
3 => 'Subject Tracking',
|
|
1360
|
-
4 => 'LiveView Info Display On/Off
|
|
1360
|
+
4 => 'LiveView Info Display On/Off',
|
|
1361
1361
|
5 => 'Grid Display',
|
|
1362
1362
|
6 => 'Zoom (Low)',
|
|
1363
1363
|
7 => 'Zoom (1:1)',
|
|
@@ -1578,7 +1578,7 @@ my %infoD6 = (
|
|
|
1578
1578
|
},
|
|
1579
1579
|
},{
|
|
1580
1580
|
Name => 'BracketProgram',
|
|
1581
|
-
Condition => '$$self{BracketSet} == 4',
|
|
1581
|
+
Condition => '$$self{BracketSet} and $$self{BracketSet} == 4',
|
|
1582
1582
|
Notes => 'White Balance Bracketing',
|
|
1583
1583
|
RawConv => '$$self{BracketProgram} = $val',
|
|
1584
1584
|
PrintConv => {
|
|
@@ -1595,7 +1595,7 @@ my %infoD6 = (
|
|
|
1595
1595
|
},
|
|
1596
1596
|
},{
|
|
1597
1597
|
Name => 'BracketProgram',
|
|
1598
|
-
Condition => '$$self{BracketSet} == 5',
|
|
1598
|
+
Condition => '$$self{BracketSet} and $$self{BracketSet} == 5',
|
|
1599
1599
|
Notes => 'Active-D Bracketing',
|
|
1600
1600
|
RawConv => '$$self{BracketProgram} = $val',
|
|
1601
1601
|
Mask => 0x0f,
|
|
@@ -1802,9 +1802,9 @@ my %infoD6 = (
|
|
|
1802
1802
|
},
|
|
1803
1803
|
},
|
|
1804
1804
|
0x139 => { Name => 'PlaybackFlickUp', RawConv => '$$self{PlaybackFlickUp} = $val', PrintConv => \%flickUpDownD6 }, # CSf12-1-a # (D6)
|
|
1805
|
-
0x13a => { Name => 'PlaybackFlickUpRating', Condition => '$$self{PlaybackFlickUp} == 1', Notes => 'Meaningful only when PlaybackFlickUp is Rating', PrintConv => \%flickUpDownRatingD6 }, # CSf12-1-b # (D6)
|
|
1805
|
+
0x13a => { Name => 'PlaybackFlickUpRating', Condition => '$$self{PlaybackFlickUp} and $$self{PlaybackFlickUp} == 1', Notes => 'Meaningful only when PlaybackFlickUp is Rating', PrintConv => \%flickUpDownRatingD6 }, # CSf12-1-b # (D6)
|
|
1806
1806
|
0x13b => { Name => 'PlaybackFlickDown', RawConv => '$$self{PlaybackFlickDown} = $val', PrintConv => \%flickUpDownD6 }, # CSf12-2-a # (D6)
|
|
1807
|
-
0x13c => { Name => 'PlaybackFlickDownRating', Condition => '$$self{PlaybackFlickDown} == 1', Notes => 'Meaningful only when PlaybackFlickDown is Rating', PrintConv => \%flickUpDownRatingD6 }, # CSf12-2-b # (D6)
|
|
1807
|
+
0x13c => { Name => 'PlaybackFlickDownRating', Condition => '$$self{PlaybackFlickDown} and $$self{PlaybackFlickDown} == 1', Notes => 'Meaningful only when PlaybackFlickDown is Rating', PrintConv => \%flickUpDownRatingD6 }, # CSf12-2-b # (D6)
|
|
1808
1808
|
0x13d => { # CSg2-d (D6)
|
|
1809
1809
|
Name => 'MovieFunc3Button',
|
|
1810
1810
|
PrintConv => {
|
|
@@ -47,7 +47,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
|
47
47
|
use Image::ExifTool::Exif;
|
|
48
48
|
use Image::ExifTool::GPS;
|
|
49
49
|
|
|
50
|
-
$VERSION = '2.
|
|
50
|
+
$VERSION = '2.58';
|
|
51
51
|
|
|
52
52
|
sub ProcessMOV($$;$);
|
|
53
53
|
sub ProcessKeys($$$);
|
|
@@ -258,11 +258,15 @@ my %unknownInfo = (
|
|
|
258
258
|
Unknown => 1,
|
|
259
259
|
ValueConv => '$val =~ /^([\x20-\x7e]*)\0*$/ ? $1 : \$val',
|
|
260
260
|
);
|
|
261
|
+
|
|
262
|
+
# multi-language text with 6-byte header
|
|
263
|
+
my %langText = ( IText => 6 );
|
|
264
|
+
|
|
261
265
|
# parsing for most of the 3gp udta language text boxes
|
|
262
|
-
my %
|
|
266
|
+
my %langText3gp = (
|
|
263
267
|
Notes => 'used in 3gp videos',
|
|
264
|
-
IText => 6,
|
|
265
268
|
Avoid => 1,
|
|
269
|
+
IText => 6,
|
|
266
270
|
);
|
|
267
271
|
|
|
268
272
|
# 4-character Vendor ID codes (ref PH)
|
|
@@ -1545,15 +1549,15 @@ my %eeBox2 = (
|
|
|
1545
1549
|
# the following are 3gp tags, references:
|
|
1546
1550
|
# http://atomicparsley.sourceforge.net
|
|
1547
1551
|
# http://www.3gpp.org/ftp/tsg_sa/WG4_CODEC/TSGS4_25/Docs/
|
|
1548
|
-
# (note that all %
|
|
1549
|
-
cprt => { Name => 'Copyright', %
|
|
1550
|
-
auth => { Name => 'Author', %
|
|
1551
|
-
titl => { Name => 'Title', %
|
|
1552
|
-
dscp => { Name => 'Description',%
|
|
1553
|
-
perf => { Name => 'Performer', %
|
|
1554
|
-
gnre => { Name => 'Genre', %
|
|
1555
|
-
albm => { Name => 'Album', %
|
|
1556
|
-
coll => { Name => 'CollectionName', %
|
|
1552
|
+
# (note that all %langText3gp tags are Avoid => 1)
|
|
1553
|
+
cprt => { Name => 'Copyright', %langText3gp, Groups => { 2 => 'Author' } },
|
|
1554
|
+
auth => { Name => 'Author', %langText3gp, Groups => { 2 => 'Author' } },
|
|
1555
|
+
titl => { Name => 'Title', %langText3gp },
|
|
1556
|
+
dscp => { Name => 'Description',%langText3gp },
|
|
1557
|
+
perf => { Name => 'Performer', %langText3gp },
|
|
1558
|
+
gnre => { Name => 'Genre', %langText3gp },
|
|
1559
|
+
albm => { Name => 'Album', %langText3gp },
|
|
1560
|
+
coll => { Name => 'CollectionName', %langText3gp }, #17
|
|
1557
1561
|
rtng => {
|
|
1558
1562
|
Name => 'Rating',
|
|
1559
1563
|
# (4-byte flags, 4-char entity, 4-char criteria, 2-byte lang, string)
|
|
@@ -1584,8 +1588,11 @@ my %eeBox2 = (
|
|
|
1584
1588
|
},
|
|
1585
1589
|
kywd => {
|
|
1586
1590
|
Name => 'Keywords',
|
|
1587
|
-
# (4 byte flags, 2-byte lang, 1-byte count, count x pascal strings)
|
|
1591
|
+
# (4 byte flags, 2-byte lang, 1-byte count, count x pascal strings, ref 17)
|
|
1592
|
+
# (but I have also seen a simple string written by iPhone)
|
|
1588
1593
|
RawConv => q{
|
|
1594
|
+
my $sep = $self->Options('ListSep');
|
|
1595
|
+
return join($sep, split /\0+/, $val) unless $val =~ /^\0/; # (iPhone)
|
|
1589
1596
|
return '<err>' unless length $val >= 7;
|
|
1590
1597
|
my $lang = Image::ExifTool::QuickTime::UnpackLang(Get16u(\$val, 4));
|
|
1591
1598
|
$lang = $lang ? "($lang) " : '';
|
|
@@ -1601,7 +1608,6 @@ my %eeBox2 = (
|
|
|
1601
1608
|
push @vals, $v;
|
|
1602
1609
|
$pos += $len;
|
|
1603
1610
|
}
|
|
1604
|
-
my $sep = $self->Options('ListSep');
|
|
1605
1611
|
return $lang . join($sep, @vals);
|
|
1606
1612
|
},
|
|
1607
1613
|
},
|
|
@@ -2037,7 +2043,7 @@ my %eeBox2 = (
|
|
|
2037
2043
|
SubDirectory => { TagTable => 'Image::ExifTool::Olympus::thmb' },
|
|
2038
2044
|
},{ #17 (format is in bytes 3-7)
|
|
2039
2045
|
Name => 'ThumbnailImage',
|
|
2040
|
-
Condition => '$$valPt =~ /^.{8}\xff\xd8\xff\xdb/s',
|
|
2046
|
+
Condition => '$$valPt =~ /^.{8}\xff\xd8\xff[\xdb\xe0]/s',
|
|
2041
2047
|
Groups => { 2 => 'Preview' },
|
|
2042
2048
|
RawConv => 'substr($val, 8)',
|
|
2043
2049
|
Binary => 1,
|
|
@@ -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.36';
|
|
38
38
|
|
|
39
39
|
sub ProcessSRF($$$);
|
|
40
40
|
sub ProcessSR2($$$);
|
|
@@ -71,8 +71,8 @@ sub PrintInvLensSpec($;$$);
|
|
|
71
71
|
'0.12' => 'Zeiss Loxia 35mm F2', # (firmware Ver.01)
|
|
72
72
|
1 => 'Sony LA-EA1 or Sigma MC-11 Adapter', # MC-11 with not-supported lenses
|
|
73
73
|
2 => 'Sony LA-EA2 Adapter',
|
|
74
|
-
3 => 'Sony LA-EA3 Adapter',
|
|
75
|
-
6 => 'Sony LA-EA4 Adapter',
|
|
74
|
+
3 => 'Sony LA-EA3 Adapter',
|
|
75
|
+
6 => 'Sony LA-EA4 Adapter',
|
|
76
76
|
7 => 'Sony LA-EA5 Adapter', #JR
|
|
77
77
|
# 27 => Venus Optics Laowa 12mm f2.8 Zero-D or 105mm f2 (T3.2) Smooth Trans Focus (ref IB)
|
|
78
78
|
44 => 'Metabones Canon EF Smart Adapter', #JR
|
|
@@ -80,6 +80,7 @@ sub PrintInvLensSpec($;$$);
|
|
|
80
80
|
184 => 'Metabones Canon EF Speed Booster Ultra', #JR ('Green' mode, LensMount reported as A-mount)
|
|
81
81
|
234 => 'Metabones Canon EF Smart Adapter Mark IV', #JR (LensMount reported as A-mount)
|
|
82
82
|
239 => 'Metabones Canon EF Speed Booster', #JR
|
|
83
|
+
24593 => 'LA-EA4r MonsterAdapter',
|
|
83
84
|
# Sony VX product code: (http://www.mi-fo.de/forum/index.php?s=7df1c8d3b1cd675f2abf4f4442e19cf2&showtopic=35035&view=findpost&p=303746)
|
|
84
85
|
32784 => 'Sony E 16mm F2.8', # VX9100
|
|
85
86
|
32785 => 'Sony E 18-55mm F3.5-5.6 OSS', # VX9101
|
|
@@ -1538,7 +1539,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1538
1539
|
# from mid-2015: ILCE-7RM2/7SM2/6300 and newer models use different offsets
|
|
1539
1540
|
{
|
|
1540
1541
|
Name => 'Tag9050a',
|
|
1541
|
-
Condition => '$$self{Model} !~ /^(DSC-|Stellar|ILCE-(6100|6300|6400|6500|6600|7C|7M3|7RM2|7RM3|7RM4|7SM2|7SM3|9|9M2)|ILCA-99M2|ZV-)/',
|
|
1542
|
+
Condition => '$$self{Model} !~ /^(DSC-|Stellar|ILCE-(1|6100|6300|6400|6500|6600|7C|7M3|7RM2|7RM3|7RM4|7SM2|7SM3|9|9M2)|ILCA-99M2|ZV-)/',
|
|
1542
1543
|
SubDirectory => {
|
|
1543
1544
|
TagTable => 'Image::ExifTool::Sony::Tag9050a',
|
|
1544
1545
|
ByteOrder => 'LittleEndian',
|
|
@@ -1552,7 +1553,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1552
1553
|
},
|
|
1553
1554
|
},{
|
|
1554
1555
|
Name => 'Tag9050c',
|
|
1555
|
-
Condition => '$$self{Model} =~ /^(ILCE-7SM3)/',
|
|
1556
|
+
Condition => '$$self{Model} =~ /^(ILCE-(1|7SM3))/',
|
|
1556
1557
|
SubDirectory => {
|
|
1557
1558
|
TagTable => 'Image::ExifTool::Sony::Tag9050c',
|
|
1558
1559
|
ByteOrder => 'LittleEndian',
|
|
@@ -1572,8 +1573,8 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1572
1573
|
# 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
|
|
1573
1574
|
# 0x26 (e) for ILCE-6100/6400/6600/7M3/7RM3/9, DSC-RX0M2/RX10M4/RX100M5A/RX100M6/HX99
|
|
1574
1575
|
# 0x28 (e) for ILCE-7RM4/9M2, DSC-RX100M7, ZV-1
|
|
1575
|
-
# 0x31 (e) for ILCE-7SM3
|
|
1576
|
-
# first byte decoded: 40, 204, 202, 27, 58, 62, 48, 215, 28 respectively
|
|
1576
|
+
# 0x31 (e) for ILCE-1, 7SM3
|
|
1577
|
+
# first byte decoded: 40, 204, 202, 27, 58, 62, 48, 215, 28, 106 respectively
|
|
1577
1578
|
{
|
|
1578
1579
|
Name => 'Tag9400a',
|
|
1579
1580
|
Condition => q{
|
|
@@ -1957,6 +1958,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
|
1957
1958
|
380 => 'ZV-1', #JR
|
|
1958
1959
|
381 => 'ILCE-7C', #JR
|
|
1959
1960
|
383 => 'ILCE-7SM3',
|
|
1961
|
+
384 => 'ILCE-1', #PH
|
|
1960
1962
|
},
|
|
1961
1963
|
},
|
|
1962
1964
|
0xb020 => { #2
|
|
@@ -7788,7 +7790,7 @@ my %isoSetting2010 = (
|
|
|
7788
7790
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
|
|
7789
7791
|
FORMAT => 'int8u',
|
|
7790
7792
|
NOTES => q{
|
|
7791
|
-
Valid from July 2020 for ILCE-7SM3.
|
|
7793
|
+
Valid from July 2020 for ILCE-1/7SM3.
|
|
7792
7794
|
},
|
|
7793
7795
|
WRITABLE => 1,
|
|
7794
7796
|
FIRST_ENTRY => 0,
|
|
@@ -7849,13 +7851,12 @@ my %isoSetting2010 = (
|
|
|
7849
7851
|
},
|
|
7850
7852
|
0x0050 => {
|
|
7851
7853
|
Name => 'ShutterCount2',
|
|
7852
|
-
Condition => '(
|
|
7854
|
+
Condition => '($$self{FlashFired} & 0x01) != 1',
|
|
7853
7855
|
Format => 'int32u',
|
|
7854
7856
|
RawConv => '$val & 0x00ffffff',
|
|
7855
7857
|
},
|
|
7856
7858
|
0x0066 => { # appr. same value as Exif ExposureTime, but not valid in HDR-modes
|
|
7857
7859
|
Name => 'SonyExposureTime',
|
|
7858
|
-
Condition => '$$self{Model} =~ /^(ILCE-7SM3)/',
|
|
7859
7860
|
Format => 'int16u',
|
|
7860
7861
|
ValueConv => '$val ? 2 ** (16 - $val/256) : 0',
|
|
7861
7862
|
ValueConvInv => '$val ? int((16 - log($val) / log(2)) * 256 + 0.5) : 0',
|
|
@@ -7864,7 +7865,6 @@ my %isoSetting2010 = (
|
|
|
7864
7865
|
},
|
|
7865
7866
|
0x0068 => { # appr. same value as Exif ExposureTime, but not valid in HDR-modes
|
|
7866
7867
|
Name => 'SonyFNumber',
|
|
7867
|
-
Condition => '$$self{Model} =~ /^(ILCE-7SM3)/',
|
|
7868
7868
|
Format => 'int16u',
|
|
7869
7869
|
ValueConv => '2 ** (($val/256 - 16) / 2)',
|
|
7870
7870
|
ValueConvInv => '(log($val)*2/log(2)+16)*256',
|
|
@@ -7873,7 +7873,6 @@ my %isoSetting2010 = (
|
|
|
7873
7873
|
},
|
|
7874
7874
|
0x006b => {
|
|
7875
7875
|
Name => 'ReleaseMode2',
|
|
7876
|
-
Condition => '$$self{Model} =~ /^(ILCE-7SM3)/',
|
|
7877
7876
|
%releaseMode2,
|
|
7878
7877
|
},
|
|
7879
7878
|
0x0088 => {
|
|
@@ -8052,7 +8051,7 @@ my %isoSetting2010 = (
|
|
|
8052
8051
|
NOTES => q{
|
|
8053
8052
|
Valid for DSC-HX60V/HX80/HX90V/HX99/HX350/HX400V/QX30/RX0/RX1RM2/RX10/
|
|
8054
8053
|
RX10M2/RX10M3/RX10M4/RX100M3/RX100M4/RX100M5/RX100M5A/RX100M6/RX100M7/WX220/
|
|
8055
|
-
WX350/WX500, ILCE-7/7C/7R/7S/7M2/7M3/7RM2/7RM3/7RM4/7SM2/7SM3/9/9M2/5000/
|
|
8054
|
+
WX350/WX500, ILCE-1/7/7C/7R/7S/7M2/7M3/7RM2/7RM3/7RM4/7SM2/7SM3/9/9M2/5000/
|
|
8056
8055
|
5100/6000/6100/6300/6400/6500/6600/QX1, ILCA-68/77M2/99M2.
|
|
8057
8056
|
},
|
|
8058
8057
|
FIRST_ENTRY => 0,
|
|
@@ -8109,7 +8108,7 @@ my %isoSetting2010 = (
|
|
|
8109
8108
|
},
|
|
8110
8109
|
0x002a => {
|
|
8111
8110
|
Name => 'Quality2',
|
|
8112
|
-
Condition => '$$self{Model} !~ /^(ILCE-7SM3)\b/',
|
|
8111
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|7SM3))\b/',
|
|
8113
8112
|
PrintConv => {
|
|
8114
8113
|
0 => 'JPEG',
|
|
8115
8114
|
1 => 'RAW',
|
|
@@ -8119,13 +8118,13 @@ my %isoSetting2010 = (
|
|
|
8119
8118
|
},
|
|
8120
8119
|
0x0047 => {
|
|
8121
8120
|
Name => 'SonyImageHeight',
|
|
8122
|
-
Condition => '$$self{Model} !~ /^(ILCE-7SM3)\b/',
|
|
8121
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|7SM3))\b/',
|
|
8123
8122
|
Format => 'int16u',
|
|
8124
8123
|
PrintConv => '$val > 0 ? 8*$val : "n.a."',
|
|
8125
8124
|
},
|
|
8126
8125
|
0x0053 => {
|
|
8127
8126
|
Name => 'ModelReleaseYear',
|
|
8128
|
-
Condition => '$$self{Model} !~ /^(ILCE-7SM3)\b/',
|
|
8127
|
+
Condition => '$$self{Model} !~ /^(ILCE-(1|7SM3))\b/',
|
|
8129
8128
|
Format => 'int8u',
|
|
8130
8129
|
PrintConv => 'sprintf("20%.2d", $val)',
|
|
8131
8130
|
},
|
|
@@ -8144,7 +8143,7 @@ my %isoSetting2010 = (
|
|
|
8144
8143
|
0x0000 => { Name => 'Ver9401', Hidden => 1, RawConv => '$$self{Ver9401} = $val; $$self{OPTIONS}{Unknown}<2 ? undef : $val' },
|
|
8145
8144
|
|
|
8146
8145
|
0x0498 => { Name => 'ISOInfo', Condition => '$$self{Ver9401} == 148', Format => 'int8u[5]', SubDirectory => { TagTable => 'Image::ExifTool::Sony::ISOInfo' } },
|
|
8147
|
-
0x04a1 => { Name => 'ISOInfo', Condition => '$$self{Ver9401}
|
|
8146
|
+
0x04a1 => { Name => 'ISOInfo', Condition => '$$self{Ver9401} =~ /^(160|164)/', Format => 'int8u[5]', SubDirectory => { TagTable => 'Image::ExifTool::Sony::ISOInfo' } },
|
|
8148
8147
|
0x04a2 => { Name => 'ISOInfo', Condition => '$$self{Ver9401} =~ /^(152|154|155)/', Format => 'int8u[5]', SubDirectory => { TagTable => 'Image::ExifTool::Sony::ISOInfo' } },
|
|
8149
8148
|
0x059d => { Name => 'ISOInfo', Condition => '$$self{Ver9401} =~ /^(144|146)/', Format => 'int8u[5]', SubDirectory => { TagTable => 'Image::ExifTool::Sony::ISOInfo' } },
|
|
8150
8149
|
0x0634 => { Name => 'ISOInfo', Condition => '$$self{Ver9401} == 68', Format => 'int8u[5]', SubDirectory => { TagTable => 'Image::ExifTool::Sony::ISOInfo' } },
|
|
@@ -8902,6 +8901,7 @@ my %isoSetting2010 = (
|
|
|
8902
8901
|
# 1 0 0 0 for ILCE-5000/5100/6000/7/7M2/7R/7S/QX1
|
|
8903
8902
|
# 6 0 0 0 for ILCE-6100/6300/6400/6500/6600/7C/7M3/7RM2/7RM3/7RM4/7SM2/9/9M2
|
|
8904
8903
|
# 9 . . . for ILCE-7SM3
|
|
8904
|
+
# 11 . . . for ILCE-1
|
|
8905
8905
|
# 0 2 0 0 for NEX/ILCE with LA-EA2/EA4 Phase-AF adapter
|
|
8906
8906
|
# 2 0 0 0 seen for a few NEX-5N images
|
|
8907
8907
|
# 2 2 0 0 seen for a few NEX-5N/7 images with LA-EA2 adapter
|
|
@@ -9411,7 +9411,7 @@ my %isoSetting2010 = (
|
|
|
9411
9411
|
WRITE_PROC => \&WriteEnciphered,
|
|
9412
9412
|
CHECK_PROC => \&Image::ExifTool::CheckBinaryData,
|
|
9413
9413
|
FORMAT => 'int8u',
|
|
9414
|
-
NOTES => 'Valid for the ILCE-7SM3.',
|
|
9414
|
+
NOTES => 'Valid for the ILCE-1/7SM3.',
|
|
9415
9415
|
FIRST_ENTRY => 0,
|
|
9416
9416
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
|
9417
9417
|
0x0000 => { Name => 'Tag9416_0000', PrintConv => 'sprintf("%3d",$val)', RawConv => '$$self{TagVersion} = $val' },
|
|
@@ -1248,7 +1248,7 @@ my %tagLookup = (
|
|
|
1248
1248
|
'cameramodelrestriction' => { 467 => 'CameraModelRestriction', 469 => 'CameraModelRestriction' },
|
|
1249
1249
|
'cameramotion' => { 364 => 'direction.motion' },
|
|
1250
1250
|
'cameramove' => { 493 => 'cameraMove' },
|
|
1251
|
-
'cameraorientation' => { 7 => 0x30, 9 => 0x7d, 11 => 0x30, 13 => 0x35, 14 => 0x30, 15 => 0x30, 16 => 0x31, 17 => 0x31, 18 => 0x35, 19 => 0x27, 20 => 0x31, 21 => 0x7d, 22 => 0x38, 23 => 0x36, 24 => 0x7d, 25 => 0x83, 26 => 0x84, 28 => 0x35, 29 => 0x96, 310 => 0x8f, 349 => 0x1, 354 => 0x100, 403 => [0x16,0x18], 431 => 0x28, 432 => 0x24, 433 => 0x29 },
|
|
1251
|
+
'cameraorientation' => { 7 => 0x30, 9 => 0x7d, 11 => 0x30, 13 => 0x35, 14 => 0x30, 15 => 0x30, 16 => 0x31, 17 => 0x31, 18 => 0x35, 19 => 0x27, 20 => 0x31, 21 => 0x7d, 22 => 0x38, 23 => [0x36,0x3a], 24 => 0x7d, 25 => 0x83, 26 => 0x84, 27 => 0x96, 28 => 0x35, 29 => 0x96, 310 => 0x8f, 349 => 0x1, 354 => 0x100, 403 => [0x16,0x18], 431 => 0x28, 432 => 0x24, 433 => 0x29 },
|
|
1252
1252
|
'cameraowner' => { 138 => 0xc353 },
|
|
1253
1253
|
'cameraparameters' => { 292 => 0x2050 },
|
|
1254
1254
|
'camerapicturestyle' => { 28 => 0xaf },
|
|
@@ -12,7 +12,7 @@ meta information extracted from or written to a file.
|
|
|
12
12
|
=head1 TAG TABLES
|
|
13
13
|
|
|
14
14
|
The tables listed below give the names of all tags recognized by ExifTool.
|
|
15
|
-
They contain a total of
|
|
15
|
+
They contain a total of 24077 tags, with 15588 unique tag names.
|
|
16
16
|
|
|
17
17
|
B<Tag ID>, B<Index#> or B<Sequence> is given in the first column of each
|
|
18
18
|
table. A B<Tag ID> is the computer-readable equivalent of a tag name, and
|
|
@@ -6879,6 +6879,7 @@ CameraInfo tags for the EOS 60D and 1200D.
|
|
|
6879
6879
|
25 CameraTemperature int8u
|
|
6880
6880
|
30 FocalLength int16uRev
|
|
6881
6881
|
54 CameraOrientation int8u
|
|
6882
|
+
58 CameraOrientation int8u
|
|
6882
6883
|
85 FocusDistanceUpper int16uRev
|
|
6883
6884
|
87 FocusDistanceLower int16uRev
|
|
6884
6885
|
125 ColorTemperature int16u
|
|
@@ -6916,7 +6917,7 @@ CameraInfo tags for the EOS 70D.
|
|
|
6916
6917
|
|
|
6917
6918
|
=head3 Canon CameraInfo80D Tags
|
|
6918
6919
|
|
|
6919
|
-
CameraInfo tags for the EOS
|
|
6920
|
+
CameraInfo tags for the EOS 80D.
|
|
6920
6921
|
|
|
6921
6922
|
Index1 Tag Name Writable
|
|
6922
6923
|
------ -------- --------
|
|
@@ -7084,6 +7085,7 @@ CameraInfo tags for the EOS 750D and 760D.
|
|
|
7084
7085
|
6 ISO int8u
|
|
7085
7086
|
27 CameraTemperature int8u
|
|
7086
7087
|
35 FocalLength int16uRev
|
|
7088
|
+
150 CameraOrientation int8u
|
|
7087
7089
|
165 FocusDistanceUpper int16uRev
|
|
7088
7090
|
167 FocusDistanceLower int16uRev
|
|
7089
7091
|
305 WhiteBalance int16u
|
|
@@ -18597,7 +18599,7 @@ Valid from July 2015 for ILCE-6100/6300/6400/6500/6600/7C/7M3/7RM2/7RM3/7RM4/
|
|
|
18597
18599
|
|
|
18598
18600
|
=head3 Sony Tag9050c Tags
|
|
18599
18601
|
|
|
18600
|
-
Valid from July 2020 for ILCE-7SM3.
|
|
18602
|
+
Valid from July 2020 for ILCE-1/7SM3.
|
|
18601
18603
|
|
|
18602
18604
|
Index1 Tag Name Writable
|
|
18603
18605
|
------ -------- --------
|
|
@@ -18652,7 +18654,7 @@ DSC-HX50V, DSC-QX10/QX100.
|
|
|
18652
18654
|
|
|
18653
18655
|
Valid for DSC-HX60V/HX80/HX90V/HX99/HX350/HX400V/QX30/RX0/RX1RM2/RX10/
|
|
18654
18656
|
RX10M2/RX10M3/RX10M4/RX100M3/RX100M4/RX100M5/RX100M5A/RX100M6/RX100M7/WX220/
|
|
18655
|
-
WX350/WX500, ILCE-7/7C/7R/7S/7M2/7M3/7RM2/7RM3/7RM4/7SM2/7SM3/9/9M2/5000/
|
|
18657
|
+
WX350/WX500, ILCE-1/7/7C/7R/7S/7M2/7M3/7RM2/7RM3/7RM4/7SM2/7SM3/9/9M2/5000/
|
|
18656
18658
|
5100/6000/6100/6300/6400/6500/6600/QX1, ILCA-68/77M2/99M2.
|
|
18657
18659
|
|
|
18658
18660
|
Index1 Tag Name Writable
|
|
@@ -19003,7 +19005,7 @@ E-mount models.
|
|
|
19003
19005
|
|
|
19004
19006
|
=head3 Sony Tag9416 Tags
|
|
19005
19007
|
|
|
19006
|
-
Valid for the ILCE-7SM3.
|
|
19008
|
+
Valid for the ILCE-1/7SM3.
|
|
19007
19009
|
|
|
19008
19010
|
Index1 Tag Name Writable
|
|
19009
19011
|
------ -------- --------
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: exiftool_vendored
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 12.
|
|
4
|
+
version: 12.18.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Matthew McEachen
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2021-02-
|
|
12
|
+
date: 2021-02-11 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: exiftool
|