exiftool_vendored 12.34.0 → 12.35.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/Changes +23 -2
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +2 -2
- data/bin/exiftool +33 -25
- data/bin/lib/Image/ExifTool/Canon.pm +2 -1
- data/bin/lib/Image/ExifTool/FLIR.pm +33 -8
- data/bin/lib/Image/ExifTool/ICC_Profile.pm +3 -3
- data/bin/lib/Image/ExifTool/Jpeg2000.pm +105 -11
- data/bin/lib/Image/ExifTool/Nikon.pm +36 -3
- data/bin/lib/Image/ExifTool/QuickTime.pm +12 -1
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +1 -1
- data/bin/lib/Image/ExifTool/Sony.pm +3 -1
- data/bin/lib/Image/ExifTool/TagLookup.pm +4461 -4459
- data/bin/lib/Image/ExifTool/TagNames.pod +22 -11
- data/bin/lib/Image/ExifTool/Writer.pl +4 -2
- data/bin/lib/Image/ExifTool/XMP2.pl +1 -1
- data/bin/lib/Image/ExifTool.pm +37 -4
- data/bin/perl-Image-ExifTool.spec +1 -1
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +2 -2
@@ -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 24449 tags, with 15879 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
|
@@ -3542,7 +3542,7 @@ These tags belong to the ExifTool XMP-iptcCore family 1 group.
|
|
3542
3542
|
|
3543
3543
|
=head3 XMP iptcExt Tags
|
3544
3544
|
|
3545
|
-
This table contains tags defined by the IPTC Extension schema version 1.
|
3545
|
+
This table contains tags defined by the IPTC Extension schema version 1.6.
|
3546
3546
|
The actual namespace prefix is "Iptc4xmpExt", but ExifTool shortens this for
|
3547
3547
|
the family 1 group name. (see
|
3548
3548
|
L<http://www.iptc.org/standards/photo-metadata/iptc-standard/>)
|
@@ -5621,7 +5621,7 @@ specification.
|
|
5621
5621
|
'bMS3' BRDFMToS3 no
|
5622
5622
|
'bTRC' BlueTRC no
|
5623
5623
|
'bXYZ' BlueMatrixColumn no
|
5624
|
-
'bcp0'
|
5624
|
+
'bcp0' BRDFColorimetricParam0 no
|
5625
5625
|
'bcp1' BRDFColorimetricParam1 no
|
5626
5626
|
'bcp2' BRDFColorimetricParam2 no
|
5627
5627
|
'bcp3' BRDFColorimetricParam3 no
|
@@ -5676,7 +5676,7 @@ specification.
|
|
5676
5676
|
'gdb3' GamutBoundaryDescription3 no
|
5677
5677
|
'kTRC' GrayTRC no
|
5678
5678
|
'lumi' Luminance no
|
5679
|
-
'mcta'
|
5679
|
+
'mcta' MultiplexTypeArray no
|
5680
5680
|
'mdv ' MultiplexDefaultValues no
|
5681
5681
|
'meas' Measurement ICC_Profile Measurement
|
5682
5682
|
'meta' Metadata ICC_Profile Metadata
|
@@ -9600,7 +9600,7 @@ imaging cameras by FLIR Systems Inc.
|
|
9600
9600
|
|
9601
9601
|
Information extracted from FLIR FFF images and the APP1 FLIR segment of JPEG
|
9602
9602
|
images. These tags may also be extracted from the first frame of an FLIR
|
9603
|
-
SEQ file.
|
9603
|
+
SEQ file, or all frames if the ExtractEmbedded option is used.
|
9604
9604
|
|
9605
9605
|
Tag ID Tag Name Writable
|
9606
9606
|
------ -------- --------
|
@@ -13053,6 +13053,7 @@ These tags are extracted from encrypted data in images from the Z7_2.
|
|
13053
13053
|
----- -------- --------
|
13054
13054
|
0 ShotInfoVersion no
|
13055
13055
|
4 FirmwareVersion no
|
13056
|
+
32672 PortraitImpressionBalance int8u[2]~
|
13056
13057
|
52786 RollAngle fixed32u
|
13057
13058
|
52790 PitchAngle fixed32u
|
13058
13059
|
52794 YawAngle fixed32u
|
@@ -22009,14 +22010,23 @@ writes only EXIF, IPTC and XMP tags in Jpeg2000 images.
|
|
22009
22010
|
|
22010
22011
|
=head3 Jpeg2000 ColorSpec Tags
|
22011
22012
|
|
22013
|
+
The table below contains tags in the color specification (colr) box. This
|
22014
|
+
box may be rewritten by writing either ICC_Profile, ColorSpace or
|
22015
|
+
ColorSpecData. When writing, any existing colr boxes are replaced with the
|
22016
|
+
newly created colr box.
|
22017
|
+
|
22018
|
+
B<NOTE>: Care must be taken when writing this color specification because
|
22019
|
+
writing a specification that is incompatible with the image data may make
|
22020
|
+
the image undisplayable.
|
22021
|
+
|
22012
22022
|
Index1 Tag Name Writable
|
22013
22023
|
------ -------- --------
|
22014
|
-
0 ColorSpecMethod
|
22015
|
-
1 ColorSpecPrecedence
|
22016
|
-
2 ColorSpecApproximation
|
22024
|
+
0 ColorSpecMethod int8s!
|
22025
|
+
1 ColorSpecPrecedence int8s!
|
22026
|
+
2 ColorSpecApproximation int8s!
|
22017
22027
|
3 ICC_Profile ICC_Profile
|
22018
|
-
ColorSpace
|
22019
|
-
ColorSpecData
|
22028
|
+
ColorSpace int32u!
|
22029
|
+
ColorSpecData undef!
|
22020
22030
|
|
22021
22031
|
=head3 Jpeg2000 FileType Tags
|
22022
22032
|
|
@@ -26182,6 +26192,7 @@ for the official specification.
|
|
26182
26192
|
'frea' Kodak_frea Kodak frea
|
26183
26193
|
'free' KodakFree Kodak Free
|
26184
26194
|
Pittasoft QuickTime Pittasoft
|
26195
|
+
ThumbnailImage no
|
26185
26196
|
Free? no
|
26186
26197
|
'ftyp' FileType QuickTime FileType
|
26187
26198
|
'gps0' GPSTrack QuickTime Stream
|
@@ -26242,7 +26253,7 @@ Tags found in Pittasoft Blackvue dashcam "free" data.
|
|
26242
26253
|
The tags below are extracted from timed metadata in QuickTime and other
|
26243
26254
|
formats of video files when the ExtractEmbedded option is used. Although
|
26244
26255
|
most of these tags are combined into the single table below, ExifTool
|
26245
|
-
currently reads
|
26256
|
+
currently reads 58 different formats of timed GPS metadata from video files.
|
26246
26257
|
|
26247
26258
|
Tag Name Writable
|
26248
26259
|
-------- --------
|
@@ -4798,6 +4798,8 @@ sub InverseDateTime($$;$$)
|
|
4798
4798
|
$strptimeLib = '';
|
4799
4799
|
}
|
4800
4800
|
}
|
4801
|
+
# handle factional seconds (%f), but only at the end of the string
|
4802
|
+
my $fs = ($fmt =~ s/%f$// and $val =~ s/(\.\d+)\s*$//) ? $1 : '';
|
4801
4803
|
my ($lib, $wrn, @a);
|
4802
4804
|
TryLib: for ($lib=$strptimeLib; ; $lib='') {
|
4803
4805
|
if (not $lib) {
|
@@ -4834,10 +4836,10 @@ TryLib: for ($lib=$strptimeLib; ; $lib='') {
|
|
4834
4836
|
next TryLib;
|
4835
4837
|
}
|
4836
4838
|
} elsif (length($a[$i]) < 2) {
|
4837
|
-
|
4839
|
+
$a[$i] = "0$a[$i]"; # pad to 2 digits if necessary
|
4838
4840
|
}
|
4839
4841
|
}
|
4840
|
-
$val = join(':', @a[5,4,3]) . ' ' . join(':', @a[2,1,0]);
|
4842
|
+
$val = join(':', @a[5,4,3]) . ' ' . join(':', @a[2,1,0]) . $fs;
|
4841
4843
|
last;
|
4842
4844
|
}
|
4843
4845
|
}
|
@@ -537,7 +537,7 @@ my %sImageRegion = ( # new in 1.5
|
|
537
537
|
NAMESPACE => 'Iptc4xmpExt',
|
538
538
|
TABLE_DESC => 'XMP IPTC Extension',
|
539
539
|
NOTES => q{
|
540
|
-
This table contains tags defined by the IPTC Extension schema version 1.
|
540
|
+
This table contains tags defined by the IPTC Extension schema version 1.6.
|
541
541
|
The actual namespace prefix is "Iptc4xmpExt", but ExifTool shortens this for
|
542
542
|
the family 1 group name. (see
|
543
543
|
L<http://www.iptc.org/standards/photo-metadata/iptc-standard/>)
|
data/bin/lib/Image/ExifTool.pm
CHANGED
@@ -26,10 +26,10 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes
|
|
26
26
|
$psAPP13hdr $psAPP13old @loadAllTables %UserDefined $evalWarning
|
27
27
|
%noWriteFile %magicNumber @langs $defaultLang %langName %charsetName
|
28
28
|
%mimeType $swapBytes $swapWords $currentByteOrder %unpackStd
|
29
|
-
%jpegMarker %specialTags %fileTypeLookup $testLen $
|
29
|
+
%jpegMarker %specialTags %fileTypeLookup $testLen $exeDir
|
30
30
|
%static_vars);
|
31
31
|
|
32
|
-
$VERSION = '12.
|
32
|
+
$VERSION = '12.35';
|
33
33
|
$RELEASE = '';
|
34
34
|
@ISA = qw(Exporter);
|
35
35
|
%EXPORT_TAGS = (
|
@@ -5677,6 +5677,38 @@ sub ConvertDateTime($$)
|
|
5677
5677
|
unshift @a, 1 while @a < 3; # add month and day if necessary
|
5678
5678
|
unshift @a, 0 while @a < 6; # add h,m,s if necessary
|
5679
5679
|
$a[4] -= 1; # base month is 1
|
5680
|
+
# parse our %f fractional seconds first (and round up seconds if necessary)
|
5681
|
+
# - if there are multiple %f codes, they all get the same number of digits as the first
|
5682
|
+
if ($fmt =~ /%\.?(\d*)f/) {
|
5683
|
+
my $dig = $1;
|
5684
|
+
my $frac = $date =~ /(\.\d+)/ ? $1 : '';
|
5685
|
+
if (not $frac) {
|
5686
|
+
$frac = '.' . ('0' x $dig) if $dig;
|
5687
|
+
} elsif (length $dig) {
|
5688
|
+
if ($dig+1 > length($frac)) {
|
5689
|
+
$frac .= '0' x ($dig+1-length($frac));
|
5690
|
+
} elsif ($dig+1 < length($frac)) {
|
5691
|
+
$frac = sprintf("%.${dig}f", $frac);
|
5692
|
+
while ($frac =~ s/^(\d)// and $1 ne '0') {
|
5693
|
+
# this is a pain, but we must round up to the next second
|
5694
|
+
++$a[0] < 60 and last;
|
5695
|
+
$a[0] = 0;
|
5696
|
+
++$a[1] < 60 and last;
|
5697
|
+
$a[1] = 0;
|
5698
|
+
++$a[2] < 24 and last;
|
5699
|
+
$a[2] = 0;
|
5700
|
+
require 'Image/ExifTool/Shift.pl';
|
5701
|
+
++$a[3] <= DaysInMonth($a[4]+1, $a[5]) and last;
|
5702
|
+
$a[3] = 1;
|
5703
|
+
++$a[4] < 12 and last;
|
5704
|
+
$a[4] = 0;
|
5705
|
+
++$a[5];
|
5706
|
+
last; # (this was a goto)
|
5707
|
+
}
|
5708
|
+
}
|
5709
|
+
}
|
5710
|
+
$fmt =~ s/(^|[^%])((%%)*)%\.?\d*f/$1$2$frac/g;
|
5711
|
+
}
|
5680
5712
|
# parse %z and %s ourself (to handle time zones properly)
|
5681
5713
|
if ($fmt =~ /%[sz]/) {
|
5682
5714
|
# use system time zone unless otherwise specified
|
@@ -8736,6 +8768,7 @@ sub ProcessBinaryData($$$)
|
|
8736
8768
|
# read value now if necessary
|
8737
8769
|
unless (defined $val and not $$tagInfo{SubDirectory}) {
|
8738
8770
|
$val = ReadValue($dataPt, $entry+$offset, $format, $count, $more, \$rational);
|
8771
|
+
next unless defined $val;
|
8739
8772
|
$mask = $$tagInfo{Mask};
|
8740
8773
|
$val = ($val & $mask) >> $$tagInfo{BitShift} if $mask;
|
8741
8774
|
}
|
@@ -8837,8 +8870,8 @@ until ($Image::ExifTool::noConfig) {
|
|
8837
8870
|
$file = $config;
|
8838
8871
|
}
|
8839
8872
|
# also check executable directory unless path is absolute
|
8840
|
-
$
|
8841
|
-
-r $file or $config =~ /^\// or $file =
|
8873
|
+
$exeDir = ($0 =~ /(.*)[\\\/]/) ? $1 : '.' unless defined $exeDir;
|
8874
|
+
-r $file or $config =~ /^\// or $file = "$exeDir/$config";
|
8842
8875
|
unless (-r $file) {
|
8843
8876
|
warn("Config file not found\n") if defined $Image::ExifTool::configFile;
|
8844
8877
|
last;
|
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.35.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-
|
12
|
+
date: 2021-11-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: exiftool
|