exiftool_vendored 12.17.1 → 12.18.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of exiftool_vendored might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d80826479c3ca8c2e3cfaf71aac23fb1d19de4d2b204fb5cce97d17315744c4c
4
- data.tar.gz: b42b14d289558856c2cef660d6ff16592c814fcf3ec8f106e5edb4b62dd26e5d
3
+ metadata.gz: 94a7d3e31a469a8fc6a58b020168e7076b56172144d98ffeda12f7b49d65a0a0
4
+ data.tar.gz: 18000853a1b6ae5728074fa49602ff41851844abbde34022ddc8971218607cf0
5
5
  SHA512:
6
- metadata.gz: 928b5a6323959d076b93102f6e7d980b2ef6936a90b77542fbbbb73e9ab767c5767c9a63d1073e8374aec816979d76f5c9e45342a50408426d43c1ee60a03b99
7
- data.tar.gz: b86d1b66ca9d01bb8d4261f25cf4daaed9698a407332211559cdb253fd997ea4eaaac9535f874ee55bb1131e7729f145e3aca26d5d0d85512d957bd018c6efc7
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
@@ -47,5 +47,5 @@
47
47
  }
48
48
  },
49
49
  "release_status" : "stable",
50
- "version" : "12.17"
50
+ "version" : "12.18"
51
51
  }
data/bin/META.yml CHANGED
@@ -28,4 +28,4 @@ recommends:
28
28
  Time::HiRes: 0
29
29
  requires:
30
30
  perl: 5.004
31
- version: 12.17
31
+ version: 12.18
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.17.tar.gz | tar -xf -
110
- cd Image-ExifTool-12.17
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.17';
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.17 --
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
@@ -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.17';
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.43';
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 70D.',
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.92';
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 necessary IFD entries
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.01';
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.57';
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 %langText = (
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 %langText tags are Avoid => 1)
1549
- cprt => { Name => 'Copyright', %langText, Groups => { 2 => 'Author' } },
1550
- auth => { Name => 'Author', %langText, Groups => { 2 => 'Author' } },
1551
- titl => { Name => 'Title', %langText },
1552
- dscp => { Name => 'Description',%langText },
1553
- perf => { Name => 'Performer', %langText },
1554
- gnre => { Name => 'Genre', %langText },
1555
- albm => { Name => 'Album', %langText },
1556
- coll => { Name => 'CollectionName', %langText }, #17
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.35';
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', #(NC) ILCE-7 image with A-mount lens, but also has 0x940e 2nd byte=2
75
- 6 => 'Sony LA-EA4 Adapter', #(NC) ILCE-7R image with A-mount lens and having phase-detect info blocks in 0x940e AFInfo
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 => '(($$self{FlashFired} & 0x01) != 1) and ($$self{Model} =~ /^(ILCE-7SM3)/)',
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} == 160', Format => 'int8u[5]', SubDirectory => { TagTable => 'Image::ExifTool::Sony::ISOInfo' } },
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 24075 tags, with 15588 unique tag names.
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 70D.
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
  ------ -------- --------
@@ -1,6 +1,6 @@
1
1
  Summary: perl module for image data extraction
2
2
  Name: perl-Image-ExifTool
3
- Version: 12.17
3
+ Version: 12.18
4
4
  Release: 1
5
5
  License: Artistic/GPL
6
6
  Group: Development/Libraries/Perl
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ExiftoolVendored
4
- VERSION = Gem::Version.new('12.17.1')
4
+ VERSION = Gem::Version.new('12.18.0')
5
5
  end
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.17.1
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-05 00:00:00.000000000 Z
12
+ date: 2021-02-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: exiftool