exiftool-vendored.pl 12.33.0 → 12.40.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/LICENSE +10 -3
- package/bin/Changes +116 -0
- package/bin/MANIFEST +2 -0
- package/bin/META.json +1 -1
- package/bin/META.yml +1 -1
- package/bin/README +45 -45
- package/bin/config_files/acdsee.config +6 -6
- package/bin/config_files/photoshop_paths.config +30 -7
- package/bin/config_files/picasa_faces.config +1 -1
- package/bin/config_files/pix4d.config +2 -2
- package/bin/config_files/tiff_version.config +2 -2
- package/bin/exiftool +112 -82
- 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 +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 +15 -4
- package/bin/lib/Image/ExifTool/CBOR.pm +1 -1
- package/bin/lib/Image/ExifTool/Canon.pm +225 -13
- package/bin/lib/Image/ExifTool/CanonCustom.pm +13 -3
- 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 +3 -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 +3 -3
- 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 +64 -20
- 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 +48 -11
- 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 +1 -1
- package/bin/lib/Image/ExifTool/GE.pm +1 -1
- package/bin/lib/Image/ExifTool/GIF.pm +6 -2
- package/bin/lib/Image/ExifTool/GIMP.pm +1 -1
- package/bin/lib/Image/ExifTool/GPS.pm +15 -11
- package/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- package/bin/lib/Image/ExifTool/Geotag.pm +4 -3
- 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 +97 -5
- 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 +6 -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 +1 -1
- package/bin/lib/Image/ExifTool/Jpeg2000.pm +109 -12
- 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 +1 -1
- package/bin/lib/Image/ExifTool/Lang/fi.pm +1 -1
- package/bin/lib/Image/ExifTool/Lang/fr.pm +1 -1
- 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/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/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 +9 -5
- 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 +1918 -72
- package/bin/lib/Image/ExifTool/NikonCapture.pm +1 -1
- package/bin/lib/Image/ExifTool/NikonCustom.pm +523 -6
- package/bin/lib/Image/ExifTool/NikonSettings.pm +150 -87
- 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 +7 -7
- package/bin/lib/Image/ExifTool/OpenEXR.pm +5 -3
- 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 +6 -4
- 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 +29 -8
- 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 +3 -2
- 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 +25 -7
- package/bin/lib/Image/ExifTool/QuickTimeStream.pl +40 -4
- package/bin/lib/Image/ExifTool/README +4 -0
- 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 +6 -2
- 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 +3 -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 +34 -12
- 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 +11 -6
- package/bin/lib/Image/ExifTool/TagLookup.pm +6581 -5893
- package/bin/lib/Image/ExifTool/TagNames.pod +1641 -59
- 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 +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 +30 -10
- 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 +19 -4
- package/bin/lib/Image/ExifTool/WriteXMP.pl +13 -12
- package/bin/lib/Image/ExifTool/Writer.pl +56 -10
- package/bin/lib/Image/ExifTool/XMP.pm +169 -54
- package/bin/lib/Image/ExifTool/XMP2.pl +6 -4
- package/bin/lib/Image/ExifTool/XMPStruct.pl +22 -8
- package/bin/lib/Image/ExifTool/ZIP.pm +10 -2
- package/bin/lib/Image/ExifTool/ZISRAW.pm +1 -1
- package/bin/lib/Image/ExifTool/iWork.pm +1 -1
- package/bin/lib/Image/ExifTool.pm +93 -13
- package/bin/lib/Image/ExifTool.pod +80 -70
- package/bin/perl-Image-ExifTool.spec +43 -43
- package/bin/pp_build_exe.args +5 -5
- package/package.json +3 -3
package/LICENSE
CHANGED
|
@@ -1,6 +1,13 @@
|
|
|
1
|
-
|
|
1
|
+
# Vendored ExifTool source
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
This is free software; you can redistribute it and/or modify it under the same
|
|
4
|
+
terms as Perl itself: <https://dev.perl.org/licenses/>
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# npm packaging of exiftool-vendored.pl
|
|
9
|
+
|
|
10
|
+
Copyright (c) 2016-2022 Matthew McEachen
|
|
4
11
|
|
|
5
12
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
13
|
of this software and associated documentation files (the "Software"), to deal
|
|
@@ -18,4 +25,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
|
18
25
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
26
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
27
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
28
|
+
SOFTWARE.
|
package/bin/Changes
CHANGED
|
@@ -7,6 +7,119 @@ RSS feed: https://exiftool.org/rss.xml
|
|
|
7
7
|
Note: The most recent production release is Version 12.30. (Other versions are
|
|
8
8
|
considered development releases, and are not uploaded to MetaCPAN.)
|
|
9
9
|
|
|
10
|
+
Feb. 9, 2022 - Version 12.40
|
|
11
|
+
|
|
12
|
+
- Added a new Nikon LensID (thanks Wolfgang Exler)
|
|
13
|
+
- Added PageCount tag to return the number of pages in a multi-page TIFF
|
|
14
|
+
- Added a few more Sony LensTypes (thanks Jos Roost)
|
|
15
|
+
- Decode some new Canon tags (thanks Mark Reid)
|
|
16
|
+
- Decode another Nikon Z9 tag (thanks Warren Hatch)
|
|
17
|
+
- Decode Nikon NKSC GPSImgDirection (thanks Olaf)
|
|
18
|
+
- Improved handling of empty XMP structures in lists
|
|
19
|
+
- Tolerate leading UTF-8 BOM in -geotag log files
|
|
20
|
+
- Updated photoshop_paths.config to include WorkingPath
|
|
21
|
+
- Patched to allow writing of MP4 videos which have url tracks with a missing
|
|
22
|
+
sample description entry
|
|
23
|
+
- Fixed typo in the name of a new Nikon tag (thanks Herb)
|
|
24
|
+
- Fixed description of GPR (General Purpose RAW) file type
|
|
25
|
+
- Fixed potential deep recursion runtime error when writing nested XMP
|
|
26
|
+
structures
|
|
27
|
+
- Fixed warning which could be generated when writing new
|
|
28
|
+
Composite:GPSCoordinates tag
|
|
29
|
+
- Fixed deep recursion error when reading multi-page TIFF images with more
|
|
30
|
+
than 100 pages
|
|
31
|
+
|
|
32
|
+
Jan. 13, 2022 - Version 12.39
|
|
33
|
+
|
|
34
|
+
- Added a new Pentax LensType (thanks Christian Shulz)
|
|
35
|
+
- Added a couple of new Nikon LensID's
|
|
36
|
+
- Added support for Nikon NKSC sidecar files
|
|
37
|
+
- Decode more tags for the Nikon Z7 and Z9 (thanks Warren Hatch)
|
|
38
|
+
- Decode a couple more FLIR tags
|
|
39
|
+
- Extract ZIP file comments
|
|
40
|
+
- Made PNG ProfileName, SRGBRendering and Gamma writable
|
|
41
|
+
- Patched to avoid possible problem running "more" to show documentation in
|
|
42
|
+
Windows version
|
|
43
|
+
- Fixed problem writing Composite:GPSPosition with coordinates in DMS format,
|
|
44
|
+
and made this tag protected when writing
|
|
45
|
+
- Fixed bug where invalid date/time tags could be written to PNG files when
|
|
46
|
+
attempting to shift a non-existent date/time tag
|
|
47
|
+
- Fixed spelling of a few Matroska tag names (thanks Martin Hoppenheit)
|
|
48
|
+
|
|
49
|
+
Dec. 20, 2021 - Version 12.38
|
|
50
|
+
|
|
51
|
+
- Decode a number of new tags for the Nikon Z9 (thanks Warren Hatch)
|
|
52
|
+
- Patched incorrect decoding of AEBShotCount for the Canon EOS 90D
|
|
53
|
+
- Patched EXR reader to support long tag names
|
|
54
|
+
- Patched security issue (thanks Joe Lothan)
|
|
55
|
+
- Fixed an incorrect tag ID for a new Nikon MakerNote tag (github #108)
|
|
56
|
+
- Fixed XMP-exif:GPSMeasureMode conversions to match EXIF
|
|
57
|
+
- Fixed problem where some namespaces may be undeclared in the -X output when
|
|
58
|
+
using the -struct option
|
|
59
|
+
|
|
60
|
+
Dec. 8, 2021 - Version 12.37
|
|
61
|
+
|
|
62
|
+
- Decode timed GPS from Vantrue S1 dashcam MP4 videos
|
|
63
|
+
- Decode ColorData tags for the Canon EOS R3 (thanks LibRaw)
|
|
64
|
+
- Decode more makernotes tags for Nikon Z cameras (thanks Warren Hatch)
|
|
65
|
+
- Extract TransparentColor from GIF images
|
|
66
|
+
- Improved parsing of input time values for GPSTimeStamp to properly handle a
|
|
67
|
+
"." separator
|
|
68
|
+
- Improved warning when incorrectly using "
|
|
69
|
+
|
|
70
|
+
Nov. 16, 2021 - Version 12.36
|
|
71
|
+
|
|
72
|
+
- IMPORTANT: Fixed bug introduced in 12.35 which corrupted JPEG 2000 images
|
|
73
|
+
when removing all metadata with -all=
|
|
74
|
+
- Added feature to bypass processing of specified XMP namespaces and
|
|
75
|
+
properties (to improve performance in cases where the XMP suffers from
|
|
76
|
+
Adobe-editing bloat)
|
|
77
|
+
- Added a number of new XMP tags used by Lightroom 11.0
|
|
78
|
+
- Decode a number of new Nikon tags (thanks Warren Hatch)
|
|
79
|
+
- Made the Composite GPSPosition tag writable
|
|
80
|
+
- Fixed erroneous "Skipped unknown bytes after JPEG SOS" warning
|
|
81
|
+
- Fixed group for new writable Jpeg2000 color tags in -listx output
|
|
82
|
+
- Fixed problem finding files in Windows when using wildcards in file name and
|
|
83
|
+
a drive letter with no slash
|
|
84
|
+
|
|
85
|
+
Nov. 11, 2021 - Version 12.35
|
|
86
|
+
|
|
87
|
+
- Added ability to write ICC_Profile (and other color specifications) to
|
|
88
|
+
Jpeg2000 images
|
|
89
|
+
- Added %o code to -W option format string
|
|
90
|
+
- Added %f code to -d option for fractional seconds
|
|
91
|
+
- Added a couple of new Sony LensType values (thanks Jos Roost)
|
|
92
|
+
- Added a new CanonModelID (thanks Norbert Wasser)
|
|
93
|
+
- Added a new Nikon LensID
|
|
94
|
+
- Decode more Nikon MakerNotes tags for some new models (thanks Warren Hatch)
|
|
95
|
+
- Extract ThumbnailImage from some DJI drone videos
|
|
96
|
+
- Enhanced -ee option to extract metadata from all frames in a SEQ file
|
|
97
|
+
- Patched to avoid possible "Use of uninitialized value" runtime warning
|
|
98
|
+
- Fixed a couple of misspelt new ICC_Profile tag names (thanks Herb)
|
|
99
|
+
- Fixed problem generating the correct file extension when extracting
|
|
100
|
+
OriginalRawImage from a DNG file using the -W option with the %s format code
|
|
101
|
+
- Fixed bug introduced in 11.91 where exiftool couldn't find its libraries
|
|
102
|
+
when run via a soft link. Also changed to look for config file in the link
|
|
103
|
+
target directory instead of the directory of the link itself
|
|
104
|
+
|
|
105
|
+
Oct. 27, 2021 - Version 12.34
|
|
106
|
+
|
|
107
|
+
- Added support for ICC.2:2019 (Profile version 5.0.0 - iccMAX) color profiles
|
|
108
|
+
- Added ability to detect/delete a Windows Zone.Identifier alternate data
|
|
109
|
+
stream (ADS) via the new ZoneIdentifier tag (thanks Alex Xu)
|
|
110
|
+
- Added support for the Sony ILCE-7M4 (thanks Jos Roost)
|
|
111
|
+
- Added a new Sony lens (thanks LibRaw and Jos Roost)
|
|
112
|
+
- Added a new SonyModelID (thanks LibRaw)
|
|
113
|
+
- Added a new Canon RF lens (thanks Norbert Wasser)
|
|
114
|
+
- Improved handling of some SVG files
|
|
115
|
+
- Patched -overwrite_original_in_place option to open the output file in
|
|
116
|
+
update mode rather than write mode (to allow some write optimizations on
|
|
117
|
+
certain filesystems) (thanks Joel Low)
|
|
118
|
+
- Fixed case of tag ID for new XMP-iptcExt:EventID (thanks Michael Steidl)
|
|
119
|
+
- Fixed problem extracting ICC_Profile information from some PDF files
|
|
120
|
+
- API Changes:
|
|
121
|
+
- Added QuickTimePad option
|
|
122
|
+
|
|
10
123
|
Oct. 16, 2021 - Version 12.33
|
|
11
124
|
|
|
12
125
|
- Added support for DNG version 1.6.0.0
|
|
@@ -135,6 +248,8 @@ May 20, 2021 - Version 12.26 (production release)
|
|
|
135
248
|
- Fixed problem which could cause a "Wide character" warning and generate a
|
|
136
249
|
corrupted output file when writing some illegal values
|
|
137
250
|
|
|
251
|
+
History of older versions (back to Nov. 19, 2003 - Version 1.00) -->
|
|
252
|
+
|
|
138
253
|
Apr. 22, 2021 - Version 12.25
|
|
139
254
|
|
|
140
255
|
- JPEG XL support is now official
|
|
@@ -617,6 +732,7 @@ Mar. 19, 2020 - Version 11.92
|
|
|
617
732
|
|
|
618
733
|
Mar. 5, 2020 - Version 11.91
|
|
619
734
|
|
|
735
|
+
- Added undocumented -xpath option for use by alternate Windows version
|
|
620
736
|
- Decode a couple of new Panasonic tags
|
|
621
737
|
- Documented -ec option (available since version 11.54)
|
|
622
738
|
- Reverted -htmlDump fix of 11.90 because it broke more than it fixed, and
|
package/bin/MANIFEST
CHANGED
|
@@ -194,6 +194,7 @@ html/idiosyncracies.html
|
|
|
194
194
|
html/index.html
|
|
195
195
|
html/install.html
|
|
196
196
|
html/metafiles.html
|
|
197
|
+
html/mistakes.html
|
|
197
198
|
html/overview.png
|
|
198
199
|
html/standards.html
|
|
199
200
|
html/struct.html
|
|
@@ -739,6 +740,7 @@ t/PNG_3.out
|
|
|
739
740
|
t/PNG_4.out
|
|
740
741
|
t/PNG_5.out
|
|
741
742
|
t/PNG_6.out
|
|
743
|
+
t/PNG_7.out
|
|
742
744
|
t/PPM.t
|
|
743
745
|
t/PPM_2.out
|
|
744
746
|
t/PPM_3.out
|
package/bin/META.json
CHANGED
package/bin/META.yml
CHANGED
package/bin/README
CHANGED
|
@@ -14,48 +14,48 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
|
14
14
|
|
|
15
15
|
File Types
|
|
16
16
|
------------+-------------+-------------+-------------+------------
|
|
17
|
-
360 r/w | DR4 r/w/c | JNG r/w |
|
|
18
|
-
3FR r | DSS r | JP2 r/w |
|
|
19
|
-
3G2 r/w | DV r | JPEG r/w |
|
|
20
|
-
3GP r/w | DVB r/w | JSON r |
|
|
21
|
-
A r | DVR-MS r | JXL r |
|
|
22
|
-
AA r | DYLIB r | K25 r |
|
|
23
|
-
AAE r | EIP r | KDC r |
|
|
24
|
-
AAX r/w | EPS r/w | KEY r |
|
|
25
|
-
ACR r | EPUB r | LA r |
|
|
26
|
-
AFM r | ERF r/w | LFP r |
|
|
27
|
-
AI r/w | EXE r | LIF r |
|
|
28
|
-
AIFF r | EXIF r/w/c | LNK r |
|
|
29
|
-
APE r | EXR r | LRV r/w |
|
|
30
|
-
ARQ r/w | EXV r/w/c | M2TS r |
|
|
31
|
-
ARW r/w | F4A/V r/w | M4A/V r/w |
|
|
32
|
-
ASF r | FFF r/w | MACOS r |
|
|
33
|
-
AVI r | FITS r | MAX r |
|
|
34
|
-
AVIF r/w | FLA r | MEF r/w |
|
|
35
|
-
AZW r | FLAC r | MIE r/w/ |
|
|
36
|
-
BMP r | FLIF r/w | MIFF r c |
|
|
37
|
-
BPG r | FLV r | MKA r |
|
|
38
|
-
BTF r | FPF r | MKS r |
|
|
39
|
-
CHM r | FPX r | MKV r |
|
|
40
|
-
COS r | GIF r/w | MNG r/w |
|
|
41
|
-
CR2 r/w | GPR r/w | MOBI r |
|
|
42
|
-
CR3 r/w | GZ r | MODD r |
|
|
43
|
-
CRM r/w | HDP r/w | MOI r |
|
|
44
|
-
CRW r/w | HDR r | MOS r/w |
|
|
45
|
-
CS1 r/w | HEIC r/w | MOV r/w |
|
|
46
|
-
CSV r | HEIF r/w | MP3 r |
|
|
47
|
-
CZI r | HTML r | MP4 r/w |
|
|
48
|
-
DCM r | ICC r/w/c | MPC r |
|
|
49
|
-
DCP r/w | ICS r | MPG r |
|
|
50
|
-
DCR r | IDML r | MPO r/w |
|
|
51
|
-
DFONT r | IIQ r/w | MQV r/w |
|
|
52
|
-
DIVX r | IND r/w | MRC r |
|
|
53
|
-
DJVU r | INSP r/w | MRW r/w |
|
|
54
|
-
DLL r | INSV r | MXF r |
|
|
55
|
-
DNG r/w | INX r | NEF r/w |
|
|
56
|
-
DOC r | ISO r |
|
|
57
|
-
DOCX r | ITC r |
|
|
58
|
-
DPX r | J2C r |
|
|
17
|
+
360 r/w | DR4 r/w/c | JNG r/w | O r | RAW r/w
|
|
18
|
+
3FR r | DSS r | JP2 r/w | ODP r | RIFF r
|
|
19
|
+
3G2 r/w | DV r | JPEG r/w | ODS r | RSRC r
|
|
20
|
+
3GP r/w | DVB r/w | JSON r | ODT r | RTF r
|
|
21
|
+
A r | DVR-MS r | JXL r | OFR r | RW2 r/w
|
|
22
|
+
AA r | DYLIB r | K25 r | OGG r | RWL r/w
|
|
23
|
+
AAE r | EIP r | KDC r | OGV r | RWZ r
|
|
24
|
+
AAX r/w | EPS r/w | KEY r | ONP r | RM r
|
|
25
|
+
ACR r | EPUB r | LA r | OPUS r | SEQ r
|
|
26
|
+
AFM r | ERF r/w | LFP r | ORF r/w | SKETCH r
|
|
27
|
+
AI r/w | EXE r | LIF r | ORI r/w | SO r
|
|
28
|
+
AIFF r | EXIF r/w/c | LNK r | OTF r | SR2 r/w
|
|
29
|
+
APE r | EXR r | LRV r/w | PAC r | SRF r
|
|
30
|
+
ARQ r/w | EXV r/w/c | M2TS r | PAGES r | SRW r/w
|
|
31
|
+
ARW r/w | F4A/V r/w | M4A/V r/w | PBM r/w | SVG r
|
|
32
|
+
ASF r | FFF r/w | MACOS r | PCD r | SWF r
|
|
33
|
+
AVI r | FITS r | MAX r | PCX r | THM r/w
|
|
34
|
+
AVIF r/w | FLA r | MEF r/w | PDB r | TIFF r/w
|
|
35
|
+
AZW r | FLAC r | MIE r/w/ | PDF r/w | TORRENT r
|
|
36
|
+
BMP r | FLIF r/w | MIFF r c | PEF r/w | TTC r
|
|
37
|
+
BPG r | FLV r | MKA r | PFA r | TTF r
|
|
38
|
+
BTF r | FPF r | MKS r | PFB r | TXT r
|
|
39
|
+
CHM r | FPX r | MKV r | PFM r | VCF r
|
|
40
|
+
COS r | GIF r/w | MNG r/w | PGF r | VRD r/w/c
|
|
41
|
+
CR2 r/w | GPR r/w | MOBI r | PGM r/w | VSD r
|
|
42
|
+
CR3 r/w | GZ r | MODD r | PLIST r | WAV r
|
|
43
|
+
CRM r/w | HDP r/w | MOI r | PICT r | WDP r/w
|
|
44
|
+
CRW r/w | HDR r | MOS r/w | PMP r | WEBP r
|
|
45
|
+
CS1 r/w | HEIC r/w | MOV r/w | PNG r/w | WEBM r
|
|
46
|
+
CSV r | HEIF r/w | MP3 r | PPM r/w | WMA r
|
|
47
|
+
CZI r | HTML r | MP4 r/w | PPT r | WMV r
|
|
48
|
+
DCM r | ICC r/w/c | MPC r | PPTX r | WTV r
|
|
49
|
+
DCP r/w | ICS r | MPG r | PS r/w | WV r
|
|
50
|
+
DCR r | IDML r | MPO r/w | PSB r/w | X3F r/w
|
|
51
|
+
DFONT r | IIQ r/w | MQV r/w | PSD r/w | XCF r
|
|
52
|
+
DIVX r | IND r/w | MRC r | PSP r | XLS r
|
|
53
|
+
DJVU r | INSP r/w | MRW r/w | QTIF r/w | XLSX r
|
|
54
|
+
DLL r | INSV r | MXF r | R3D r | XMP r/w/c
|
|
55
|
+
DNG r/w | INX r | NEF r/w | RA r | ZIP r
|
|
56
|
+
DOC r | ISO r | NKSC r/w | RAF r/w |
|
|
57
|
+
DOCX r | ITC r | NRW r/w | RAM r |
|
|
58
|
+
DPX r | J2C r | NUMBERS r | RAR r |
|
|
59
59
|
|
|
60
60
|
Meta Information
|
|
61
61
|
----------------------+----------------------+---------------------
|
|
@@ -107,8 +107,8 @@ your home directory, then you would type the following commands in a
|
|
|
107
107
|
terminal window to extract and run ExifTool:
|
|
108
108
|
|
|
109
109
|
cd ~/Desktop
|
|
110
|
-
gzip -dc Image-ExifTool-12.
|
|
111
|
-
cd Image-ExifTool-12.
|
|
110
|
+
gzip -dc Image-ExifTool-12.40.tar.gz | tar -xf -
|
|
111
|
+
cd Image-ExifTool-12.40
|
|
112
112
|
./exiftool t/images/ExifTool.jpg
|
|
113
113
|
|
|
114
114
|
Note: These commands extract meta information from one of the test images.
|
|
@@ -162,7 +162,7 @@ for calculating digest values and providing other features listed below:
|
|
|
162
162
|
|
|
163
163
|
COPYRIGHT AND LICENSE
|
|
164
164
|
|
|
165
|
-
Copyright 2003-
|
|
165
|
+
Copyright 2003-2022, Phil Harvey
|
|
166
166
|
|
|
167
167
|
This is free software; you can redistribute it and/or modify it under the
|
|
168
168
|
same terms as Perl itself.
|
|
@@ -97,8 +97,8 @@ my %sACDSeeRegionStruct = (
|
|
|
97
97
|
# new XMP namespaces for ACDSee regions
|
|
98
98
|
'Image::ExifTool::XMP::Main' => {
|
|
99
99
|
'acdsee-rs' => { # <-- must be the same as the NAMESPACE prefix
|
|
100
|
-
SubDirectory => {
|
|
101
|
-
TagTable => 'Image::ExifTool::UserDefined::ACDSeeRegions'
|
|
100
|
+
SubDirectory => {
|
|
101
|
+
TagTable => 'Image::ExifTool::UserDefined::ACDSeeRegions'
|
|
102
102
|
},
|
|
103
103
|
},
|
|
104
104
|
},
|
|
@@ -147,7 +147,7 @@ my %sACDSeeRegionStruct = (
|
|
|
147
147
|
},
|
|
148
148
|
ValueConv => q{
|
|
149
149
|
my ($rgn, @newRgns);
|
|
150
|
-
my $rgns = ref $val[0] eq 'ARRAY' ? $val[0] : [ $val[0] ];
|
|
150
|
+
my $rgns = ref $val[0] eq 'ARRAY' ? $val[0] : [ $val[0] ];
|
|
151
151
|
foreach $rgn (@$rgns) {
|
|
152
152
|
my %newRgn = ( Type => 'Face' );
|
|
153
153
|
if ($$rgn{RegionBoundary} and $$rgn{RegionBoundary}{RbShape} eq 'rectangle') {
|
|
@@ -220,13 +220,13 @@ my %sACDSeeRegionStruct = (
|
|
|
220
220
|
# the "Struct" entry defines the structure fields
|
|
221
221
|
Struct => {
|
|
222
222
|
# optional structure name (used for warning messages only)
|
|
223
|
-
STRUCT_NAME => 'ACDSee RegionInfo',
|
|
223
|
+
STRUCT_NAME => 'ACDSee RegionInfo',
|
|
224
224
|
RegionList => {
|
|
225
225
|
FlatName => 'Region',
|
|
226
226
|
Struct => \%sACDSeeRegionStruct,
|
|
227
227
|
List => 'Bag',
|
|
228
228
|
},
|
|
229
|
-
AppliedToDimensions => {
|
|
229
|
+
AppliedToDimensions => {
|
|
230
230
|
FlatName => 'RegionAppliedToDimensions',Struct => \%sACDSeeDimensions },
|
|
231
231
|
},
|
|
232
232
|
},
|
|
@@ -239,7 +239,7 @@ my %sACDSeeRegionStruct = (
|
|
|
239
239
|
RegionInfoACDSeeAppliedToDimensionsW => 'ACDSeeRegionAppliedToDimensionsW',
|
|
240
240
|
RegionInfoACDSeeRegionListDLYAreaH => 'ACDSeeRegionDLYAreaH',
|
|
241
241
|
RegionInfoACDSeeRegionListDLYAreaW => 'ACDSeeRegionDLYAreaW',
|
|
242
|
-
RegionInfoACDSeeRegionListDLYAreaX => 'ACDSeeRegionDLYAreaX',
|
|
242
|
+
RegionInfoACDSeeRegionListDLYAreaX => 'ACDSeeRegionDLYAreaX',
|
|
243
243
|
RegionInfoACDSeeRegionListDLYAreaY => 'ACDSeeRegionDLYAreaY',
|
|
244
244
|
RegionInfoACDSeeRegionListALGAreaH => 'ACDSeeRegionALGAreaH',
|
|
245
245
|
RegionInfoACDSeeRegionListALGAreaW => 'ACDSeeRegionALGAreaW',
|
|
@@ -34,15 +34,15 @@
|
|
|
34
34
|
# Usage:
|
|
35
35
|
#
|
|
36
36
|
# 1) Extract Photoshop path names:
|
|
37
|
-
#
|
|
37
|
+
#
|
|
38
38
|
# exiftool -config photoshop_paths.config -allpaths FILE
|
|
39
39
|
#
|
|
40
40
|
# 2) Extract Photoshop path names and anchor points:
|
|
41
|
-
#
|
|
41
|
+
#
|
|
42
42
|
# exiftool -config photoshop_paths.config -userparam anchor -allpaths FILE
|
|
43
43
|
#
|
|
44
44
|
# 3) Extract Photoshop path anchor points only:
|
|
45
|
-
#
|
|
45
|
+
#
|
|
46
46
|
# exiftool -config photoshop_paths.config -userparam anchoronly -allpaths FILE
|
|
47
47
|
#
|
|
48
48
|
# 4) Copy all Photoshop paths from one file (SRC) to another (DST):
|
|
@@ -68,6 +68,7 @@
|
|
|
68
68
|
# subpath respectively
|
|
69
69
|
# 2017/06/03 - PH Added TotalPathPoints
|
|
70
70
|
# 2017/07/17 - PH Added UniquePathPoints
|
|
71
|
+
# 2022/02/03 - PH Added WorkingPath and WorkingPathPix
|
|
71
72
|
#
|
|
72
73
|
# References: https://exiftool.org/forum/index.php/topic,1621.0.html
|
|
73
74
|
# https://exiftool.org/forum/index.php/topic,3910.0.html
|
|
@@ -77,10 +78,11 @@
|
|
|
77
78
|
# Print Photoshop path name and/or anchor points
|
|
78
79
|
# Inputs: 0) reference to Photoshop path data, 1) ExifTool object reference
|
|
79
80
|
# 2-3) optional image width/height to convert anchor points to pixels
|
|
81
|
+
# 4) optional path name
|
|
80
82
|
# Returns: String with name and/or Bezier knot anchor points
|
|
81
|
-
sub PrintPath(
|
|
83
|
+
sub PrintPath($$;$$$)
|
|
82
84
|
{
|
|
83
|
-
my ($val, $et, $w, $h) = @_;
|
|
85
|
+
my ($val, $et, $w, $h, $nm) = @_;
|
|
84
86
|
my ($pos, $name, @rtn);
|
|
85
87
|
my $len = length($$val) - 26;
|
|
86
88
|
|
|
@@ -88,8 +90,9 @@ sub PrintPath($$;$$)
|
|
|
88
90
|
if ($$val =~ m{.*/#(.{0,255})#/$}s) {
|
|
89
91
|
$name = $1;
|
|
90
92
|
$len -= length($1) + 4;
|
|
93
|
+
$name = $nm if defined $nm and not length $name;
|
|
91
94
|
} else {
|
|
92
|
-
$name = '<none>';
|
|
95
|
+
$name = defined $nm ? $nm : '<none>';
|
|
93
96
|
}
|
|
94
97
|
my $anchorOnly = $et->Options(UserParam => 'AnchorOnly');
|
|
95
98
|
push @rtn, $name unless $anchorOnly;
|
|
@@ -118,7 +121,7 @@ sub PrintPath($$;$$)
|
|
|
118
121
|
}
|
|
119
122
|
|
|
120
123
|
%Image::ExifTool::Shortcuts::UserDefined = (
|
|
121
|
-
# create "AllPaths" shortcut for all Photoshop path tags
|
|
124
|
+
# create "AllPaths" shortcut for all Photoshop path tags (except WorkingPath)
|
|
122
125
|
AllPaths => [
|
|
123
126
|
map { sprintf "Path%x", $_ } (0x7d0 .. 0xbb5),
|
|
124
127
|
],
|
|
@@ -133,6 +136,14 @@ sub PrintPath($$;$$)
|
|
|
133
136
|
Name => 'OriginPathInfo',
|
|
134
137
|
Flags => [ qw(Writable Protected Binary SetResourceName) ],
|
|
135
138
|
},
|
|
139
|
+
0x401 => {
|
|
140
|
+
Name => 'WorkingPath',
|
|
141
|
+
Flags => [ qw(Writable Protected Binary ConvertBinary SetResourceName) ],
|
|
142
|
+
PrintConv => sub {
|
|
143
|
+
my ($val, $et) = @_;
|
|
144
|
+
PrintPath($val, $et, undef, undef, 'Work Path');
|
|
145
|
+
},
|
|
146
|
+
},
|
|
136
147
|
# generate tags for each of the 998 possible Photoshop paths
|
|
137
148
|
map { $_ => {
|
|
138
149
|
Name => sprintf('Path%x', $_),
|
|
@@ -143,6 +154,7 @@ sub PrintPath($$;$$)
|
|
|
143
154
|
},
|
|
144
155
|
'Image::ExifTool::Composite' => {
|
|
145
156
|
PathCount => {
|
|
157
|
+
# (PathCount statistics do not include WorkingPath)
|
|
146
158
|
Desire => {
|
|
147
159
|
map { $_-0x7d0 => sprintf('Path%x', $_) } (0x7d0 .. 0xbb5),
|
|
148
160
|
},
|
|
@@ -180,6 +192,17 @@ sub PrintPath($$;$$)
|
|
|
180
192
|
Require => 'PathCount',
|
|
181
193
|
ValueConv => '$$self{TotalPathPoints}',
|
|
182
194
|
},
|
|
195
|
+
WorkingPathPix => {
|
|
196
|
+
Require => {
|
|
197
|
+
0 => 'ImageWidth',
|
|
198
|
+
1 => 'ImageHeight',
|
|
199
|
+
2 => 'WorkingPath',
|
|
200
|
+
},
|
|
201
|
+
ValueConv => sub {
|
|
202
|
+
my ($val, $et) = @_;
|
|
203
|
+
PrintPath($$val[2], $et, $$val[0], $$val[1], 'Work Path');
|
|
204
|
+
},
|
|
205
|
+
},
|
|
183
206
|
map { sprintf('PathPix%x', $_) => {
|
|
184
207
|
Require => {
|
|
185
208
|
0 => 'ImageWidth',
|
|
@@ -63,7 +63,7 @@
|
|
|
63
63
|
# 2015/05/12 - PH Minor code tweaks
|
|
64
64
|
# 2015/10/26 - BKW Round off area sizes to 7 decimal places
|
|
65
65
|
# 2016/01/18 - BKW Improved rounding algorithm
|
|
66
|
-
# 2016/05/14 - BKW Increased rounding to 9 decimal places (Max Picasa accepts),
|
|
66
|
+
# 2016/05/14 - BKW Increased rounding to 9 decimal places (Max Picasa accepts),
|
|
67
67
|
# moved rounding operation to subroutine
|
|
68
68
|
#
|
|
69
69
|
# References: https://exiftool.org/forum/index.php/topic,6354.0.html
|
|
@@ -16,13 +16,13 @@
|
|
|
16
16
|
|
|
17
17
|
%Image::ExifTool::UserDefined = (
|
|
18
18
|
'Image::ExifTool::XMP::Main' => {
|
|
19
|
-
Camera => {
|
|
19
|
+
Camera => {
|
|
20
20
|
SubDirectory => {
|
|
21
21
|
TagTable => 'Image::ExifTool::UserDefined::Camera',
|
|
22
22
|
},
|
|
23
23
|
},
|
|
24
24
|
},
|
|
25
|
-
);
|
|
25
|
+
);
|
|
26
26
|
|
|
27
27
|
%Image::ExifTool::UserDefined::Camera = (
|
|
28
28
|
GROUPS => { 0 => 'XMP', 1 => 'XMP-Camera', 2 => 'Camera' },
|
|
@@ -68,9 +68,9 @@ sub has_defined {
|
|
|
68
68
|
35 => 'EXIF:TransferRange', # TransferRange (342/0x0156)
|
|
69
69
|
36 => 'EXIF:YCbCrCoefficients', # YCbCrCoefficients (529/0x0211)
|
|
70
70
|
37 => 'EXIF:YCbCrPositioning', # YCbCrPositioning (531/0x0213)
|
|
71
|
-
38 => 'EXIF:YCbCrSubSampling', # YCbCrSubSampling (530/0x0212)
|
|
71
|
+
38 => 'EXIF:YCbCrSubSampling', # YCbCrSubSampling (530/0x0212)
|
|
72
72
|
# Other tags to check
|
|
73
|
-
39 => 'EXIF:PhotometricInterpretation', # PhotometricInterpretation (262/0x0106)
|
|
73
|
+
39 => 'EXIF:PhotometricInterpretation', # PhotometricInterpretation (262/0x0106)
|
|
74
74
|
40 => 'EXIF:Compression', # Compression (259/0x0103)
|
|
75
75
|
},
|
|
76
76
|
ValueConv => q{
|