exiftool-vendored.pl 12.50.0 → 12.54.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 +69 -3
- package/bin/MANIFEST +2 -0
- package/bin/META.json +1 -1
- package/bin/META.yml +1 -1
- package/bin/README +3 -3
- package/bin/exiftool +12 -9
- package/bin/lib/File/RandomAccess.pm +1 -1
- package/bin/lib/File/RandomAccess.pod +2 -2
- 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 +197 -27
- 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 +3 -3
- package/bin/lib/Image/ExifTool/CBOR.pm +1 -1
- package/bin/lib/Image/ExifTool/Canon.pm +14 -2
- 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 +9 -9
- package/bin/lib/Image/ExifTool/CaptureOne.pm +1 -1
- package/bin/lib/Image/ExifTool/Casio.pm +4 -4
- 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 +5 -16
- 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 +7 -6
- 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 +1 -1
- 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 +20 -13
- 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 +12 -6
- package/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- package/bin/lib/Image/ExifTool/Geotag.pm +13 -5
- 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/JPEG.pm +2 -1
- 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 +1 -1
- package/bin/lib/Image/ExifTool/Jpeg2000.pm +35 -8
- 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 +2 -2
- 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 +1 -1
- package/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/fr.pm +6016 -760
- package/bin/lib/Image/ExifTool/Lang/it.pm +1 -1
- 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 +1806 -0
- 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 +1 -1
- 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 +1 -1
- 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 +262 -46
- 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 +658 -276
- package/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- package/bin/lib/Image/ExifTool/NikonCustom.pm +140 -107
- 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 +4 -3
- 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 +12 -7
- package/bin/lib/Image/ExifTool/PLUS.pm +1 -1
- package/bin/lib/Image/ExifTool/PNG.pm +9 -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 +1 -1
- 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 +1 -1
- package/bin/lib/Image/ExifTool/PhaseOne.pm +1 -1
- 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 +8 -4
- package/bin/lib/Image/ExifTool/QuickTimeStream.pl +63 -15
- package/bin/lib/Image/ExifTool/README +2 -1
- 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 +1 -1
- package/bin/lib/Image/ExifTool/Samsung.pm +3 -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 +7 -7
- 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 +13 -8
- package/bin/lib/Image/ExifTool/TagLookup.pm +4599 -4505
- package/bin/lib/Image/ExifTool/TagNames.pod +313 -39
- 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/WTV.pm +1 -1
- package/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
- package/bin/lib/Image/ExifTool/WriteExif.pl +14 -1
- package/bin/lib/Image/ExifTool/WriteIPTC.pl +1 -1
- package/bin/lib/Image/ExifTool/WritePDF.pl +5 -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 +30 -14
- package/bin/lib/Image/ExifTool/WriteRIFF.pl +1 -1
- package/bin/lib/Image/ExifTool/WriteXMP.pl +16 -2
- package/bin/lib/Image/ExifTool/Writer.pl +35 -15
- package/bin/lib/Image/ExifTool/XMP.pm +23 -3
- package/bin/lib/Image/ExifTool/XMP2.pl +20 -1
- package/bin/lib/Image/ExifTool/XMPStruct.pl +1 -1
- package/bin/lib/Image/ExifTool/ZIP.pm +20 -8
- package/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
- package/bin/lib/Image/ExifTool/iWork.pm +1 -1
- package/bin/lib/Image/ExifTool.pm +38 -16
- package/bin/lib/Image/ExifTool.pod +39 -38
- package/bin/perl-Image-ExifTool.spec +1 -1
- package/bin/pp_build_exe.args +6 -5
- package/package.json +3 -3
|
@@ -2863,7 +2863,7 @@ Panasonic and Leica maker notes in EXIF information.
|
|
|
2863
2863
|
|
|
2864
2864
|
=head1 AUTHOR
|
|
2865
2865
|
|
|
2866
|
-
Copyright 2003-
|
|
2866
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
2867
2867
|
|
|
2868
2868
|
This library is free software; you can redistribute it and/or modify it
|
|
2869
2869
|
under the same terms as Perl itself.
|
|
@@ -908,7 +908,7 @@ write meta information in Panasonic/Leica RAW, RW2 and RWL images.
|
|
|
908
908
|
|
|
909
909
|
=head1 AUTHOR
|
|
910
910
|
|
|
911
|
-
Copyright 2003-
|
|
911
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
912
912
|
|
|
913
913
|
This library is free software; you can redistribute it and/or modify it
|
|
914
914
|
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-2023, 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.
|
|
@@ -6320,7 +6320,7 @@ tags, and everyone who helped contribute to the LensType values.
|
|
|
6320
6320
|
|
|
6321
6321
|
=head1 AUTHOR
|
|
6322
6322
|
|
|
6323
|
-
Copyright 2003-
|
|
6323
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
6324
6324
|
|
|
6325
6325
|
This library is free software; you can redistribute it and/or modify it
|
|
6326
6326
|
under the same terms as Perl itself.
|
|
@@ -712,7 +712,7 @@ One maker notes.
|
|
|
712
712
|
|
|
713
713
|
=head1 AUTHOR
|
|
714
714
|
|
|
715
|
-
Copyright 2003-
|
|
715
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
716
716
|
|
|
717
717
|
This library is free software; you can redistribute it and/or modify it
|
|
718
718
|
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-2023, 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.
|
|
@@ -236,7 +236,7 @@ write information written by the Camera Bits Photo Mechanic software.
|
|
|
236
236
|
|
|
237
237
|
=head1 AUTHOR
|
|
238
238
|
|
|
239
|
-
Copyright 2003-
|
|
239
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
240
240
|
|
|
241
241
|
This library is free software; you can redistribute it and/or modify it
|
|
242
242
|
under the same terms as Perl itself.
|
|
@@ -1170,7 +1170,7 @@ be preserved when copying Photoshop information via user-defined tags.
|
|
|
1170
1170
|
|
|
1171
1171
|
=head1 AUTHOR
|
|
1172
1172
|
|
|
1173
|
-
Copyright 2003-
|
|
1173
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
1174
1174
|
|
|
1175
1175
|
This library is free software; you can redistribute it and/or modify it
|
|
1176
1176
|
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-2023, 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-2023, 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-2023, 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.
|
|
@@ -47,7 +47,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
|
47
47
|
use Image::ExifTool::Exif;
|
|
48
48
|
use Image::ExifTool::GPS;
|
|
49
49
|
|
|
50
|
-
$VERSION = '2.
|
|
50
|
+
$VERSION = '2.82';
|
|
51
51
|
|
|
52
52
|
sub ProcessMOV($$;$);
|
|
53
53
|
sub ProcessKeys($$$);
|
|
@@ -1352,12 +1352,14 @@ my %eeBox2 = (
|
|
|
1352
1352
|
},
|
|
1353
1353
|
{ #https://github.com/google/spatial-media/blob/master/docs/spherical-video-rfc.md
|
|
1354
1354
|
Name => 'SphericalVideoXML',
|
|
1355
|
+
# (this tag is readable/writable as a block through the Extra SphericalVideoXML tags)
|
|
1355
1356
|
Condition => '$$valPt=~/^\xff\xcc\x82\x63\xf8\x55\x4a\x93\x88\x14\x58\x7a\x02\x52\x1f\xdd/',
|
|
1356
1357
|
WriteGroup => 'GSpherical', # write only GSpherical XMP tags here
|
|
1357
1358
|
HandlerType => 'vide', # only write in video tracks
|
|
1358
1359
|
SubDirectory => {
|
|
1359
1360
|
TagTable => 'Image::ExifTool::XMP::Main',
|
|
1360
1361
|
Start => 16,
|
|
1362
|
+
ProcessProc => 'Image::ExifTool::XMP::ProcessGSpherical',
|
|
1361
1363
|
WriteProc => 'Image::ExifTool::XMP::WriteGSpherical',
|
|
1362
1364
|
},
|
|
1363
1365
|
},
|
|
@@ -6034,6 +6036,7 @@ my %eeBox2 = (
|
|
|
6034
6036
|
plID => { #10 (or TV season)
|
|
6035
6037
|
Name => 'PlayListID',
|
|
6036
6038
|
Format => 'int8u', # actually int64u, but split it up
|
|
6039
|
+
Count => 8,
|
|
6037
6040
|
Writable => 'int32s', #27
|
|
6038
6041
|
},
|
|
6039
6042
|
purd => 'PurchaseDate', #7
|
|
@@ -9218,9 +9221,9 @@ sub ProcessMOV($$;$)
|
|
|
9218
9221
|
} else {
|
|
9219
9222
|
# check on file type if called with a RAF
|
|
9220
9223
|
$$tagTablePtr{$tag} or return 0;
|
|
9224
|
+
my $fileType;
|
|
9221
9225
|
if ($tag eq 'ftyp' and $size >= 12) {
|
|
9222
9226
|
# read ftyp atom to see what type of file this is
|
|
9223
|
-
my $fileType;
|
|
9224
9227
|
if ($raf->Read($buff, $size-8) == $size-8) {
|
|
9225
9228
|
$raf->Seek(-($size-8), 1);
|
|
9226
9229
|
my $type = substr($buff, 0, 4);
|
|
@@ -9245,7 +9248,8 @@ sub ProcessMOV($$;$)
|
|
|
9245
9248
|
$et->SetFileType(); # MOV
|
|
9246
9249
|
}
|
|
9247
9250
|
SetByteOrder('MM');
|
|
9248
|
-
|
|
9251
|
+
# have XMP take priority except for HEIC
|
|
9252
|
+
$$et{PRIORITY_DIR} = 'XMP' unless $fileType and $fileType eq 'HEIC';
|
|
9249
9253
|
}
|
|
9250
9254
|
my $fast = $$et{OPTIONS}{FastScan} || 0;
|
|
9251
9255
|
$$raf{NoBuffer} = 1 if $fast; # disable buffering in FastScan mode
|
|
@@ -9839,7 +9843,7 @@ information from QuickTime and MP4 video, M4A audio, and HEIC image files.
|
|
|
9839
9843
|
|
|
9840
9844
|
=head1 AUTHOR
|
|
9841
9845
|
|
|
9842
|
-
Copyright 2003-
|
|
9846
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
9843
9847
|
|
|
9844
9848
|
This library is free software; you can redistribute it and/or modify it
|
|
9845
9849
|
under the same terms as Perl itself.
|
|
@@ -26,6 +26,7 @@ sub ProcessFreeGPS($$$);
|
|
|
26
26
|
sub ProcessFreeGPS2($$$);
|
|
27
27
|
sub Process360Fly($$$);
|
|
28
28
|
sub ProcessFMAS($$$);
|
|
29
|
+
sub ProcessCAMM($$$);
|
|
29
30
|
|
|
30
31
|
my $debug; # set to 1 for extra debugging messages
|
|
31
32
|
|
|
@@ -101,7 +102,7 @@ my %insvLimit = (
|
|
|
101
102
|
The tags below are extracted from timed metadata in QuickTime and other
|
|
102
103
|
formats of video files when the ExtractEmbedded option is used. Although
|
|
103
104
|
most of these tags are combined into the single table below, ExifTool
|
|
104
|
-
currently reads
|
|
105
|
+
currently reads 63 different formats of timed GPS metadata from video files.
|
|
105
106
|
},
|
|
106
107
|
VARS => { NO_ID => 1 },
|
|
107
108
|
GPSLatitude => { PrintConv => 'Image::ExifTool::GPS::ToDMS($self, $val, 1, "N")', RawConv => '$$self{FoundGPSLatitude} = 1; $val' },
|
|
@@ -236,7 +237,7 @@ my %insvLimit = (
|
|
|
236
237
|
camm => [{
|
|
237
238
|
Name => 'camm0',
|
|
238
239
|
# (according to the spec. the first 2 bytes are reserved and should be zero,
|
|
239
|
-
# but I have
|
|
240
|
+
# but I have samples where these bytes are non-zero, so allow anything here)
|
|
240
241
|
Condition => '$$valPt =~ /^..\0\0/s',
|
|
241
242
|
SubDirectory => {
|
|
242
243
|
TagTable => 'Image::ExifTool::QuickTime::camm0',
|
|
@@ -318,7 +319,7 @@ my %insvLimit = (
|
|
|
318
319
|
|
|
319
320
|
# tags found in 'camm' type 0 timed metadata (ref 4)
|
|
320
321
|
%Image::ExifTool::QuickTime::camm0 = (
|
|
321
|
-
PROCESS_PROC => \&
|
|
322
|
+
PROCESS_PROC => \&ProcessCAMM,
|
|
322
323
|
GROUPS => { 2 => 'Location' },
|
|
323
324
|
FIRST_ENTRY => 0,
|
|
324
325
|
NOTES => q{
|
|
@@ -336,7 +337,7 @@ my %insvLimit = (
|
|
|
336
337
|
|
|
337
338
|
# tags found in 'camm' type 1 timed metadata (ref 4)
|
|
338
339
|
%Image::ExifTool::QuickTime::camm1 = (
|
|
339
|
-
PROCESS_PROC => \&
|
|
340
|
+
PROCESS_PROC => \&ProcessCAMM,
|
|
340
341
|
GROUPS => { 2 => 'Camera' },
|
|
341
342
|
FIRST_ENTRY => 0,
|
|
342
343
|
4 => {
|
|
@@ -355,7 +356,7 @@ my %insvLimit = (
|
|
|
355
356
|
|
|
356
357
|
# tags found in 'camm' type 2 timed metadata (ref PH, Insta360Pro)
|
|
357
358
|
%Image::ExifTool::QuickTime::camm2 = (
|
|
358
|
-
PROCESS_PROC => \&
|
|
359
|
+
PROCESS_PROC => \&ProcessCAMM,
|
|
359
360
|
GROUPS => { 2 => 'Location' },
|
|
360
361
|
FIRST_ENTRY => 0,
|
|
361
362
|
4 => {
|
|
@@ -367,7 +368,7 @@ my %insvLimit = (
|
|
|
367
368
|
|
|
368
369
|
# tags found in 'camm' type 3 timed metadata (ref PH, Insta360Pro)
|
|
369
370
|
%Image::ExifTool::QuickTime::camm3 = (
|
|
370
|
-
PROCESS_PROC => \&
|
|
371
|
+
PROCESS_PROC => \&ProcessCAMM,
|
|
371
372
|
GROUPS => { 2 => 'Location' },
|
|
372
373
|
FIRST_ENTRY => 0,
|
|
373
374
|
4 => {
|
|
@@ -379,7 +380,7 @@ my %insvLimit = (
|
|
|
379
380
|
|
|
380
381
|
# tags found in 'camm' type 4 timed metadata (ref 4)
|
|
381
382
|
%Image::ExifTool::QuickTime::camm4 = (
|
|
382
|
-
PROCESS_PROC => \&
|
|
383
|
+
PROCESS_PROC => \&ProcessCAMM,
|
|
383
384
|
GROUPS => { 2 => 'Location' },
|
|
384
385
|
FIRST_ENTRY => 0,
|
|
385
386
|
4 => {
|
|
@@ -391,7 +392,7 @@ my %insvLimit = (
|
|
|
391
392
|
|
|
392
393
|
# tags found in 'camm' type 5 timed metadata (ref 4)
|
|
393
394
|
%Image::ExifTool::QuickTime::camm5 = (
|
|
394
|
-
PROCESS_PROC => \&
|
|
395
|
+
PROCESS_PROC => \&ProcessCAMM,
|
|
395
396
|
GROUPS => { 2 => 'Location' },
|
|
396
397
|
FIRST_ENTRY => 0,
|
|
397
398
|
4 => {
|
|
@@ -416,7 +417,7 @@ my %insvLimit = (
|
|
|
416
417
|
|
|
417
418
|
# tags found in 'camm' type 6 timed metadata (ref PH/4, Insta360)
|
|
418
419
|
%Image::ExifTool::QuickTime::camm6 = (
|
|
419
|
-
PROCESS_PROC => \&
|
|
420
|
+
PROCESS_PROC => \&ProcessCAMM,
|
|
420
421
|
GROUPS => { 2 => 'Location' },
|
|
421
422
|
FIRST_ENTRY => 0,
|
|
422
423
|
0x04 => {
|
|
@@ -482,7 +483,7 @@ my %insvLimit = (
|
|
|
482
483
|
|
|
483
484
|
# tags found in 'camm' type 7 timed metadata (ref 4)
|
|
484
485
|
%Image::ExifTool::QuickTime::camm7 = (
|
|
485
|
-
PROCESS_PROC => \&
|
|
486
|
+
PROCESS_PROC => \&ProcessCAMM,
|
|
486
487
|
GROUPS => { 2 => 'Location' },
|
|
487
488
|
FIRST_ENTRY => 0,
|
|
488
489
|
4 => {
|
|
@@ -1481,8 +1482,12 @@ sub ProcessFreeGPS($$$)
|
|
|
1481
1482
|
$lon = GetFloat($dataPt, 0x30);
|
|
1482
1483
|
$spd = GetFloat($dataPt, 0x34) * $knotsToKph; # (convert knots to km/h)
|
|
1483
1484
|
$trk = GetFloat($dataPt, 0x38);
|
|
1484
|
-
|
|
1485
|
-
|
|
1485
|
+
# (may be all zeros or int16u counting from 1 to 6 if not valid)
|
|
1486
|
+
my $tmp = substr($$dataPt, 60, 12);
|
|
1487
|
+
if ($tmp ne "\0\0\0\0\0\0\0\0\0\0\0\0" and $tmp ne "\x01\0\x02\0\x03\0\x04\0\x05\0\x06\0") {
|
|
1488
|
+
@acc = unpack('V3', $tmp);
|
|
1489
|
+
map { $_ = $_ - 4294967296 if $_ >= 0x80000000; $_ /= 256 } @acc;
|
|
1490
|
+
}
|
|
1486
1491
|
SetByteOrder('MM');
|
|
1487
1492
|
$debug and $et->FoundTag(GPSType => '1C');
|
|
1488
1493
|
|
|
@@ -2238,6 +2243,7 @@ sub Process_3gf($$$)
|
|
|
2238
2243
|
|
|
2239
2244
|
#------------------------------------------------------------------------------
|
|
2240
2245
|
# Process DuDuBell M1 dashcam / VSYS M6L 'gps0' atom (ref PH)
|
|
2246
|
+
# (Lamax S9 dual dashcam also uses 'gps0' atom, but encrypted text format)
|
|
2241
2247
|
# Inputs: 0) ExifTool ref, 1) dirInfo ref, 2) tag table ref
|
|
2242
2248
|
# Returns: 1 on success
|
|
2243
2249
|
sub Process_gps0($$$)
|
|
@@ -2245,14 +2251,28 @@ sub Process_gps0($$$)
|
|
|
2245
2251
|
my ($et, $dirInfo, $tagTbl) = @_;
|
|
2246
2252
|
my $dataPt = $$dirInfo{DataPt};
|
|
2247
2253
|
my $dirLen = $$dirInfo{DirLen};
|
|
2248
|
-
my $recLen
|
|
2254
|
+
my ($pos, $recLen);
|
|
2249
2255
|
$et->VerboseDir('gps0', undef, $dirLen);
|
|
2256
|
+
# check for encrypted format written by Lamax S9 dual dashcam
|
|
2257
|
+
# (similar to Ambarella A12, but in multiple 311-byte records)
|
|
2258
|
+
if ($$dataPt =~ /^.{2}\xf2\xe1\xf0\xeeTT\x98/s) {
|
|
2259
|
+
$recLen = 311;
|
|
2260
|
+
for ($pos=0; $pos+$recLen<=$dirLen; $pos+=$recLen) {
|
|
2261
|
+
my $dat = substr($$dataPt, $pos, $recLen);
|
|
2262
|
+
last unless $dat =~ /^.{2}\xf2\xe1\xf0\xeeTT\x98/s;
|
|
2263
|
+
$$et{DOC_NUM} = ++$$et{DOC_COUNT};
|
|
2264
|
+
Process_text($et, \$dat, $tagTbl);
|
|
2265
|
+
$pos += $recLen;
|
|
2266
|
+
}
|
|
2267
|
+
delete $$et{DOC_NUM};
|
|
2268
|
+
return 1;
|
|
2269
|
+
}
|
|
2270
|
+
$recLen = 32; # 32-byte record length
|
|
2250
2271
|
SetByteOrder('II');
|
|
2251
2272
|
if ($dirLen > $recLen and not $et->Options('ExtractEmbedded')) {
|
|
2252
2273
|
$dirLen = $recLen;
|
|
2253
2274
|
EEWarn($et);
|
|
2254
2275
|
}
|
|
2255
|
-
my $pos;
|
|
2256
2276
|
for ($pos=0; $pos+$recLen<=$dirLen; $pos+=$recLen) {
|
|
2257
2277
|
$$et{DOC_NUM} = ++$$et{DOC_COUNT};
|
|
2258
2278
|
# lat/long are in DDDMM.MMMM format
|
|
@@ -2773,6 +2793,34 @@ sub ProcessInsta360($;$)
|
|
|
2773
2793
|
return 1;
|
|
2774
2794
|
}
|
|
2775
2795
|
|
|
2796
|
+
#------------------------------------------------------------------------------
|
|
2797
|
+
# Process CAMM metadata (ref PH)
|
|
2798
|
+
# Inputs: 0) ExifTool object ref, 1) dirInfo ref, 2) tag table ref
|
|
2799
|
+
# Returns: 1 on success
|
|
2800
|
+
sub ProcessCAMM($$$)
|
|
2801
|
+
{
|
|
2802
|
+
my ($et, $dirInfo, $tagTbl) = @_;
|
|
2803
|
+
my $dataPt = $$dirInfo{DataPt};
|
|
2804
|
+
my $pos = $$dirInfo{DirStart} || 0;
|
|
2805
|
+
my $end = $pos + ($$dirInfo{DirLen} || length($$dataPt) - $pos);
|
|
2806
|
+
# camm record size for each type, including 4-byte header
|
|
2807
|
+
my %size = ( 1 => 12, 2 => 16, 3 => 16, 4 => 16, 5 => 28, 6 => 60, 7 => 16 );
|
|
2808
|
+
my $rtnVal = 0;
|
|
2809
|
+
while ($pos + 4 < $end) {
|
|
2810
|
+
my $type = Get16u($dataPt, $pos + 2);
|
|
2811
|
+
my $size = $size{$type} or $et->WarnOnce("Unknown camm record type $type"), last;
|
|
2812
|
+
$pos + $size > $end and $et->WarnOnce("Truncated camm record $type"), last;
|
|
2813
|
+
my $tagTbl = GetTagTable("Image::ExifTool::QuickTime::camm$type");
|
|
2814
|
+
$$dirInfo{DirStart} = $pos;
|
|
2815
|
+
$$dirInfo{DirLen} = $size;
|
|
2816
|
+
$et->ProcessBinaryData($dirInfo, $tagTbl) and $rtnVal = 1;
|
|
2817
|
+
# not sure if this is according to specification, but I have seen multiple
|
|
2818
|
+
# camm records all in a single sample, so step forward to process the next one
|
|
2819
|
+
$pos += $size;
|
|
2820
|
+
}
|
|
2821
|
+
return $rtnVal;
|
|
2822
|
+
}
|
|
2823
|
+
|
|
2776
2824
|
#------------------------------------------------------------------------------
|
|
2777
2825
|
# Process Garmin GPS 'uuid' atom (ref PH)
|
|
2778
2826
|
# Inputs: 0) ExifTool object ref, 1) dirInfo ref, 2) tag table ref
|
|
@@ -2972,7 +3020,7 @@ information like GPS tracks from MOV, MP4 and INSV media data.
|
|
|
2972
3020
|
|
|
2973
3021
|
=head1 AUTHOR
|
|
2974
3022
|
|
|
2975
|
-
Copyright 2003-
|
|
3023
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
2976
3024
|
|
|
2977
3025
|
This library is free software; you can redistribute it and/or modify it
|
|
2978
3026
|
under the same terms as Perl itself.
|
|
@@ -641,7 +641,8 @@ numerical, and generated automatically otherwise.
|
|
|
641
641
|
expression, a code reference or a list reference. In this
|
|
642
642
|
expression, $self, $val and $tag may be used as with
|
|
643
643
|
ValueConv, but if ValueConv was defined then $val is the
|
|
644
|
-
ValueConv value instead of the Raw value.
|
|
644
|
+
ValueConv value instead of the Raw value. Composite tags
|
|
645
|
+
may also use the @val, @prt and @raw lists. The returned value
|
|
645
646
|
should always be defined. Note that the print conversion is
|
|
646
647
|
only done if the PrintConv option is enabled (which it is by
|
|
647
648
|
default), and if the result of the ValueConv is not a scalar
|
|
@@ -2126,7 +2126,7 @@ including AVI videos, WAV audio files and WEBP images.
|
|
|
2126
2126
|
|
|
2127
2127
|
=head1 AUTHOR
|
|
2128
2128
|
|
|
2129
|
-
Copyright 2003-
|
|
2129
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
2130
2130
|
|
|
2131
2131
|
This library is free software; you can redistribute it and/or modify it
|
|
2132
2132
|
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-2023, 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-2023, 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-2023, 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-2023, 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-2023, 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-2023, 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-2023, 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.
|
|
@@ -1143,7 +1143,7 @@ interpret Ricoh maker notes EXIF meta information.
|
|
|
1143
1143
|
|
|
1144
1144
|
=head1 AUTHOR
|
|
1145
1145
|
|
|
1146
|
-
Copyright 2003-
|
|
1146
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
1147
1147
|
|
|
1148
1148
|
This library is free software; you can redistribute it and/or modify it
|
|
1149
1149
|
under the same terms as Perl itself.
|
|
@@ -1261,8 +1261,10 @@ my %formatMinMax = (
|
|
|
1261
1261
|
},
|
|
1262
1262
|
# 0x0b41-name - seen 'SingeShot_DepthMap_1' (Yes, "Singe") (SM-N975X front camera)
|
|
1263
1263
|
'0x0b41' => { Name => 'SingleShotDepthMap', Binary => 1 },
|
|
1264
|
+
# 0x0ba1-name - seen 'Original_Path_Hash_Key', 'PhotoEditor_Re_Edit_Data'
|
|
1264
1265
|
# 0xa050-name - seen 'Jpeg360_2D_Info' (Samsung Gear 360)
|
|
1265
1266
|
# 0xa050 - seen 'Jpeg3602D' (Samsung Gear 360)
|
|
1267
|
+
# 0x0c81-name - seen 'Watermark_Info'
|
|
1266
1268
|
);
|
|
1267
1269
|
|
|
1268
1270
|
# DualShot Extra Info (ref PH)
|
|
@@ -1720,7 +1722,7 @@ Samsung maker notes in EXIF information.
|
|
|
1720
1722
|
|
|
1721
1723
|
=head1 AUTHOR
|
|
1722
1724
|
|
|
1723
|
-
Copyright 2003-
|
|
1725
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
1724
1726
|
|
|
1725
1727
|
This library is free software; you can redistribute it and/or modify it
|
|
1726
1728
|
under the same terms as Perl itself.
|
|
@@ -419,7 +419,7 @@ Sanyo maker notes in EXIF information.
|
|
|
419
419
|
|
|
420
420
|
=head1 AUTHOR
|
|
421
421
|
|
|
422
|
-
Copyright 2003-
|
|
422
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
423
423
|
|
|
424
424
|
This library is free software; you can redistribute it and/or modify it
|
|
425
425
|
under the same terms as Perl itself.
|
|
@@ -128,7 +128,7 @@ metadata from the JPEG APP4 SCALADO segment.
|
|
|
128
128
|
|
|
129
129
|
=head1 AUTHOR
|
|
130
130
|
|
|
131
|
-
Copyright 2003-
|
|
131
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
132
132
|
|
|
133
133
|
This library is free software; you can redistribute it and/or modify it
|
|
134
134
|
under the same terms as Perl itself.
|
|
@@ -632,7 +632,7 @@ limited to the range 1970 to 2038 on 32-bit systems.
|
|
|
632
632
|
|
|
633
633
|
=head1 AUTHOR
|
|
634
634
|
|
|
635
|
-
Copyright 2003-
|
|
635
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
636
636
|
|
|
637
637
|
This library is free software; you can redistribute it and/or modify it
|
|
638
638
|
under the same terms as Perl itself.
|
|
@@ -343,7 +343,7 @@ name prefix.
|
|
|
343
343
|
|
|
344
344
|
=head1 AUTHOR
|
|
345
345
|
|
|
346
|
-
Copyright 2003-
|
|
346
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
347
347
|
|
|
348
348
|
This library is free software; you can redistribute it and/or modify it
|
|
349
349
|
under the same terms as Perl itself.
|
|
@@ -863,7 +863,7 @@ Sigma and Foveon maker notes in EXIF information.
|
|
|
863
863
|
|
|
864
864
|
=head1 AUTHOR
|
|
865
865
|
|
|
866
|
-
Copyright 2003-
|
|
866
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
867
867
|
|
|
868
868
|
This library is free software; you can redistribute it and/or modify it
|
|
869
869
|
under the same terms as Perl itself.
|
|
@@ -674,7 +674,7 @@ Sigma and Foveon X3F images.
|
|
|
674
674
|
|
|
675
675
|
=head1 AUTHOR
|
|
676
676
|
|
|
677
|
-
Copyright 2003-
|
|
677
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
678
678
|
|
|
679
679
|
This library is free software; you can redistribute it and/or modify it
|
|
680
680
|
under the same terms as Perl itself.
|
|
@@ -34,7 +34,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
|
34
34
|
use Image::ExifTool::Exif;
|
|
35
35
|
use Image::ExifTool::Minolta;
|
|
36
36
|
|
|
37
|
-
$VERSION = '3.
|
|
37
|
+
$VERSION = '3.56';
|
|
38
38
|
|
|
39
39
|
sub ProcessSRF($$$);
|
|
40
40
|
sub ProcessSR2($$$);
|
|
@@ -10191,10 +10191,10 @@ my %isoSetting2010 = (
|
|
|
10191
10191
|
PrintConv => 'Image::ExifTool::Exif::PrintFNumber($val)',
|
|
10192
10192
|
},
|
|
10193
10193
|
0x8001 => { Name => 'Sony_rtmd_0x8001', Format => 'int16u', %hidUnk },
|
|
10194
|
-
0x8004 => { Name => 'Sony_rtmd_0x8004', Format => 'int16u', %hidUnk },
|
|
10195
|
-
0x8005 => { Name => 'Sony_rtmd_0x8005', Format => 'int16u', %hidUnk },
|
|
10196
|
-
0x800a => { Name => 'Sony_rtmd_0x800a', Format => 'int16u', %hidUnk },
|
|
10197
|
-
0x800b => { Name => 'Sony_rtmd_0x800b', Format => 'int16u', %hidUnk },
|
|
10194
|
+
0x8004 => { Name => 'Sony_rtmd_0x8004', Format => 'int16u', %hidUnk }, # (FocalLength35efl?, forum14315)
|
|
10195
|
+
0x8005 => { Name => 'Sony_rtmd_0x8005', Format => 'int16u', %hidUnk }, # (FocalLength?, forum14315)
|
|
10196
|
+
0x800a => { Name => 'Sony_rtmd_0x800a', Format => 'int16u', %hidUnk }, # (FocusRingPosition?, forum14315)
|
|
10197
|
+
0x800b => { Name => 'Sony_rtmd_0x800b', Format => 'int16u', %hidUnk }, # (ZoomRingPosition?, forum14315)
|
|
10198
10198
|
# 0x8100 - 16 bytes starting with 0x060e2b340401
|
|
10199
10199
|
0x8100 => { Name => 'Sony_rtmd_0x8100', Format => 'int8u', %hidUnk },
|
|
10200
10200
|
0x8101 => { Name => 'Sony_rtmd_0x8101', Format => 'int8u', %hidUnk }, # seen: 0,1
|
|
@@ -10364,7 +10364,7 @@ my %isoSetting2010 = (
|
|
|
10364
10364
|
return 'inf' if $val >= 255;
|
|
10365
10365
|
return (2**($val/16-5) + 1) * $val[1] / 1000;
|
|
10366
10366
|
},
|
|
10367
|
-
PrintConv => '$val eq "inf" ? $val : sprintf("%.
|
|
10367
|
+
PrintConv => '$val eq "inf" ? $val : sprintf("%.4g m", $val)',
|
|
10368
10368
|
},
|
|
10369
10369
|
GPSDateTime => {
|
|
10370
10370
|
Description => 'GPS Date/Time',
|
|
@@ -11317,7 +11317,7 @@ Minolta.
|
|
|
11317
11317
|
|
|
11318
11318
|
=head1 AUTHOR
|
|
11319
11319
|
|
|
11320
|
-
Copyright 2003-
|
|
11320
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
11321
11321
|
|
|
11322
11322
|
This library is free software; you can redistribute it and/or modify it
|
|
11323
11323
|
under the same terms as Perl itself.
|
|
@@ -379,7 +379,7 @@ write Sony Image Data Converter version 3.0 metadata in ARW images.
|
|
|
379
379
|
|
|
380
380
|
=head1 AUTHOR
|
|
381
381
|
|
|
382
|
-
Copyright 2003-
|
|
382
|
+
Copyright 2003-2023, 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.
|
|
@@ -174,7 +174,7 @@ information.
|
|
|
174
174
|
|
|
175
175
|
=head1 AUTHOR
|
|
176
176
|
|
|
177
|
-
Copyright 2003-
|
|
177
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
178
178
|
|
|
179
179
|
This library is free software; you can redistribute it and/or modify it
|
|
180
180
|
under the same terms as Perl itself.
|