exiftool_vendored 13.17.0 → 13.19.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 +33 -6
- data/bin/MANIFEST +1 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +2 -2
- data/bin/config_files/example.config +1 -1
- data/bin/exiftool +12 -8
- data/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/DJI.pm +99 -11
- data/bin/lib/Image/ExifTool/GoPro.pm +58 -48
- data/bin/lib/Image/ExifTool/ICO.pm +2 -2
- data/bin/lib/Image/ExifTool/Kodak.pm +3 -2
- data/bin/lib/Image/ExifTool/Nikon.pm +45 -19
- data/bin/lib/Image/ExifTool/PDF.pm +10 -1
- data/bin/lib/Image/ExifTool/PLIST.pm +42 -4
- data/bin/lib/Image/ExifTool/Photoshop.pm +2 -2
- data/bin/lib/Image/ExifTool/Protobuf.pm +1 -1
- data/bin/lib/Image/ExifTool/QuickTime.pm +273 -262
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +19 -5
- data/bin/lib/Image/ExifTool/Sony.pm +16 -10
- data/bin/lib/Image/ExifTool/TagLookup.pm +712 -663
- data/bin/lib/Image/ExifTool/TagNames.pod +162 -64
- data/bin/lib/Image/ExifTool/Trailer.pm +1 -1
- data/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteQuickTime.pl +49 -3
- data/bin/lib/Image/ExifTool/Writer.pl +5 -3
- data/bin/lib/Image/ExifTool/XMP.pm +17 -3
- data/bin/lib/Image/ExifTool/XMP2.pl +2 -0
- data/bin/lib/Image/ExifTool.pm +15 -16
- data/bin/perl-Image-ExifTool.spec +1 -1
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +2 -2
data/bin/lib/Image/ExifTool.pm
CHANGED
@@ -29,7 +29,7 @@ use vars qw($VERSION $RELEASE @ISA @EXPORT_OK %EXPORT_TAGS $AUTOLOAD @fileTypes
|
|
29
29
|
%jpegMarker %specialTags %fileTypeLookup $testLen $exeDir
|
30
30
|
%static_vars $advFmtSelf);
|
31
31
|
|
32
|
-
$VERSION = '13.
|
32
|
+
$VERSION = '13.19';
|
33
33
|
$RELEASE = '';
|
34
34
|
@ISA = qw(Exporter);
|
35
35
|
%EXPORT_TAGS = (
|
@@ -6868,10 +6868,10 @@ sub HDump($$$$;$$$)
|
|
6868
6868
|
# Returns: Trailer info hash (with RAF and DirName set),
|
6869
6869
|
# or undef if no recognized trailer was found
|
6870
6870
|
# Notes: leaves file position unchanged
|
6871
|
-
sub IdentifyTrailer(
|
6871
|
+
sub IdentifyTrailer($$;$)
|
6872
6872
|
{
|
6873
|
-
my $raf =
|
6874
|
-
|
6873
|
+
my ($self, $raf, $offset) = @_;
|
6874
|
+
$offset or $offset = 0;
|
6875
6875
|
my $pos = $raf->Tell();
|
6876
6876
|
my ($buff, $type, $len);
|
6877
6877
|
while ($raf->Seek(-$offset, 2) and ($len = $raf->Tell()) > 0) {
|
@@ -6900,6 +6900,9 @@ sub IdentifyTrailer($;$)
|
|
6900
6900
|
$type = 'Vivo';
|
6901
6901
|
} elsif ($buff =~ /jxrs...\0$/s) {
|
6902
6902
|
$type = 'OnePlus';
|
6903
|
+
} elsif ($$self{ProcessGoogleTrailer}) {
|
6904
|
+
# check for Google trailer information if specific XMP tags exist
|
6905
|
+
$type = 'Google';
|
6903
6906
|
}
|
6904
6907
|
last;
|
6905
6908
|
}
|
@@ -7052,7 +7055,7 @@ sub ProcessTrailers($$)
|
|
7052
7055
|
$offset += $dirLen;
|
7053
7056
|
last if $dataPos and $$self{TrailerStart} and $dataPos <= $$self{TrailerStart};
|
7054
7057
|
# look for next trailer
|
7055
|
-
my $nextTrail = IdentifyTrailer($raf, $offset);
|
7058
|
+
my $nextTrail = $self->IdentifyTrailer($raf, $offset);
|
7056
7059
|
# process Google trailer after all others if necessary and not done already
|
7057
7060
|
unless ($nextTrail) {
|
7058
7061
|
last unless $$self{ProcessGoogleTrailer};
|
@@ -7504,11 +7507,7 @@ sub ProcessJPEG($$;$)
|
|
7504
7507
|
}
|
7505
7508
|
}
|
7506
7509
|
unless ($fast) {
|
7507
|
-
$trailInfo = IdentifyTrailer($raf);
|
7508
|
-
# check for Google trailer information if specific XMP tags exist
|
7509
|
-
if (not $trailInfo and $$self{ProcessGoogleTrailer}) {
|
7510
|
-
$trailInfo = { DirName => 'Google', RAF => $raf };
|
7511
|
-
}
|
7510
|
+
$trailInfo = $self->IdentifyTrailer($raf);
|
7512
7511
|
# process trailer now unless we are doing verbose dump
|
7513
7512
|
if ($trailInfo and $verbose < 3 and not $htmlDump) {
|
7514
7513
|
# process trailers (keep trailInfo to finish processing later
|
@@ -8619,7 +8618,7 @@ sub DoProcessTIFF($$;$)
|
|
8619
8618
|
}
|
8620
8619
|
# process information in recognized trailers
|
8621
8620
|
if ($raf) {
|
8622
|
-
my $trailInfo = IdentifyTrailer($raf);
|
8621
|
+
my $trailInfo = $self->IdentifyTrailer($raf);
|
8623
8622
|
if ($trailInfo) {
|
8624
8623
|
# scan to find AFCP if necessary (Note: we are scanning
|
8625
8624
|
# from a random file position in the TIFF)
|
@@ -8724,7 +8723,7 @@ sub DoProcessTIFF($$;$)
|
|
8724
8723
|
for (;;) {
|
8725
8724
|
last unless $extra > 12;
|
8726
8725
|
$raf->Seek($tiffEnd); # seek back to end of image
|
8727
|
-
$trailInfo = IdentifyTrailer($raf);
|
8726
|
+
$trailInfo = $self->IdentifyTrailer($raf);
|
8728
8727
|
last unless $trailInfo;
|
8729
8728
|
my $tbuf = '';
|
8730
8729
|
$$trailInfo{OutFile} = \$tbuf; # rewrite trailer(s)
|
@@ -9224,10 +9223,11 @@ sub HandleTag($$$$;%)
|
|
9224
9223
|
}
|
9225
9224
|
$self->Warn("RawConv $tag: " . CleanWarning()) if $evalWarning;
|
9226
9225
|
return undef unless defined $val;
|
9227
|
-
$
|
9228
|
-
$dataPt = \$val;
|
9226
|
+
$dataPt = ref $val eq 'SCALAR' ? $val : \$val;
|
9229
9227
|
$subdirStart = 0;
|
9230
|
-
$subdirLen = length
|
9228
|
+
$subdirLen = length $$dataPt;
|
9229
|
+
} elsif (not $dataPt) {
|
9230
|
+
$dataPt = ref $val eq 'SCALAR' ? $val : \$val;
|
9231
9231
|
}
|
9232
9232
|
if ($$subdir{Start}) {
|
9233
9233
|
my $valuePtr = 0;
|
@@ -9236,7 +9236,6 @@ sub HandleTag($$$$;%)
|
|
9236
9236
|
$subdirStart += $off;
|
9237
9237
|
$subdirLen -= $off;
|
9238
9238
|
}
|
9239
|
-
$dataPt or $dataPt = \$val;
|
9240
9239
|
# process subdirectory information
|
9241
9240
|
my %dirInfo = (
|
9242
9241
|
DirName => $$subdir{DirName} || $$tagInfo{Name},
|
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: 13.
|
4
|
+
version: 13.19.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: 2025-
|
12
|
+
date: 2025-02-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: exiftool
|