exiftool_vendored 12.11.0 → 12.16.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 +62 -2
- data/bin/MANIFEST +5 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +3 -3
- data/bin/exiftool +70 -36
- data/bin/lib/File/RandomAccess.pm +1 -1
- data/bin/lib/File/RandomAccess.pod +2 -2
- data/bin/lib/Image/ExifTool.pm +39 -4
- data/bin/lib/Image/ExifTool.pod +12 -8
- data/bin/lib/Image/ExifTool/AES.pm +1 -1
- data/bin/lib/Image/ExifTool/AFCP.pm +1 -1
- data/bin/lib/Image/ExifTool/AIFF.pm +1 -1
- data/bin/lib/Image/ExifTool/APE.pm +1 -1
- data/bin/lib/Image/ExifTool/APP12.pm +1 -1
- data/bin/lib/Image/ExifTool/ASF.pm +1 -1
- data/bin/lib/Image/ExifTool/Apple.pm +1 -1
- data/bin/lib/Image/ExifTool/Audible.pm +1 -1
- data/bin/lib/Image/ExifTool/BMP.pm +1 -1
- data/bin/lib/Image/ExifTool/BPG.pm +1 -1
- data/bin/lib/Image/ExifTool/BZZ.pm +1 -1
- data/bin/lib/Image/ExifTool/BigTIFF.pm +1 -1
- data/bin/lib/Image/ExifTool/BuildTagLookup.pm +10 -4
- data/bin/lib/Image/ExifTool/Canon.pm +3 -2
- data/bin/lib/Image/ExifTool/CanonCustom.pm +1 -1
- data/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
- data/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
- data/bin/lib/Image/ExifTool/Casio.pm +1 -1
- data/bin/lib/Image/ExifTool/Charset.pm +1 -1
- data/bin/lib/Image/ExifTool/DICOM.pm +1 -1
- data/bin/lib/Image/ExifTool/DJI.pm +28 -2
- data/bin/lib/Image/ExifTool/DNG.pm +1 -1
- data/bin/lib/Image/ExifTool/DPX.pm +4 -4
- data/bin/lib/Image/ExifTool/DV.pm +1 -1
- data/bin/lib/Image/ExifTool/DarwinCore.pm +1 -1
- data/bin/lib/Image/ExifTool/DjVu.pm +1 -1
- data/bin/lib/Image/ExifTool/EXE.pm +1 -1
- data/bin/lib/Image/ExifTool/Exif.pm +14 -1
- data/bin/lib/Image/ExifTool/FITS.pm +1 -1
- data/bin/lib/Image/ExifTool/FLAC.pm +1 -1
- data/bin/lib/Image/ExifTool/FLIF.pm +1 -1
- data/bin/lib/Image/ExifTool/FLIR.pm +1 -1
- data/bin/lib/Image/ExifTool/Fixup.pm +1 -1
- data/bin/lib/Image/ExifTool/Flash.pm +1 -1
- data/bin/lib/Image/ExifTool/FlashPix.pm +1 -1
- data/bin/lib/Image/ExifTool/Font.pm +1 -1
- data/bin/lib/Image/ExifTool/FotoStation.pm +1 -1
- data/bin/lib/Image/ExifTool/FujiFilm.pm +1 -1
- data/bin/lib/Image/ExifTool/GE.pm +1 -1
- data/bin/lib/Image/ExifTool/GIF.pm +1 -1
- data/bin/lib/Image/ExifTool/GIMP.pm +1 -1
- data/bin/lib/Image/ExifTool/GPS.pm +1 -1
- data/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- data/bin/lib/Image/ExifTool/Geotag.pm +30 -11
- data/bin/lib/Image/ExifTool/GoPro.pm +1 -1
- data/bin/lib/Image/ExifTool/H264.pm +1 -1
- data/bin/lib/Image/ExifTool/HP.pm +1 -1
- data/bin/lib/Image/ExifTool/HTML.pm +1 -1
- data/bin/lib/Image/ExifTool/HtmlDump.pm +1 -1
- data/bin/lib/Image/ExifTool/ICC_Profile.pm +1 -1
- data/bin/lib/Image/ExifTool/ID3.pm +1 -1
- data/bin/lib/Image/ExifTool/IPTC.pm +1 -1
- data/bin/lib/Image/ExifTool/ISO.pm +1 -1
- data/bin/lib/Image/ExifTool/ITC.pm +1 -1
- data/bin/lib/Image/ExifTool/Import.pm +3 -3
- data/bin/lib/Image/ExifTool/InDesign.pm +1 -1
- data/bin/lib/Image/ExifTool/JPEG.pm +24 -2
- data/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
- data/bin/lib/Image/ExifTool/JSON.pm +1 -1
- data/bin/lib/Image/ExifTool/JVC.pm +1 -1
- data/bin/lib/Image/ExifTool/Jpeg2000.pm +9 -4
- data/bin/lib/Image/ExifTool/Kodak.pm +1 -1
- data/bin/lib/Image/ExifTool/KyoceraRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/LNK.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/cs.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/de.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/en_ca.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/en_gb.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/es.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/fr.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/it.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/ja.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/ko.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/nl.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/pl.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/ru.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/sv.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/tr.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/zh_cn.pm +1 -1
- data/bin/lib/Image/ExifTool/Lang/zh_tw.pm +1 -1
- data/bin/lib/Image/ExifTool/Leaf.pm +1 -1
- data/bin/lib/Image/ExifTool/Lytro.pm +1 -1
- data/bin/lib/Image/ExifTool/M2TS.pm +1 -1
- data/bin/lib/Image/ExifTool/MIE.pm +1 -1
- data/bin/lib/Image/ExifTool/MIEUnits.pod +1 -1
- data/bin/lib/Image/ExifTool/MIFF.pm +1 -1
- data/bin/lib/Image/ExifTool/MNG.pm +1 -1
- data/bin/lib/Image/ExifTool/MOI.pm +1 -1
- data/bin/lib/Image/ExifTool/MPC.pm +1 -1
- data/bin/lib/Image/ExifTool/MPEG.pm +1 -1
- data/bin/lib/Image/ExifTool/MPF.pm +1 -1
- data/bin/lib/Image/ExifTool/MWG.pm +1 -1
- data/bin/lib/Image/ExifTool/MXF.pm +1 -1
- data/bin/lib/Image/ExifTool/MacOS.pm +1 -1
- data/bin/lib/Image/ExifTool/MakerNotes.pm +1 -1
- data/bin/lib/Image/ExifTool/Matroska.pm +1 -1
- data/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
- data/bin/lib/Image/ExifTool/Minolta.pm +1 -1
- data/bin/lib/Image/ExifTool/MinoltaRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/Motorola.pm +1 -1
- data/bin/lib/Image/ExifTool/Nikon.pm +315 -35
- data/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- data/bin/lib/Image/ExifTool/NikonCustom.pm +1 -1
- data/bin/lib/Image/ExifTool/NikonSettings.pm +2013 -0
- data/bin/lib/Image/ExifTool/Nintendo.pm +1 -1
- data/bin/lib/Image/ExifTool/OOXML.pm +1 -1
- data/bin/lib/Image/ExifTool/Ogg.pm +1 -1
- data/bin/lib/Image/ExifTool/Olympus.pm +2 -1
- data/bin/lib/Image/ExifTool/OpenEXR.pm +1 -1
- data/bin/lib/Image/ExifTool/Opus.pm +1 -1
- data/bin/lib/Image/ExifTool/PCX.pm +1 -1
- data/bin/lib/Image/ExifTool/PDF.pm +10 -2
- data/bin/lib/Image/ExifTool/PGF.pm +1 -1
- data/bin/lib/Image/ExifTool/PICT.pm +1 -1
- data/bin/lib/Image/ExifTool/PLIST.pm +1 -1
- data/bin/lib/Image/ExifTool/PLUS.pm +1 -1
- data/bin/lib/Image/ExifTool/PNG.pm +12 -4
- data/bin/lib/Image/ExifTool/PPM.pm +1 -1
- data/bin/lib/Image/ExifTool/PSP.pm +1 -1
- data/bin/lib/Image/ExifTool/Palm.pm +1 -1
- data/bin/lib/Image/ExifTool/Panasonic.pm +1 -1
- data/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/Parrot.pm +1 -1
- data/bin/lib/Image/ExifTool/Pentax.pm +3 -2
- data/bin/lib/Image/ExifTool/PhaseOne.pm +1 -1
- data/bin/lib/Image/ExifTool/PhotoCD.pm +1 -1
- data/bin/lib/Image/ExifTool/PhotoMechanic.pm +1 -1
- data/bin/lib/Image/ExifTool/Photoshop.pm +1 -1
- data/bin/lib/Image/ExifTool/PostScript.pm +1 -1
- data/bin/lib/Image/ExifTool/PrintIM.pm +1 -1
- data/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
- data/bin/lib/Image/ExifTool/QuickTime.pm +38 -23
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +46 -7
- data/bin/lib/Image/ExifTool/RIFF.pm +83 -5
- data/bin/lib/Image/ExifTool/RSRC.pm +1 -1
- data/bin/lib/Image/ExifTool/RTF.pm +1 -1
- data/bin/lib/Image/ExifTool/Radiance.pm +1 -1
- data/bin/lib/Image/ExifTool/Rawzor.pm +1 -1
- data/bin/lib/Image/ExifTool/Real.pm +1 -1
- data/bin/lib/Image/ExifTool/Reconyx.pm +1 -1
- data/bin/lib/Image/ExifTool/Red.pm +1 -1
- data/bin/lib/Image/ExifTool/Ricoh.pm +1 -1
- data/bin/lib/Image/ExifTool/Samsung.pm +1 -1
- data/bin/lib/Image/ExifTool/Sanyo.pm +1 -1
- data/bin/lib/Image/ExifTool/Scalado.pm +1 -1
- data/bin/lib/Image/ExifTool/Shift.pl +1 -1
- data/bin/lib/Image/ExifTool/Shortcuts.pm +1 -1
- data/bin/lib/Image/ExifTool/Sigma.pm +1 -1
- data/bin/lib/Image/ExifTool/SigmaRaw.pm +1 -1
- data/bin/lib/Image/ExifTool/Sony.pm +8 -2
- data/bin/lib/Image/ExifTool/SonyIDC.pm +1 -1
- data/bin/lib/Image/ExifTool/Stim.pm +1 -1
- data/bin/lib/Image/ExifTool/TagInfoXML.pm +2 -2
- data/bin/lib/Image/ExifTool/TagLookup.pm +3943 -3807
- data/bin/lib/Image/ExifTool/TagNames.pod +312 -18
- data/bin/lib/Image/ExifTool/Text.pm +1 -1
- data/bin/lib/Image/ExifTool/Theora.pm +1 -1
- data/bin/lib/Image/ExifTool/Torrent.pm +1 -1
- data/bin/lib/Image/ExifTool/Unknown.pm +1 -1
- data/bin/lib/Image/ExifTool/VCard.pm +1 -1
- data/bin/lib/Image/ExifTool/Validate.pm +1 -1
- data/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
- data/bin/lib/Image/ExifTool/WTV.pm +1 -1
- data/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteExif.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePDF.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePNG.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePhotoshop.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePostScript.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteQuickTime.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteXMP.pl +1 -1
- data/bin/lib/Image/ExifTool/Writer.pl +26 -14
- data/bin/lib/Image/ExifTool/XMP.pm +17 -8
- data/bin/lib/Image/ExifTool/XMP2.pl +5 -1
- data/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
- data/bin/lib/Image/ExifTool/ZIP.pm +1 -1
- data/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
- data/bin/lib/Image/ExifTool/iWork.pm +1 -1
- data/bin/perl-Image-ExifTool.spec +1 -1
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +9 -4
data/bin/lib/Image/ExifTool.pm
CHANGED
@@ -8,7 +8,7 @@
|
|
8
8
|
# Revisions: Nov. 12/2003 - P. Harvey Created
|
9
9
|
# (See html/history.html for revision history)
|
10
10
|
#
|
11
|
-
# Legal: Copyright (c) 2003-
|
11
|
+
# Legal: Copyright (c) 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
12
12
|
# This library is free software; you can redistribute it and/or
|
13
13
|
# modify it under the same terms as Perl itself.
|
14
14
|
#------------------------------------------------------------------------------
|
@@ -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.16';
|
32
32
|
$RELEASE = '';
|
33
33
|
@ISA = qw(Exporter);
|
34
34
|
%EXPORT_TAGS = (
|
@@ -3395,7 +3395,11 @@ sub GetGroup($$;$)
|
|
3395
3395
|
my @grps;
|
3396
3396
|
# create list of group names (without identical adjacent groups if simplifying)
|
3397
3397
|
foreach (@families) {
|
3398
|
-
my $grp = $groups[$_]
|
3398
|
+
my $grp = $groups[$_];
|
3399
|
+
unless ($grp) {
|
3400
|
+
next if $simplify;
|
3401
|
+
$grp = '';
|
3402
|
+
}
|
3399
3403
|
push @grps, $grp unless $simplify and @grps and $grp eq $grps[-1];
|
3400
3404
|
}
|
3401
3405
|
# remove leading "Main:" if simplifying
|
@@ -4002,7 +4006,9 @@ sub Open($*$;$)
|
|
4002
4006
|
}
|
4003
4007
|
my $share = 0;
|
4004
4008
|
eval {
|
4005
|
-
|
4009
|
+
unless ($access & Win32API::File::GENERIC_WRITE()) {
|
4010
|
+
$share = Win32API::File::FILE_SHARE_READ() | Win32API::File::FILE_SHARE_WRITE();
|
4011
|
+
}
|
4006
4012
|
};
|
4007
4013
|
my $wh = eval { Win32API::File::CreateFileW($file, $access, $share, [], $create, 0, []) };
|
4008
4014
|
return undef unless $wh;
|
@@ -6689,6 +6695,22 @@ sub ProcessJPEG($$)
|
|
6689
6695
|
# extract the Stim information (it is in standard TIFF format)
|
6690
6696
|
my $tagTablePtr = GetTagTable('Image::ExifTool::Stim::Main');
|
6691
6697
|
$self->ProcessTIFF(\%dirInfo, $tagTablePtr);
|
6698
|
+
} elsif ($$self{Make} eq 'DJI') {
|
6699
|
+
$dumpType = 'DJI ThermalData';
|
6700
|
+
# add this data to the combined data if it exists
|
6701
|
+
my $dataPt = $segDataPt;
|
6702
|
+
if (defined $combinedSegData) {
|
6703
|
+
$combinedSegData .= $$segDataPt;
|
6704
|
+
$dataPt = \$combinedSegData;
|
6705
|
+
}
|
6706
|
+
if ($nextMarker == $marker) {
|
6707
|
+
$combinedSegData = $$segDataPt unless defined $combinedSegData;
|
6708
|
+
} else {
|
6709
|
+
# process DJI FLIR thermal data
|
6710
|
+
my $tagTablePtr = GetTagTable('Image::ExifTool::JPEG::Main');
|
6711
|
+
$self->HandleTag($tagTablePtr, 'APP3', $$dataPt);
|
6712
|
+
undef $combinedSegData;
|
6713
|
+
}
|
6692
6714
|
} elsif ($$segDataPt =~ /^\xff\xd8\xff\xdb/) {
|
6693
6715
|
$dumpType = 'PreviewImage'; # (Samsung, HP, BenQ)
|
6694
6716
|
$preview = $$segDataPt;
|
@@ -6723,6 +6745,11 @@ sub ProcessJPEG($$)
|
|
6723
6745
|
# set flag if this is the last FPXR segment
|
6724
6746
|
$dirInfo{LastFPXR} = not ($nextMarker==$marker and $$nextSegDataPt=~/^FPXR\0/),
|
6725
6747
|
$self->ProcessDirectory(\%dirInfo, $tagTablePtr);
|
6748
|
+
} elsif ($$self{Make} eq 'DJI' and $$segDataPt =~ /^\xaa\x55\x12\x06/) {
|
6749
|
+
$dumpType = 'DJI ThermalParams';
|
6750
|
+
DirStart(\%dirInfo, 0, 0);
|
6751
|
+
my $tagTablePtr = GetTagTable('Image::ExifTool::DJI::ThermalParams');
|
6752
|
+
$self->ProcessDirectory(\%dirInfo, $tagTablePtr);
|
6726
6753
|
} elsif ($preview) {
|
6727
6754
|
# continued Samsung S1060 preview from APP3
|
6728
6755
|
$dumpType = 'PreviewImage';
|
@@ -6745,6 +6772,10 @@ sub ProcessJPEG($$)
|
|
6745
6772
|
} elsif ($$segDataPt =~ /^ssuniqueid\0/) {
|
6746
6773
|
my $tagTablePtr = GetTagTable('Image::ExifTool::Samsung::APP5');
|
6747
6774
|
$self->HandleTag($tagTablePtr, 'ssuniqueid', substr($$segDataPt, 11));
|
6775
|
+
} elsif ($$self{Make} eq 'DJI') {
|
6776
|
+
$dumpType = 'DJI ThermalCal';
|
6777
|
+
my $tagTablePtr = GetTagTable('Image::ExifTool::JPEG::Main');
|
6778
|
+
$self->HandleTag($tagTablePtr, 'APP5', $$segDataPt);
|
6748
6779
|
} elsif ($preview) {
|
6749
6780
|
$dumpType = 'PreviewImage';
|
6750
6781
|
$preview .= $$segDataPt;
|
@@ -6780,6 +6811,10 @@ sub ProcessJPEG($$)
|
|
6780
6811
|
my $tagTablePtr = GetTagTable('Image::ExifTool::GoPro::GPMF');
|
6781
6812
|
DirStart(\%dirInfo, 6);
|
6782
6813
|
$self->ProcessDirectory(\%dirInfo, $tagTablePtr);
|
6814
|
+
} elsif ($$segDataPt =~ /^DTAT\0\0.\{/s) {
|
6815
|
+
$dumpType = 'DJI_DTAT';
|
6816
|
+
my $tagTablePtr = GetTagTable('Image::ExifTool::JPEG::Main');
|
6817
|
+
$self->HandleTag($tagTablePtr, 'APP6', $$segDataPt);
|
6783
6818
|
}
|
6784
6819
|
} elsif ($marker == 0xe7) { # APP7 (Pentax, Huawei, Qualcomm)
|
6785
6820
|
if ($$segDataPt =~ /^PENTAX \0(II|MM)/) {
|
data/bin/lib/Image/ExifTool.pod
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
#
|
6
6
|
# URL: https://exiftool.org/
|
7
7
|
#
|
8
|
-
# Legal: Copyright (c) 2003-
|
8
|
+
# Legal: Copyright (c) 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
9
9
|
# This library is free software; you can redistribute it and/or
|
10
10
|
# modify it under the same terms as Perl itself.
|
11
11
|
#------------------------------------------------------------------------------
|
@@ -626,7 +626,9 @@ XMP to be extracted.
|
|
626
626
|
Flag to extract information from embedded documents in EPS files, embedded
|
627
627
|
EPS information and JPEG and Jpeg2000 images in PDF files, embedded MPF
|
628
628
|
images in JPEG and MPO files, timed metadata in videos, and the resource
|
629
|
-
fork of Mac OS files.
|
629
|
+
fork of Mac OS files. A setting of 2 also causes the H264 video stream in
|
630
|
+
MP4 files to be parsed until the first SEI message is decoded, or 3 to
|
631
|
+
parse the entire stream. Default is undef.
|
630
632
|
|
631
633
|
=item FastScan
|
632
634
|
|
@@ -1902,7 +1904,9 @@ file or creating the link.
|
|
1902
1904
|
|
1903
1905
|
=item Notes:
|
1904
1906
|
|
1905
|
-
Will not overwrite existing files. New directories are created as necessary.
|
1907
|
+
Will not overwrite existing files. New directories are created as necessary.
|
1908
|
+
If the file is successfully renamed, the new file name may be accessed via
|
1909
|
+
C<$$exifTool{NewName}>.
|
1906
1910
|
|
1907
1911
|
=back
|
1908
1912
|
|
@@ -2296,10 +2300,10 @@ MIE-Orient, MIE-Preview, MIE-Thumbnail, MIE-UTM, MIE-Unknown, MIE-Video,
|
|
2296
2300
|
MIFF, MNG, MOBI, MOI, MPC, MPEG, MPF0, MPImage, MS-DOC, MXF, MacOS,
|
2297
2301
|
MakerNotes, MakerUnknown, Matroska, MediaJukebox, Meta, MetaIFD, Microsoft,
|
2298
2302
|
Minolta, MinoltaRaw, Motorola, NITF, Nikon, NikonCapture, NikonCustom,
|
2299
|
-
NikonScan, Nintendo, Ocad, Ogg, Olympus, OpenEXR, Opus, PDF,
|
2300
|
-
PNG-pHYs, PSP, Palm, Panasonic, PanasonicRaw, Pentax, PhaseOne,
|
2301
|
-
PhotoMechanic, Photoshop, PictureInfo, PostScript, PreviewIFD,
|
2302
|
-
ProfileIFD, Qualcomm, QuickTime, RAF, RAF2, RIFF, RMETA, RSRC, RTF,
|
2303
|
+
NikonScan, NikonSettings, Nintendo, Ocad, Ogg, Olympus, OpenEXR, Opus, PDF,
|
2304
|
+
PICT, PNG, PNG-pHYs, PSP, Palm, Panasonic, PanasonicRaw, Pentax, PhaseOne,
|
2305
|
+
PhotoCD, PhotoMechanic, Photoshop, PictureInfo, PostScript, PreviewIFD,
|
2306
|
+
PrintIM, ProfileIFD, Qualcomm, QuickTime, RAF, RAF2, RIFF, RMETA, RSRC, RTF,
|
2303
2307
|
Radiance, Rawzor, Real, Real-CONT, Real-MDPR, Real-PROP, Real-RA3, Real-RA4,
|
2304
2308
|
Real-RA5, Real-RJMD, Reconyx, Red, Ricoh, SPIFF, SR2, SR2DataIFD, SR2SubIFD,
|
2305
2309
|
SRF#, SVG, Samsung, Sanyo, Scalado, Sigma, SigmaRaw, Sony, SonyIDC, Stim,
|
@@ -2709,7 +2713,7 @@ specified by the L</Charset> option.
|
|
2709
2713
|
|
2710
2714
|
=head1 AUTHOR
|
2711
2715
|
|
2712
|
-
Copyright 2003-
|
2716
|
+
Copyright 2003-2021, Phil Harvey
|
2713
2717
|
|
2714
2718
|
This library is free software; you can redistribute it and/or modify it
|
2715
2719
|
under the same terms as Perl itself.
|
@@ -477,7 +477,7 @@ main purpose of encryption, so this really can't be considered a bug.
|
|
477
477
|
|
478
478
|
=head1 AUTHOR
|
479
479
|
|
480
|
-
Copyright 2003-
|
480
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
481
481
|
|
482
482
|
This library is free software; you can redistribute it and/or modify it
|
483
483
|
under the same terms as Perl itself.
|
@@ -259,7 +259,7 @@ scanning for AFCP information.
|
|
259
259
|
|
260
260
|
=head1 AUTHOR
|
261
261
|
|
262
|
-
Copyright 2003-
|
262
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
263
263
|
|
264
264
|
This library is free software; you can redistribute it and/or modify it
|
265
265
|
under the same terms as Perl itself.
|
@@ -287,7 +287,7 @@ information from AIFF (Audio Interchange File Format) audio files.
|
|
287
287
|
|
288
288
|
=head1 AUTHOR
|
289
289
|
|
290
|
-
Copyright 2003-
|
290
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
291
291
|
|
292
292
|
This library is free software; you can redistribute it and/or modify it
|
293
293
|
under the same terms as Perl itself.
|
@@ -263,7 +263,7 @@ Currently doesn't parse MAC header unless it is at the start of the file.
|
|
263
263
|
|
264
264
|
=head1 AUTHOR
|
265
265
|
|
266
|
-
Copyright 2003-
|
266
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
267
267
|
|
268
268
|
This library is free software; you can redistribute it and/or modify it
|
269
269
|
under the same terms as Perl itself.
|
@@ -305,7 +305,7 @@ APP12 meta information.
|
|
305
305
|
|
306
306
|
=head1 AUTHOR
|
307
307
|
|
308
|
-
Copyright 2003-
|
308
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
309
309
|
|
310
310
|
This library is free software; you can redistribute it and/or modify it
|
311
311
|
under the same terms as Perl itself.
|
@@ -876,7 +876,7 @@ Windows Media Audio (WMA) and Windows Media Video (WMV) files.
|
|
876
876
|
|
877
877
|
=head1 AUTHOR
|
878
878
|
|
879
|
-
Copyright 2003-
|
879
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
880
880
|
|
881
881
|
This library is free software; you can redistribute it and/or modify it
|
882
882
|
under the same terms as Perl itself.
|
@@ -148,7 +148,7 @@ Apple maker notes in EXIF information.
|
|
148
148
|
|
149
149
|
=head1 AUTHOR
|
150
150
|
|
151
|
-
Copyright 2003-
|
151
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
152
152
|
|
153
153
|
This library is free software; you can redistribute it and/or modify it
|
154
154
|
under the same terms as Perl itself.
|
@@ -291,7 +291,7 @@ information from Audible audio books.
|
|
291
291
|
|
292
292
|
=head1 AUTHOR
|
293
293
|
|
294
|
-
Copyright 2003-
|
294
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
295
295
|
|
296
296
|
This library is free software; you can redistribute it and/or modify it
|
297
297
|
under the same terms as Perl itself.
|
@@ -335,7 +335,7 @@ This module contains definitions required by Image::ExifTool to read BMP
|
|
335
335
|
|
336
336
|
=head1 AUTHOR
|
337
337
|
|
338
|
-
Copyright 2003-
|
338
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
339
339
|
|
340
340
|
This library is free software; you can redistribute it and/or modify it
|
341
341
|
under the same terms as Perl itself.
|
@@ -231,7 +231,7 @@ This module contains definitions required by Image::ExifTool to read BPG
|
|
231
231
|
|
232
232
|
=head1 AUTHOR
|
233
233
|
|
234
|
-
Copyright 2003-
|
234
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
235
235
|
|
236
236
|
This library is free software; you can redistribute it and/or modify it
|
237
237
|
under the same terms as Perl itself.
|
@@ -445,7 +445,7 @@ compression ability).
|
|
445
445
|
|
446
446
|
=head1 AUTHOR
|
447
447
|
|
448
|
-
Copyright 2003-
|
448
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
449
449
|
Copyright 2002, Leon Bottou and Yann Le Cun
|
450
450
|
Copyright 2001, AT&T
|
451
451
|
Copyright 1999-2001, LizardTech Inc.
|
@@ -275,7 +275,7 @@ information in BigTIFF images.
|
|
275
275
|
|
276
276
|
=head1 AUTHOR
|
277
277
|
|
278
|
-
Copyright 2003-
|
278
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
279
279
|
|
280
280
|
This library is free software; you can redistribute it and/or modify it
|
281
281
|
under the same terms as Perl itself.
|
@@ -35,7 +35,7 @@ use Image::ExifTool::Sony;
|
|
35
35
|
use Image::ExifTool::Validate;
|
36
36
|
use Image::ExifTool::MacOS;
|
37
37
|
|
38
|
-
$VERSION = '3.
|
38
|
+
$VERSION = '3.41';
|
39
39
|
@ISA = qw(Exporter);
|
40
40
|
|
41
41
|
sub NumbersFirst($$);
|
@@ -457,6 +457,11 @@ values. However, if the L<QuickTimeUTC|../ExifTool.html#QuickTimeUTC> API optio
|
|
457
457
|
assume these values are properly stored as UTC, and will convert them to
|
458
458
|
local time when extracting.
|
459
459
|
|
460
|
+
When writing string-based date/time tags, the system time zone is added if
|
461
|
+
the PrintConv option is enabled and no time zone is specified. This is
|
462
|
+
because Apple software may display a crazy values if the time zone is
|
463
|
+
missing for some tags.
|
464
|
+
|
460
465
|
See
|
461
466
|
L<https://developer.apple.com/library/archive/documentation/QuickTime/QTFF/>
|
462
467
|
for the official specification.
|
@@ -628,7 +633,8 @@ overlapping EXIF, IPTC and XMP tags to be reconciled when reading, and
|
|
628
633
|
synchronized when writing. The MWG Composite tags below are designed to aid
|
629
634
|
in the implementation of these recommendations. As well, the MWG defines
|
630
635
|
new XMP tags which are listed in the subsequent tables below. See
|
631
|
-
L<http://www.metadataworkinggroup.org/>
|
636
|
+
L<https://web.archive.org/web/20181006115950/http://www.metadataworkinggroup.org/specs/>
|
637
|
+
for the official MWG specification.
|
632
638
|
},
|
633
639
|
MacOS => q{
|
634
640
|
On MacOS systems, the there are additional MDItem and XAttr Finder tags that
|
@@ -651,7 +657,7 @@ L<Image::ExifTool::BuildTagLookup|Image::ExifTool::BuildTagLookup>.
|
|
651
657
|
|
652
658
|
~head1 AUTHOR
|
653
659
|
|
654
|
-
Copyright 2003-
|
660
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
655
661
|
|
656
662
|
This library is free software; you can redistribute it and/or modify it
|
657
663
|
under the same terms as Perl itself.
|
@@ -2726,7 +2732,7 @@ Returned list of writable pseudo tags.
|
|
2726
2732
|
|
2727
2733
|
=head1 AUTHOR
|
2728
2734
|
|
2729
|
-
Copyright 2003-
|
2735
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
2730
2736
|
|
2731
2737
|
This library is free software; you can redistribute it and/or modify it
|
2732
2738
|
under the same terms as Perl itself.
|
@@ -88,7 +88,7 @@ sub ProcessCTMD($$$);
|
|
88
88
|
sub ProcessExifInfo($$$);
|
89
89
|
sub SwapWords($);
|
90
90
|
|
91
|
-
$VERSION = '4.
|
91
|
+
$VERSION = '4.42';
|
92
92
|
|
93
93
|
# Note: Removed 'USM' from 'L' lenses since it is redundant - PH
|
94
94
|
# (or is it? Ref 32 shows 5 non-USM L-type lenses)
|
@@ -944,6 +944,7 @@ $VERSION = '4.41';
|
|
944
944
|
0x80000436 => 'EOS SL3 / 250D / Kiss X10', #25
|
945
945
|
0x80000437 => 'EOS 90D', #IB
|
946
946
|
0x80000453 => 'EOS R6', #PH
|
947
|
+
0x80000467 => 'PowerShot ZOOM',
|
947
948
|
0x80000520 => 'EOS D2000C', #IB
|
948
949
|
0x80000560 => 'EOS D6000C', #PH (guess)
|
949
950
|
);
|
@@ -9873,7 +9874,7 @@ Canon maker notes in EXIF information.
|
|
9873
9874
|
|
9874
9875
|
=head1 AUTHOR
|
9875
9876
|
|
9876
|
-
Copyright 2003-
|
9877
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
9877
9878
|
|
9878
9879
|
This library is free software; you can redistribute it and/or modify it
|
9879
9880
|
under the same terms as Perl itself.
|
@@ -2845,7 +2845,7 @@ Image::ExifTool to read this information.
|
|
2845
2845
|
|
2846
2846
|
=head1 AUTHOR
|
2847
2847
|
|
2848
|
-
Copyright 2003-
|
2848
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
2849
2849
|
|
2850
2850
|
This library is free software; you can redistribute it and/or modify it
|
2851
2851
|
under the same terms as Perl itself.
|
@@ -877,7 +877,7 @@ tags.)
|
|
877
877
|
|
878
878
|
=head1 AUTHOR
|
879
879
|
|
880
|
-
Copyright 2003-
|
880
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
881
881
|
|
882
882
|
This library is free software; you can redistribute it and/or modify it
|
883
883
|
under the same terms as Perl itself.
|
@@ -2264,7 +2264,7 @@ files, and as a trailer in JPEG, CRW, CR2 and TIFF images.
|
|
2264
2264
|
|
2265
2265
|
=head1 AUTHOR
|
2266
2266
|
|
2267
|
-
Copyright 2003-
|
2267
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
2268
2268
|
|
2269
2269
|
This library is free software; you can redistribute it and/or modify it
|
2270
2270
|
under the same terms as Perl itself.
|
@@ -221,7 +221,7 @@ settings files (COS).
|
|
221
221
|
|
222
222
|
=head1 AUTHOR
|
223
223
|
|
224
|
-
Copyright 2003-
|
224
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
225
225
|
|
226
226
|
This library is free software; you can redistribute it and/or modify it
|
227
227
|
under the same terms as Perl itself.
|
@@ -2034,7 +2034,7 @@ Casio maker notes in EXIF information.
|
|
2034
2034
|
|
2035
2035
|
=head1 AUTHOR
|
2036
2036
|
|
2037
|
-
Copyright 2003-
|
2037
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
2038
2038
|
|
2039
2039
|
This library is free software; you can redistribute it and/or modify it
|
2040
2040
|
under the same terms as Perl itself.
|
@@ -420,7 +420,7 @@ when decoding certain types of information.
|
|
420
420
|
|
421
421
|
=head1 AUTHOR
|
422
422
|
|
423
|
-
Copyright 2003-
|
423
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
424
424
|
|
425
425
|
This library is free software; you can redistribute it and/or modify it
|
426
426
|
under the same terms as Perl itself.
|
@@ -3853,7 +3853,7 @@ No translation of special characters sets is done.
|
|
3853
3853
|
|
3854
3854
|
=head1 AUTHOR
|
3855
3855
|
|
3856
|
-
Copyright 2003-
|
3856
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
3857
3857
|
|
3858
3858
|
This library is free software; you can redistribute it and/or modify it
|
3859
3859
|
under the same terms as Perl itself.
|
@@ -15,7 +15,7 @@ use Image::ExifTool::Exif;
|
|
15
15
|
use Image::ExifTool::XMP;
|
16
16
|
use Image::ExifTool::GPS;
|
17
17
|
|
18
|
-
$VERSION = '1.
|
18
|
+
$VERSION = '1.03';
|
19
19
|
|
20
20
|
my %convFloat2 = (
|
21
21
|
PrintConv => 'sprintf("%+.2f", $val)',
|
@@ -44,6 +44,32 @@ my %convFloat2 = (
|
|
44
44
|
0x0b => { Name => 'CameraRoll', Writable => 'float', %convFloat2 },
|
45
45
|
);
|
46
46
|
|
47
|
+
# thermal parameters in APP4 of DJI ZH20T images (ref forum11401)
|
48
|
+
%Image::ExifTool::DJI::ThermalParams = (
|
49
|
+
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
|
50
|
+
GROUPS => { 0 => 'APP4', 2 => 'Image' },
|
51
|
+
NOTES => 'Thermal parameters extracted from APP4 of DJI RJPEG files from the ZH20T.',
|
52
|
+
# 0x00 - 0xaa551206 - temperature header magic number
|
53
|
+
0x24 => { Name => 'K1', Format => 'float' },
|
54
|
+
0x28 => { Name => 'K2', Format => 'float' },
|
55
|
+
0x2c => { Name => 'K3', Format => 'float' },
|
56
|
+
0x30 => { Name => 'K4', Format => 'float' },
|
57
|
+
0x34 => { Name => 'KF', Format => 'float' },
|
58
|
+
0x38 => { Name => 'B1', Format => 'float' },
|
59
|
+
0x3c => { Name => 'B2', Format => 'float' },
|
60
|
+
0x44 => { Name => 'ObjectDistance', Format => 'int16u' },
|
61
|
+
0x46 => { Name => 'RelativeHumidity', Format => 'int16u' },
|
62
|
+
0x48 => { Name => 'Emissivity', Format => 'int16u' },
|
63
|
+
0x4a => { Name => 'Reflection', Format => 'int16u', },
|
64
|
+
0x4c => { Name => 'AmbientTemperature', Format => 'int16u' }, # (aka D1)
|
65
|
+
0x50 => { Name => 'D2', Format => 'int32s' },
|
66
|
+
0x54 => { Name => 'KJ', Format => 'int16u' },
|
67
|
+
0x56 => { Name => 'DB', Format => 'int16u' },
|
68
|
+
0x58 => { Name => 'KK', Format => 'int16u' },
|
69
|
+
# 0x500 - 0x55aa1206 - device header magic number
|
70
|
+
# (nothing yet decoded from device header)
|
71
|
+
);
|
72
|
+
|
47
73
|
%Image::ExifTool::DJI::XMP = (
|
48
74
|
%Image::ExifTool::XMP::xmpTableDefaults,
|
49
75
|
GROUPS => { 0 => 'XMP', 1 => 'XMP-drone-dji', 2 => 'Location' },
|
@@ -125,7 +151,7 @@ the maker notes in images from some DJI Phantom drones.
|
|
125
151
|
|
126
152
|
=head1 AUTHOR
|
127
153
|
|
128
|
-
Copyright 2003-
|
154
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
129
155
|
|
130
156
|
This library is free software; you can redistribute it and/or modify it
|
131
157
|
under the same terms as Perl itself.
|