exiftool_vendored 12.11.0 → 12.12.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 +12 -0
- data/bin/MANIFEST +2 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +2 -2
- data/bin/exiftool +11 -5
- data/bin/lib/Image/ExifTool.pm +4 -2
- data/bin/lib/Image/ExifTool/Canon.pm +2 -1
- data/bin/lib/Image/ExifTool/Geotag.pm +29 -10
- data/bin/lib/Image/ExifTool/Import.pm +2 -2
- data/bin/lib/Image/ExifTool/Nikon.pm +1 -0
- data/bin/lib/Image/ExifTool/Olympus.pm +1 -0
- data/bin/lib/Image/ExifTool/QuickTime.pm +18 -9
- data/bin/lib/Image/ExifTool/Sony.pm +3 -1
- 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: fb85849da2fdeb7f34dcbd03ba9548e5744c692f93d8163cf3029a5189f75d2c
|
|
4
|
+
data.tar.gz: 0fd722ec987c17f4449f7eb9d18101286ceff673134d784833acd811cd376a09
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8273b84dd45c1b266eec1a0c13c14e0c60e6f68c3bbd76fce169002a9983606b76f70e636199b751dda2f8f6992ea39b164f4d24c29849fa494b30b4ad14b1fa
|
|
7
|
+
data.tar.gz: a65c0a97fdbc17365a46bd7605b36e72557004549f92ba9fc1f02d7358899643932125a499d65daa88eddebbf9c7a8d343c037b70baa4ff30802c97dfb66efd6
|
data/bin/Changes
CHANGED
|
@@ -7,6 +7,18 @@ RSS feed: https://exiftool.org/rss.xml
|
|
|
7
7
|
Note: The most recent production release is Version 12.00. (Other versions are
|
|
8
8
|
considered development releases, and are not uploaded to CPAN.)
|
|
9
9
|
|
|
10
|
+
Dec. 4, 2020 - Version 12.12
|
|
11
|
+
|
|
12
|
+
- Added ability to geotag from DJI CSV log files
|
|
13
|
+
- Added a new CanonModelID
|
|
14
|
+
- Added a couple of new Sony LensType values (thanks LibRaw)
|
|
15
|
+
- Enhanced -csvDelim option to allow "\t", "\n", "\r" and "\\"
|
|
16
|
+
- Unescape "\b" and "\f" in imported JSON values
|
|
17
|
+
- Fixed bug introduced in 12.10 which generated a "Not an integer" warning
|
|
18
|
+
when attempting to shift some QuickTime date/time tags
|
|
19
|
+
- Fixed shared-write permission problem with -@ argfile when using -stay_open
|
|
20
|
+
and a filename containing special characters on Windows
|
|
21
|
+
|
|
10
22
|
Nov. 27, 2020 - Version 12.11
|
|
11
23
|
|
|
12
24
|
- Added -csvDelim option
|
data/bin/MANIFEST
CHANGED
|
@@ -567,6 +567,7 @@ t/GeoTiff_4.out
|
|
|
567
567
|
t/Geotag.t
|
|
568
568
|
t/Geotag_10.out
|
|
569
569
|
t/Geotag_11.out
|
|
570
|
+
t/Geotag_12.out
|
|
570
571
|
t/Geotag_2.out
|
|
571
572
|
t/Geotag_3.out
|
|
572
573
|
t/Geotag_5.out
|
|
@@ -986,6 +987,7 @@ t/images/Geotag.log
|
|
|
986
987
|
t/images/Geotag.xml
|
|
987
988
|
t/images/Geotag2.log
|
|
988
989
|
t/images/Geotag3.log
|
|
990
|
+
t/images/Geotag_DJI_2020-12-02_[07-50-31].csv
|
|
989
991
|
t/images/GoPro.jpg
|
|
990
992
|
t/images/HTML.html
|
|
991
993
|
t/images/ICC_Profile.icc
|
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.12.tar.gz | tar -xf -
|
|
110
|
+
cd Image-ExifTool-12.12
|
|
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.12';
|
|
14
14
|
|
|
15
15
|
# add our 'lib' directory to the include list BEFORE 'use Image::ExifTool'
|
|
16
16
|
my $exeDir;
|
|
@@ -859,7 +859,11 @@ for (;;) {
|
|
|
859
859
|
}
|
|
860
860
|
if (/^csvdelim$/i) {
|
|
861
861
|
$csvDelim = shift;
|
|
862
|
-
defined $csvDelim or Error("Expecting argument for -csvDelim option\n"), $badCmd=1;
|
|
862
|
+
defined $csvDelim or Error("Expecting argument for -csvDelim option\n"), $badCmd=1, next;
|
|
863
|
+
$csvDelim =~ /"/ and Error("CSV delimiter can not contain a double quote\n"), $badCmd=1, next;
|
|
864
|
+
my %unescape = ( 't'=>"\t", 'n'=>"\n", 'r'=>"\r", '\\' => '\\' );
|
|
865
|
+
$csvDelim =~ s/\\(.)/$unescape{$1}||"\\$1"/sge;
|
|
866
|
+
$mt->Options(CSVDelim => $csvDelim);
|
|
863
867
|
next;
|
|
864
868
|
}
|
|
865
869
|
if (/^d$/ or $a eq 'dateformat') {
|
|
@@ -5095,8 +5099,10 @@ generate a fixed-column CSV file instead of using the B<-csv> option.
|
|
|
5095
5099
|
|
|
5096
5100
|
=item B<-csvDelim> I<STR>
|
|
5097
5101
|
|
|
5098
|
-
Set the delimiter for separating CSV entries for
|
|
5099
|
-
|
|
5102
|
+
Set the delimiter for separating CSV entries for CSV file input/output via
|
|
5103
|
+
the B<-csv> option. I<STR> may contain "\t", "\n", "\r" and "\\" to
|
|
5104
|
+
represent TAB, LF, CR and '\' respectively. A double quote is not allowed
|
|
5105
|
+
in the delimiter. Default is ','.
|
|
5100
5106
|
|
|
5101
5107
|
=item B<-d> I<FMT> (B<-dateFormat>)
|
|
5102
5108
|
|
|
@@ -5349,7 +5355,7 @@ with this command:
|
|
|
5349
5355
|
|
|
5350
5356
|
produces output like this:
|
|
5351
5357
|
|
|
5352
|
-
-- Generated by ExifTool 12.
|
|
5358
|
+
-- Generated by ExifTool 12.12 --
|
|
5353
5359
|
File: a.jpg - 2003:10:31 15:44:19
|
|
5354
5360
|
(f/5.6, 1/60s, ISO 100)
|
|
5355
5361
|
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.12';
|
|
32
32
|
$RELEASE = '';
|
|
33
33
|
@ISA = qw(Exporter);
|
|
34
34
|
%EXPORT_TAGS = (
|
|
@@ -4002,7 +4002,9 @@ sub Open($*$;$)
|
|
|
4002
4002
|
}
|
|
4003
4003
|
my $share = 0;
|
|
4004
4004
|
eval {
|
|
4005
|
-
|
|
4005
|
+
unless ($access & Win32API::File::GENERIC_WRITE()) {
|
|
4006
|
+
$share = Win32API::File::FILE_SHARE_READ() | Win32API::File::FILE_SHARE_WRITE();
|
|
4007
|
+
}
|
|
4006
4008
|
};
|
|
4007
4009
|
my $wh = eval { Win32API::File::CreateFileW($file, $access, $share, [], $create, 0, []) };
|
|
4008
4010
|
return undef unless $wh;
|
|
@@ -88,7 +88,7 @@ sub ProcessCTMD($$$);
|
|
|
88
88
|
sub ProcessExifInfo($$$);
|
|
89
89
|
sub SwapWords($);
|
|
90
90
|
|
|
91
|
-
$VERSION = '4.
|
|
91
|
+
$VERSION = '4.42';
|
|
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)
|
|
@@ -944,6 +944,7 @@ $VERSION = '4.41';
|
|
|
944
944
|
0x80000436 => 'EOS SL3 / 250D / Kiss X10', #25
|
|
945
945
|
0x80000437 => 'EOS 90D', #IB
|
|
946
946
|
0x80000453 => 'EOS R6', #PH
|
|
947
|
+
0x80000467 => 'PowerShot ZOOM',
|
|
947
948
|
0x80000520 => 'EOS D2000C', #IB
|
|
948
949
|
0x80000560 => 'EOS D6000C', #PH (guess)
|
|
949
950
|
);
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
# 2016/07/13 - PH Added ability to geotag date/time only
|
|
14
14
|
# 2019/07/02 - PH Added ability to read IMU CSV files
|
|
15
15
|
# 2019/11/10 - PH Also write pitch to CameraElevationAngle
|
|
16
|
+
# 2020/12/01 - PH Added ability to read DJI CSV log files
|
|
16
17
|
#
|
|
17
18
|
# References: 1) http://www.topografix.com/GPX/1/1/
|
|
18
19
|
# 2) http://www.gpsinformation.org/dale/nmea.htm#GSA
|
|
@@ -27,7 +28,7 @@ use vars qw($VERSION);
|
|
|
27
28
|
use Image::ExifTool qw(:Public);
|
|
28
29
|
use Image::ExifTool::GPS;
|
|
29
30
|
|
|
30
|
-
$VERSION = '1.
|
|
31
|
+
$VERSION = '1.64';
|
|
31
32
|
|
|
32
33
|
sub JITTER() { return 2 } # maximum time jitter
|
|
33
34
|
|
|
@@ -133,7 +134,7 @@ sub LoadTrackLog($$;$)
|
|
|
133
134
|
my ($et, $val) = @_;
|
|
134
135
|
my ($raf, $from, $time, $isDate, $noDate, $noDateChanged, $lastDate, $dateFlarm);
|
|
135
136
|
my ($nmeaStart, $fixSecs, @fixTimes, $lastFix, %nmea, @csvHeadings);
|
|
136
|
-
my ($canCut, $cutPDOP, $cutHDOP, $cutSats, $e0, $e1, @tmp);
|
|
137
|
+
my ($canCut, $cutPDOP, $cutHDOP, $cutSats, $e0, $e1, @tmp, $trackFile, $trackTime);
|
|
137
138
|
|
|
138
139
|
unless (eval { require Time::Local }) {
|
|
139
140
|
return 'Geotag feature requires Time::Local installed';
|
|
@@ -159,6 +160,7 @@ sub LoadTrackLog($$;$)
|
|
|
159
160
|
} else {
|
|
160
161
|
# $val is track file name
|
|
161
162
|
if ($et->Open(\*EXIFTOOL_TRKFILE, $val)) {
|
|
163
|
+
$trackFile = $val;
|
|
162
164
|
$raf = new File::RandomAccess(\*EXIFTOOL_TRKFILE);
|
|
163
165
|
unless ($raf->Read($_, 256)) {
|
|
164
166
|
close EXIFTOOL_TRKFILE;
|
|
@@ -201,6 +203,8 @@ sub LoadTrackLog($$;$)
|
|
|
201
203
|
my $skipped = 0;
|
|
202
204
|
my $lastSecs = 0;
|
|
203
205
|
my $fix = { };
|
|
206
|
+
my $csvDelim = $et->Options('CSVDelim');
|
|
207
|
+
$csvDelim = ',' unless defined $csvDelim;
|
|
204
208
|
my (@saveFix, $timeSpan);
|
|
205
209
|
for (;;) {
|
|
206
210
|
$raf->ReadLine($_) or last;
|
|
@@ -230,19 +234,31 @@ sub LoadTrackLog($$;$)
|
|
|
230
234
|
$format = 'Winplus';
|
|
231
235
|
} elsif (/^\s*\d+\s+.*\sypr\s*$/ and (@tmp=split) == 12) {
|
|
232
236
|
$format = 'Bramor';
|
|
233
|
-
} elsif (/\b(GPS)?Date/i and /\b(GPS)?(Date)?Time/i and
|
|
237
|
+
} elsif (((/\b(GPS)?Date/i and /\b(GPS)?(Date)?Time/i) or /\bTime\(seconds\)/i) and /\Q$csvDelim/) {
|
|
234
238
|
chomp;
|
|
235
|
-
@csvHeadings = split
|
|
239
|
+
@csvHeadings = split /\Q$csvDelim/;
|
|
236
240
|
$format = 'CSV';
|
|
237
241
|
# convert recognized headings to our parameter names
|
|
238
242
|
foreach (@csvHeadings) {
|
|
239
243
|
my $param;
|
|
240
244
|
s/^GPS ?//; # remove leading "GPS" to simplify regex patterns
|
|
241
|
-
if (/^
|
|
245
|
+
if (/^Time ?\(seconds\)$/i) { # DJI
|
|
246
|
+
# DJI CSV log files have a column "Time(seconds)" which is seconds since
|
|
247
|
+
# the start of the flight. The date/time is obtained from the file name.
|
|
248
|
+
$param = 'runtime';
|
|
249
|
+
if ($trackFile and $trackFile =~ /(\d{4})-(\d{2})-(\d{2})[^\/]+(\d{2})-(\d{2})-(\d{2})[^\/]*$/) {
|
|
250
|
+
$trackTime = Image::ExifTool::TimeLocal($6,$5,$4,$3,$2-1,$1);
|
|
251
|
+
my $utc = PrintFixTime($trackTime);
|
|
252
|
+
my $tzs = Image::ExifTool::TimeZoneString([$6,$5,$4,$3,$2-1,$1-1900],$trackTime);
|
|
253
|
+
$et->VPrint(2, " DJI start time: $utc (local timezone is $tzs)\n");
|
|
254
|
+
} else {
|
|
255
|
+
return 'Error getting start time from file name for DJI CSV track file';
|
|
256
|
+
}
|
|
257
|
+
} elsif (/^Date ?Time/i) { # ExifTool addition
|
|
242
258
|
$param = 'datetime';
|
|
243
259
|
} elsif (/^Date/i) {
|
|
244
260
|
$param = 'date';
|
|
245
|
-
} elsif (/^Time/i) {
|
|
261
|
+
} elsif (/^Time(?! ?\(text\))/i) { # (ignore DJI "Time(text)" column)
|
|
246
262
|
$param = 'time';
|
|
247
263
|
} elsif (/^(Pos)?Lat/i) {
|
|
248
264
|
$param = 'lat';
|
|
@@ -423,7 +439,7 @@ DoneFix: $isDate = 1;
|
|
|
423
439
|
goto DoneFix; # save this fix
|
|
424
440
|
} elsif ($format eq 'CSV') {
|
|
425
441
|
chomp;
|
|
426
|
-
my @vals = split
|
|
442
|
+
my @vals = split /\Q$csvDelim/;
|
|
427
443
|
#
|
|
428
444
|
# CSV format output of GPS/IMU POS system
|
|
429
445
|
# Date* - date in DD/MM/YYYY format
|
|
@@ -435,7 +451,7 @@ DoneFix: $isDate = 1;
|
|
|
435
451
|
# [Angle]Pitch* - pitch angle in degrees
|
|
436
452
|
# [Angle]Roll* - roll angle in degrees
|
|
437
453
|
# (ExifTool enhancements allow for standard tag names or descriptions as the column headings,
|
|
438
|
-
# add support for time zones and flexible coordinates, and allow
|
|
454
|
+
# add support for time zones and flexible coordinates, and allow new DateTime and Shift columns)
|
|
439
455
|
#
|
|
440
456
|
my ($param, $date, $secs);
|
|
441
457
|
foreach $param (@csvHeadings) {
|
|
@@ -463,6 +479,9 @@ DoneFix: $isDate = 1;
|
|
|
463
479
|
}
|
|
464
480
|
} elsif ($param eq 'lat' or $param eq 'lon') {
|
|
465
481
|
$$fix{$param} = Image::ExifTool::GPS::ToDegrees($val, 1);
|
|
482
|
+
} elsif ($param eq 'runtime') {
|
|
483
|
+
$date = $trackTime;
|
|
484
|
+
$secs = $val;
|
|
466
485
|
} else {
|
|
467
486
|
$$fix{$param} = $val;
|
|
468
487
|
}
|
|
@@ -1378,8 +1397,8 @@ This module is used by Image::ExifTool
|
|
|
1378
1397
|
This module loads GPS track logs, interpolates to determine position based
|
|
1379
1398
|
on time, and sets new GPS values for geotagging images. Currently supported
|
|
1380
1399
|
formats are GPX, NMEA RMC/GGA/GLL, KML, IGC, Garmin XML and TCX, Magellan
|
|
1381
|
-
PMGNTRK, Honeywell PTNTHPR, Winplus Beacon text, IMU CSV,
|
|
1382
|
-
files.
|
|
1400
|
+
PMGNTRK, Honeywell PTNTHPR, Winplus Beacon text, IMU CSV, DJI CSV, and
|
|
1401
|
+
Bramor gEO log files.
|
|
1383
1402
|
|
|
1384
1403
|
Methods in this module should not be called directly. Instead, the Geotag
|
|
1385
1404
|
feature is accessed by writing the values of the ExifTool Geotag, Geosync
|
|
@@ -12,13 +12,13 @@ require Exporter;
|
|
|
12
12
|
|
|
13
13
|
use vars qw($VERSION @ISA @EXPORT_OK);
|
|
14
14
|
|
|
15
|
-
$VERSION = '1.
|
|
15
|
+
$VERSION = '1.10';
|
|
16
16
|
@ISA = qw(Exporter);
|
|
17
17
|
@EXPORT_OK = qw(ReadCSV ReadJSON);
|
|
18
18
|
|
|
19
19
|
sub ReadJSONObject($;$);
|
|
20
20
|
|
|
21
|
-
my %unescapeJSON = ( 't'=>"\t", 'n'=>"\n", 'r'=>"\r" );
|
|
21
|
+
my %unescapeJSON = ( 't'=>"\t", 'n'=>"\n", 'r'=>"\r", 'b' => "\b", 'f' => "\f" );
|
|
22
22
|
my $charset;
|
|
23
23
|
|
|
24
24
|
#------------------------------------------------------------------------------
|
|
@@ -138,6 +138,7 @@ my %olympusLensTypes = (
|
|
|
138
138
|
'1 15 00' => 'Sigma 10-20mm F4.0-5.6 EX DC HSM', #11
|
|
139
139
|
'1 16 00' => 'Sigma APO 70-200mm F2.8 II EX DG Macro HSM', #11
|
|
140
140
|
'1 17 00' => 'Sigma 50mm F1.4 EX DG HSM', #11
|
|
141
|
+
'1 18 60' => 'Test',
|
|
141
142
|
# Panasonic/Leica lenses
|
|
142
143
|
'2 01 00' => 'Leica D Vario Elmarit 14-50mm F2.8-3.5 Asph.', #11
|
|
143
144
|
'2 01 10' => 'Lumix G Vario 14-45mm F3.5-5.6 Asph. Mega OIS', #16
|
|
@@ -217,8 +217,13 @@ my %ftypLookup = (
|
|
|
217
217
|
# information for time/date-based tags (time zero is Jan 1, 1904)
|
|
218
218
|
my %timeInfo = (
|
|
219
219
|
Notes => 'converted from UTC to local time if the QuickTimeUTC option is set',
|
|
220
|
+
Shift => 'Time',
|
|
221
|
+
Writable => 1,
|
|
222
|
+
Permanent => 1,
|
|
223
|
+
DelValue => 0,
|
|
220
224
|
# It is not uncommon for brain-dead software to use the wrong time zero,
|
|
221
225
|
# so assume a time zero of Jan 1, 1970 if the date is before this
|
|
226
|
+
# Note: This value will be in UTC if generated by a system that is aware of the time zone
|
|
222
227
|
RawConv => q{
|
|
223
228
|
my $offset = (66 * 365 + 17) * 24 * 3600;
|
|
224
229
|
return $val - $offset if $val >= $offset or $$self{OPTIONS}{QuickTimeUTC};
|
|
@@ -227,14 +232,18 @@ my %timeInfo = (
|
|
|
227
232
|
}
|
|
228
233
|
return $val;
|
|
229
234
|
},
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
235
|
+
RawConvInv => q{
|
|
236
|
+
if ($$self{FileType} eq 'CR3' and not $self->Options('QuickTimeUTC')) {
|
|
237
|
+
# convert to UTC
|
|
238
|
+
my $offset = (66 * 365 + 17) * 24 * 3600;
|
|
239
|
+
$val = ConvertUnixTime($val - $offset);
|
|
240
|
+
$val = GetUnixTime($val, 1) + $offset;
|
|
241
|
+
}
|
|
242
|
+
return $val;
|
|
243
|
+
},
|
|
244
|
+
# (all CR3 files store UTC times - PH)
|
|
236
245
|
ValueConv => 'ConvertUnixTime($val, $self->Options("QuickTimeUTC") || $$self{FileType} eq "CR3")',
|
|
237
|
-
ValueConvInv => '$val',
|
|
246
|
+
ValueConvInv => 'GetUnixTime($val, $self->Options("QuickTimeUTC")) + (66 * 365 + 17) * 24 * 3600',
|
|
238
247
|
PrintConv => '$self->ConvertDateTime($val)',
|
|
239
248
|
PrintConvInv => '$self->InverseDateTime($val)',
|
|
240
249
|
# (can't put Groups here because they aren't constant!)
|
|
@@ -8639,10 +8648,10 @@ sub ProcessSampleDesc($$$)
|
|
|
8639
8648
|
my $dirLen = $$dirInfo{DirLen} || (length($$dataPt) - $pos);
|
|
8640
8649
|
return 0 if $pos + 8 > $dirLen;
|
|
8641
8650
|
|
|
8642
|
-
my $num = Get32u($dataPt, 4); # get number of sample
|
|
8651
|
+
my $num = Get32u($dataPt, 4); # get number of sample entries in table
|
|
8643
8652
|
$pos += 8;
|
|
8644
8653
|
my $i;
|
|
8645
|
-
for ($i=0; $i<$num; ++$i) { # loop through sample
|
|
8654
|
+
for ($i=0; $i<$num; ++$i) { # loop through sample entries
|
|
8646
8655
|
last if $pos + 8 > $dirLen;
|
|
8647
8656
|
my $size = Get32u($dataPt, $pos);
|
|
8648
8657
|
last if $pos + $size > $dirLen;
|
|
@@ -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.33';
|
|
38
38
|
|
|
39
39
|
sub ProcessSRF($$$);
|
|
40
40
|
sub ProcessSR2($$$);
|
|
@@ -217,6 +217,8 @@ sub PrintInvLensSpec($;$$);
|
|
|
217
217
|
50518 => 'Sigma 100-400mm F5-6.3 DG DN OS | C', #JR (020)
|
|
218
218
|
50521 => 'Sigma 85mm F1.4 DG DN | A', #JR (020)
|
|
219
219
|
50522 => 'Sigma 105mm F2.8 DG DN MACRO | A', #JR (020)
|
|
220
|
+
50523 => 'Sigma 65mm F2 DG DN | C', #IB (020)
|
|
221
|
+
50524 => 'Sigma 35mm F2 DG DN | C', #IB (020)
|
|
220
222
|
|
|
221
223
|
50992 => 'Voigtlander SUPER WIDE-HELIAR 15mm F4.5 III', #JR
|
|
222
224
|
50993 => 'Voigtlander HELIAR-HYPER WIDE 10mm F5.6', #IB
|
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.12.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: 2020-
|
|
12
|
+
date: 2020-12-07 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: exiftool
|