exiftool-vendored.pl 12.72.0 → 12.73.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.
- package/bin/Changes +17 -0
- package/bin/META.json +1 -1
- package/bin/META.yml +1 -1
- package/bin/README +3 -3
- package/bin/exiftool +28 -15
- package/bin/lib/File/RandomAccess.pm +1 -1
- package/bin/lib/File/RandomAccess.pod +2 -2
- package/bin/lib/Image/ExifTool/AAC.pm +8 -6
- package/bin/lib/Image/ExifTool/AES.pm +1 -1
- package/bin/lib/Image/ExifTool/AFCP.pm +1 -1
- package/bin/lib/Image/ExifTool/AIFF.pm +1 -1
- package/bin/lib/Image/ExifTool/APE.pm +1 -1
- package/bin/lib/Image/ExifTool/APP12.pm +1 -1
- package/bin/lib/Image/ExifTool/ASF.pm +1 -1
- package/bin/lib/Image/ExifTool/Apple.pm +1 -1
- package/bin/lib/Image/ExifTool/Audible.pm +1 -1
- package/bin/lib/Image/ExifTool/BMP.pm +1 -1
- package/bin/lib/Image/ExifTool/BPG.pm +1 -1
- package/bin/lib/Image/ExifTool/BZZ.pm +1 -1
- package/bin/lib/Image/ExifTool/BigTIFF.pm +1 -1
- package/bin/lib/Image/ExifTool/BuildTagLookup.pm +2 -2
- package/bin/lib/Image/ExifTool/CBOR.pm +1 -1
- package/bin/lib/Image/ExifTool/Canon.pm +1 -1
- package/bin/lib/Image/ExifTool/CanonCustom.pm +1 -1
- package/bin/lib/Image/ExifTool/CanonRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
- package/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
- package/bin/lib/Image/ExifTool/Casio.pm +1 -1
- package/bin/lib/Image/ExifTool/Charset.pm +1 -1
- package/bin/lib/Image/ExifTool/DICOM.pm +1 -1
- package/bin/lib/Image/ExifTool/DJI.pm +1 -1
- package/bin/lib/Image/ExifTool/DNG.pm +1 -1
- package/bin/lib/Image/ExifTool/DPX.pm +1 -1
- package/bin/lib/Image/ExifTool/DV.pm +1 -1
- package/bin/lib/Image/ExifTool/DarwinCore.pm +1 -1
- package/bin/lib/Image/ExifTool/DjVu.pm +1 -1
- package/bin/lib/Image/ExifTool/EXE.pm +1 -1
- package/bin/lib/Image/ExifTool/Exif.pm +1 -1
- package/bin/lib/Image/ExifTool/FITS.pm +1 -1
- package/bin/lib/Image/ExifTool/FLAC.pm +1 -1
- package/bin/lib/Image/ExifTool/FLIF.pm +1 -1
- package/bin/lib/Image/ExifTool/FLIR.pm +1 -1
- package/bin/lib/Image/ExifTool/Fixup.pm +1 -1
- package/bin/lib/Image/ExifTool/Flash.pm +1 -1
- package/bin/lib/Image/ExifTool/FlashPix.pm +60 -7
- package/bin/lib/Image/ExifTool/Font.pm +1 -1
- package/bin/lib/Image/ExifTool/FotoStation.pm +1 -1
- package/bin/lib/Image/ExifTool/FujiFilm.pm +1 -1
- package/bin/lib/Image/ExifTool/GE.pm +1 -1
- package/bin/lib/Image/ExifTool/GIF.pm +1 -1
- package/bin/lib/Image/ExifTool/GIMP.pm +1 -1
- package/bin/lib/Image/ExifTool/GPS.pm +1 -1
- package/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- package/bin/lib/Image/ExifTool/Geotag.pm +1 -1
- package/bin/lib/Image/ExifTool/GoPro.pm +1 -1
- package/bin/lib/Image/ExifTool/H264.pm +1 -1
- package/bin/lib/Image/ExifTool/HP.pm +1 -1
- package/bin/lib/Image/ExifTool/HTML.pm +1 -1
- package/bin/lib/Image/ExifTool/HtmlDump.pm +1 -1
- package/bin/lib/Image/ExifTool/ICC_Profile.pm +1 -1
- package/bin/lib/Image/ExifTool/ICO.pm +1 -1
- package/bin/lib/Image/ExifTool/ID3.pm +1 -1
- package/bin/lib/Image/ExifTool/IPTC.pm +1 -1
- package/bin/lib/Image/ExifTool/ISO.pm +1 -1
- package/bin/lib/Image/ExifTool/ITC.pm +1 -1
- package/bin/lib/Image/ExifTool/Import.pm +1 -1
- package/bin/lib/Image/ExifTool/InDesign.pm +1 -1
- package/bin/lib/Image/ExifTool/InfiRay.pm +1 -1
- package/bin/lib/Image/ExifTool/JPEG.pm +5 -2
- package/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
- package/bin/lib/Image/ExifTool/JSON.pm +1 -1
- package/bin/lib/Image/ExifTool/JVC.pm +3 -3
- package/bin/lib/Image/ExifTool/Jpeg2000.pm +17 -6
- package/bin/lib/Image/ExifTool/Kodak.pm +1 -1
- package/bin/lib/Image/ExifTool/KyoceraRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/LIF.pm +1 -1
- package/bin/lib/Image/ExifTool/LNK.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/cs.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/de.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/en_ca.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/en_gb.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/es.pm +4 -4
- package/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/fr.pm +4 -5
- package/bin/lib/Image/ExifTool/Lang/it.pm +3 -3
- package/bin/lib/Image/ExifTool/Lang/ja.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/ko.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/nl.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/pl.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/ru.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/sk.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/sv.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/tr.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/zh_cn.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/zh_tw.pm +1 -1
- package/bin/lib/Image/ExifTool/Leaf.pm +3 -3
- package/bin/lib/Image/ExifTool/Lytro.pm +1 -1
- package/bin/lib/Image/ExifTool/M2TS.pm +1 -1
- package/bin/lib/Image/ExifTool/MIE.pm +3 -3
- package/bin/lib/Image/ExifTool/MIEUnits.pod +1 -1
- package/bin/lib/Image/ExifTool/MIFF.pm +1 -1
- package/bin/lib/Image/ExifTool/MISB.pm +1 -1
- package/bin/lib/Image/ExifTool/MNG.pm +1 -1
- package/bin/lib/Image/ExifTool/MOI.pm +1 -1
- package/bin/lib/Image/ExifTool/MPC.pm +1 -1
- package/bin/lib/Image/ExifTool/MPEG.pm +1 -1
- package/bin/lib/Image/ExifTool/MPF.pm +1 -1
- package/bin/lib/Image/ExifTool/MRC.pm +1 -1
- package/bin/lib/Image/ExifTool/MWG.pm +1 -1
- package/bin/lib/Image/ExifTool/MXF.pm +1 -1
- package/bin/lib/Image/ExifTool/MacOS.pm +1 -1
- package/bin/lib/Image/ExifTool/MakerNotes.pm +1 -1
- package/bin/lib/Image/ExifTool/Matroska.pm +1 -1
- package/bin/lib/Image/ExifTool/Microsoft.pm +1 -1
- package/bin/lib/Image/ExifTool/Minolta.pm +1 -1
- package/bin/lib/Image/ExifTool/MinoltaRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/Motorola.pm +1 -1
- package/bin/lib/Image/ExifTool/Nikon.pm +9 -8
- package/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- package/bin/lib/Image/ExifTool/NikonCustom.pm +1 -1
- package/bin/lib/Image/ExifTool/NikonSettings.pm +1 -1
- package/bin/lib/Image/ExifTool/Nintendo.pm +1 -1
- package/bin/lib/Image/ExifTool/OOXML.pm +1 -1
- package/bin/lib/Image/ExifTool/Ogg.pm +1 -1
- package/bin/lib/Image/ExifTool/Olympus.pm +1 -1
- package/bin/lib/Image/ExifTool/OpenEXR.pm +1 -1
- package/bin/lib/Image/ExifTool/Opus.pm +1 -1
- package/bin/lib/Image/ExifTool/Other.pm +1 -1
- package/bin/lib/Image/ExifTool/PCX.pm +1 -1
- package/bin/lib/Image/ExifTool/PDF.pm +1 -1
- package/bin/lib/Image/ExifTool/PGF.pm +1 -1
- package/bin/lib/Image/ExifTool/PICT.pm +1 -1
- package/bin/lib/Image/ExifTool/PLIST.pm +1 -1
- package/bin/lib/Image/ExifTool/PLUS.pm +1 -1
- package/bin/lib/Image/ExifTool/PNG.pm +24 -2
- package/bin/lib/Image/ExifTool/PPM.pm +1 -1
- package/bin/lib/Image/ExifTool/PSP.pm +1 -1
- package/bin/lib/Image/ExifTool/Palm.pm +1 -1
- package/bin/lib/Image/ExifTool/Panasonic.pm +27 -2
- package/bin/lib/Image/ExifTool/PanasonicRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/Parrot.pm +1 -1
- package/bin/lib/Image/ExifTool/Pentax.pm +32 -11
- package/bin/lib/Image/ExifTool/PhaseOne.pm +4 -4
- package/bin/lib/Image/ExifTool/PhotoCD.pm +1 -1
- package/bin/lib/Image/ExifTool/PhotoMechanic.pm +1 -1
- package/bin/lib/Image/ExifTool/Photoshop.pm +1 -1
- package/bin/lib/Image/ExifTool/PostScript.pm +1 -1
- package/bin/lib/Image/ExifTool/PrintIM.pm +1 -1
- package/bin/lib/Image/ExifTool/Qualcomm.pm +1 -1
- package/bin/lib/Image/ExifTool/QuickTime.pm +21 -1
- package/bin/lib/Image/ExifTool/QuickTimeStream.pl +90 -2
- package/bin/lib/Image/ExifTool/RIFF.pm +1 -1
- package/bin/lib/Image/ExifTool/RSRC.pm +1 -1
- package/bin/lib/Image/ExifTool/RTF.pm +1 -1
- package/bin/lib/Image/ExifTool/Radiance.pm +1 -1
- package/bin/lib/Image/ExifTool/Rawzor.pm +1 -1
- package/bin/lib/Image/ExifTool/Real.pm +1 -1
- package/bin/lib/Image/ExifTool/Reconyx.pm +1 -1
- package/bin/lib/Image/ExifTool/Red.pm +1 -1
- package/bin/lib/Image/ExifTool/Ricoh.pm +3 -3
- package/bin/lib/Image/ExifTool/Samsung.pm +1 -1
- package/bin/lib/Image/ExifTool/Sanyo.pm +1 -1
- package/bin/lib/Image/ExifTool/Scalado.pm +1 -1
- package/bin/lib/Image/ExifTool/Shift.pl +1 -1
- package/bin/lib/Image/ExifTool/Shortcuts.pm +1 -1
- package/bin/lib/Image/ExifTool/Sigma.pm +1 -1
- package/bin/lib/Image/ExifTool/SigmaRaw.pm +1 -1
- package/bin/lib/Image/ExifTool/Sony.pm +3 -3
- package/bin/lib/Image/ExifTool/SonyIDC.pm +1 -1
- package/bin/lib/Image/ExifTool/Stim.pm +1 -1
- package/bin/lib/Image/ExifTool/TagInfoXML.pm +2 -2
- package/bin/lib/Image/ExifTool/TagLookup.pm +3872 -3858
- package/bin/lib/Image/ExifTool/TagNames.pod +11416 -11382
- package/bin/lib/Image/ExifTool/Text.pm +1 -1
- package/bin/lib/Image/ExifTool/Theora.pm +1 -1
- package/bin/lib/Image/ExifTool/Torrent.pm +1 -1
- package/bin/lib/Image/ExifTool/Unknown.pm +1 -1
- package/bin/lib/Image/ExifTool/VCard.pm +1 -1
- package/bin/lib/Image/ExifTool/Validate.pm +1 -1
- package/bin/lib/Image/ExifTool/Vorbis.pm +1 -1
- package/bin/lib/Image/ExifTool/WPG.pm +1 -1
- package/bin/lib/Image/ExifTool/WTV.pm +1 -1
- package/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
- package/bin/lib/Image/ExifTool/WriteExif.pl +1 -1
- package/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
- package/bin/lib/Image/ExifTool/WritePDF.pl +1 -1
- package/bin/lib/Image/ExifTool/WritePNG.pl +1 -1
- package/bin/lib/Image/ExifTool/WritePhotoshop.pl +1 -1
- package/bin/lib/Image/ExifTool/WritePostScript.pl +1 -1
- package/bin/lib/Image/ExifTool/WriteQuickTime.pl +4 -1
- package/bin/lib/Image/ExifTool/WriteRIFF.pl +1 -1
- package/bin/lib/Image/ExifTool/WriteXMP.pl +5 -3
- package/bin/lib/Image/ExifTool/Writer.pl +6 -1
- package/bin/lib/Image/ExifTool/XISF.pm +1 -1
- package/bin/lib/Image/ExifTool/XMP.pm +19 -3
- package/bin/lib/Image/ExifTool/XMP2.pl +1 -1
- package/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
- package/bin/lib/Image/ExifTool/ZIP.pm +1 -1
- package/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
- package/bin/lib/Image/ExifTool/iWork.pm +1 -1
- package/bin/lib/Image/ExifTool.pm +18 -3
- package/bin/lib/Image/ExifTool.pod +10 -2
- package/bin/perl-Image-ExifTool.spec +1 -1
- package/bin/pp_build_exe.args +5 -5
- package/package.json +3 -3
|
@@ -36,7 +36,7 @@ use strict;
|
|
|
36
36
|
use vars qw($VERSION $AUTOLOAD %stdCase);
|
|
37
37
|
use Image::ExifTool qw(:DataAccess :Utils);
|
|
38
38
|
|
|
39
|
-
$VERSION = '1.
|
|
39
|
+
$VERSION = '1.66';
|
|
40
40
|
|
|
41
41
|
sub ProcessPNG_tEXt($$$);
|
|
42
42
|
sub ProcessPNG_iTXt($$$);
|
|
@@ -351,6 +351,27 @@ my %noLeapFrog = ( SAVE => 1, SEEK => 1, IHDR => 1, JHDR => 1, IEND => 1, MEND =
|
|
|
351
351
|
TagTable => 'Image::ExifTool::PNG::CICodePoints',
|
|
352
352
|
},
|
|
353
353
|
},
|
|
354
|
+
cpIp => { # OLE information found in PNG Plus images written by Picture It!
|
|
355
|
+
Name => 'OLEInfo',
|
|
356
|
+
Condition => q{
|
|
357
|
+
# set FileType to "PNG Plus"
|
|
358
|
+
if ($$self{VALUE}{FileType} and $$self{VALUE}{FileType} eq "PNG") {
|
|
359
|
+
$$self{VALUE}{FileType} = 'PNG Plus';
|
|
360
|
+
}
|
|
361
|
+
return 1;
|
|
362
|
+
},
|
|
363
|
+
SubDirectory => {
|
|
364
|
+
TagTable => 'Image::ExifTool::FlashPix::Main',
|
|
365
|
+
ProcessProc => 'Image::ExifTool::FlashPix::ProcessFPX',
|
|
366
|
+
},
|
|
367
|
+
},
|
|
368
|
+
meTa => { # XML in UTF-16 BOM format written by Picture It!
|
|
369
|
+
SubDirectory => {
|
|
370
|
+
TagTable => 'Image::ExifTool::XMP::XML',
|
|
371
|
+
IgnoreProp => { meta => 1 }, # ignore 'meta' container
|
|
372
|
+
},
|
|
373
|
+
},
|
|
374
|
+
# mkBF,mkTS,mkBS,mkBT ? - written by Adobe FireWorks
|
|
354
375
|
);
|
|
355
376
|
|
|
356
377
|
# PNG IHDR chunk
|
|
@@ -970,6 +991,7 @@ sub FoundPNG($$$$;$$$$)
|
|
|
970
991
|
TagInfo => $tagInfo,
|
|
971
992
|
ReadOnly => 1, # (used only by WriteXMP)
|
|
972
993
|
OutBuff => $outBuff,
|
|
994
|
+
IgnoreProp => $$subdir{IgnoreProp}, # (XML hack for meTa chunk)
|
|
973
995
|
);
|
|
974
996
|
# no need to re-decompress if already done
|
|
975
997
|
undef $processProc if $wasCompressed and $processProc and $processProc eq \&ProcessPNG_Compressed;
|
|
@@ -1656,7 +1678,7 @@ and JNG (JPEG Network Graphics) images.
|
|
|
1656
1678
|
|
|
1657
1679
|
=head1 AUTHOR
|
|
1658
1680
|
|
|
1659
|
-
Copyright 2003-
|
|
1681
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
1660
1682
|
|
|
1661
1683
|
This library is free software; you can redistribute it and/or modify it
|
|
1662
1684
|
under the same terms as Perl itself.
|
|
@@ -143,7 +143,7 @@ BitMap) images.
|
|
|
143
143
|
|
|
144
144
|
=head1 AUTHOR
|
|
145
145
|
|
|
146
|
-
Copyright 2003-
|
|
146
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
147
147
|
|
|
148
148
|
This library is free software; you can redistribute it and/or modify it
|
|
149
149
|
under the same terms as Perl itself.
|
|
@@ -284,7 +284,7 @@ information from Paint Shop Pro images.
|
|
|
284
284
|
|
|
285
285
|
=head1 AUTHOR
|
|
286
286
|
|
|
287
|
-
Copyright 2003-
|
|
287
|
+
Copyright 2003-2024, 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.
|
|
@@ -379,7 +379,7 @@ KF7 and KF8 books (AZW and AZW3).
|
|
|
379
379
|
|
|
380
380
|
=head1 AUTHOR
|
|
381
381
|
|
|
382
|
-
Copyright 2003-
|
|
382
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
383
383
|
|
|
384
384
|
This library is free software; you can redistribute it and/or modify it
|
|
385
385
|
under the same terms as Perl itself.
|
|
@@ -37,7 +37,7 @@ use vars qw($VERSION %leicaLensTypes);
|
|
|
37
37
|
use Image::ExifTool qw(:DataAccess :Utils);
|
|
38
38
|
use Image::ExifTool::Exif;
|
|
39
39
|
|
|
40
|
-
$VERSION = '2.
|
|
40
|
+
$VERSION = '2.22';
|
|
41
41
|
|
|
42
42
|
sub ProcessLeicaLEIC($$$);
|
|
43
43
|
sub WhiteBalanceConv($;$$);
|
|
@@ -2186,6 +2186,10 @@ my %shootingMode = (
|
|
|
2186
2186
|
Writable => 'rational64u',
|
|
2187
2187
|
Count => 2,
|
|
2188
2188
|
},
|
|
2189
|
+
0x0370 => { #forum15440
|
|
2190
|
+
Name => 'LensProfileName',
|
|
2191
|
+
Writable => 'string',
|
|
2192
|
+
},
|
|
2189
2193
|
);
|
|
2190
2194
|
|
|
2191
2195
|
# Type 2 tags (ref PH)
|
|
@@ -2509,6 +2513,27 @@ my %shootingMode = (
|
|
|
2509
2513
|
},
|
|
2510
2514
|
);
|
|
2511
2515
|
|
|
2516
|
+
# Leica XMP Digital Shift Assistant tags
|
|
2517
|
+
%Image::ExifTool::Panasonic::DSA = (
|
|
2518
|
+
GROUPS => { 0 => 'XMP', 1 => 'XMP-xmpDSA', 2 => 'Image' },
|
|
2519
|
+
PROCESS_PROC => 'Image::ExifTool::XMP::ProcessXMP',
|
|
2520
|
+
NAMESPACE => 'xmpDSA',
|
|
2521
|
+
WRITABLE => 'string',
|
|
2522
|
+
AVOID => 1,
|
|
2523
|
+
VARS => { NO_ID => 1 },
|
|
2524
|
+
NOTES => 'XMP Digital Shift Assistant tags written by some Leica cameras.',
|
|
2525
|
+
Version => { }, # eg. "1.0.0"
|
|
2526
|
+
CorrectionAlreadyApplied => { Writable => 'boolean' },
|
|
2527
|
+
PitchAngle => { Writable => 'real' },
|
|
2528
|
+
RollAngle => { Writable => 'real' },
|
|
2529
|
+
FocalLength35mm => { Writable => 'real' },
|
|
2530
|
+
TargetAspectRatio => { Writable => 'real' },
|
|
2531
|
+
ScalingFactorHeight => { Writable => 'real' },
|
|
2532
|
+
ValidCropCorners => { Writable => 'boolean' },
|
|
2533
|
+
ApplyAutomatically => { Writable => 'boolean' },
|
|
2534
|
+
NormalizedCropCorners => { Writable => 'real', List => 'Seq' },
|
|
2535
|
+
);
|
|
2536
|
+
|
|
2512
2537
|
# Panasonic Composite tags
|
|
2513
2538
|
%Image::ExifTool::Panasonic::Composite = (
|
|
2514
2539
|
GROUPS => { 2 => 'Camera' },
|
|
@@ -2876,7 +2901,7 @@ Panasonic and Leica maker notes in EXIF information.
|
|
|
2876
2901
|
|
|
2877
2902
|
=head1 AUTHOR
|
|
2878
2903
|
|
|
2879
|
-
Copyright 2003-
|
|
2904
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
2880
2905
|
|
|
2881
2906
|
This library is free software; you can redistribute it and/or modify it
|
|
2882
2907
|
under the same terms as Perl itself.
|
|
@@ -934,7 +934,7 @@ write meta information in Panasonic/Leica RAW, RW2 and RWL images.
|
|
|
934
934
|
|
|
935
935
|
=head1 AUTHOR
|
|
936
936
|
|
|
937
|
-
Copyright 2003-
|
|
937
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
938
938
|
|
|
939
939
|
This library is free software; you can redistribute it and/or modify it
|
|
940
940
|
under the same terms as Perl itself.
|
|
@@ -825,7 +825,7 @@ timed metadata from the 'mett' frame found in Parrot drone MP4 videos.
|
|
|
825
825
|
|
|
826
826
|
=head1 AUTHOR
|
|
827
827
|
|
|
828
|
-
Copyright 2003-
|
|
828
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
829
829
|
|
|
830
830
|
This library is free software; you can redistribute it and/or modify it
|
|
831
831
|
under the same terms as Perl itself.
|
|
@@ -58,7 +58,7 @@ use Image::ExifTool::Exif;
|
|
|
58
58
|
use Image::ExifTool::GPS;
|
|
59
59
|
use Image::ExifTool::HP;
|
|
60
60
|
|
|
61
|
-
$VERSION = '3.
|
|
61
|
+
$VERSION = '3.46';
|
|
62
62
|
|
|
63
63
|
sub CryptShutterCount($$);
|
|
64
64
|
sub PrintFilter($$$);
|
|
@@ -1571,6 +1571,7 @@ my %binaryDataAttrs = (
|
|
|
1571
1571
|
0 => 'Multi-segment',
|
|
1572
1572
|
1 => 'Center-weighted average',
|
|
1573
1573
|
2 => 'Spot',
|
|
1574
|
+
6 => 'Highlight', # (GR III)
|
|
1574
1575
|
# have seen value of 16 for E70
|
|
1575
1576
|
},
|
|
1576
1577
|
},
|
|
@@ -2135,7 +2136,7 @@ my %binaryDataAttrs = (
|
|
|
2135
2136
|
PrintConvInv => [ 'Image::ExifTool::Exif::ConvertFraction($val)' ],
|
|
2136
2137
|
}],
|
|
2137
2138
|
0x004f => { #PH
|
|
2138
|
-
Name => 'ImageTone', # (Called CustomImageMode
|
|
2139
|
+
Name => 'ImageTone', # (Called CustomImageMode for K20D and ImageControlMode for GR III)
|
|
2139
2140
|
Writable => 'int16u',
|
|
2140
2141
|
PrintConvColumns => 2,
|
|
2141
2142
|
PrintConv => {
|
|
@@ -2151,6 +2152,19 @@ my %binaryDataAttrs = (
|
|
|
2151
2152
|
9 => 'Radiant', # (Q)
|
|
2152
2153
|
10 => 'Cross Processing', #31 (K-70)
|
|
2153
2154
|
11 => 'Flat', #31 (K-70)
|
|
2155
|
+
# the following values from GR III
|
|
2156
|
+
256 => 'Standard',
|
|
2157
|
+
257 => 'Vivid',
|
|
2158
|
+
258 => 'Monotone',
|
|
2159
|
+
259 => 'Soft Monotone',
|
|
2160
|
+
260 => 'Hard Monotone',
|
|
2161
|
+
261 => 'Hi-contrast B&W',
|
|
2162
|
+
262 => 'Positive Film',
|
|
2163
|
+
263 => 'Bleach Bypass 2',
|
|
2164
|
+
264 => 'Retro',
|
|
2165
|
+
265 => 'HDR Tone',
|
|
2166
|
+
266 => 'Cross Processing 2',
|
|
2167
|
+
267 => 'Negative Film',
|
|
2154
2168
|
# 256 - seen for GR III
|
|
2155
2169
|
# 257 - seen for GR III
|
|
2156
2170
|
# 262 - seen for GR III
|
|
@@ -2466,16 +2480,23 @@ my %binaryDataAttrs = (
|
|
|
2466
2480
|
},
|
|
2467
2481
|
},
|
|
2468
2482
|
0x007a => { #PH
|
|
2469
|
-
Name => '
|
|
2483
|
+
Name => 'ISOAutoMinSpeed',
|
|
2470
2484
|
Writable => 'int8u',
|
|
2471
2485
|
Count => 2,
|
|
2472
|
-
|
|
2473
|
-
|
|
2474
|
-
|
|
2475
|
-
|
|
2476
|
-
|
|
2477
|
-
|
|
2478
|
-
|
|
2486
|
+
# From the K-3III menus for the "ISO Auto with Min. Speed" setting: 'Fast' = "Increases
|
|
2487
|
+
# the sensitivity from a shutter speed faster than the standard setting in ISO Auto"
|
|
2488
|
+
ValueConv => [ undef, '$val ? exp(-Image::ExifTool::Pentax::PentaxEv($val-68)*log(2)) : 0' ],
|
|
2489
|
+
ValueConvInv => [ undef, '$val ? Image::ExifTool::Pentax::PentaxEvInv(-log($val)/log(2))+68 : 0' ],
|
|
2490
|
+
PrintConv => [
|
|
2491
|
+
{
|
|
2492
|
+
1 => 'Shutter Speed Control',
|
|
2493
|
+
2 => 'Auto Slow',
|
|
2494
|
+
3 => 'Auto Standard',
|
|
2495
|
+
4 => 'Auto Fast',
|
|
2496
|
+
},
|
|
2497
|
+
'Image::ExifTool::Exif::PrintExposureTime($val)',
|
|
2498
|
+
],
|
|
2499
|
+
PrintConvInv => [ undef, 'Image::ExifTool::Exif::ConvertFraction($val)' ],
|
|
2479
2500
|
},
|
|
2480
2501
|
0x007b => { #PH (K-5)
|
|
2481
2502
|
Name => 'CrossProcess',
|
|
@@ -6339,7 +6360,7 @@ tags, and everyone who helped contribute to the LensType values.
|
|
|
6339
6360
|
|
|
6340
6361
|
=head1 AUTHOR
|
|
6341
6362
|
|
|
6342
|
-
Copyright 2003-
|
|
6363
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
6343
6364
|
|
|
6344
6365
|
This library is free software; you can redistribute it and/or modify it
|
|
6345
6366
|
under the same terms as Perl itself.
|
|
@@ -153,7 +153,7 @@ my @formatName = ( undef, 'string', 'int16s', undef, 'int32s' );
|
|
|
153
153
|
Format => 'int16s',
|
|
154
154
|
Count => -1,
|
|
155
155
|
Flags => ['Unknown','Hidden'],
|
|
156
|
-
PrintConv =>
|
|
156
|
+
PrintConv => \&Image::ExifTool::LimitLongValues,
|
|
157
157
|
},
|
|
158
158
|
0x0226 => {
|
|
159
159
|
Name => 'ColorMatrix2',
|
|
@@ -184,13 +184,13 @@ my @formatName = ( undef, 'string', 'int16s', undef, 'int32s' );
|
|
|
184
184
|
Name => 'PhaseOne_0x0258',
|
|
185
185
|
Format => 'int16s',
|
|
186
186
|
Flags => ['Unknown','Hidden'],
|
|
187
|
-
PrintConv =>
|
|
187
|
+
PrintConv => \&Image::ExifTool::LimitLongValues,
|
|
188
188
|
},
|
|
189
189
|
0x025a => { #PH
|
|
190
190
|
Name => 'PhaseOne_0x025a',
|
|
191
191
|
Format => 'int16s',
|
|
192
192
|
Flags => ['Unknown','Hidden'],
|
|
193
|
-
PrintConv =>
|
|
193
|
+
PrintConv => \&Image::ExifTool::LimitLongValues,
|
|
194
194
|
},
|
|
195
195
|
# 0x0300 - int32u: 100,101,102
|
|
196
196
|
0x0301 => { Name => 'FirmwareVersions', Format => 'string' },
|
|
@@ -725,7 +725,7 @@ One maker notes.
|
|
|
725
725
|
|
|
726
726
|
=head1 AUTHOR
|
|
727
727
|
|
|
728
|
-
Copyright 2003-
|
|
728
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
729
729
|
|
|
730
730
|
This library is free software; you can redistribute it and/or modify it
|
|
731
731
|
under the same terms as Perl itself.
|
|
@@ -484,7 +484,7 @@ information from Kodak Photo CD Image Pac (PCD) files.
|
|
|
484
484
|
|
|
485
485
|
=head1 AUTHOR
|
|
486
486
|
|
|
487
|
-
Copyright 2003-
|
|
487
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
488
488
|
|
|
489
489
|
This library is free software; you can redistribute it and/or modify it
|
|
490
490
|
under the same terms as Perl itself.
|
|
@@ -237,7 +237,7 @@ write information written by the Camera Bits Photo Mechanic software.
|
|
|
237
237
|
|
|
238
238
|
=head1 AUTHOR
|
|
239
239
|
|
|
240
|
-
Copyright 2003-
|
|
240
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
241
241
|
|
|
242
242
|
This library is free software; you can redistribute it and/or modify it
|
|
243
243
|
under the same terms as Perl itself.
|
|
@@ -1201,7 +1201,7 @@ be preserved when copying Photoshop information via user-defined tags.
|
|
|
1201
1201
|
|
|
1202
1202
|
=head1 AUTHOR
|
|
1203
1203
|
|
|
1204
|
-
Copyright 2003-
|
|
1204
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
1205
1205
|
|
|
1206
1206
|
This library is free software; you can redistribute it and/or modify it
|
|
1207
1207
|
under the same terms as Perl itself.
|
|
@@ -777,7 +777,7 @@ This code reads meta information from EPS (Encapsulated PostScript), PS
|
|
|
777
777
|
|
|
778
778
|
=head1 AUTHOR
|
|
779
779
|
|
|
780
|
-
Copyright 2003-
|
|
780
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
781
781
|
|
|
782
782
|
This library is free software; you can redistribute it and/or modify it
|
|
783
783
|
under the same terms as Perl itself.
|
|
@@ -112,7 +112,7 @@ Print Image Matching meta information.
|
|
|
112
112
|
|
|
113
113
|
=head1 AUTHOR
|
|
114
114
|
|
|
115
|
-
Copyright 2003-
|
|
115
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
116
116
|
|
|
117
117
|
This library is free software; you can redistribute it and/or modify it
|
|
118
118
|
under the same terms as Perl itself.
|
|
@@ -1331,7 +1331,7 @@ information from the APP7 Qualcomm segment in JPEG images.
|
|
|
1331
1331
|
|
|
1332
1332
|
=head1 AUTHOR
|
|
1333
1333
|
|
|
1334
|
-
Copyright 2003-
|
|
1334
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
1335
1335
|
|
|
1336
1336
|
This library is free software; you can redistribute it and/or modify it
|
|
1337
1337
|
under the same terms as Perl itself.
|
|
@@ -64,6 +64,7 @@ sub Process_3gf($$$);
|
|
|
64
64
|
sub Process_gps0($$$);
|
|
65
65
|
sub Process_gsen($$$);
|
|
66
66
|
sub ProcessKenwood($$$);
|
|
67
|
+
sub ProcessLIGO_JSON($$$);
|
|
67
68
|
sub ProcessRIFFTrailer($$$);
|
|
68
69
|
sub ProcessTTAD($$$);
|
|
69
70
|
sub ProcessNMEA($$$);
|
|
@@ -707,6 +708,13 @@ my %isImageData = ( av01 => 1, avc1 => 1, hvc1 => 1, lhv1 => 1, hvt1 => 1 );
|
|
|
707
708
|
TagTable => 'Image::ExifTool::QuickTime::Stream',
|
|
708
709
|
ProcessProc => \&ProcessKenwood,
|
|
709
710
|
},
|
|
711
|
+
},{
|
|
712
|
+
Name => 'LIGO_JSON',
|
|
713
|
+
Condition => '$$valPt =~ /^LIGOGPSINFO \{/',
|
|
714
|
+
SubDirectory => {
|
|
715
|
+
TagTable => 'Image::ExifTool::QuickTime::Stream',
|
|
716
|
+
ProcessProc => \&ProcessLIGO_JSON,
|
|
717
|
+
},
|
|
710
718
|
},{
|
|
711
719
|
Name => 'FLIRData',
|
|
712
720
|
SubDirectory => { TagTable => 'Image::ExifTool::FLIR::UserData' },
|
|
@@ -825,6 +833,7 @@ my %isImageData = ( av01 => 1, avc1 => 1, hvc1 => 1, lhv1 => 1, hvt1 => 1 );
|
|
|
825
833
|
# note that this may be written and/or deleted, but can't currently be added back again
|
|
826
834
|
Writable => 1,
|
|
827
835
|
},
|
|
836
|
+
# '35AX'? - seen "AT" (Yada RoadCam Pro 4K dashcam)
|
|
828
837
|
);
|
|
829
838
|
|
|
830
839
|
# stuff seen in 'skip' atom (70mai Pro Plus+ MP4 videos)
|
|
@@ -6699,6 +6708,13 @@ my %isImageData = ( av01 => 1, avc1 => 1, hvc1 => 1, lhv1 => 1, hvt1 => 1 );
|
|
|
6699
6708
|
# (mdta)com.apple.proapps.image.{TIFF}.Make (eg. "Atmos")
|
|
6700
6709
|
# (mdta)com.apple.proapps.image.{TIFF}.Model (eg. "ShogunInferno")
|
|
6701
6710
|
# (mdta)com.apple.proapps.image.{TIFF}.Software (eg. "9.0")
|
|
6711
|
+
#
|
|
6712
|
+
# also seen (but don't yet add support for these)
|
|
6713
|
+
#
|
|
6714
|
+
# (mdta)major_brand
|
|
6715
|
+
# (mdta)minor_version
|
|
6716
|
+
# (mdta)compatible_brands
|
|
6717
|
+
# (mdta)creation_time
|
|
6702
6718
|
);
|
|
6703
6719
|
|
|
6704
6720
|
# iTunes info ('----') atoms
|
|
@@ -7315,6 +7331,10 @@ my %isImageData = ( av01 => 1, avc1 => 1, hvc1 => 1, lhv1 => 1, hvt1 => 1 );
|
|
|
7315
7331
|
Name => 'SpatialAudio',
|
|
7316
7332
|
SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::SpatialAudio' },
|
|
7317
7333
|
},
|
|
7334
|
+
btrt => {
|
|
7335
|
+
Name => 'BitrateInfo',
|
|
7336
|
+
SubDirectory => { TagTable => 'Image::ExifTool::QuickTime::Bitrate' },
|
|
7337
|
+
},
|
|
7318
7338
|
# alac - 28 bytes
|
|
7319
7339
|
# adrm - AAX DRM atom? 148 bytes
|
|
7320
7340
|
# aabd - AAX unknown 17kB (contains 'aavd' strings)
|
|
@@ -10009,7 +10029,7 @@ information from QuickTime and MP4 video, M4A audio, and HEIC image files.
|
|
|
10009
10029
|
|
|
10010
10030
|
=head1 AUTHOR
|
|
10011
10031
|
|
|
10012
|
-
Copyright 2003-
|
|
10032
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
10013
10033
|
|
|
10014
10034
|
This library is free software; you can redistribute it and/or modify it
|
|
10015
10035
|
under the same terms as Perl itself.
|
|
@@ -109,11 +109,13 @@ my %insvLimit = (
|
|
|
109
109
|
The tags below are extracted from timed metadata in QuickTime and other
|
|
110
110
|
formats of video files when the ExtractEmbedded option is used. Although
|
|
111
111
|
most of these tags are combined into the single table below, ExifTool
|
|
112
|
-
currently reads
|
|
112
|
+
currently reads 68 different formats of timed GPS metadata from video files.
|
|
113
113
|
},
|
|
114
114
|
VARS => { NO_ID => 1 },
|
|
115
115
|
GPSLatitude => { PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")', RawConv => '$$self{FoundGPSLatitude} = 1; $val' },
|
|
116
116
|
GPSLongitude => { PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "E")' },
|
|
117
|
+
GPSLatitude2 => { PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")' },
|
|
118
|
+
GPSLongitude2=> { PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "E")' },
|
|
117
119
|
GPSAltitude => { PrintConv => '(sprintf("%.4f", $val) + 0) . " m"' }, # round to 4 decimals
|
|
118
120
|
GPSSpeed => { PrintConv => 'sprintf("%.4f", $val) + 0', Notes => 'in km/h unless GPSSpeedRef says otherwise' },
|
|
119
121
|
GPSSpeedRef => { PrintConv => { K => 'km/h', M => 'mph', N => 'knots' } },
|
|
@@ -125,6 +127,11 @@ my %insvLimit = (
|
|
|
125
127
|
RawConv => '$$self{FoundGPSDateTime} = 1; $val',
|
|
126
128
|
PrintConv => '$self->ConvertDateTime($val)',
|
|
127
129
|
},
|
|
130
|
+
DateTimeOriginal => {
|
|
131
|
+
Groups => { 2 => 'Time' },
|
|
132
|
+
Description => 'Date/Time Original',
|
|
133
|
+
PrintConv => '$self->ConvertDateTime($val)',
|
|
134
|
+
},
|
|
128
135
|
GPSTimeStamp => { PrintConv => 'Image::ExifTool::GPS::PrintTimeStamp($val)', Groups => { 2 => 'Time' } },
|
|
129
136
|
GPSSatellites=> { },
|
|
130
137
|
GPSDOP => { Description => 'GPS Dilution Of Precision' },
|
|
@@ -2426,6 +2433,83 @@ sub Process_gsen($$$)
|
|
|
2426
2433
|
return 1;
|
|
2427
2434
|
}
|
|
2428
2435
|
|
|
2436
|
+
#------------------------------------------------------------------------------
|
|
2437
|
+
# Process LIGOGPS JSON-format GPS from Yada RoadCam Pro 4K BT58189
|
|
2438
|
+
# Inputs: 0) ExifTool ref, 1) dirInfo ref, 2) tag table ref
|
|
2439
|
+
# Returns: 1 on success
|
|
2440
|
+
# Sample data (chained 512-byte records starting like this):
|
|
2441
|
+
# 0000: 4c 49 47 4f 47 50 53 49 4e 46 4f 20 7b 22 48 6f [LIGOGPSINFO {"Ho]
|
|
2442
|
+
# 0010: 75 72 22 3a 20 22 32 33 22 2c 20 22 4d 69 6e 75 [ur": "23", "Minu]
|
|
2443
|
+
# 0020: 74 65 22 3a 20 22 31 30 22 2c 20 22 53 65 63 6f [te": "10", "Seco]
|
|
2444
|
+
# 0030: 6e 64 22 3a 20 22 32 32 22 2c 20 22 59 65 61 72 [nd": "22", "Year]
|
|
2445
|
+
# 0040: 22 3a 20 22 32 30 32 33 22 2c 20 22 4d 6f 6e 74 [": "2023", "Mont]
|
|
2446
|
+
# 0050: 68 22 3a 20 22 31 32 22 2c 20 22 44 61 79 22 3a [h": "12", "Day":]
|
|
2447
|
+
# 0060: 20 22 32 38 22 2c 20 22 73 74 61 74 75 73 22 3a [ "28", "status":]
|
|
2448
|
+
sub ProcessLIGO_JSON($$$)
|
|
2449
|
+
{
|
|
2450
|
+
my ($et, $dirInfo, $tagTbl) = @_;
|
|
2451
|
+
my $dataPt = $$dirInfo{DataPt};
|
|
2452
|
+
my $dirLen = $$dirInfo{DirLen};
|
|
2453
|
+
require Image::ExifTool::Import;
|
|
2454
|
+
$et->VerboseDir('LIGO_JSON', undef, length($$dataPt));
|
|
2455
|
+
while ($$dataPt =~ /LIGOGPSINFO (\{.*?\})/g) {
|
|
2456
|
+
my $json = $1;
|
|
2457
|
+
my $raf = new File::RandomAccess(\$json);
|
|
2458
|
+
my %dbase;
|
|
2459
|
+
Image::ExifTool::Import::ReadJSON($raf, \%dbase);
|
|
2460
|
+
my $info = $dbase{'*'} or next;
|
|
2461
|
+
# my sample contains the following JSON fields (in this order):
|
|
2462
|
+
# Hour Minute Second Year Month Day (GPS UTC time)
|
|
2463
|
+
# status NS EW Latitude Longitude Speed (speed in knots)
|
|
2464
|
+
# GsensorX GsensorY GsensorZ (units? - only seen "000" for all)
|
|
2465
|
+
# MHour MMinute MSecond MYear MMonth MDay (local dashcam clock time)
|
|
2466
|
+
# OLatitude OLongitude (? same values as Latitude/Longitude)
|
|
2467
|
+
next unless defined $$info{status} and $$info{status} eq 'A'; # only read if GPS is active
|
|
2468
|
+
$$et{DOC_NUM} = ++$$et{DOC_COUNT};
|
|
2469
|
+
my $num = 0;
|
|
2470
|
+
defined $$info{$_} and ++$num foreach qw(Year Month Day Hour Minute Second);
|
|
2471
|
+
if ($num == 6) {
|
|
2472
|
+
# this is the GPS time in UTC
|
|
2473
|
+
my $time = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2dZ',@$info{qw{Year Month Day Hour Minute Second}});
|
|
2474
|
+
$et->HandleTag($tagTbl, GPSDateTime => $time);
|
|
2475
|
+
}
|
|
2476
|
+
if ($$info{Latitude} and $$info{Longitude}) {
|
|
2477
|
+
my $lat = $$info{Latitude};
|
|
2478
|
+
$lat = -$lat if $$info{NS} and $$info{NS} eq 'S';
|
|
2479
|
+
my $lon = $$info{Longitude};
|
|
2480
|
+
$lon = -$lon if $$info{EW} and $$info{EW} eq 'W';
|
|
2481
|
+
$et->HandleTag($tagTbl, GPSLatitude => $lat);
|
|
2482
|
+
$et->HandleTag($tagTbl, GPSLongitude => $lon);
|
|
2483
|
+
}
|
|
2484
|
+
$et->HandleTag($tagTbl, GPSSpeed => $$info{Speed} * $knotsToKph) if defined $$info{Speed};
|
|
2485
|
+
if (defined $$info{GsensorX} and defined $$info{GsensorY} and defined $$info{GsensorZ}) {
|
|
2486
|
+
# (don't know conversion factor for accel data, so leave it raw for now)
|
|
2487
|
+
$et->HandleTag($tagTbl, Accelerometer => "$$info{GsensorX} $$info{GsensorY} $$info{GsensorZ}");
|
|
2488
|
+
}
|
|
2489
|
+
$num = 0;
|
|
2490
|
+
defined $$info{$_} and ++$num foreach qw(MYear MMonth MDay MHour MMinute MSecond);
|
|
2491
|
+
if ($num == 6) {
|
|
2492
|
+
# this is the dashcam clock time (local time zone)
|
|
2493
|
+
my $time = sprintf('%.4d:%.2d:%.2d %.2d:%.2d:%.2d',@$info{qw{MYear MMonth MDay MHour MMinute MSecond}});
|
|
2494
|
+
$et->HandleTag($tagTbl, DateTimeOriginal => $time);
|
|
2495
|
+
}
|
|
2496
|
+
if (defined $$info{OLatitude} and defined $$info{OLongitude}) {
|
|
2497
|
+
my $lat = $$info{OLatitude};
|
|
2498
|
+
$lat = -$lat if $$info{NS} and $$info{NS} eq 'S';
|
|
2499
|
+
my $lon = $$info{OLongitude};
|
|
2500
|
+
$lon = -$lon if $$info{EW} and $$info{EW} eq 'W';
|
|
2501
|
+
$et->HandleTag($tagTbl, GPSLatitude2 => $lat);
|
|
2502
|
+
$et->HandleTag($tagTbl, GPSLongitude2 => $lon);
|
|
2503
|
+
}
|
|
2504
|
+
unless ($et->Options('ExtractEmbedded')) {
|
|
2505
|
+
$et->WarnOnce('Use the ExtractEmbedded option to extract all timed GPS',3);
|
|
2506
|
+
last;
|
|
2507
|
+
}
|
|
2508
|
+
}
|
|
2509
|
+
delete $$et{DOC_NUM};
|
|
2510
|
+
return 1;
|
|
2511
|
+
}
|
|
2512
|
+
|
|
2429
2513
|
#------------------------------------------------------------------------------
|
|
2430
2514
|
# Process Kenwood drv-a301w dashcam 'udta' atom (ref PH)
|
|
2431
2515
|
# Inputs: 0) ExifTool ref, 1) dirInfo ref, 2) tag table ref
|
|
@@ -2464,6 +2548,10 @@ sub ProcessKenwood($$$)
|
|
|
2464
2548
|
push @acc, $1/1000, $2/1000, $3/1000;
|
|
2465
2549
|
}
|
|
2466
2550
|
$et->HandleTag($tagTbl, Accelerometer => "@acc") if @acc;
|
|
2551
|
+
unless ($et->Options('ExtractEmbedded')) {
|
|
2552
|
+
$et->WarnOnce('Use the ExtractEmbedded option to extract all timed GPS',3);
|
|
2553
|
+
last;
|
|
2554
|
+
}
|
|
2467
2555
|
}
|
|
2468
2556
|
delete $$et{DOC_NUM};
|
|
2469
2557
|
return 1;
|
|
@@ -3221,7 +3309,7 @@ information like GPS tracks from MOV, MP4 and INSV media data.
|
|
|
3221
3309
|
|
|
3222
3310
|
=head1 AUTHOR
|
|
3223
3311
|
|
|
3224
|
-
Copyright 2003-
|
|
3312
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
3225
3313
|
|
|
3226
3314
|
This library is free software; you can redistribute it and/or modify it
|
|
3227
3315
|
under the same terms as Perl itself.
|
|
@@ -2199,7 +2199,7 @@ including AVI videos, WAV audio files and WEBP images.
|
|
|
2199
2199
|
|
|
2200
2200
|
=head1 AUTHOR
|
|
2201
2201
|
|
|
2202
|
-
Copyright 2003-
|
|
2202
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
2203
2203
|
|
|
2204
2204
|
This library is free software; you can redistribute it and/or modify it
|
|
2205
2205
|
under the same terms as Perl itself.
|
|
@@ -225,7 +225,7 @@ resource files.
|
|
|
225
225
|
|
|
226
226
|
=head1 AUTHOR
|
|
227
227
|
|
|
228
|
-
Copyright 2003-
|
|
228
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
229
229
|
|
|
230
230
|
This library is free software; you can redistribute it and/or modify it
|
|
231
231
|
under the same terms as Perl itself.
|
|
@@ -366,7 +366,7 @@ information from RTF (Rich Text Format) documents.
|
|
|
366
366
|
|
|
367
367
|
=head1 AUTHOR
|
|
368
368
|
|
|
369
|
-
Copyright 2003-
|
|
369
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
370
370
|
|
|
371
371
|
This library is free software; you can redistribute it and/or modify it
|
|
372
372
|
under the same terms as Perl itself.
|
|
@@ -125,7 +125,7 @@ images are a type of high dynamic-range image.
|
|
|
125
125
|
|
|
126
126
|
=head1 AUTHOR
|
|
127
127
|
|
|
128
|
-
Copyright 2003-
|
|
128
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
129
129
|
|
|
130
130
|
This library is free software; you can redistribute it and/or modify it
|
|
131
131
|
under the same terms as Perl itself.
|
|
@@ -168,7 +168,7 @@ information from Rawzor compressed images.
|
|
|
168
168
|
|
|
169
169
|
=head1 AUTHOR
|
|
170
170
|
|
|
171
|
-
Copyright 2003-
|
|
171
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
172
172
|
|
|
173
173
|
This library is free software; you can redistribute it and/or modify it
|
|
174
174
|
under the same terms as Perl itself.
|
|
@@ -715,7 +715,7 @@ little-endian, but the Real format is big-endian.
|
|
|
715
715
|
|
|
716
716
|
=head1 AUTHOR
|
|
717
717
|
|
|
718
|
-
Copyright 2003-
|
|
718
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
719
719
|
|
|
720
720
|
This library is free software; you can redistribute it and/or modify it
|
|
721
721
|
under the same terms as Perl itself.
|
|
@@ -431,7 +431,7 @@ maker notes in images from Reconyx cameras.
|
|
|
431
431
|
|
|
432
432
|
=head1 AUTHOR
|
|
433
433
|
|
|
434
|
-
Copyright 2003-
|
|
434
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
435
435
|
|
|
436
436
|
This library is free software; you can redistribute it and/or modify it
|
|
437
437
|
under the same terms as Perl itself.
|
|
@@ -303,7 +303,7 @@ from Redcode R3D version 1 and 2 video files.
|
|
|
303
303
|
|
|
304
304
|
=head1 AUTHOR
|
|
305
305
|
|
|
306
|
-
Copyright 2003-
|
|
306
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
307
307
|
|
|
308
308
|
This library is free software; you can redistribute it and/or modify it
|
|
309
309
|
under the same terms as Perl itself.
|
|
@@ -21,7 +21,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
|
21
21
|
use Image::ExifTool::Exif;
|
|
22
22
|
use Image::ExifTool::GPS;
|
|
23
23
|
|
|
24
|
-
$VERSION = '1.
|
|
24
|
+
$VERSION = '1.38';
|
|
25
25
|
|
|
26
26
|
sub ProcessRicohText($$$);
|
|
27
27
|
sub ProcessRicohRMETA($$$);
|
|
@@ -1078,7 +1078,7 @@ sub ProcessRicohText($$$)
|
|
|
1078
1078
|
$tagInfo = {
|
|
1079
1079
|
Name => "Ricoh_Text_$tag",
|
|
1080
1080
|
Unknown => 1,
|
|
1081
|
-
PrintConv =>
|
|
1081
|
+
PrintConv => \&Image::ExifTool::LimitLongValues,
|
|
1082
1082
|
};
|
|
1083
1083
|
# add tag information to table
|
|
1084
1084
|
AddTagToTable($tagTablePtr, $tag, $tagInfo);
|
|
@@ -1252,7 +1252,7 @@ interpret Ricoh maker notes EXIF meta information.
|
|
|
1252
1252
|
|
|
1253
1253
|
=head1 AUTHOR
|
|
1254
1254
|
|
|
1255
|
-
Copyright 2003-
|
|
1255
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
1256
1256
|
|
|
1257
1257
|
This library is free software; you can redistribute it and/or modify it
|
|
1258
1258
|
under the same terms as Perl itself.
|
|
@@ -1723,7 +1723,7 @@ Samsung maker notes in EXIF information.
|
|
|
1723
1723
|
|
|
1724
1724
|
=head1 AUTHOR
|
|
1725
1725
|
|
|
1726
|
-
Copyright 2003-
|
|
1726
|
+
Copyright 2003-2024, Phil Harvey (philharvey66 at gmail.com)
|
|
1727
1727
|
|
|
1728
1728
|
This library is free software; you can redistribute it and/or modify it
|
|
1729
1729
|
under the same terms as Perl itself.
|