exiftool_vendored 12.13.0 → 12.17.1
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 +61 -4
- data/bin/MANIFEST +3 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +3 -3
- data/bin/exiftool +63 -43
- data/bin/lib/File/RandomAccess.pm +1 -1
- data/bin/lib/File/RandomAccess.pod +2 -2
- data/bin/lib/Image/ExifTool.pm +36 -3
- data/bin/lib/Image/ExifTool.pod +9 -7
- 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 +9 -7
- data/bin/lib/Image/ExifTool/Canon.pm +3 -2
- data/bin/lib/Image/ExifTool/CanonCustom.pm +20 -2
- 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 +45 -16
- 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 +3 -2
- 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 +6 -6
- data/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- data/bin/lib/Image/ExifTool/Geotag.pm +1 -1
- data/bin/lib/Image/ExifTool/GoPro.pm +1 -1
- data/bin/lib/Image/ExifTool/H264.pm +21 -6
- 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 +1 -1
- 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 +312 -34
- 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 +1 -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 +12 -6
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +46 -7
- data/bin/lib/Image/ExifTool/README +5 -4
- data/bin/lib/Image/ExifTool/RIFF.pm +85 -7
- 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 +4 -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 +3985 -3811
- data/bin/lib/Image/ExifTool/TagNames.pod +422 -21
- 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 +10 -7
- data/bin/lib/Image/ExifTool/Writer.pl +17 -7
- data/bin/lib/Image/ExifTool/XMP.pm +44 -9
- data/bin/lib/Image/ExifTool/XMP2.pl +1 -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 +36 -3
@@ -360,7 +360,7 @@ This file contains tag definitions for the Darwin Core XMP namespace.
|
|
360
360
|
|
361
361
|
=head1 AUTHOR
|
362
362
|
|
363
|
-
Copyright 2003-
|
363
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
364
364
|
|
365
365
|
This library is free software; you can redistribute it and/or modify it
|
366
366
|
under the same terms as Perl itself.
|
@@ -352,7 +352,7 @@ Image::ExifTool::AIFF.
|
|
352
352
|
|
353
353
|
=head1 AUTHOR
|
354
354
|
|
355
|
-
Copyright 2003-
|
355
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
356
356
|
|
357
357
|
This library is free software; you can redistribute it and/or modify it
|
358
358
|
under the same terms as Perl itself.
|
@@ -1398,7 +1398,7 @@ library files.
|
|
1398
1398
|
|
1399
1399
|
=head1 AUTHOR
|
1400
1400
|
|
1401
|
-
Copyright 2003-
|
1401
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
1402
1402
|
|
1403
1403
|
This library is free software; you can redistribute it and/or modify it
|
1404
1404
|
under the same terms as Perl itself.
|
@@ -56,7 +56,7 @@ use vars qw($VERSION $AUTOLOAD @formatSize @formatName %formatNumber %intFormat
|
|
56
56
|
use Image::ExifTool qw(:DataAccess :Utils);
|
57
57
|
use Image::ExifTool::MakerNotes;
|
58
58
|
|
59
|
-
$VERSION = '4.
|
59
|
+
$VERSION = '4.32';
|
60
60
|
|
61
61
|
sub ProcessExif($$$);
|
62
62
|
sub WriteExif($$$);
|
@@ -1377,6 +1377,12 @@ my %opcodeInfo = (
|
|
1377
1377
|
Count => 6,
|
1378
1378
|
Priority => 0,
|
1379
1379
|
},
|
1380
|
+
# 0x220 - int32u: 0 (IFD0, Xaiomi Redmi models)
|
1381
|
+
# 0x221 - int32u: 0 (IFD0, Xaiomi Redmi models)
|
1382
|
+
# 0x222 - int32u: 0 (IFD0, Xaiomi Redmi models)
|
1383
|
+
# 0x223 - int32u: 0 (IFD0, Xaiomi Redmi models)
|
1384
|
+
# 0x224 - int32u: 0,1 (IFD0, Xaiomi Redmi models)
|
1385
|
+
# 0x225 - string: "" (IFD0, Xaiomi Redmi models)
|
1380
1386
|
0x22f => 'StripRowCounts',
|
1381
1387
|
0x2bc => {
|
1382
1388
|
Name => 'ApplicationNotes', # (writable directory!)
|
@@ -1998,6 +2004,7 @@ my %opcodeInfo = (
|
|
1998
2004
|
0x885d => 'FaxSubAddress', #9
|
1999
2005
|
0x885e => 'FaxRecvTime', #9
|
2000
2006
|
0x8871 => 'FedexEDR', #exifprobe (NC)
|
2007
|
+
# 0x8889 - string: "portrait" (ExifIFD, Xiaomi POCO F1)
|
2001
2008
|
0x888a => { #PH
|
2002
2009
|
Name => 'LeafSubIFD',
|
2003
2010
|
Format => 'int32u', # Leaf incorrectly uses 'undef' format!
|
@@ -2008,6 +2015,10 @@ my %opcodeInfo = (
|
|
2008
2015
|
Start => '$val',
|
2009
2016
|
},
|
2010
2017
|
},
|
2018
|
+
# 0x8891 - int16u: 35 (ExifIFD, Xiaomi POCO F1)
|
2019
|
+
# 0x8894 - int16u: 0 (ExifIFD, Xiaomi POCO F1)
|
2020
|
+
# 0x8895 - int16u: 0 (ExifIFD, Xiaomi POCO F1)
|
2021
|
+
# 0x889a - int16u: 0 (ExifIFD, Xiaomi POCO F1)
|
2011
2022
|
# 0x89ab - seen "11 100 130 16 0 0 0 0" in IFD0 of TIFF image from IR scanner (forum8470)
|
2012
2023
|
0x9000 => {
|
2013
2024
|
Name => 'ExifVersion',
|
@@ -2368,6 +2379,8 @@ my %opcodeInfo = (
|
|
2368
2379
|
Name => 'CameraElevationAngle',
|
2369
2380
|
Writable => 'rational64s',
|
2370
2381
|
},
|
2382
|
+
# 0x9999 - string: camera settings (ExifIFD, Xiaomi POCO F1)
|
2383
|
+
# 0x9aaa - int8u[2176]: ? (ExifIFD, Xiaomi POCO F1)
|
2371
2384
|
0x9c9b => {
|
2372
2385
|
Name => 'XPTitle',
|
2373
2386
|
Format => 'undef',
|
@@ -2547,6 +2560,7 @@ my %opcodeInfo = (
|
|
2547
2560
|
5 => 'Color sequential area',
|
2548
2561
|
7 => 'Trilinear',
|
2549
2562
|
8 => 'Color sequential linear',
|
2563
|
+
# 15 - used by DJI XT2
|
2550
2564
|
},
|
2551
2565
|
},
|
2552
2566
|
0xa300 => {
|
@@ -4715,8 +4729,8 @@ my %subSecConv = (
|
|
4715
4729
|
},
|
4716
4730
|
LensID => {
|
4717
4731
|
Groups => { 2 => 'Camera' },
|
4732
|
+
Require => 'LensType',
|
4718
4733
|
Desire => {
|
4719
|
-
0 => 'LensType',
|
4720
4734
|
1 => 'FocalLength',
|
4721
4735
|
2 => 'MaxAperture',
|
4722
4736
|
3 => 'MaxApertureValue',
|
@@ -4735,25 +4749,16 @@ my %subSecConv = (
|
|
4735
4749
|
Applies only to LensType values with a lookup table. May be configured
|
4736
4750
|
by adding user-defined lenses
|
4737
4751
|
},
|
4738
|
-
# this LensID is only valid if the LensType has a PrintConv
|
4739
|
-
# or LensType or LensModel are the model name
|
4752
|
+
# this LensID is only valid if the LensType has a PrintConv or is a model name
|
4740
4753
|
RawConv => q{
|
4741
4754
|
my $printConv = $$self{TAG_INFO}{LensType}{PrintConv};
|
4742
|
-
return $val if ref $printConv eq 'HASH' or
|
4743
|
-
|
4744
|
-
(defined $val[0] and $val[0] =~ /(mm|\d\/F)/) or
|
4745
|
-
(defined $val[6] and $val[6] =~ /(mm|\d\/F)/);
|
4755
|
+
return $val if ref $printConv eq 'HASH' or (ref $printConv eq 'ARRAY' and
|
4756
|
+
ref $$printConv[0] eq 'HASH') or $val[0] =~ /(mm|\d\/F)/;
|
4746
4757
|
return undef;
|
4747
4758
|
},
|
4748
|
-
ValueConv => '$val
|
4759
|
+
ValueConv => '$val',
|
4749
4760
|
PrintConv => q{
|
4750
4761
|
my $pcv;
|
4751
|
-
# use LensModel ([6]) if LensType ([0]) is not populated
|
4752
|
-
# (iPhone populates LensModel but not LensType)
|
4753
|
-
if (not defined $val[0] and defined $val[6]) {
|
4754
|
-
$val[0] = $val[6];
|
4755
|
-
$prt[0] = $prt[6];
|
4756
|
-
}
|
4757
4762
|
# use LensType2 instead of LensType if available and valid (Sony E-mount lenses)
|
4758
4763
|
# (0x8000 or greater; 0 for several older/3rd-party E-mount lenses)
|
4759
4764
|
if (defined $val[9] and ($val[9] & 0x8000 or $val[9] == 0)) {
|
@@ -4781,6 +4786,30 @@ my %subSecConv = (
|
|
4781
4786
|
return $lens;
|
4782
4787
|
},
|
4783
4788
|
},
|
4789
|
+
'LensID-2' => {
|
4790
|
+
Name => 'LensID',
|
4791
|
+
Groups => { 2 => 'Camera' },
|
4792
|
+
Desire => {
|
4793
|
+
0 => 'LensModel',
|
4794
|
+
1 => 'Lens',
|
4795
|
+
2 => 'XMP-aux:LensID',
|
4796
|
+
3 => 'Make',
|
4797
|
+
},
|
4798
|
+
Inhibit => {
|
4799
|
+
4 => 'Composite:LensID',
|
4800
|
+
},
|
4801
|
+
RawConv => q{
|
4802
|
+
return undef if defined $val[2] and defined $val[3];
|
4803
|
+
return $val if defined $val[0] and $val[0] =~ /(mm|\d\/F)/;
|
4804
|
+
return $val if defined $val[1] and $val[1] =~ /(mm|\d\/F)/;
|
4805
|
+
return undef;
|
4806
|
+
},
|
4807
|
+
ValueConv => q{
|
4808
|
+
return $val[0] if defined $val[0] and $val[0] =~ /(mm|\d\/F)/;
|
4809
|
+
return $val[1];
|
4810
|
+
},
|
4811
|
+
PrintConv => '$_=$val; s/(\d)\/F/$1mm F/; s/mmF/mm F/; s/(\d) mm/${1}mm/; s/ - /-/; $_',
|
4812
|
+
},
|
4784
4813
|
);
|
4785
4814
|
|
4786
4815
|
# table for unknown IFD entries
|
@@ -6591,7 +6620,7 @@ EXIF and TIFF meta information.
|
|
6591
6620
|
|
6592
6621
|
=head1 AUTHOR
|
6593
6622
|
|
6594
|
-
Copyright 2003-
|
6623
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
6595
6624
|
|
6596
6625
|
This library is free software; you can redistribute it and/or modify it
|
6597
6626
|
under the same terms as Perl itself.
|
@@ -126,7 +126,7 @@ information from FITS (Flexible Image Transport System) images.
|
|
126
126
|
|
127
127
|
=head1 AUTHOR
|
128
128
|
|
129
|
-
Copyright 2003-
|
129
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
130
130
|
|
131
131
|
This library is free software; you can redistribute it and/or modify it
|
132
132
|
under the same terms as Perl itself.
|
@@ -284,7 +284,7 @@ information from Free Lossless Audio Codec (FLAC) audio files.
|
|
284
284
|
|
285
285
|
=head1 AUTHOR
|
286
286
|
|
287
|
-
Copyright 2003-
|
287
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
288
288
|
|
289
289
|
This library is free software; you can redistribute it and/or modify it
|
290
290
|
under the same terms as Perl itself.
|
@@ -329,7 +329,7 @@ meta information in FLIF (Free Lossless Image Format) images.
|
|
329
329
|
|
330
330
|
=head1 AUTHOR
|
331
331
|
|
332
|
-
Copyright 2003-
|
332
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
333
333
|
|
334
334
|
This library is free software; you can redistribute it and/or modify it
|
335
335
|
under the same terms as Perl itself.
|
@@ -1594,7 +1594,7 @@ Systems Inc. thermal image files (FFF, FPF and JPEG format).
|
|
1594
1594
|
|
1595
1595
|
=head1 AUTHOR
|
1596
1596
|
|
1597
|
-
Copyright 2003-
|
1597
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
1598
1598
|
|
1599
1599
|
This library is free software; you can redistribute it and/or modify it
|
1600
1600
|
under the same terms as Perl itself.
|
@@ -354,7 +354,7 @@ linear list when ApplyFixups() is called.
|
|
354
354
|
|
355
355
|
=head1 AUTHOR
|
356
356
|
|
357
|
-
Copyright 2003-
|
357
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
358
358
|
|
359
359
|
This library is free software; you can redistribute it and/or modify it
|
360
360
|
under the same terms as Perl itself.
|
@@ -721,7 +721,7 @@ will add AMF3 support.
|
|
721
721
|
|
722
722
|
=head1 AUTHOR
|
723
723
|
|
724
|
-
Copyright 2003-
|
724
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
725
725
|
|
726
726
|
This library is free software; you can redistribute it and/or modify it
|
727
727
|
under the same terms as Perl itself.
|
@@ -2370,7 +2370,7 @@ JPEG images.
|
|
2370
2370
|
|
2371
2371
|
=head1 AUTHOR
|
2372
2372
|
|
2373
|
-
Copyright 2003-
|
2373
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
2374
2374
|
|
2375
2375
|
This library is free software; you can redistribute it and/or modify it
|
2376
2376
|
under the same terms as Perl itself.
|
@@ -622,7 +622,7 @@ extracted from these formats.
|
|
622
622
|
|
623
623
|
=head1 AUTHOR
|
624
624
|
|
625
|
-
Copyright 2003-
|
625
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
626
626
|
|
627
627
|
This library is free software; you can redistribute it and/or modify it
|
628
628
|
under the same terms as Perl itself.
|
@@ -243,7 +243,7 @@ write information from the FotoWare FotoStation trailer.
|
|
243
243
|
|
244
244
|
=head1 AUTHOR
|
245
245
|
|
246
|
-
Copyright 2003-
|
246
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
247
247
|
|
248
248
|
This library is free software; you can redistribute it and/or modify it
|
249
249
|
under the same terms as Perl itself.
|
@@ -31,7 +31,7 @@ use vars qw($VERSION);
|
|
31
31
|
use Image::ExifTool qw(:DataAccess :Utils);
|
32
32
|
use Image::ExifTool::Exif;
|
33
33
|
|
34
|
-
$VERSION = '1.
|
34
|
+
$VERSION = '1.79';
|
35
35
|
|
36
36
|
sub ProcessFujiDir($$$);
|
37
37
|
sub ProcessFaceRec($$$);
|
@@ -623,6 +623,7 @@ my %faceCategories = (
|
|
623
623
|
0x700 => 'Eterna', #12
|
624
624
|
0x800 => 'Classic Negative', #forum10536
|
625
625
|
0x900 => 'Bleach Bypass', #forum10890
|
626
|
+
0xa00 => 'Nostalgic Neg', #forum12085
|
626
627
|
},
|
627
628
|
},
|
628
629
|
0x1402 => { #2
|
@@ -1658,7 +1659,7 @@ FujiFilm maker notes in EXIF information, and to read/write FujiFilm RAW
|
|
1658
1659
|
|
1659
1660
|
=head1 AUTHOR
|
1660
1661
|
|
1661
|
-
Copyright 2003-
|
1662
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
1662
1663
|
|
1663
1664
|
This library is free software; you can redistribute it and/or modify it
|
1664
1665
|
under the same terms as Perl itself.
|
@@ -68,7 +68,7 @@ General Imaging maker notes.
|
|
68
68
|
|
69
69
|
=head1 AUTHOR
|
70
70
|
|
71
|
-
Copyright 2003-
|
71
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
72
72
|
|
73
73
|
This library is free software; you can redistribute it and/or modify it
|
74
74
|
under the same terms as Perl itself.
|
@@ -537,7 +537,7 @@ write GIF meta information.
|
|
537
537
|
|
538
538
|
=head1 AUTHOR
|
539
539
|
|
540
|
-
Copyright 2003-
|
540
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
541
541
|
|
542
542
|
This library is free software; you can redistribute it and/or modify it
|
543
543
|
under the same terms as Perl itself.
|
@@ -270,7 +270,7 @@ GIMP software.
|
|
270
270
|
|
271
271
|
=head1 AUTHOR
|
272
272
|
|
273
|
-
Copyright 2003-
|
273
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
274
274
|
|
275
275
|
This library is free software; you can redistribute it and/or modify it
|
276
276
|
under the same terms as Perl itself.
|
@@ -12,7 +12,7 @@ use strict;
|
|
12
12
|
use vars qw($VERSION);
|
13
13
|
use Image::ExifTool::Exif;
|
14
14
|
|
15
|
-
$VERSION = '1.
|
15
|
+
$VERSION = '1.52';
|
16
16
|
|
17
17
|
my %coordConv = (
|
18
18
|
ValueConv => 'Image::ExifTool::GPS::ToDegrees($val)',
|
@@ -50,8 +50,8 @@ my %coordConv = (
|
|
50
50
|
OTHER => sub {
|
51
51
|
my ($val, $inv) = @_;
|
52
52
|
return undef unless $inv;
|
53
|
-
return uc $1 if $val =~ /\b([NS])
|
54
|
-
return $1 eq '-' ? 'S' : 'N' if $val =~
|
53
|
+
return uc $1 if $val =~ /\b([NS])\b/i;
|
54
|
+
return $1 eq '-' ? 'S' : 'N' if $val =~ /([-+]?)\d+/;
|
55
55
|
return undef;
|
56
56
|
},
|
57
57
|
N => 'North',
|
@@ -78,8 +78,8 @@ my %coordConv = (
|
|
78
78
|
OTHER => sub {
|
79
79
|
my ($val, $inv) = @_;
|
80
80
|
return undef unless $inv;
|
81
|
-
return uc $1 if $val =~ /\b([EW])
|
82
|
-
return $1 eq '-' ? 'W' : 'E' if $val =~
|
81
|
+
return uc $1 if $val =~ /\b([EW])\b/i;
|
82
|
+
return $1 eq '-' ? 'W' : 'E' if $val =~ /([-+]?)\d+/;
|
83
83
|
return undef;
|
84
84
|
},
|
85
85
|
E => 'East',
|
@@ -564,7 +564,7 @@ GPS (Global Positioning System) meta information in EXIF data.
|
|
564
564
|
|
565
565
|
=head1 AUTHOR
|
566
566
|
|
567
|
-
Copyright 2003-
|
567
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
568
568
|
|
569
569
|
This library is free software; you can redistribute it and/or modify it
|
570
570
|
under the same terms as Perl itself.
|
@@ -2242,7 +2242,7 @@ coordinates.
|
|
2242
2242
|
|
2243
2243
|
=head1 AUTHOR
|
2244
2244
|
|
2245
|
-
Copyright 2003-
|
2245
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
2246
2246
|
|
2247
2247
|
This library is free software; you can redistribute it and/or modify it
|
2248
2248
|
under the same terms as Perl itself.
|
@@ -1412,7 +1412,7 @@ user-defined tag GPSRoll, must be active.
|
|
1412
1412
|
|
1413
1413
|
=head1 AUTHOR
|
1414
1414
|
|
1415
|
-
Copyright 2003-
|
1415
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
1416
1416
|
|
1417
1417
|
This library is free software; you can redistribute it and/or modify it
|
1418
1418
|
under the same terms as Perl itself.
|
@@ -718,7 +718,7 @@ metadata from GoPro MP4 videos.
|
|
718
718
|
|
719
719
|
=head1 AUTHOR
|
720
720
|
|
721
|
-
Copyright 2003-
|
721
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
722
722
|
|
723
723
|
This library is free software; you can redistribute it and/or modify it
|
724
724
|
under the same terms as Perl itself.
|
@@ -89,7 +89,7 @@ my $parsePictureTiming; # flag to enable parsing of picture timing information (
|
|
89
89
|
Notes => 'hours:minutes:seconds:frames',
|
90
90
|
ValueConv => 'sprintf("%.2x:%.2x:%.2x:%.2x",reverse unpack("C*",$val))',
|
91
91
|
},
|
92
|
-
# 0x14 - TitleBinaryGroup
|
92
|
+
# 0x14 - TitleBinaryGroup - val: 0x00000000,0x14200130
|
93
93
|
# 0x15 - TitleCassetteNo (ref 7)
|
94
94
|
# 0x16-0x17 - TitleSoftID (ref 7)
|
95
95
|
# (0x18,0x19 listed as TitleTextHeader/TitleText by ref 7)
|
@@ -134,8 +134,8 @@ my $parsePictureTiming; # flag to enable parsing of picture timing information (
|
|
134
134
|
Name => 'Camera2',
|
135
135
|
SubDirectory => { TagTable => 'Image::ExifTool::H264::Camera2' },
|
136
136
|
},
|
137
|
-
# 0x73 Lens - val:
|
138
|
-
# 0x74 Gain
|
137
|
+
# 0x73 Lens - val: 0x04ffffd3,0x0effffd3,0x15ffffd3,0x41ffffd3,0x52ffffd3,0x59ffffd3,0x65ffffd3,0x71ffffd3,0x75ffffd3,0x79ffffd3,0x7fffffd3,0xffffffd3...
|
138
|
+
# 0x74 Gain - val: 0xb8ffff0f
|
139
139
|
# 0x75 Pedestal
|
140
140
|
# 0x76 Gamma
|
141
141
|
# 0x77 Detail
|
@@ -376,34 +376,49 @@ my $parsePictureTiming; # flag to enable parsing of picture timing information (
|
|
376
376
|
Notes => 'combined with tag 0xc8',
|
377
377
|
},
|
378
378
|
# 0xc9-0xcf - GPSOption
|
379
|
+
# 0xc9 - val: 0x001d0203
|
380
|
+
0xca => { #PH (Sony DSC-HX7V)
|
381
|
+
Name => 'GPSDateStamp',
|
382
|
+
Format => 'string',
|
383
|
+
Groups => { 1 => 'GPS', 2 => 'Time' },
|
384
|
+
Combine => 2, # the next 2 tags contain the rest of the string
|
385
|
+
Notes => 'combined with tags 0xcb and 0xcc',
|
386
|
+
ValueConv => 'Image::ExifTool::Exif::ExifDate($val)',
|
387
|
+
},
|
379
388
|
0xe0 => {
|
380
389
|
Name => 'MakeModel',
|
381
390
|
SubDirectory => { TagTable => 'Image::ExifTool::H264::MakeModel' },
|
382
391
|
},
|
383
392
|
# 0xe1-0xef - MakerOption
|
384
393
|
# 0xe1 - val: 0x01000670,0x01000678,0x06ffffff,0x01ffffff,0x01000020,0x01000400...
|
385
|
-
# 0xe2-0xe8 - val: 0x00000000 in many samples
|
386
394
|
0xe1 => { #6
|
387
395
|
Name => 'RecInfo',
|
388
396
|
Condition => '$$self{Make} eq "Canon"',
|
389
397
|
Notes => 'Canon only',
|
390
398
|
SubDirectory => { TagTable => 'Image::ExifTool::H264::RecInfo' },
|
391
399
|
},
|
400
|
+
# 0xe2-0xe8 - val: 0x00000000 in many samples
|
401
|
+
# 0xe2 - val: 0x00000000,0x01000000,0x01010000,0x8080900c,0x8080a074
|
402
|
+
# 0xe3 - val: 0x00801f89,0x00801f8b,0x00c01f89,0xc9c01f80
|
392
403
|
0xe4 => { #PH
|
393
404
|
Name => 'Model',
|
394
405
|
Condition => '$$self{Make} eq "Sony"', # (possibly also Canon models?)
|
395
406
|
Description => 'Camera Model Name',
|
396
|
-
Notes => 'Sony
|
407
|
+
Notes => 'Sony only, combined with tags 0xe5 and 0xe6',
|
397
408
|
Format => 'string',
|
398
409
|
Combine => 2, # (not sure about 0xe6, but include it just in case)
|
399
410
|
RawConv => '$val eq "" ? undef : $val',
|
400
411
|
},
|
412
|
+
# 0xeb - val: 0x008a0a00,0x0a300000,0x508a0a00,0x52880a00,0x528a0a00
|
413
|
+
# 0xec - val: 0x0b700000
|
414
|
+
# 0xed - val: 0x0ce0f819
|
401
415
|
0xee => { #6 (HFS200)
|
402
416
|
Name => 'FrameInfo',
|
403
417
|
Condition => '$$self{Make} eq "Canon"',
|
404
418
|
Notes => 'Canon only',
|
405
419
|
SubDirectory => { TagTable => 'Image::ExifTool::H264::FrameInfo' },
|
406
420
|
},
|
421
|
+
# 0xef - val: 0x01c00000,0x0e00000c
|
407
422
|
);
|
408
423
|
|
409
424
|
# ConsumerCamera1 information (ref PH)
|
@@ -1108,7 +1123,7 @@ information from H.264 video streams.
|
|
1108
1123
|
|
1109
1124
|
=head1 AUTHOR
|
1110
1125
|
|
1111
|
-
Copyright 2003-
|
1126
|
+
Copyright 2003-2021, Phil Harvey (philharvey66 at gmail.com)
|
1112
1127
|
|
1113
1128
|
This library is free software; you can redistribute it and/or modify it
|
1114
1129
|
under the same terms as Perl itself.
|