exiftool_vendored 12.09.0 → 12.10.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 +16 -4
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +2 -2
- data/bin/exiftool +30 -13
- data/bin/lib/Image/ExifTool.pm +2 -1
- data/bin/lib/Image/ExifTool.pod +4 -3
- data/bin/lib/Image/ExifTool/Canon.pm +5 -3
- data/bin/lib/Image/ExifTool/MacOS.pm +3 -1
- data/bin/lib/Image/ExifTool/Nikon.pm +3 -3
- data/bin/lib/Image/ExifTool/QuickTime.pm +5 -4
- data/bin/lib/Image/ExifTool/Sony.pm +11 -11
- data/bin/lib/Image/ExifTool/TagLookup.pm +1 -0
- data/bin/lib/Image/ExifTool/TagNames.pod +5 -5
- data/bin/lib/Image/ExifTool/Writer.pl +3 -3
- data/bin/lib/Image/ExifTool/XMP2.pl +1 -0
- 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: cf0281354d058359e076603ce713b412cd838a4c5ffe326534275ec858cb11a1
|
4
|
+
data.tar.gz: a556f35232b6cca374d9b118d8b8b8ac9bf4e09e5714fae9c1f3c216ca658b20
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ec70f7062aaee4ed619bb00bf91fa3d23cee45ebb15b1c3b3c383ee8867ea29b63b01e199a49dd2ef59f727eb8a156015f817ff31271c81ed69d3d560ea90a78
|
7
|
+
data.tar.gz: 33512db4034b62eeddecc4b3b8ec5c370d089cc9526ec1e37989bf26fef200ffe563b3c42e4dd3395be867a81e2bd2790b816610d3249a70d49828de1fdecb9e
|
data/bin/Changes
CHANGED
@@ -7,6 +7,20 @@ 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
|
+
Nov. 12, 2020 - Version 12.10
|
11
|
+
|
12
|
+
- Added -validate test for proper TIFF magic number in JPEG EXIF header
|
13
|
+
- Added support for Nikon Z7 LensData version 0801
|
14
|
+
- Added a new XMP-GPano tag
|
15
|
+
- Decode ColorData for the Canon EOS 1DXmkIII (thanks LibRaw)
|
16
|
+
- Decode more tags for the Sony ILCE-7SM3 (thanks Jos Roost)
|
17
|
+
- Automatically apply QuickTimeUTC option for CR3 files
|
18
|
+
- Improved decoding of XAttrMDLabel from MacOS files
|
19
|
+
- Ignore time zones when writing date/time values and using the -d option
|
20
|
+
- Enhanced -echo3 and -echo4 options to allow exit status to be returned
|
21
|
+
- Changed -execute so the -q option no longer suppresses the "{ready}" message
|
22
|
+
when a synchronization number is used (eg. -execute123)
|
23
|
+
|
10
24
|
Oct. 29, 2020 - Version 12.09
|
11
25
|
|
12
26
|
- Added ability to copy CanonMakerNotes from CR3 images to other file types
|
@@ -17,15 +31,14 @@ Oct. 29, 2020 - Version 12.09
|
|
17
31
|
- Added a new Sony LensType (thanks Jos Roost)
|
18
32
|
- Added a new Nikon Z lens (thanks LibRaw)
|
19
33
|
- Added a new Canon LensType
|
20
|
-
- Added a new XMP-crs tag
|
21
34
|
- Decode ColorData for Canon EOS R5/R6
|
22
35
|
- Decode a couple of new HEIF tags
|
23
36
|
- Decode FirmwareVersion for Canon M50
|
24
|
-
- Patched EndDir() feature so subdirectories are always processed when -r is
|
25
|
-
used (previously, EndDir() would end processing of a directory completely)
|
26
37
|
- Improved decoding of Sony CreativeStyle tags (thanks Jos Roost)
|
27
38
|
- Improved parsing of Radiance files to recognize comments
|
28
39
|
- Renamed GIF AspectRatio tag to PixelAspectRatio
|
40
|
+
- Patched EndDir() feature so subdirectories are always processed when -r is
|
41
|
+
used (previously, EndDir() would end processing of a directory completely)
|
29
42
|
- Yet another tweak to the EventTime formatting rules (also allow time-only
|
30
43
|
values with fractional seconds and a time zone)
|
31
44
|
- Avoid loading GoPro module unnecessarily when reading MP4 videos from some
|
@@ -33,7 +46,6 @@ Oct. 29, 2020 - Version 12.09
|
|
33
46
|
- Fixed problem with an incorrect naming of CodecID tags in some MKV videos
|
34
47
|
- Fixed verbose output to avoid "adding" messages for existing flattened XMP
|
35
48
|
tags
|
36
|
-
- Added read support for MacOS "._" sidecar files
|
37
49
|
|
38
50
|
Oct. 15, 2020 - Version 12.08
|
39
51
|
|
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.10.tar.gz | tar -xf -
|
110
|
+
cd Image-ExifTool-12.10
|
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.10';
|
14
14
|
|
15
15
|
# add our 'lib' directory to the include list BEFORE 'use Image::ExifTool'
|
16
16
|
my $exeDir;
|
@@ -366,13 +366,21 @@ if (grep /^-common_args$/i, @ARGV) {
|
|
366
366
|
# loop over sets of command-line arguments separated by "-execute"
|
367
367
|
Command: for (;;) {
|
368
368
|
|
369
|
-
|
370
|
-
|
369
|
+
if (@echo3) {
|
370
|
+
my $str = join "\n", @echo3, "\n";
|
371
|
+
$str =~ s/\$\{status\}/$rtnVal/ig;
|
372
|
+
print STDOUT $str;
|
373
|
+
}
|
374
|
+
if (@echo4) {
|
375
|
+
my $str = join "\n", @echo4, "\n";
|
376
|
+
$str =~ s/\$\{status\}/$rtnVal/ig;
|
377
|
+
print STDERR $str;
|
378
|
+
}
|
371
379
|
|
372
380
|
$rafStdin->Close() if $rafStdin;
|
373
381
|
undef $rafStdin;
|
374
382
|
|
375
|
-
# save
|
383
|
+
# save our previous return codes
|
376
384
|
$rtnValPrev = $rtnVal;
|
377
385
|
$rtnValApp = $rtnVal if $rtnVal;
|
378
386
|
|
@@ -387,7 +395,7 @@ if ($binaryStdout) {
|
|
387
395
|
|
388
396
|
# flush console and print "{ready}" message if -stay_open is in effect
|
389
397
|
if ($stayOpen >= 2) {
|
390
|
-
if ($quiet) {
|
398
|
+
if ($quiet and not defined $executeID) {
|
391
399
|
# flush output if possible
|
392
400
|
eval { require IO::Handle } and STDERR->flush(), STDOUT->flush();
|
393
401
|
} else {
|
@@ -554,7 +562,7 @@ if (not $preserveTime and $^O eq 'MSWin32') {
|
|
554
562
|
for (;;) {
|
555
563
|
|
556
564
|
# execute the command now if no more arguments or -execute is used
|
557
|
-
if (not @ARGV or ($ARGV[0] =~ /^(-|\xe2\x88\x92)execute(\d
|
565
|
+
if (not @ARGV or ($ARGV[0] =~ /^(-|\xe2\x88\x92)execute(\d+)?$/i and not $endOfOpts)) {
|
558
566
|
if (@ARGV) {
|
559
567
|
$executeID = $2; # save -execute number for "{ready}" response
|
560
568
|
$helped = 1; # don't show help if we used -execute
|
@@ -5296,7 +5304,7 @@ with this command:
|
|
5296
5304
|
|
5297
5305
|
produces output like this:
|
5298
5306
|
|
5299
|
-
-- Generated by ExifTool 12.
|
5307
|
+
-- Generated by ExifTool 12.10 --
|
5300
5308
|
File: a.jpg - 2003:10:31 15:44:19
|
5301
5309
|
(f/5.6, 1/60s, ISO 100)
|
5302
5310
|
File: b.jpg - 2006:05:23 11:57:38
|
@@ -5729,7 +5737,9 @@ involves an additional processing pass of each file, but this impact may be
|
|
5729
5737
|
reduced by specifying a I<NUM> for the B<-fast> level used during the
|
5730
5738
|
metadata-extraction phase. For example, B<-fileOrder4> may be used if
|
5731
5739
|
I<TAG> is a pseudo System tag. If multiple B<-fileOrder> options are used,
|
5732
|
-
the extraction is done at the lowest B<-fast> level.
|
5740
|
+
the extraction is done at the lowest B<-fast> level. Note that files are
|
5741
|
+
sorted across directory boundaries if multiple input directories are
|
5742
|
+
specified.
|
5733
5743
|
|
5734
5744
|
=item B<-i> I<DIR> (B<-ignore>)
|
5735
5745
|
|
@@ -5779,7 +5789,8 @@ of the file processing. Both functions have a return value of 1. Case is
|
|
5779
5789
|
significant for function names.
|
5780
5790
|
|
5781
5791
|
End() - end processing after this file
|
5782
|
-
EndDir() - end processing of files in this directory
|
5792
|
+
EndDir() - end processing of files in this directory (not
|
5793
|
+
compatible with the B<-fileOrder> option)
|
5783
5794
|
|
5784
5795
|
Notes:
|
5785
5796
|
|
@@ -6241,7 +6252,9 @@ about the configuration file syntax.
|
|
6241
6252
|
Echo I<TEXT> to stdout (B<-echo> or B<-echo1>) or stderr (B<-echo2>). Text
|
6242
6253
|
is output as the command line is parsed, before the processing of any input
|
6243
6254
|
files. I<NUM> may also be 3 or 4 to output text (to stdout or stderr
|
6244
|
-
respectively) after processing is complete.
|
6255
|
+
respectively) after processing is complete. For B<-echo3> and B<-echo4>,
|
6256
|
+
"${status}" may be used in the I<TEXT> string to represent the numerical
|
6257
|
+
exit status of the command (see L</EXIT STATUS>).
|
6245
6258
|
|
6246
6259
|
=item B<-efile>[I<NUM>][!] I<ERRFILE>
|
6247
6260
|
|
@@ -6262,7 +6275,8 @@ commands were executed as separate command lines (with the exception of the
|
|
6262
6275
|
B<-config> and B<-use> options which remain in effect for subsequent
|
6263
6276
|
commands). Allows multiple commands to be executed from a single command
|
6264
6277
|
line. I<NUM> is an optional number that is echoed in the "{ready}" message
|
6265
|
-
when using the B<-stay_open> feature.
|
6278
|
+
when using the B<-stay_open> feature. If a I<NUM> is specified, the B<-q>
|
6279
|
+
option no longer suppresses the output "{readyNUM}" message.
|
6266
6280
|
|
6267
6281
|
=item B<-srcfile> I<FMT>
|
6268
6282
|
|
@@ -6312,7 +6326,10 @@ received up to this point, send a "{ready}" message to stdout when done
|
|
6312
6326
|
(unless the B<-q> or B<-T> option is used), and continue trying to read
|
6313
6327
|
arguments for the next command from I<ARGFILE>. To aid in command/response
|
6314
6328
|
synchronization, any number appended to the C<-execute> option is echoed in
|
6315
|
-
the "{ready}" message. For example, C<-execute613> results in "{ready613}".
|
6329
|
+
the "{ready}" message. For example, C<-execute613> results in "{ready613}".
|
6330
|
+
When this number is added, B<-q> no longer suppresses the "{ready}" message.
|
6331
|
+
(Also, see the B<-echo3> and B<-echo4> options for additional ways to pass
|
6332
|
+
signals back to your application.)
|
6316
6333
|
|
6317
6334
|
4) Repeat steps 2 and 3 for each command.
|
6318
6335
|
|
@@ -6327,7 +6344,7 @@ writing the following lines to the currently open I<ARGFILE>:
|
|
6327
6344
|
-@
|
6328
6345
|
NEWARGFILE
|
6329
6346
|
|
6330
|
-
This causes I<ARGFILE> to be closed, and I<NEWARGFILE> to be kept open.
|
6347
|
+
This causes I<ARGFILE> to be closed, and I<NEWARGFILE> to be kept open.
|
6331
6348
|
(Without the B<-stay_open> here, exiftool would have returned to reading
|
6332
6349
|
arguments from I<ARGFILE> after reaching the end of I<NEWARGFILE>.)
|
6333
6350
|
|
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.10';
|
32
32
|
$RELEASE = '';
|
33
33
|
@ISA = qw(Exporter);
|
34
34
|
%EXPORT_TAGS = (
|
@@ -7147,6 +7147,7 @@ sub DoProcessTIFF($$;$)
|
|
7147
7147
|
# no longer do this because various files use different values
|
7148
7148
|
# (TIFF=0x2a, RW2/RWL=0x55, HDP=0xbc, BTF=0x2b, ORF=0x4f52/0x5352/0x????)
|
7149
7149
|
# return 0 unless $identifier == 0x2a;
|
7150
|
+
$self->Warn('Invalid magic number in EXIF TIFF header') if $fileType eq 'APP1' and $identifier != 0x2a;
|
7150
7151
|
|
7151
7152
|
# get offset to IFD0
|
7152
7153
|
return 0 if length $$dataPt < 8;
|
data/bin/lib/Image/ExifTool.pod
CHANGED
@@ -850,9 +850,10 @@ causing conversion to local time when they are extracted and from local time
|
|
850
850
|
when written. According to the QuickTime specification date/time values
|
851
851
|
should be UTC, but many digital cameras store local time instead (presumably
|
852
852
|
because they don't know the time zone), so the default is to not convert
|
853
|
-
these times
|
854
|
-
|
855
|
-
1904 as per the
|
853
|
+
these times (except for Canon CR3 files, which always use UTC times). This
|
854
|
+
option also disables the autodetection of incorrect time-zero offsets in
|
855
|
+
QuickTime date/time values, and enforces a time zero of 1904 as per the
|
856
|
+
QuickTime specification.
|
856
857
|
|
857
858
|
=item RequestAll
|
858
859
|
|
@@ -1899,8 +1899,8 @@ my %offOn = ( 0 => 'Off', 1 => 'On' );
|
|
1899
1899
|
Name => 'ColorData9',
|
1900
1900
|
SubDirectory => { TagTable => 'Image::ExifTool::Canon::ColorData9' },
|
1901
1901
|
},
|
1902
|
-
{ # (int16u[3656]) - R5/R6 ref PH
|
1903
|
-
Condition => '$count == 3656',
|
1902
|
+
{ # (int16u[2024|3656]) - 1DXmkIII (2024) ref IB, R5/R6 (3656) ref PH
|
1903
|
+
Condition => '$count == 2024 or $count == 3656',
|
1904
1904
|
Name => 'ColorData10',
|
1905
1905
|
SubDirectory => { TagTable => 'Image::ExifTool::Canon::ColorData10' },
|
1906
1906
|
},
|
@@ -8094,7 +8094,8 @@ my %ciMaxFocal = (
|
|
8094
8094
|
},
|
8095
8095
|
);
|
8096
8096
|
|
8097
|
-
# Color data (MakerNotes tag 0x4001, count=3656)
|
8097
|
+
# Color data (MakerNotes tag 0x4001, count=2024,3656)
|
8098
|
+
# (same as ColorData9 but shifted up by 0x0e, ref PH)
|
8098
8099
|
%Image::ExifTool::Canon::ColorData10 = (
|
8099
8100
|
%binaryDataAttrs,
|
8100
8101
|
FORMAT => 'int16s',
|
@@ -8107,6 +8108,7 @@ my %ciMaxFocal = (
|
|
8107
8108
|
DataMember => 'ColorDataVersion',
|
8108
8109
|
RawConv => '$$self{ColorDataVersion} = $val',
|
8109
8110
|
PrintConv => {
|
8111
|
+
32 => '32 (1DXmkIII)', #IB
|
8110
8112
|
33 => '33 (R5/R6)',
|
8111
8113
|
},
|
8112
8114
|
},
|
@@ -12,7 +12,7 @@ use strict;
|
|
12
12
|
use vars qw($VERSION);
|
13
13
|
use Image::ExifTool qw(:DataAccess :Utils);
|
14
14
|
|
15
|
-
$VERSION = '1.
|
15
|
+
$VERSION = '1.11';
|
16
16
|
|
17
17
|
sub MDItemLocalTime($);
|
18
18
|
sub ProcessATTR($$$);
|
@@ -651,6 +651,8 @@ sub ProcessATTR($$$)
|
|
651
651
|
$off < 0 or $off > $dataLen and $et->Warn('Invalid ATTR offset'), last;
|
652
652
|
my $tag = substr($$dataPt, $pos + 11, $n);
|
653
653
|
$tag =~ s/\0+$//; # remove null terminator
|
654
|
+
# remove random ID after kMDLabel in tag ID
|
655
|
+
$tag =~ s/^com.apple.metadata:kMDLabel_.*/com.apple.metadata:kMDLabel/s;
|
654
656
|
$off + $len > $dataLen and $et->Warn('Truncated ATTR value'), last;
|
655
657
|
my $val = ReadXAttrValue($et, $tagTablePtr, $tag, substr($$dataPt, $off, $len));
|
656
658
|
$et->HandleTag($tagTablePtr, $tag, $val,
|
@@ -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.89';
|
66
66
|
|
67
67
|
sub LensIDConv($$$);
|
68
68
|
sub ProcessNikonAVI($$$);
|
@@ -2083,7 +2083,7 @@ my %binaryDataAttrs = (
|
|
2083
2083
|
},
|
2084
2084
|
},
|
2085
2085
|
{
|
2086
|
-
Condition => '$$valPt =~ /^
|
2086
|
+
Condition => '$$valPt =~ /^080[01]/', # Z6/Z7
|
2087
2087
|
Name => 'LensData0800',
|
2088
2088
|
SubDirectory => {
|
2089
2089
|
TagTable => 'Image::ExifTool::Nikon::LensData0800',
|
@@ -8999,7 +8999,7 @@ my %nikonFocalConversions = (
|
|
8999
8999
|
},
|
9000
9000
|
},
|
9001
9001
|
{
|
9002
|
-
Condition => '$$valPt =~ /^
|
9002
|
+
Condition => '$$valPt =~ /^080[01]/', # Z6/Z7
|
9003
9003
|
Name => 'LensData0800',
|
9004
9004
|
SubDirectory => {
|
9005
9005
|
TagTable => 'Image::ExifTool::Nikon::LensData0800',
|
@@ -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.55';
|
51
51
|
|
52
52
|
sub ProcessMOV($$;$);
|
53
53
|
sub ProcessKeys($$$);
|
@@ -231,9 +231,10 @@ my %timeInfo = (
|
|
231
231
|
Writable => 1,
|
232
232
|
Permanent => 1,
|
233
233
|
DelValue => 0,
|
234
|
-
# Note: This value will be in UTC if generated by a system that is aware of the time zone
|
235
|
-
|
236
|
-
|
234
|
+
# Note: This value will be in UTC if generated by a system that is aware of the time zone (ie. CR3 files)
|
235
|
+
RawConvInv => 'GetUnixTime($val, $self->Options("QuickTimeUTC") || $$self{FileType} eq "CR3") + (66 * 365 + 17) * 24 * 3600',
|
236
|
+
ValueConv => 'ConvertUnixTime($val, $self->Options("QuickTimeUTC") || $$self{FileType} eq "CR3")',
|
237
|
+
ValueConvInv => '$val',
|
237
238
|
PrintConv => '$self->ConvertDateTime($val)',
|
238
239
|
PrintConvInv => '$self->InverseDateTime($val)',
|
239
240
|
# (can't put Groups here because they aren't constant!)
|
@@ -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.32';
|
38
38
|
|
39
39
|
sub ProcessSRF($$$);
|
40
40
|
sub ProcessSR2($$$);
|
@@ -1583,7 +1583,7 @@ my %hidUnk = ( Hidden => 1, Unknown => 1 );
|
|
1583
1583
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::Tag9400b' },
|
1584
1584
|
},{
|
1585
1585
|
Name => 'Tag9400c',
|
1586
|
-
Condition => '$$valPt =~ /^[\x23\x24\x26\x28]/',
|
1586
|
+
Condition => '$$valPt =~ /^[\x23\x24\x26\x28\x31]/',
|
1587
1587
|
SubDirectory => { TagTable => 'Image::ExifTool::Sony::Tag9400c' },
|
1588
1588
|
},{
|
1589
1589
|
Name => 'Sony_0x9400',
|
@@ -8047,21 +8047,18 @@ my %isoSetting2010 = (
|
|
8047
8047
|
NOTES => q{
|
8048
8048
|
Valid for DSC-HX60V/HX80/HX90V/HX99/HX350/HX400V/QX30/RX0/RX1RM2/RX10/
|
8049
8049
|
RX10M2/RX10M3/RX10M4/RX100M3/RX100M4/RX100M5/RX100M5A/RX100M6/RX100M7/WX220/
|
8050
|
-
WX350/WX500, ILCE-7/7C/7R/7S/7M2/7M3/7RM2/7RM3/7RM4/7SM2/9/9M2/5000/
|
8051
|
-
6000/6100/6300/6400/6500/6600/QX1, ILCA-68/77M2/99M2.
|
8050
|
+
WX350/WX500, ILCE-7/7C/7R/7S/7M2/7M3/7RM2/7RM3/7RM4/7SM2/7SM3/9/9M2/5000/
|
8051
|
+
5100/6000/6100/6300/6400/6500/6600/QX1, ILCA-68/77M2/99M2.
|
8052
8052
|
},
|
8053
8053
|
FIRST_ENTRY => 0,
|
8054
8054
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
8055
8055
|
0x0009 => { %releaseMode2 },
|
8056
|
-
0x000a =>
|
8057
|
-
Condition => '$$self{Model} =~ /^(ILCE-(6100|6400|6600|7M3|7RM3|7RM4|9|9M2)|DSC-(RX10M4|RX100M6|RX100M7|RX100M5A|HX99|RX0M2)|ZV-1)\b/',
|
8058
|
-
Name => 'ShotNumberSincePowerUp',
|
8059
|
-
Format => 'int8u',
|
8060
|
-
},{
|
8061
|
-
Condition => '$$self{Model} !~ /^(ILCE-7C)\b/',
|
8056
|
+
0x000a => {
|
8062
8057
|
Name => 'ShotNumberSincePowerUp',
|
8058
|
+
Condition => '$$self{Model} =~ /^(ILCA-(68|77M2|99M2)|ILCE-(5000|5100|6000|6300|6500|7|7M2|7R|7RM2|7S|7SM2|QX1)|DSC-(HX350|HX400V|HX60V|HX80|HX90|HX90V|QX30|RX0|RX1RM2|RX10|RX10M2|RX10M3|RX100M3|RX100M4|RX100M5|WX220|WX350|WX500))\b/',
|
8059
|
+
Notes => 'valid only for some models',
|
8063
8060
|
Format => 'int32u',
|
8064
|
-
}
|
8061
|
+
},
|
8065
8062
|
0x0012 => { %sequenceImageNumber },
|
8066
8063
|
0x0016 => {
|
8067
8064
|
Name => 'SequenceLength',
|
@@ -8107,6 +8104,7 @@ my %isoSetting2010 = (
|
|
8107
8104
|
},
|
8108
8105
|
0x002a => {
|
8109
8106
|
Name => 'Quality2',
|
8107
|
+
Condition => '$$self{Model} !~ /^(ILCE-7SM3)\b/',
|
8110
8108
|
PrintConv => {
|
8111
8109
|
0 => 'JPEG',
|
8112
8110
|
1 => 'RAW',
|
@@ -8116,11 +8114,13 @@ my %isoSetting2010 = (
|
|
8116
8114
|
},
|
8117
8115
|
0x0047 => {
|
8118
8116
|
Name => 'SonyImageHeight',
|
8117
|
+
Condition => '$$self{Model} !~ /^(ILCE-7SM3)\b/',
|
8119
8118
|
Format => 'int16u',
|
8120
8119
|
PrintConv => '$val > 0 ? 8*$val : "n.a."',
|
8121
8120
|
},
|
8122
8121
|
0x0053 => {
|
8123
8122
|
Name => 'ModelReleaseYear',
|
8123
|
+
Condition => '$$self{Model} !~ /^(ILCE-7SM3)\b/',
|
8124
8124
|
Format => 'int8u',
|
8125
8125
|
PrintConv => 'sprintf("20%.2d", $val)',
|
8126
8126
|
},
|
@@ -3231,6 +3231,7 @@ my %tagLookup = (
|
|
3231
3231
|
'initialafpointinservo' => { 2 => 0x13 },
|
3232
3232
|
'initialcameradolly' => { 452 => 'InitialCameraDolly' },
|
3233
3233
|
'initialhorizontalfovdegrees' => { 452 => 'InitialHorizontalFOVDegrees' },
|
3234
|
+
'initialverticalfovdegrees' => { 452 => 'InitialVerticalFOVDegrees' },
|
3234
3235
|
'initialviewheadingdegrees' => { 452 => 'InitialViewHeadingDegrees', 453 => 'InitialViewHeadingDegrees' },
|
3235
3236
|
'initialviewpitchdegrees' => { 452 => 'InitialViewPitchDegrees', 453 => 'InitialViewPitchDegrees' },
|
3236
3237
|
'initialviewrolldegrees' => { 452 => 'InitialViewRollDegrees', 453 => 'InitialViewRollDegrees' },
|
@@ -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 23716 tags, with
|
15
|
+
They contain a total of 23716 tags, with 15419 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
|
@@ -3241,6 +3241,7 @@ These tags belong to the ExifTool XMP-GPano family 1 group.
|
|
3241
3241
|
FullPanoWidthPixels real
|
3242
3242
|
InitialCameraDolly real
|
3243
3243
|
InitialHorizontalFOVDegrees real
|
3244
|
+
InitialVerticalFOVDegrees real
|
3244
3245
|
InitialViewHeadingDegrees real
|
3245
3246
|
InitialViewPitchDegrees real
|
3246
3247
|
InitialViewRollDegrees real
|
@@ -18270,14 +18271,13 @@ DSC-HX50V, DSC-QX10/QX100.
|
|
18270
18271
|
|
18271
18272
|
Valid for DSC-HX60V/HX80/HX90V/HX99/HX350/HX400V/QX30/RX0/RX1RM2/RX10/
|
18272
18273
|
RX10M2/RX10M3/RX10M4/RX100M3/RX100M4/RX100M5/RX100M5A/RX100M6/RX100M7/WX220/
|
18273
|
-
WX350/WX500, ILCE-7/7C/7R/7S/7M2/7M3/7RM2/7RM3/7RM4/7SM2/9/9M2/5000/
|
18274
|
-
6000/6100/6300/6400/6500/6600/QX1, ILCA-68/77M2/99M2.
|
18274
|
+
WX350/WX500, ILCE-7/7C/7R/7S/7M2/7M3/7RM2/7RM3/7RM4/7SM2/7SM3/9/9M2/5000/
|
18275
|
+
5100/6000/6100/6300/6400/6500/6600/QX1, ILCA-68/77M2/99M2.
|
18275
18276
|
|
18276
18277
|
Index1 Tag Name Writable
|
18277
18278
|
------ -------- --------
|
18278
18279
|
9 ReleaseMode2 int8u
|
18279
|
-
10 ShotNumberSincePowerUp
|
18280
|
-
ShotNumberSincePowerUp int32u
|
18280
|
+
10 ShotNumberSincePowerUp int32u
|
18281
18281
|
18 SequenceImageNumber int32u
|
18282
18282
|
22 SequenceLength int8u
|
18283
18283
|
26 SequenceFileNumber int32u
|
@@ -4706,17 +4706,17 @@ sub InverseDateTime($$;$$)
|
|
4706
4706
|
{
|
4707
4707
|
my ($self, $val, $tzFlag, $dateOnly) = @_;
|
4708
4708
|
my ($rtnVal, $tz);
|
4709
|
+
my $fmt = $$self{OPTIONS}{DateFormat};
|
4709
4710
|
# strip off timezone first if it exists
|
4710
|
-
if ($val =~ s/([+-])(\d{1,2}):?(\d{2})\s*(DST)?$//i) {
|
4711
|
+
if (not $fmt and $val =~ s/([+-])(\d{1,2}):?(\d{2})\s*(DST)?$//i) {
|
4711
4712
|
$tz = sprintf("$1%.2d:$3", $2);
|
4712
|
-
} elsif ($val =~ s/Z$//i) {
|
4713
|
+
} elsif (not $fmt and $val =~ s/Z$//i) {
|
4713
4714
|
$tz = 'Z';
|
4714
4715
|
} else {
|
4715
4716
|
$tz = '';
|
4716
4717
|
# allow special value of 'now'
|
4717
4718
|
return $self->TimeNow($tzFlag) if lc($val) eq 'now';
|
4718
4719
|
}
|
4719
|
-
my $fmt = $$self{OPTIONS}{DateFormat};
|
4720
4720
|
# only convert date if a format was specified and the date is recognizable
|
4721
4721
|
if ($fmt) {
|
4722
4722
|
unless (defined $strptimeLib) {
|
@@ -1697,6 +1697,7 @@ my %sSubVersion = (
|
|
1697
1697
|
InitialViewPitchDegrees => { Writable => 'real' },
|
1698
1698
|
InitialViewRollDegrees => { Writable => 'real' },
|
1699
1699
|
InitialHorizontalFOVDegrees => { Writable => 'real' },
|
1700
|
+
InitialVerticalFOVDegrees => { Writable => 'real' },
|
1700
1701
|
FirstPhotoDate => { %dateTimeInfo, Groups => { 2 => 'Time' } },
|
1701
1702
|
LastPhotoDate => { %dateTimeInfo, Groups => { 2 => 'Time' } },
|
1702
1703
|
SourcePhotosCount => { Writable => 'integer' },
|
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.10.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-11-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: exiftool
|