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.
@@ -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 24447 tags, with 15878 unique tag names.
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.5.
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' BRDFColorimetricParameter3Tag no
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' MultiplixTypeArray no
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 no
22015
- 1 ColorSpecPrecedence no
22016
- 2 ColorSpecApproximation no
22024
+ 0 ColorSpecMethod int8s!
22025
+ 1 ColorSpecPrecedence int8s!
22026
+ 2 ColorSpecApproximation int8s!
22017
22027
  3 ICC_Profile ICC_Profile
22018
- ColorSpace no
22019
- ColorSpecData no
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 57 different formats of timed GPS metadata from video files.
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
- $$a[$i] = "0$a[$i]";# pad to 2 digits if necessary
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.5.
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/>)
@@ -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 $exePath
29
+ %jpegMarker %specialTags %fileTypeLookup $testLen $exeDir
30
30
  %static_vars);
31
31
 
32
- $VERSION = '12.34';
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
- $exePath = $0 unless defined $exePath; # (undocumented $exePath setting)
8841
- -r $file or $config =~ /^\// or $file = ($exePath =~ /(.*[\\\/])/ ? $1 : './') . $config;
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;
@@ -1,6 +1,6 @@
1
1
  Summary: perl module for image data extraction
2
2
  Name: perl-Image-ExifTool
3
- Version: 12.34
3
+ Version: 12.35
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.34.0')
4
+ VERSION = Gem::Version.new('12.35.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.34.0
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-10-30 00:00:00.000000000 Z
12
+ date: 2021-11-15 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: exiftool