exiftool-vendored.pl 12.49.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 +107 -6
- package/bin/MANIFEST +5 -0
- package/bin/META.json +1 -1
- package/bin/META.yml +1 -1
- package/bin/README +3 -3
- package/bin/exiftool +39 -30
- 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 +10 -7
- package/bin/lib/Image/ExifTool/CBOR.pm +1 -1
- package/bin/lib/Image/ExifTool/Canon.pm +26 -9
- 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 +11 -21
- 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 +14 -6
- 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 +3 -1
- package/bin/lib/Image/ExifTool/ID3.pm +1 -1
- package/bin/lib/Image/ExifTool/IPTC.pm +6 -2
- 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 +45 -2
- 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 +2 -2
- 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 +845 -355
- 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 +6 -4
- 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 +8 -3
- 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 +52 -9
- package/bin/lib/Image/ExifTool/QuickTimeStream.pl +95 -14
- package/bin/lib/Image/ExifTool/README +6 -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 +35 -20
- 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 +15 -8
- package/bin/lib/Image/ExifTool/TagLookup.pm +4672 -4568
- package/bin/lib/Image/ExifTool/TagNames.pod +357 -46
- 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 +25 -4
- package/bin/lib/Image/ExifTool/XMP2.pl +29 -2
- 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 +45 -20
- package/bin/lib/Image/ExifTool.pod +48 -46
- package/bin/perl-Image-ExifTool.spec +1 -1
- package/bin/pp_build_exe.args +6 -5
- package/package.json +3 -3
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
# Revisions: 2013-09-13 - P. Harvey Created
|
|
7
7
|
#
|
|
8
8
|
# References: 1) http://www.photoinvestigator.co/blog/the-mystery-of-maker-apple-metadata/
|
|
9
|
+
# 2) Frank Rupprecht private communication
|
|
9
10
|
#------------------------------------------------------------------------------
|
|
10
11
|
|
|
11
12
|
package Image::ExifTool::Apple;
|
|
@@ -15,7 +16,9 @@ use vars qw($VERSION);
|
|
|
15
16
|
use Image::ExifTool::Exif;
|
|
16
17
|
use Image::ExifTool::PLIST;
|
|
17
18
|
|
|
18
|
-
$VERSION = '1.
|
|
19
|
+
$VERSION = '1.08';
|
|
20
|
+
|
|
21
|
+
sub ConvertPLIST($$);
|
|
19
22
|
|
|
20
23
|
# Apple iPhone metadata (ref PH)
|
|
21
24
|
%Image::ExifTool::Apple::Main = (
|
|
@@ -24,17 +27,39 @@ $VERSION = '1.07';
|
|
|
24
27
|
WRITABLE => 1,
|
|
25
28
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Image' },
|
|
26
29
|
NOTES => 'Tags extracted from the maker notes of iPhone images.',
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
+
0x0001 => { # (Version, ref 2)
|
|
31
|
+
Name => 'MakerNoteVersion',
|
|
32
|
+
Writable => 'int32s',
|
|
33
|
+
},
|
|
34
|
+
0x0002 => { #2
|
|
35
|
+
Name => 'AEMatrix',
|
|
36
|
+
Unknown => 1,
|
|
37
|
+
# (not currently writable)
|
|
38
|
+
ValueConv => \&ConvertPLIST,
|
|
39
|
+
},
|
|
40
|
+
0x0003 => { # (Timestamp, ref 2)
|
|
30
41
|
Name => 'RunTime', # (includes time plugged in, but not when suspended, ref 1)
|
|
31
42
|
SubDirectory => { TagTable => 'Image::ExifTool::Apple::RunTime' },
|
|
32
43
|
},
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
44
|
+
0x0004 => { #2
|
|
45
|
+
Name => 'AEStable',
|
|
46
|
+
Writable => 'int32s',
|
|
47
|
+
PrintConv => { 0 => 'No', 1 => 'Yes' },
|
|
48
|
+
},
|
|
49
|
+
0x0005 => { #2
|
|
50
|
+
Name => 'AETarget',
|
|
51
|
+
Writable => 'int32s',
|
|
52
|
+
},
|
|
53
|
+
0x0006 => { #2
|
|
54
|
+
Name => 'AEAverage',
|
|
55
|
+
Writable => 'int32s',
|
|
56
|
+
},
|
|
57
|
+
0x0007 => { #2
|
|
58
|
+
Name => 'AFStable',
|
|
59
|
+
Writable => 'int32s',
|
|
60
|
+
PrintConv => { 0 => 'No', 1 => 'Yes' },
|
|
61
|
+
},
|
|
62
|
+
0x0008 => { #1 (FocusAccelerometerVector, ref 2)
|
|
38
63
|
Name => 'AccelerationVector',
|
|
39
64
|
Groups => { 2 => 'Camera' },
|
|
40
65
|
Writable => 'rational64s',
|
|
@@ -51,8 +76,8 @@ $VERSION = '1.07';
|
|
|
51
76
|
toward the bottom, and positive Z points into the face of the phone
|
|
52
77
|
},
|
|
53
78
|
},
|
|
54
|
-
# 0x0009 - int32s: seen 19,275,531,4371
|
|
55
|
-
0x000a => {
|
|
79
|
+
# 0x0009 - int32s: seen 19,275,531,4371 (SISMethod, ref 2)
|
|
80
|
+
0x000a => { # (HDRMethod, ref 2)
|
|
56
81
|
Name => 'HDRImageType',
|
|
57
82
|
Writable => 'int32s',
|
|
58
83
|
PrintConv => {
|
|
@@ -61,12 +86,12 @@ $VERSION = '1.07';
|
|
|
61
86
|
4 => 'Original Image',
|
|
62
87
|
},
|
|
63
88
|
},
|
|
64
|
-
0x000b => {
|
|
89
|
+
0x000b => { # (BurstUUID, ref 2)
|
|
65
90
|
Name => 'BurstUUID',
|
|
66
91
|
Writable => 'string',
|
|
67
92
|
Notes => 'unique ID for all images in a burst',
|
|
68
93
|
},
|
|
69
|
-
0x000c => { # ref forum13710 (Neal Krawetz)
|
|
94
|
+
0x000c => { # ref forum13710 (Neal Krawetz) (SphereHealthTrackingError, ref 2)
|
|
70
95
|
Name => 'FocusDistanceRange',
|
|
71
96
|
Writable => 'rational64s',
|
|
72
97
|
Count => 2,
|
|
@@ -76,29 +101,157 @@ $VERSION = '1.07';
|
|
|
76
101
|
},
|
|
77
102
|
PrintConvInv => '$val =~ s/ - //; $val =~ s/ ?m$//; $val',
|
|
78
103
|
},
|
|
79
|
-
# 0x000d - int32s: 0,1,6,20,24,32,40
|
|
80
|
-
# 0x000e - int32s: 0,1,4,12 (Orientation? 0=landscape? 4=portrait? ref 1)
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
104
|
+
# 0x000d - int32s: 0,1,6,20,24,32,40 (SphereHealthAverageCurrent, ref 2)
|
|
105
|
+
# 0x000e - int32s: 0,1,4,12 (Orientation? 0=landscape? 4=portrait? ref 1) (SphereMotionDataStatus, ref 2)
|
|
106
|
+
0x000f => { #2
|
|
107
|
+
Name => 'OISMode',
|
|
108
|
+
Writable => 'int32s',
|
|
109
|
+
# seen: 2,3,5
|
|
110
|
+
},
|
|
111
|
+
# 0x0010 - int32s: 1 (SphereStatus, ref 2)
|
|
112
|
+
0x0011 => { # (if defined, there is a live photo associated with the video, #forum13565) (AssetIdentifier, ref 2)
|
|
84
113
|
Name => 'MediaGroupUUID', #NealKrawetz private communication
|
|
85
114
|
# (changed in 12.19 from Name => 'ContentIdentifier', #forum8750)
|
|
86
115
|
Writable => 'string',
|
|
87
116
|
},
|
|
88
|
-
#
|
|
89
|
-
|
|
117
|
+
# 0x0012 - (QRMOutputType, ref 2)
|
|
118
|
+
# 0x0013 - (SphereExternalForceOffset, ref 2)
|
|
119
|
+
0x0014 => { # (StillImageCaptureType, ref 2)
|
|
120
|
+
Name => 'ImageCaptureType',
|
|
121
|
+
Writable => 'int32s',
|
|
122
|
+
Unknown => 1, # (don't know what the values mean)
|
|
123
|
+
# seen: 1,2,3,4,5,10,12
|
|
124
|
+
},
|
|
125
|
+
0x0015 => { # (ImageGroupIdentifier, ref 2)
|
|
90
126
|
Name => 'ImageUniqueID',
|
|
91
127
|
Writable => 'string',
|
|
92
128
|
},
|
|
93
|
-
# 0x0016 - string[29]: "AXZ6pMTOh2L+acSh4Kg630XCScoO\0"
|
|
94
|
-
0x0017 => { #forum13565 (only valid if MediaGroupUUID exists)
|
|
129
|
+
# 0x0016 - string[29]: "AXZ6pMTOh2L+acSh4Kg630XCScoO\0" (PhotosOriginatingSignature, ref 2)
|
|
130
|
+
0x0017 => { #forum13565 (only valid if MediaGroupUUID exists) (StillImageCaptureFlags, ref 2)
|
|
95
131
|
Name => 'LivePhotoVideoIndex',
|
|
96
132
|
Notes => 'divide by RunTimeScale to get time in seconds',
|
|
97
133
|
},
|
|
98
|
-
#
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
134
|
+
# 0x0018 - (PhotosRenderOriginatingSignature, ref 2)
|
|
135
|
+
0x0019 => { # (StillImageProcessingFlags, ref 2)
|
|
136
|
+
Name => 'ImageProcessingFlags',
|
|
137
|
+
Writable => 'int32s',
|
|
138
|
+
Unknown => 1,
|
|
139
|
+
PrintConv => { BITMASK => { } },
|
|
140
|
+
},
|
|
141
|
+
0x001a => { # (PhotoTranscodeQualityHint, ref 2)
|
|
142
|
+
Name => 'QualityHint',
|
|
143
|
+
Writable => 'string',
|
|
144
|
+
Unknown => 1,
|
|
145
|
+
# seen: "q825s\0", "q750n\0", "q900n\0"
|
|
146
|
+
},
|
|
147
|
+
# 0x001b - (PhotosRenderEffect, ref 2)
|
|
148
|
+
# 0x001c - (BracketedCaptureSequenceNumber, ref 2)
|
|
149
|
+
0x001d => { #2
|
|
150
|
+
Name => 'LuminanceNoiseAmplitude',
|
|
151
|
+
Writable => 'rational64s',
|
|
152
|
+
},
|
|
153
|
+
# 0x001e - (OriginatingAppID, ref 2)
|
|
154
|
+
# 0x001f - int32s: 0,1 (PhotosAppFeatureFlags, ref 2)
|
|
155
|
+
0x0020 => { # (ImageCaptureRequestIdentifier, ref 2)
|
|
156
|
+
Name => 'ImageCaptureReqestID',
|
|
157
|
+
Writable => 'string',
|
|
158
|
+
Unknown => 1,
|
|
159
|
+
},
|
|
160
|
+
0x0021 => { # (MeteorHeadroom, ref 2)
|
|
161
|
+
Name => 'HDRHeadroom',
|
|
162
|
+
Writable => 'rational64s',
|
|
163
|
+
},
|
|
164
|
+
# 0x0022 - (ARKitPhoto, ref 2)
|
|
165
|
+
# 0x0023 - int32s[2] (AFPerformance, ref 2)
|
|
166
|
+
# 0x0024 - (AFExternalOffset, ref 2)
|
|
167
|
+
0x0025 => { # (StillImageSceneFlags, ref 2)
|
|
168
|
+
Name => 'SceneFlags',
|
|
169
|
+
Writable => 'int32s',
|
|
170
|
+
Unknown => 1,
|
|
171
|
+
PrintConv => { BITMASK => { } },
|
|
172
|
+
},
|
|
173
|
+
0x0026 => { # (StillImageSNRType, ref 2)
|
|
174
|
+
Name => 'SignalToNoiseRatioType',
|
|
175
|
+
Writable => 'int32s',
|
|
176
|
+
Unknown => 1,
|
|
177
|
+
},
|
|
178
|
+
0x0027 => { # (StillImageSNR, ref 2)
|
|
179
|
+
Name => 'SignalToNoiseRatio',
|
|
180
|
+
Writable => 'rational64s',
|
|
181
|
+
},
|
|
182
|
+
# 0x0028 - int32s (UBMethod, ref 2)
|
|
183
|
+
# 0x0029 - string (SpatialOverCaptureGroupIdentifier, ref 2)
|
|
184
|
+
# 0x002A - (iCloudServerSoftwareVersionForDynamicallyGeneratedMedia, ref 2)
|
|
185
|
+
# 0x002B - (PhotoIdentifier, ref 2)
|
|
186
|
+
# 0x002C - (SpatialOverCaptureImageType, ref 2)
|
|
187
|
+
# 0x002D - (CCT, ref 2)
|
|
188
|
+
# 0x002E - (ApsMode, ref 2)
|
|
189
|
+
0x002F => { #2
|
|
190
|
+
Name => 'FocusPosition',
|
|
191
|
+
Writable => 'int32s',
|
|
192
|
+
},
|
|
193
|
+
0x0030 => { # (MeteorPlusGainMap, ref 2)
|
|
194
|
+
Name => 'HDRGain',
|
|
195
|
+
Writable => 'rational64s',
|
|
196
|
+
},
|
|
197
|
+
# 0x0031 - (StillImageProcessingHomography, ref 2)
|
|
198
|
+
# 0x0032 - (IntelligentDistortionCorrection, ref 2)
|
|
199
|
+
# 0x0033 - (NRFStatus, ref 2)
|
|
200
|
+
# 0x0034 - (NRFInputBracketCount, ref 2)
|
|
201
|
+
# 0x0035 - (NRFRegisteredBracketCount, ref 2)
|
|
202
|
+
# 0x0036 - (LuxLevel, ref 2)
|
|
203
|
+
# 0x0037 - (LastFocusingMethod, ref 2)
|
|
204
|
+
0x0038 => { # (TimeOfFlightAssistedAutoFocusEstimatorMeasuredDepth, ref 2)
|
|
205
|
+
Name => 'AFMeasuredDepth',
|
|
206
|
+
Notes => 'from the time-of-flight-assisted auto-focus estimator',
|
|
207
|
+
Writable => 'int32s',
|
|
208
|
+
},
|
|
209
|
+
# 0x0039 - (TimeOfFlightAssistedAutoFocusEstimatorROIType, ref 2)
|
|
210
|
+
# 0x003A - (NRFSRLStatus, ref 2)
|
|
211
|
+
# 0x003B - (SystemPressureLevel, ref 2)
|
|
212
|
+
# 0x003C - (CameraControlsStatisticsMaster, ref 2)
|
|
213
|
+
0x003D => { # (TimeOfFlightAssistedAutoFocusEstimatorSensorConfidence, ref 2)
|
|
214
|
+
Name => 'AFConfidence',
|
|
215
|
+
Writable => 'int32s',
|
|
216
|
+
},
|
|
217
|
+
0x003E => { # (ColorCorrectionMatrix, ref 2)
|
|
218
|
+
Name => 'ColorCorrectionMatrix',
|
|
219
|
+
Unknown => 1,
|
|
220
|
+
ValueConv => \&ConvertPLIST,
|
|
221
|
+
},
|
|
222
|
+
0x003F => { #2
|
|
223
|
+
Name => 'GreenGhostMitigationStatus',
|
|
224
|
+
Writable => 'int32s',
|
|
225
|
+
Unknown => 1,
|
|
226
|
+
},
|
|
227
|
+
0x0040 => { #2
|
|
228
|
+
Name => 'SemanticStyle',
|
|
229
|
+
ValueConv => \&ConvertPLIST,
|
|
230
|
+
},
|
|
231
|
+
0x0041 => { # (SemanticStyleKey_RenderingVersion, ref 2)
|
|
232
|
+
Name => 'SemanticStyleRenderingVer',
|
|
233
|
+
ValueConv => \&ConvertPLIST,
|
|
234
|
+
},
|
|
235
|
+
0x0042 => { # (SemanticStyleKey_Preset, ref 2)
|
|
236
|
+
Name => 'SemanticStylePreset',
|
|
237
|
+
ValueConv => \&ConvertPLIST,
|
|
238
|
+
},
|
|
239
|
+
# 0x0043 - (SemanticStyleKey_ToneBias, ref 2)
|
|
240
|
+
# 0x0044 - (SemanticStyleKey_WarmthBias, ref 2)
|
|
241
|
+
0x0045 => { # (FrontFacing, ref 2)
|
|
242
|
+
Name => 'FrontFacingCamera',
|
|
243
|
+
Writable => 'int32s',
|
|
244
|
+
PrintConv => { 0 => 'No', 1 => 'Yes' }, #PH (NC)
|
|
245
|
+
},
|
|
246
|
+
# 0x0046 - (TimeOfFlightAssistedAutoFocusEstimatorContainsBlindSpot, ref 2)
|
|
247
|
+
# 0x0047 - (LeaderFollowerAutoFocusLeaderDepth, ref 2)
|
|
248
|
+
# 0x0048 - (LeaderFollowerAutoFocusLeaderFocusMethod, ref 2)
|
|
249
|
+
# 0x0049 - (LeaderFollowerAutoFocusLeaderConfidence, ref 2)
|
|
250
|
+
# 0x004A - (LeaderFollowerAutoFocusLeaderROIType, ref 2)
|
|
251
|
+
# 0x004B - (ZeroShutterLagFailureReason, ref 2)
|
|
252
|
+
# 0x004C - (TimeOfFlightAssistedAutoFocusEstimatorMSPMeasuredDepth, ref 2)
|
|
253
|
+
# 0x004D - (TimeOfFlightAssistedAutoFocusEstimatorMSPSensorConfidence, ref 2)
|
|
254
|
+
# 0x004E - (Camera, ref 2)
|
|
102
255
|
);
|
|
103
256
|
|
|
104
257
|
# PLIST-format CMTime structure (ref PH)
|
|
@@ -142,6 +295,23 @@ $VERSION = '1.07';
|
|
|
142
295
|
# add our composite tags
|
|
143
296
|
Image::ExifTool::AddCompositeTags('Image::ExifTool::Apple');
|
|
144
297
|
|
|
298
|
+
#------------------------------------------------------------------------------
|
|
299
|
+
# Convert from binary PLIST format to a tag value we can use
|
|
300
|
+
# Inputs: 0) binary plist data, 1) ExifTool ref
|
|
301
|
+
# Returns: converted value
|
|
302
|
+
sub ConvertPLIST($$)
|
|
303
|
+
{
|
|
304
|
+
my ($val, $et) = @_;
|
|
305
|
+
my $dirInfo = { DataPt => \$val };
|
|
306
|
+
require Image::ExifTool::PLIST;
|
|
307
|
+
Image::ExifTool::PLIST::ProcessBinaryPLIST($et, $dirInfo);
|
|
308
|
+
$val = $$dirInfo{Value};
|
|
309
|
+
if (ref $val eq 'HASH' and not $et->Options('Struct')) {
|
|
310
|
+
require 'Image/ExifTool/XMPStruct.pl';
|
|
311
|
+
$val = Image::ExifTool::XMP::SerializeStruct($val);
|
|
312
|
+
}
|
|
313
|
+
return $val;
|
|
314
|
+
}
|
|
145
315
|
|
|
146
316
|
1; # end
|
|
147
317
|
|
|
@@ -162,7 +332,7 @@ Apple maker notes in EXIF information.
|
|
|
162
332
|
|
|
163
333
|
=head1 AUTHOR
|
|
164
334
|
|
|
165
|
-
Copyright 2003-
|
|
335
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
166
336
|
|
|
167
337
|
This library is free software; you can redistribute it and/or modify it
|
|
168
338
|
under the same terms as Perl itself.
|
|
@@ -291,7 +291,7 @@ information from Audible audio books.
|
|
|
291
291
|
|
|
292
292
|
=head1 AUTHOR
|
|
293
293
|
|
|
294
|
-
Copyright 2003-
|
|
294
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
295
295
|
|
|
296
296
|
This library is free software; you can redistribute it and/or modify it
|
|
297
297
|
under the same terms as Perl itself.
|
|
@@ -335,7 +335,7 @@ This module contains definitions required by Image::ExifTool to read BMP
|
|
|
335
335
|
|
|
336
336
|
=head1 AUTHOR
|
|
337
337
|
|
|
338
|
-
Copyright 2003-
|
|
338
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
339
339
|
|
|
340
340
|
This library is free software; you can redistribute it and/or modify it
|
|
341
341
|
under the same terms as Perl itself.
|
|
@@ -231,7 +231,7 @@ This module contains definitions required by Image::ExifTool to read BPG
|
|
|
231
231
|
|
|
232
232
|
=head1 AUTHOR
|
|
233
233
|
|
|
234
|
-
Copyright 2003-
|
|
234
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
235
235
|
|
|
236
236
|
This library is free software; you can redistribute it and/or modify it
|
|
237
237
|
under the same terms as Perl itself.
|
|
@@ -445,7 +445,7 @@ compression ability).
|
|
|
445
445
|
|
|
446
446
|
=head1 AUTHOR
|
|
447
447
|
|
|
448
|
-
Copyright 2003-
|
|
448
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
449
449
|
Copyright 2002, Leon Bottou and Yann Le Cun
|
|
450
450
|
Copyright 2001, AT&T
|
|
451
451
|
Copyright 1999-2001, LizardTech Inc.
|
|
@@ -275,7 +275,7 @@ information in BigTIFF images.
|
|
|
275
275
|
|
|
276
276
|
=head1 AUTHOR
|
|
277
277
|
|
|
278
|
-
Copyright 2003-
|
|
278
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
279
279
|
|
|
280
280
|
This library is free software; you can redistribute it and/or modify it
|
|
281
281
|
under the same terms as Perl itself.
|
|
@@ -35,7 +35,7 @@ use Image::ExifTool::Sony;
|
|
|
35
35
|
use Image::ExifTool::Validate;
|
|
36
36
|
use Image::ExifTool::MacOS;
|
|
37
37
|
|
|
38
|
-
$VERSION = '3.
|
|
38
|
+
$VERSION = '3.50';
|
|
39
39
|
@ISA = qw(Exporter);
|
|
40
40
|
|
|
41
41
|
sub NumbersFirst($$);
|
|
@@ -671,7 +671,7 @@ L<Image::ExifTool::BuildTagLookup|Image::ExifTool::BuildTagLookup>.
|
|
|
671
671
|
|
|
672
672
|
~head1 AUTHOR
|
|
673
673
|
|
|
674
|
-
Copyright 2003-
|
|
674
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
675
675
|
|
|
676
676
|
This library is free software; you can redistribute it and/or modify it
|
|
677
677
|
under the same terms as Perl itself.
|
|
@@ -1291,16 +1291,19 @@ TagID: foreach $tagID (@keys) {
|
|
|
1291
1291
|
$printConv = shift @printConvList;
|
|
1292
1292
|
$index = shift @indexList;
|
|
1293
1293
|
}
|
|
1294
|
-
|
|
1294
|
+
# look inside scalar PrintConv for a bit/byte conversion
|
|
1295
|
+
# (see Photoshop:PrintFlags for use of "$byte" decoding)
|
|
1296
|
+
} elsif ($printConv and $printConv =~ /DecodeBits\(\$(val|byte),\s*(\\\%[\w:]+|\{.*\})\s*\)/s) {
|
|
1297
|
+
my $type = $1 eq 'byte' ? 'Byte' : 'Bit';
|
|
1295
1298
|
$$self{Model} = ''; # needed for Nikon ShootingMode
|
|
1296
|
-
my $bits = eval $
|
|
1299
|
+
my $bits = eval $2;
|
|
1297
1300
|
delete $$self{Model};
|
|
1298
1301
|
if ($@) {
|
|
1299
1302
|
warn $@;
|
|
1300
1303
|
} else {
|
|
1301
1304
|
my @pk = sort { NumbersFirst($a,$b) } keys %$bits;
|
|
1302
1305
|
foreach (@pk) {
|
|
1303
|
-
push @values, "
|
|
1306
|
+
push @values, "$type $_ = " . $$bits{$_};
|
|
1304
1307
|
}
|
|
1305
1308
|
}
|
|
1306
1309
|
}
|
|
@@ -1504,7 +1507,7 @@ TagID: foreach $tagID (@keys) {
|
|
|
1504
1507
|
}
|
|
1505
1508
|
}
|
|
1506
1509
|
foreach $tagID (sort keys %$hash) {
|
|
1507
|
-
warn sprintf("Warning: Missing %s for %s %s, tag %
|
|
1510
|
+
warn sprintf("Warning: Missing %s for %s %s, tag %s (0x%.4x)\n",
|
|
1508
1511
|
$var, $short, $$hash{$tagID}, $tagID, $tagID);
|
|
1509
1512
|
}
|
|
1510
1513
|
}
|
|
@@ -2770,7 +2773,7 @@ Returned list of writable pseudo tags.
|
|
|
2770
2773
|
|
|
2771
2774
|
=head1 AUTHOR
|
|
2772
2775
|
|
|
2773
|
-
Copyright 2003-
|
|
2776
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
2774
2777
|
|
|
2775
2778
|
This library is free software; you can redistribute it and/or modify it
|
|
2776
2779
|
under the same terms as Perl itself.
|
|
@@ -307,7 +307,7 @@ specification.
|
|
|
307
307
|
|
|
308
308
|
=head1 AUTHOR
|
|
309
309
|
|
|
310
|
-
Copyright 2003-
|
|
310
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
311
311
|
|
|
312
312
|
This library is free software; you can redistribute it and/or modify it
|
|
313
313
|
under the same terms as Perl itself.
|
|
@@ -88,7 +88,7 @@ sub ProcessCTMD($$$);
|
|
|
88
88
|
sub ProcessExifInfo($$$);
|
|
89
89
|
sub SwapWords($);
|
|
90
90
|
|
|
91
|
-
$VERSION = '4.
|
|
91
|
+
$VERSION = '4.64';
|
|
92
92
|
|
|
93
93
|
# Note: Removed 'USM' from 'L' lenses since it is redundant - PH
|
|
94
94
|
# (or is it? Ref 32 shows 5 non-USM L-type lenses)
|
|
@@ -620,8 +620,9 @@ $VERSION = '4.62';
|
|
|
620
620
|
'61182.40' => 'Canon RF 1200mm F8L IS USM', #42
|
|
621
621
|
'61182.41' => 'Canon RF 1200mm F8L IS USM + RF1.4x', #42
|
|
622
622
|
'61182.42' => 'Canon RF 1200mm F8L IS USM + RF2x', #42
|
|
623
|
+
'61182.43' => 'Canon RF 135mm F1.8 L IS USM', #42
|
|
623
624
|
# we need the RFLensType values for the following...
|
|
624
|
-
'61182.
|
|
625
|
+
'61182.44' => 'Canon RF 5.2mm F2.8L Dual Fisheye 3D VR', #PH (NC)
|
|
625
626
|
65535 => 'n/a',
|
|
626
627
|
);
|
|
627
628
|
|
|
@@ -982,6 +983,7 @@ $VERSION = '4.62';
|
|
|
982
983
|
0x80000465 => 'EOS R10', #42
|
|
983
984
|
0x80000467 => 'PowerShot ZOOM',
|
|
984
985
|
0x80000468 => 'EOS M50 Mark II / Kiss M2', #IB
|
|
986
|
+
0x80000481 => 'EOS R6 Mark II', #42
|
|
985
987
|
0x80000520 => 'EOS D2000C', #IB
|
|
986
988
|
0x80000560 => 'EOS D6000C', #PH (guess)
|
|
987
989
|
);
|
|
@@ -1944,7 +1946,7 @@ my %offOn = ( 0 => 'Off', 1 => 'On' );
|
|
|
1944
1946
|
SubDirectory => { TagTable => 'Image::ExifTool::Canon::ColorData10' },
|
|
1945
1947
|
},
|
|
1946
1948
|
{ # (int16u[3973]) - R3 ref IB
|
|
1947
|
-
Condition => '$count == 3973',
|
|
1949
|
+
Condition => '$count == 3973 or $count == 3778',
|
|
1948
1950
|
Name => 'ColorData11',
|
|
1949
1951
|
SubDirectory => { TagTable => 'Image::ExifTool::Canon::ColorData11' },
|
|
1950
1952
|
},
|
|
@@ -6377,10 +6379,11 @@ my %ciMaxFocal = (
|
|
|
6377
6379
|
1 => {
|
|
6378
6380
|
Name => 'TimeZone',
|
|
6379
6381
|
PrintConv => 'Image::ExifTool::TimeZoneString($val)',
|
|
6380
|
-
PrintConvInv =>
|
|
6381
|
-
|
|
6382
|
-
$val =~
|
|
6383
|
-
|
|
6382
|
+
PrintConvInv => q{
|
|
6383
|
+
$val =~ /Z$/ and return 0;
|
|
6384
|
+
$val =~ /([-+])(\d{1,2}):?(\d{2})$/ and return $1 . ($2 * 60 + $3);
|
|
6385
|
+
$val =~ /^(\d{2})(\d{2})$/ and return $1 * 60 + $2;
|
|
6386
|
+
return undef;
|
|
6384
6387
|
},
|
|
6385
6388
|
},
|
|
6386
6389
|
2 => {
|
|
@@ -6836,6 +6839,7 @@ my %ciMaxFocal = (
|
|
|
6836
6839
|
299 => 'Canon RF 1200mm F8L IS USM + RF1.4x', #42
|
|
6837
6840
|
300 => 'Canon RF 1200mm F8L IS USM + RF2x', #42
|
|
6838
6841
|
302 => 'Canon RF 15-30mm F4.5-6.3 IS STM', #42
|
|
6842
|
+
303 => 'Canon RF 135mm F1.8 L IS USM', #42
|
|
6839
6843
|
# Note: add new RF lenses to %canonLensTypes with ID 61182
|
|
6840
6844
|
},
|
|
6841
6845
|
},
|
|
@@ -8333,7 +8337,7 @@ my %ciMaxFocal = (
|
|
|
8333
8337
|
# Color data (MakerNotes tag 0x4001, count=3973, ref IB)
|
|
8334
8338
|
%Image::ExifTool::Canon::ColorData11 = (
|
|
8335
8339
|
%binaryDataAttrs,
|
|
8336
|
-
NOTES => 'These tags are used by the EOS R3',
|
|
8340
|
+
NOTES => 'These tags are used by the EOS R3, R7 and R6mkII',
|
|
8337
8341
|
FORMAT => 'int16s',
|
|
8338
8342
|
FIRST_ENTRY => 0,
|
|
8339
8343
|
GROUPS => { 0 => 'MakerNotes', 2 => 'Camera' },
|
|
@@ -8345,6 +8349,7 @@ my %ciMaxFocal = (
|
|
|
8345
8349
|
RawConv => '$$self{ColorDataVersion} = $val',
|
|
8346
8350
|
PrintConv => {
|
|
8347
8351
|
34 => '34 (R3)', #IB
|
|
8352
|
+
48 => '48 (R7, R10, R6 Mark II)', #IB
|
|
8348
8353
|
},
|
|
8349
8354
|
},
|
|
8350
8355
|
0x69 => { Name => 'WB_RGGBLevelsAsShot', Format => 'int16s[4]' },
|
|
@@ -8573,6 +8578,10 @@ my %ciMaxFocal = (
|
|
|
8573
8578
|
Name => 'DistortionCorrectionSetting',
|
|
8574
8579
|
PrintConv => \%offOn,
|
|
8575
8580
|
},
|
|
8581
|
+
9 => { #forum14286
|
|
8582
|
+
Name => 'DigitalLensOptimizerSetting',
|
|
8583
|
+
PrintConv => \%offOn,
|
|
8584
|
+
},
|
|
8576
8585
|
);
|
|
8577
8586
|
|
|
8578
8587
|
# Auto Lighting Optimizater information (MakerNotes tag 0x4018) (ref PH)
|
|
@@ -8619,6 +8628,14 @@ my %ciMaxFocal = (
|
|
|
8619
8628
|
# 6 - related to ChromaticAberrationCorr
|
|
8620
8629
|
# 7 - related to DistortionCorrection (0=off, 1=On in a 5DmkIV sample)
|
|
8621
8630
|
# 8 - related to PeripheralIlluminationCorr and ChromaticAberrationCorr
|
|
8631
|
+
10 => { #forum14286
|
|
8632
|
+
Name => 'DigitalLensOptimizer',
|
|
8633
|
+
PrintConv => {
|
|
8634
|
+
0 => 'Off',
|
|
8635
|
+
1 => 'Stanard',
|
|
8636
|
+
2 => 'High',
|
|
8637
|
+
},
|
|
8638
|
+
},
|
|
8622
8639
|
);
|
|
8623
8640
|
|
|
8624
8641
|
# Lens information (MakerNotes tag 0x4019) (ref 20)
|
|
@@ -10171,7 +10188,7 @@ Canon maker notes in EXIF information.
|
|
|
10171
10188
|
|
|
10172
10189
|
=head1 AUTHOR
|
|
10173
10190
|
|
|
10174
|
-
Copyright 2003-
|
|
10191
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
10175
10192
|
|
|
10176
10193
|
This library is free software; you can redistribute it and/or modify it
|
|
10177
10194
|
under the same terms as Perl itself.
|
|
@@ -2873,7 +2873,7 @@ Image::ExifTool to read this information.
|
|
|
2873
2873
|
|
|
2874
2874
|
=head1 AUTHOR
|
|
2875
2875
|
|
|
2876
|
-
Copyright 2003-
|
|
2876
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
2877
2877
|
|
|
2878
2878
|
This library is free software; you can redistribute it and/or modify it
|
|
2879
2879
|
under the same terms as Perl itself.
|
|
@@ -884,7 +884,7 @@ tags.)
|
|
|
884
884
|
|
|
885
885
|
=head1 AUTHOR
|
|
886
886
|
|
|
887
|
-
Copyright 2003-
|
|
887
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
888
888
|
|
|
889
889
|
This library is free software; you can redistribute it and/or modify it
|
|
890
890
|
under the same terms as Perl itself.
|
|
@@ -23,7 +23,7 @@ use vars qw($VERSION);
|
|
|
23
23
|
use Image::ExifTool qw(:DataAccess :Utils);
|
|
24
24
|
use Image::ExifTool::Canon;
|
|
25
25
|
|
|
26
|
-
$VERSION = '1.
|
|
26
|
+
$VERSION = '1.35';
|
|
27
27
|
|
|
28
28
|
sub ProcessCanonVRD($$;$);
|
|
29
29
|
sub WriteCanonVRD($$;$);
|
|
@@ -999,7 +999,7 @@ my $blankFooter = "CANON OPTIONAL DATA\0" . ("\0" x 42) . "\xff\xd9";
|
|
|
999
999
|
PROCESS_PROC => \&ProcessDR4,
|
|
1000
1000
|
WRITE_PROC => \&ProcessDR4,
|
|
1001
1001
|
WRITABLE => 1,
|
|
1002
|
-
GROUPS => { 2 => 'Image' },
|
|
1002
|
+
GROUPS => { 1 => 'CanonDR4', 2 => 'Image' },
|
|
1003
1003
|
VARS => { HEX_ID => 1, SORT_PROC => \&SortDR4 },
|
|
1004
1004
|
NOTES => q{
|
|
1005
1005
|
Tags written by Canon DPP version 4 in CanonVRD trailers and DR4 files. Each
|
|
@@ -1276,7 +1276,7 @@ my $blankFooter = "CANON OPTIONAL DATA\0" . ("\0" x 42) . "\xff\xd9";
|
|
|
1276
1276
|
WRITABLE => 1,
|
|
1277
1277
|
FIRST_ENTRY => 0,
|
|
1278
1278
|
FORMAT => 'int32u',
|
|
1279
|
-
GROUPS => { 2 => 'Image' },
|
|
1279
|
+
GROUPS => { 1 => 'CanonDR4', 2 => 'Image' },
|
|
1280
1280
|
# 0 - value: 'IIII' (presumably byte order)
|
|
1281
1281
|
# 1 - value: 0x00040004 (currently use this for magic number)
|
|
1282
1282
|
# 2 - value: 6
|
|
@@ -1301,7 +1301,7 @@ my $blankFooter = "CANON OPTIONAL DATA\0" . ("\0" x 42) . "\xff\xd9";
|
|
|
1301
1301
|
WRITABLE => 1,
|
|
1302
1302
|
FIRST_ENTRY => 0,
|
|
1303
1303
|
FORMAT => 'int32u',
|
|
1304
|
-
GROUPS => { 2 => 'Image' },
|
|
1304
|
+
GROUPS => { 1 => 'CanonDR4', 2 => 'Image' },
|
|
1305
1305
|
0x00 => {
|
|
1306
1306
|
Name => 'ToneCurveColorSpace',
|
|
1307
1307
|
PrintConv => {
|
|
@@ -1354,7 +1354,7 @@ my $blankFooter = "CANON OPTIONAL DATA\0" . ("\0" x 42) . "\xff\xd9";
|
|
|
1354
1354
|
WRITABLE => 1,
|
|
1355
1355
|
FIRST_ENTRY => 0,
|
|
1356
1356
|
FORMAT => 'double',
|
|
1357
|
-
GROUPS => { 2 => 'Image' },
|
|
1357
|
+
GROUPS => { 1 => 'CanonDR4', 2 => 'Image' },
|
|
1358
1358
|
0x02 => 'GammaContrast',
|
|
1359
1359
|
0x03 => 'GammaColorTone',
|
|
1360
1360
|
0x04 => 'GammaSaturation',
|
|
@@ -1410,7 +1410,7 @@ my $blankFooter = "CANON OPTIONAL DATA\0" . ("\0" x 42) . "\xff\xd9";
|
|
|
1410
1410
|
WRITABLE => 1,
|
|
1411
1411
|
FIRST_ENTRY => 0,
|
|
1412
1412
|
FORMAT => 'int32s',
|
|
1413
|
-
GROUPS => { 2 => 'Image' },
|
|
1413
|
+
GROUPS => { 1 => 'CanonDR4', 2 => 'Image' },
|
|
1414
1414
|
0 => { Name => 'CropActive', %noYes },
|
|
1415
1415
|
1 => 'CropRotatedOriginalWidth',
|
|
1416
1416
|
2 => 'CropRotatedOriginalHeight',
|
|
@@ -1432,7 +1432,7 @@ my $blankFooter = "CANON OPTIONAL DATA\0" . ("\0" x 42) . "\xff\xd9";
|
|
|
1432
1432
|
# DR4 Stamp Tool tags (ref PH)
|
|
1433
1433
|
%Image::ExifTool::CanonVRD::StampInfo = (
|
|
1434
1434
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
|
|
1435
|
-
GROUPS => { 2 => 'Image' },
|
|
1435
|
+
GROUPS => { 1 => 'CanonDR4', 2 => 'Image' },
|
|
1436
1436
|
FORMAT => 'int32u',
|
|
1437
1437
|
FIRST_ENTRY => 0,
|
|
1438
1438
|
0x02 => 'StampToolCount',
|
|
@@ -1441,7 +1441,7 @@ my $blankFooter = "CANON OPTIONAL DATA\0" . ("\0" x 42) . "\xff\xd9";
|
|
|
1441
1441
|
# DR4 dust delete information (ref PH)
|
|
1442
1442
|
%Image::ExifTool::CanonVRD::DustInfo = (
|
|
1443
1443
|
PROCESS_PROC => \&Image::ExifTool::ProcessBinaryData,
|
|
1444
|
-
GROUPS => { 2 => 'Image' },
|
|
1444
|
+
GROUPS => { 1 => 'CanonDR4', 2 => 'Image' },
|
|
1445
1445
|
FORMAT => 'int32u',
|
|
1446
1446
|
FIRST_ENTRY => 0,
|
|
1447
1447
|
0x02 => { Name => 'DustDeleteApplied', %noYes },
|
|
@@ -2263,7 +2263,7 @@ files, and as a trailer in JPEG, CRW, CR2 and TIFF images.
|
|
|
2263
2263
|
|
|
2264
2264
|
=head1 AUTHOR
|
|
2265
2265
|
|
|
2266
|
-
Copyright 2003-
|
|
2266
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
2267
2267
|
|
|
2268
2268
|
This library is free software; you can redistribute it and/or modify it
|
|
2269
2269
|
under the same terms as Perl itself.
|
|
@@ -221,7 +221,7 @@ settings files (COS).
|
|
|
221
221
|
|
|
222
222
|
=head1 AUTHOR
|
|
223
223
|
|
|
224
|
-
Copyright 2003-
|
|
224
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
225
225
|
|
|
226
226
|
This library is free software; you can redistribute it and/or modify it
|
|
227
227
|
under the same terms as Perl itself.
|
|
@@ -634,7 +634,7 @@ $VERSION = '1.38';
|
|
|
634
634
|
15 => 'High Speed Best Selection',
|
|
635
635
|
16 => 'Portrait',
|
|
636
636
|
17 => 'Scenery',
|
|
637
|
-
18 => 'Portrait
|
|
637
|
+
18 => 'Portrait with Scenery',
|
|
638
638
|
19 => 'Flower',
|
|
639
639
|
20 => 'Natural Green',
|
|
640
640
|
21 => 'Autumn Leaves',
|
|
@@ -723,7 +723,7 @@ $VERSION = '1.38';
|
|
|
723
723
|
14 => 'High Speed Best Selection',
|
|
724
724
|
15 => 'Portrait',
|
|
725
725
|
16 => 'Scenery',
|
|
726
|
-
17 => 'Portrait
|
|
726
|
+
17 => 'Portrait with Scenery',
|
|
727
727
|
18 => 'Flower',
|
|
728
728
|
19 => 'Natural Green',
|
|
729
729
|
20 => 'Autumn Leaves',
|
|
@@ -1408,7 +1408,7 @@ $VERSION = '1.38';
|
|
|
1408
1408
|
0 => 'Off',
|
|
1409
1409
|
1 => 'Portrait',
|
|
1410
1410
|
2 => 'Scenery',
|
|
1411
|
-
3 => 'Portrait
|
|
1411
|
+
3 => 'Portrait with Scenery',
|
|
1412
1412
|
4 => 'Children',
|
|
1413
1413
|
5 => 'Sports',
|
|
1414
1414
|
6 => 'Night Scene',
|
|
@@ -2034,7 +2034,7 @@ Casio maker notes in EXIF information.
|
|
|
2034
2034
|
|
|
2035
2035
|
=head1 AUTHOR
|
|
2036
2036
|
|
|
2037
|
-
Copyright 2003-
|
|
2037
|
+
Copyright 2003-2023, Phil Harvey (philharvey66 at gmail.com)
|
|
2038
2038
|
|
|
2039
2039
|
This library is free software; you can redistribute it and/or modify it
|
|
2040
2040
|
under the same terms as Perl itself.
|