exiftool_vendored 11.91.0 → 11.92.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 +4 -4
- data/bin/Changes +10 -0
- data/bin/META.json +3 -4
- data/bin/META.yml +14 -15
- data/bin/README +3 -2
- data/bin/config_files/example.config +6 -6
- data/bin/exiftool +3 -3
- data/bin/lib/Image/ExifTool.pm +1 -1
- data/bin/lib/Image/ExifTool/EXE.pm +6 -2
- data/bin/lib/Image/ExifTool/Nikon.pm +2 -1
- data/bin/lib/Image/ExifTool/Olympus.pm +1 -0
- data/bin/lib/Image/ExifTool/Panasonic.pm +25 -3
- data/bin/lib/Image/ExifTool/QuickTime.pm +16 -1
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +3 -3
- data/bin/lib/Image/ExifTool/TagLookup.pm +4 -3
- data/bin/lib/Image/ExifTool/TagNames.pod +6 -2
- data/bin/lib/Image/ExifTool/XMP.pm +14 -2
- 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
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 50d7a703ae28929445285054d73951ac9a76832b
|
4
|
+
data.tar.gz: 916debf0b2973fe88b1083a6c52a2862292da3b6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7a4a420e897349e219725639b9a0665101e74f8fb39b9f437bbd4e6adf48acba1d2991f555b1e6e682c3f58bbf229b6e90d7fbea30aeb630010ccda3a5ca53f5
|
7
|
+
data.tar.gz: 6219a3fa63e1c8c4bed6217a54b6a450f6bb9e9dce6b1a3b65ad1458cf0543547f9600275a9d472f50306ab74d1ace86830c71050c1054e0d7d6d59ec1a38c91
|
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 11.85. (Other versions are
|
8
8
|
considered development releases, and are not uploaded to CPAN.)
|
9
9
|
|
10
|
+
Mar. 19, 2020 - Version 11.92
|
11
|
+
|
12
|
+
- Added a new Nikon LensID (thanks Wolfgang Exler)
|
13
|
+
- Decode a few new Leica tags (thanks Tim Gray)
|
14
|
+
- Decode CameraAngles from Samsung Gear 360 videos
|
15
|
+
- Fixed a couple of problems decoding timed GPS metadata from NextBase dashcam
|
16
|
+
videos
|
17
|
+
- Fixed problem where -X option could produce invalid XML when reading
|
18
|
+
corrupted XMP
|
19
|
+
|
10
20
|
Mar. 5, 2020 - Version 11.91
|
11
21
|
|
12
22
|
- Decode a couple of new Panasonic tags
|
data/bin/META.json
CHANGED
@@ -4,13 +4,13 @@
|
|
4
4
|
"Phil Harvey (philharvey66 at gmail.com)"
|
5
5
|
],
|
6
6
|
"dynamic_config" : 1,
|
7
|
-
"generated_by" : "ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter version 2.
|
7
|
+
"generated_by" : "ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter version 2.133380",
|
8
8
|
"license" : [
|
9
9
|
"perl_5"
|
10
10
|
],
|
11
11
|
"meta-spec" : {
|
12
12
|
"url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",
|
13
|
-
"version" : 2
|
13
|
+
"version" : "2"
|
14
14
|
},
|
15
15
|
"name" : "Image-ExifTool",
|
16
16
|
"no_index" : {
|
@@ -47,6 +47,5 @@
|
|
47
47
|
}
|
48
48
|
},
|
49
49
|
"release_status" : "stable",
|
50
|
-
"version" : "11.
|
51
|
-
"x_serialization_backend" : "JSON::PP version 4.02"
|
50
|
+
"version" : "11.92"
|
52
51
|
}
|
data/bin/META.yml
CHANGED
@@ -3,30 +3,29 @@ abstract: 'Read and write meta information'
|
|
3
3
|
author:
|
4
4
|
- 'Phil Harvey (philharvey66 at gmail.com)'
|
5
5
|
build_requires:
|
6
|
-
ExtUtils::MakeMaker:
|
6
|
+
ExtUtils::MakeMaker: 0
|
7
7
|
configure_requires:
|
8
|
-
ExtUtils::MakeMaker:
|
8
|
+
ExtUtils::MakeMaker: 0
|
9
9
|
dynamic_config: 1
|
10
|
-
generated_by: 'ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter version 2.
|
10
|
+
generated_by: 'ExtUtils::MakeMaker version 6.66, CPAN::Meta::Converter version 2.133380'
|
11
11
|
license: perl
|
12
12
|
meta-spec:
|
13
13
|
url: http://module-build.sourceforge.net/META-spec-v1.4.html
|
14
|
-
version:
|
14
|
+
version: 1.4
|
15
15
|
name: Image-ExifTool
|
16
16
|
no_index:
|
17
17
|
directory:
|
18
18
|
- t
|
19
19
|
- inc
|
20
20
|
recommends:
|
21
|
-
Archive::Zip:
|
22
|
-
Compress::Zlib:
|
23
|
-
Digest::MD5:
|
24
|
-
Digest::SHA:
|
25
|
-
IO::Compress::RawDeflate:
|
26
|
-
IO::Uncompress::RawInflate:
|
27
|
-
POSIX::strptime:
|
28
|
-
Time::HiRes:
|
21
|
+
Archive::Zip: 0
|
22
|
+
Compress::Zlib: 0
|
23
|
+
Digest::MD5: 0
|
24
|
+
Digest::SHA: 0
|
25
|
+
IO::Compress::RawDeflate: 0
|
26
|
+
IO::Uncompress::RawInflate: 0
|
27
|
+
POSIX::strptime: 0
|
28
|
+
Time::HiRes: 0
|
29
29
|
requires:
|
30
|
-
perl:
|
31
|
-
version:
|
32
|
-
x_serialization_backend: 'CPAN::Meta::YAML version 0.018'
|
30
|
+
perl: 5.004
|
31
|
+
version: 11.92
|
data/bin/README
CHANGED
@@ -105,8 +105,8 @@ your home directory, then you would type the following commands in a
|
|
105
105
|
terminal window to extract and run ExifTool:
|
106
106
|
|
107
107
|
cd ~/Desktop
|
108
|
-
gzip -dc Image-ExifTool-11.
|
109
|
-
cd Image-ExifTool-11.
|
108
|
+
gzip -dc Image-ExifTool-11.92.tar.gz | tar -xf -
|
109
|
+
cd Image-ExifTool-11.92
|
110
110
|
./exiftool t/images/ExifTool.jpg
|
111
111
|
|
112
112
|
Note: These commands extract meta information from one of the test images.
|
@@ -197,6 +197,7 @@ distribution package:
|
|
197
197
|
example.config - General example showing config features
|
198
198
|
fotoware.config - Definitions for writing Fotoware XMP tags
|
199
199
|
gps2utm.config - Generate UTM coordinate tags from GPS info
|
200
|
+
gpsdatetime.config - Make GPSDateTime from CreateDate+SampleTime
|
200
201
|
nksc.config - Decode tags in Nikon ViewNX NKSC files
|
201
202
|
photoshop_paths.config - For extracting or copying Photoshop paths
|
202
203
|
picasa_faces.config - Convert from Picasa to MWG/MP face regions
|
@@ -15,12 +15,12 @@
|
|
15
15
|
#
|
16
16
|
# To activate this file, rename it to ".ExifTool_config" and
|
17
17
|
# place it in your home directory or the exiftool application
|
18
|
-
# directory. (On
|
19
|
-
# the command line since the GUI's
|
20
|
-
# with a dot. Use the "rename" command in Windows or "mv"
|
21
|
-
# Mac.) This causes ExifTool to automatically load the
|
22
|
-
# run. Your home directory is determined by the first
|
23
|
-
# the following environment variables:
|
18
|
+
# directory. (On Mac and some Windows systems this must be done
|
19
|
+
# via the command line since the GUI's may not allow filenames to
|
20
|
+
# begin with a dot. Use the "rename" command in Windows or "mv"
|
21
|
+
# on the Mac.) This causes ExifTool to automatically load the
|
22
|
+
# file when run. Your home directory is determined by the first
|
23
|
+
# defined of the following environment variables:
|
24
24
|
#
|
25
25
|
# 1. EXIFTOOL_HOME
|
26
26
|
# 2. HOME
|
data/bin/exiftool
CHANGED
@@ -10,7 +10,7 @@
|
|
10
10
|
use strict;
|
11
11
|
require 5.004;
|
12
12
|
|
13
|
-
my $version = '11.
|
13
|
+
my $version = '11.92';
|
14
14
|
|
15
15
|
# add our 'lib' directory to the include list BEFORE 'use Image::ExifTool'
|
16
16
|
my $exeDir;
|
@@ -27,7 +27,7 @@ BEGIN {
|
|
27
27
|
}
|
28
28
|
}
|
29
29
|
# add lib directory at start of include path
|
30
|
-
unshift @INC, "$
|
30
|
+
unshift @INC, ($0 =~ /(.*)[\\\/]/) ? "$1/lib" : './lib';
|
31
31
|
# load or disable config file if specified
|
32
32
|
if (@ARGV and lc($ARGV[0]) eq '-config') {
|
33
33
|
shift;
|
@@ -5206,7 +5206,7 @@ with this command:
|
|
5206
5206
|
|
5207
5207
|
produces output like this:
|
5208
5208
|
|
5209
|
-
-- Generated by ExifTool 11.
|
5209
|
+
-- Generated by ExifTool 11.92 --
|
5210
5210
|
File: a.jpg - 2003:10:31 15:44:19
|
5211
5211
|
(f/5.6, 1/60s, ISO 100)
|
5212
5212
|
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 = '11.
|
31
|
+
$VERSION = '11.92';
|
32
32
|
$RELEASE = '';
|
33
33
|
@ISA = qw(Exporter);
|
34
34
|
%EXPORT_TAGS = (
|
@@ -21,7 +21,7 @@ use strict;
|
|
21
21
|
use vars qw($VERSION);
|
22
22
|
use Image::ExifTool qw(:DataAccess :Utils);
|
23
23
|
|
24
|
-
$VERSION = '1.
|
24
|
+
$VERSION = '1.16';
|
25
25
|
|
26
26
|
sub ProcessPEResources($$);
|
27
27
|
sub ProcessPEVersion($$);
|
@@ -52,6 +52,10 @@ my %resourceType = (
|
|
52
52
|
);
|
53
53
|
|
54
54
|
my %languageCode = (
|
55
|
+
Notes => q{
|
56
|
+
See L<https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid>
|
57
|
+
for the full list of Microsoft language codes.
|
58
|
+
},
|
55
59
|
'0000' => 'Neutral',
|
56
60
|
'007F' => 'Invariant',
|
57
61
|
'0400' => 'Process default',
|
@@ -397,7 +401,7 @@ my %languageCode = (
|
|
397
401
|
existing StringFileInfo tags even if not listed in this table.
|
398
402
|
},
|
399
403
|
LanguageCode => {
|
400
|
-
Notes => 'extracted from the StringFileInfo value',
|
404
|
+
Notes => 'Windows code page; extracted from the StringFileInfo value',
|
401
405
|
# ref http://techsupt.winbatch.com/TS/T000001050F49.html
|
402
406
|
# (also see http://support.bigfix.com/fixlet/documents/WinInspectors-2006-08-10.pdf)
|
403
407
|
# (also see ftp://ftp.dyu.edu.tw/pub/cpatch/faq/tech/tech_nlsnt.txt)
|
@@ -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.80';
|
66
66
|
|
67
67
|
sub LensIDConv($$$);
|
68
68
|
sub ProcessNikonAVI($$$);
|
@@ -515,6 +515,7 @@ sub GetAFPointGrid($$;$);
|
|
515
515
|
'26 40 7B A0 34 40 1C 02' => 'Sigma APO 170-500mm F5-6.3 Aspherical RF',
|
516
516
|
'A7 49 80 A0 24 24 4B 06' => 'Sigma APO 200-500mm F2.8 EX DG',
|
517
517
|
'48 3C 8E B0 3C 3C 4B 02' => 'Sigma APO 300-800mm F5.6 EX DG HSM',
|
518
|
+
'D2 3C 8E B0 3C 3C 4B 02' => 'Sigma APO 300-800mm F5.6 EX DG HSM', #forum10942
|
518
519
|
#
|
519
520
|
'00 47 25 25 24 24 00 02' => 'Tamron SP AF 14mm f/2.8 Aspherical (IF) (69E)',
|
520
521
|
'C8 54 44 44 0D 0D DF 46' => 'Tamron SP 35mm f/1.4 Di USD (F045)', #IB
|
@@ -183,6 +183,7 @@ my %olympusLensTypes = (
|
|
183
183
|
'3 02 00' => 'Leica D Summilux 25mm F1.4 Asph.', #11
|
184
184
|
# Tamron lenses
|
185
185
|
'5 01 10' => 'Tamron 14-150mm F3.5-5.8 Di III', #NJ (model C001)
|
186
|
+
# '65535 07 40' - Seen for LUMIX S 16-35/F4 on Panasonic DC-S1H (ref PH)
|
186
187
|
);
|
187
188
|
|
188
189
|
# lookup for Olympus camera types (ref PH)
|
@@ -26,6 +26,7 @@
|
|
26
26
|
# 20) Bernd-Michael Kemper private communication (DMC-GX80/85)
|
27
27
|
# 21) Klaus Homeister forum post
|
28
28
|
# 22) Daniel Beichl private communication (G9)
|
29
|
+
# 23) Tim Gray private communication (M10 Monochrom)
|
29
30
|
# JD) Jens Duttke private communication (TZ3,FZ30,FZ50)
|
30
31
|
#------------------------------------------------------------------------------
|
31
32
|
|
@@ -36,7 +37,7 @@ use vars qw($VERSION %leicaLensTypes);
|
|
36
37
|
use Image::ExifTool qw(:DataAccess :Utils);
|
37
38
|
use Image::ExifTool::Exif;
|
38
39
|
|
39
|
-
$VERSION = '2.
|
40
|
+
$VERSION = '2.09';
|
40
41
|
|
41
42
|
sub ProcessLeicaLEIC($$$);
|
42
43
|
sub WhiteBalanceConv($;$$);
|
@@ -1274,7 +1275,7 @@ my %shootingMode = (
|
|
1274
1275
|
# defined in Olympus.pm which has the same values as Olympus:LensType
|
1275
1276
|
0xc4 => { #PH
|
1276
1277
|
Name => 'LensTypeMake',
|
1277
|
-
Condition => '$format eq "int16u"',
|
1278
|
+
Condition => '$format eq "int16u" and $$valPt ne "\xff\xff"', # (ignore make 65535 for now)
|
1278
1279
|
Writable => 'int16u',
|
1279
1280
|
},
|
1280
1281
|
0xc5 => { #PH
|
@@ -1968,7 +1969,7 @@ my %shootingMode = (
|
|
1968
1969
|
WRITE_PROC => \&Image::ExifTool::Exif::WriteExif,
|
1969
1970
|
CHECK_PROC => \&Image::ExifTool::Exif::CheckExif,
|
1970
1971
|
GROUPS => { 0 => 'MakerNotes', 1 => 'Leica', 2 => 'Camera' },
|
1971
|
-
NOTES => 'This information is written by the Leica S (Typ 007).',
|
1972
|
+
NOTES => 'This information is written by the Leica S (Typ 007) and M10 models.',
|
1972
1973
|
0x304 => {
|
1973
1974
|
Name => 'FocusDistance',
|
1974
1975
|
Notes => 'focus distance in mm for most models, but cm for others',
|
@@ -1989,6 +1990,27 @@ my %shootingMode = (
|
|
1989
1990
|
PrintConvInv => '$val',
|
1990
1991
|
},
|
1991
1992
|
# 0x340 - ImageUniqueID
|
1993
|
+
0x34c => { #23
|
1994
|
+
Name => 'UserProfile',
|
1995
|
+
Writable => 'string',
|
1996
|
+
},
|
1997
|
+
0x359 => { #23
|
1998
|
+
Name => 'ISOSelected',
|
1999
|
+
Writable => 'int32s',
|
2000
|
+
PrintConv => {
|
2001
|
+
0 => 'Auto',
|
2002
|
+
OTHER => sub { return shift; },
|
2003
|
+
},
|
2004
|
+
},
|
2005
|
+
0x35a => { #23
|
2006
|
+
Name => 'FNumber',
|
2007
|
+
Writable => 'int32s',
|
2008
|
+
ValueConv => '$val / 1000',
|
2009
|
+
ValueConvInv => '$val * 1000',
|
2010
|
+
PrintConv => 'sprintf("%.1f", $val)',
|
2011
|
+
PrintConvInv => '$val',
|
2012
|
+
},
|
2013
|
+
# 0x357 int32u - 0=DNG, 3162=JPG (ref 23)
|
1992
2014
|
);
|
1993
2015
|
|
1994
2016
|
# Type 2 tags (ref PH)
|
@@ -35,6 +35,7 @@
|
|
35
35
|
# 23) http://atomicparsley.sourceforge.net/mpeg-4files.html
|
36
36
|
# 24) https://github.com/sergiomb2/libmp4v2/wiki/iTunesMetadata
|
37
37
|
# 25) https://cconcolato.github.io/mp4ra/atoms.html
|
38
|
+
# 26) https://github.com/SamsungVR/android_upload_sdk/blob/master/SDKLib/src/main/java/com/samsung/msca/samsungvr/sdk/UserVideo.java
|
38
39
|
#------------------------------------------------------------------------------
|
39
40
|
|
40
41
|
package Image::ExifTool::QuickTime;
|
@@ -45,7 +46,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
45
46
|
use Image::ExifTool::Exif;
|
46
47
|
use Image::ExifTool::GPS;
|
47
48
|
|
48
|
-
$VERSION = '2.
|
49
|
+
$VERSION = '2.45';
|
49
50
|
|
50
51
|
sub ProcessMOV($$;$);
|
51
52
|
sub ProcessKeys($$$);
|
@@ -2064,6 +2065,20 @@ my %eeBox = (
|
|
2064
2065
|
Name => 'TomTomMetaData',
|
2065
2066
|
SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::TomTom' },
|
2066
2067
|
},
|
2068
|
+
# ---- Samsung Gear 360 ----
|
2069
|
+
vrot => {
|
2070
|
+
Name => 'AccelerometerData',
|
2071
|
+
Notes => q{
|
2072
|
+
accelerometer readings for each frame of the video, expressed as sets of
|
2073
|
+
yaw, pitch and roll angles in degrees
|
2074
|
+
},
|
2075
|
+
Format => 'rational64s',
|
2076
|
+
ValueConv => '$val =~ s/^-?\d+ //; \$val', # (ignore leading version/size words)
|
2077
|
+
},
|
2078
|
+
# m360 - 8 bytes "0 0 0 0 0 0 0 1"
|
2079
|
+
# opax - 164 bytes unknown (center and affine arrays? ref 26)
|
2080
|
+
# opai - 32 bytes (maybe contains a serial number starting at byte 16? - PH) (rgb gains, degamma, gamma? ref 26)
|
2081
|
+
# intv - 16 bytes all zero
|
2067
2082
|
# ---- Unknown ----
|
2068
2083
|
# CDET - 128 bytes (unknown origin)
|
2069
2084
|
# mtyp - 4 bytes all zero (some drone video)
|
@@ -675,9 +675,9 @@ sub Process_text($$$)
|
|
675
675
|
|
676
676
|
while ($$buffPt =~ /\$(\w+)([^\$]*)/g) {
|
677
677
|
my ($tag, $dat) = ($1, $2);
|
678
|
-
if ($tag =~ /^[A-Z]{2}RMC$/ and $dat =~ /^,(\d{2})(\d{2})(\d+(\.\d*)
|
678
|
+
if ($tag =~ /^[A-Z]{2}RMC$/ and $dat =~ /^,(\d{2})(\d{2})(\d+)(\.\d*)?,A?,(\d*?)(\d{1,2}\.\d+),([NS]),(\d*?)(\d{1,2}\.\d+),([EW]),(\d*\.?\d*),(\d*\.?\d*),(\d{2})(\d{2})(\d+)/) {
|
679
679
|
my $year = $15 + ($15 >= 70 ? 1900 : 2000);
|
680
|
-
my $str = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.
|
680
|
+
my $str = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2d%sZ', $year, $14, $13, $1, $2, $3, $4 || '');
|
681
681
|
$et->HandleTag($tagTbl, GPSDateTime => $str);
|
682
682
|
$et->HandleTag($tagTbl, GPSLatitude => (($5 || 0) + $6/60) * ($7 eq 'N' ? 1 : -1));
|
683
683
|
$et->HandleTag($tagTbl, GPSLongitude => (($8 || 0) + $9/60) * ($10 eq 'E' ? 1 : -1));
|
@@ -686,7 +686,7 @@ sub Process_text($$$)
|
|
686
686
|
$et->HandleTag($tagTbl, GPSSpeedRef => 'K');
|
687
687
|
}
|
688
688
|
if (length $12) {
|
689
|
-
$et->HandleTag($tagTbl, GPSTrack => $
|
689
|
+
$et->HandleTag($tagTbl, GPSTrack => $12);
|
690
690
|
$et->HandleTag($tagTbl, GPSTrackRef => 'T');
|
691
691
|
}
|
692
692
|
$found = 1;
|
@@ -544,6 +544,7 @@ my %tagLookup = (
|
|
544
544
|
'accelerationtracking' => { 81 => 0x518 },
|
545
545
|
'accelerationvector' => { 1 => 0x8 },
|
546
546
|
'accelerometer' => { 376 => 0x3 },
|
547
|
+
'accelerometerdata' => { 366 => 'vrot' },
|
547
548
|
'accelerometerx' => { 306 => 0x8d },
|
548
549
|
'accelerometery' => { 306 => 0x8e },
|
549
550
|
'accelerometerz' => { 306 => 0x8c },
|
@@ -2650,7 +2651,7 @@ my %tagLookup = (
|
|
2650
2651
|
'flightyspeed' => { 113 => 'FlightYSpeed' },
|
2651
2652
|
'flightzspeed' => { 113 => 'FlightZSpeed' },
|
2652
2653
|
'fliphorizontal' => { 259 => 0x76a43206 },
|
2653
|
-
'fnumber' => { 7 => 0x3, 9 => 0x3, 11 => 0x3, 13 => 0x3, 14 => 0x3, 15 => 0x3, 16 => 0x3, 17 => 0x3, 18 => 0x3, 19 => 0x3, 20 => 0x3, 21 => 0x3, 22 => 0x3, 23 => 0x3, 24 => 0x3, 25 => 0x3, 26 => 0x3, 27 => 0x3, 28 => 0x3, 29 => 0x3, 30 => 0x5, 31 => 0x6, 74 => 0x15, 116 => 0x829d, 133 => 0xfd04, 136 => 0x1e, 138 => 0xfa23, 140 => 0xf103, 143 => 0x13, 145 => 0x3c, 147 => 0x1c, 148 => 0x18, 150 => 0xc, 159 => 'FNumber', 176 => 0xa, 177 => 0x36, 178 => 0x47, 179 => 0x9, 182 => 0x49c7, 217 => 0x38, 341 => 0x13, 380 => 0xa019, 383 => [0x31,0x49], 393 => 0x1, 394 => 0x1, 411 => [0x20,0x22,0x26], 468 => 'FNumber' },
|
2654
|
+
'fnumber' => { 7 => 0x3, 9 => 0x3, 11 => 0x3, 13 => 0x3, 14 => 0x3, 15 => 0x3, 16 => 0x3, 17 => 0x3, 18 => 0x3, 19 => 0x3, 20 => 0x3, 21 => 0x3, 22 => 0x3, 23 => 0x3, 24 => 0x3, 25 => 0x3, 26 => 0x3, 27 => 0x3, 28 => 0x3, 29 => 0x3, 30 => 0x5, 31 => 0x6, 74 => 0x15, 116 => 0x829d, 133 => 0xfd04, 136 => 0x1e, 138 => 0xfa23, 140 => 0xf103, 143 => 0x13, 145 => 0x3c, 147 => 0x1c, 148 => 0x18, 150 => 0xc, 159 => 'FNumber', 176 => 0xa, 177 => 0x36, 178 => 0x47, 179 => 0x9, 182 => 0x49c7, 217 => 0x38, 305 => 0x35a, 341 => 0x13, 380 => 0xa019, 383 => [0x31,0x49], 393 => 0x1, 394 => 0x1, 411 => [0x20,0x22,0x26], 468 => 'FNumber' },
|
2654
2655
|
'focaldistance' => { 448 => 'FocalDistance' },
|
2655
2656
|
'focallength' => { 7 => 0x1d, 8 => 0xa, 9 => 0x23, 10 => 0x9, 11 => 0x1d, 12 => 0x9, 13 => 0x1e, 14 => 0x1d, 15 => 0x1d, 16 => 0x1e, 17 => 0x1e, 18 => 0x1e, 19 => 0x28, 20 => 0x1e, 21 => 0x23, 22 => 0x1e, 23 => 0x1e, 24 => 0x23, 25 => 0x23, 26 => 0x23, 27 => 0x23, 28 => 0x1e, 29 => 0x23, 57 => 0x1, 110 => 0x1d, 116 => 0x920a, 143 => 0x1d, 159 => 'FocalLength', 176 => 0x12, 212 => 0xa, 213 => 0xb, 217 => [0xc,0x3c], 300 => 0x1, 341 => 0x1d, 350 => 0x403, 373 => 0x1500, 392 => 0xe, 418 => 0x1278, 419 => 0x1134, 420 => 0x32c, 421 => 0x32c, 422 => 0x30a, 468 => 'FocalLength' },
|
2656
2657
|
'focallength2' => { 411 => [0x23,0x25,0x29] },
|
@@ -3276,6 +3277,7 @@ my %tagLookup = (
|
|
3276
3277
|
'isoexpansion' => { 81 => 0x103, 82 => 0x7, 83 => 0x8, 86 => 0x8, 210 => 0x4 },
|
3277
3278
|
'isoexpansion2' => { 210 => 0xa },
|
3278
3279
|
'isofloor' => { 322 => 0x6 },
|
3280
|
+
'isoselected' => { 305 => 0x359 },
|
3279
3281
|
'isoselection' => { 219 => 0xf },
|
3280
3282
|
'isosensitivitystep' => { 274 => '6.2', 276 => '6.2' },
|
3281
3283
|
'isosetting' => { 136 => 0x5e, 148 => 0x14, 152 => 'ISOSetting', 176 => 0x24, 177 => 0x26, 178 => 0x1c, 179 => 0x13, 184 => 0x6, 219 => 0x13, 322 => '17.3', 372 => 0x27, 393 => 0x16, 394 => 0x14, 395 => 0x2, 404 => 0x6d, 405 => 0x0 },
|
@@ -5848,7 +5850,7 @@ my %tagLookup = (
|
|
5848
5850
|
'userdef3picturestyle' => { 19 => 0x110, 67 => 0xdc, 68 => 0xf4 },
|
5849
5851
|
'userfields' => { 455 => 'UserFields' },
|
5850
5852
|
'userlabel' => { 367 => 0x2b, 368 => 0x5a, 369 => 0x68 },
|
5851
|
-
'userprofile' => { 301 => 0x302, 308 => 0x3038 },
|
5853
|
+
'userprofile' => { 301 => 0x302, 305 => 0x34c, 308 => 0x3038 },
|
5852
5854
|
'userrating' => { 360 => 'rating.user' },
|
5853
5855
|
'usmlenselectronicmf' => { 2 => 0x7, 80 => 0x7, 81 => 0x501 },
|
5854
5856
|
'uspsnumber' => { 478 => 'uspsNumber' },
|
@@ -6276,7 +6278,6 @@ my %tagExists = (
|
|
6276
6278
|
'abstract' => 1,
|
6277
6279
|
'abstractfilename' => 1,
|
6278
6280
|
'acceldata' => 1,
|
6279
|
-
'accelerometerdata' => 1,
|
6280
6281
|
'accelerometertime' => 1,
|
6281
6282
|
'accessdate' => 1,
|
6282
6283
|
'accountname' => 1,
|
@@ -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 23357 tags, with 15304 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
|
@@ -15167,13 +15167,16 @@ images.
|
|
15167
15167
|
|
15168
15168
|
=head3 Panasonic Leica9 Tags
|
15169
15169
|
|
15170
|
-
This information is written by the Leica S (Typ 007).
|
15170
|
+
This information is written by the Leica S (Typ 007) and M10 models.
|
15171
15171
|
|
15172
15172
|
Tag ID Tag Name Writable
|
15173
15173
|
------ -------- --------
|
15174
15174
|
0x0304 FocusDistance int32u
|
15175
15175
|
0x0311 ExternalSensorBrightnessValue rational64s
|
15176
15176
|
0x0312 MeasuredLV rational64s
|
15177
|
+
0x034c UserProfile string
|
15178
|
+
0x0359 ISOSelected int32s
|
15179
|
+
0x035a FNumber int32s
|
15177
15180
|
|
15178
15181
|
=head3 Panasonic Type2 Tags
|
15179
15182
|
|
@@ -26176,6 +26179,7 @@ the config file.
|
|
26176
26179
|
'titl' Title string/
|
26177
26180
|
'urat' UserRating no
|
26178
26181
|
'vndr' Vendor string
|
26182
|
+
'vrot' AccelerometerData no
|
26179
26183
|
'yrrc' Year no
|
26180
26184
|
"\xa9ART" Artist string
|
26181
26185
|
"\xa9TIM" StartTimecode string
|
@@ -49,7 +49,7 @@ use Image::ExifTool::Exif;
|
|
49
49
|
use Image::ExifTool::GPS;
|
50
50
|
require Exporter;
|
51
51
|
|
52
|
-
$VERSION = '3.
|
52
|
+
$VERSION = '3.32';
|
53
53
|
@ISA = qw(Exporter);
|
54
54
|
@EXPORT_OK = qw(EscapeXML UnescapeXML);
|
55
55
|
|
@@ -3047,8 +3047,20 @@ sub FoundXMP($$$$;$)
|
|
3047
3047
|
if ($$tagTablePtr{NAMESPACE}) {
|
3048
3048
|
$tagID = $tag;
|
3049
3049
|
} else {
|
3050
|
+
$xns = $xmpNS{$ns};
|
3051
|
+
unless (defined $xns) {
|
3052
|
+
$xns = $ns;
|
3053
|
+
# validate namespace prefix
|
3054
|
+
unless ($ns =~ /^[A-Z_a-z\x80-\xff][-.0-9A-Z_a-z\x80-\xff]*$/ or $ns eq '') {
|
3055
|
+
$et->Warn("Invalid XMP namespace prefix '${ns}'");
|
3056
|
+
# clean up prefix for use as an ExifTool group name
|
3057
|
+
$ns =~ tr/-.0-9A-Z_a-z\x80-\xff//dc;
|
3058
|
+
$ns =~ /^[A-Z_a-z\x80-\xff]/ or $ns = "ns_$ns";
|
3059
|
+
$stdXlatNS{$xns} = $ns;
|
3060
|
+
$xmpNS{$ns} = $xns;
|
3061
|
+
}
|
3062
|
+
}
|
3050
3063
|
# add XMP namespace prefix to avoid collisions in variable-namespace tables
|
3051
|
-
$xns = $xmpNS{$ns} || $ns;
|
3052
3064
|
$tagID = "$xns:$tag";
|
3053
3065
|
# add namespace to top-level structure property
|
3054
3066
|
$structProps[0][0] = "$xns:" . $structProps[0][0] if @structProps;
|
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: 11.
|
4
|
+
version: 11.92.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-03-
|
12
|
+
date: 2020-03-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: exiftool
|