exiftool_vendored 12.61.0 → 12.62.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.
- checksums.yaml +4 -4
- data/bin/Changes +12 -0
- data/bin/MANIFEST +7 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +45 -44
- data/bin/exiftool +56 -54
- data/bin/lib/Image/ExifTool/BMP.pm +0 -1
- data/bin/lib/Image/ExifTool/BuildTagLookup.pm +4 -4
- data/bin/lib/Image/ExifTool/FlashPix.pm +2 -1
- data/bin/lib/Image/ExifTool/PDF.pm +2 -2
- data/bin/lib/Image/ExifTool/QuickTime.pm +10 -7
- data/bin/lib/Image/ExifTool/TagLookup.pm +9 -0
- data/bin/lib/Image/ExifTool/TagNames.pod +33 -5
- data/bin/lib/Image/ExifTool/WPG.pm +296 -0
- data/bin/lib/Image/ExifTool/Writer.pl +12 -4
- data/bin/lib/Image/ExifTool/XMP.pm +4 -1
- data/bin/lib/Image/ExifTool/ZIP.pm +159 -41
- data/bin/lib/Image/ExifTool.pm +62 -28
- data/bin/lib/Image/ExifTool.pod +51 -42
- data/bin/perl-Image-ExifTool.spec +44 -43
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: b9425d3689f85ae893c11f1e1ebb63d8392eefe696b6ff685a35536da9b2b79c
|
|
4
|
+
data.tar.gz: a343f14b8c717420458456579562c12d399c0687865a6e54ea5df8945b096e66
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 559fb2be9a0a2c441ff8e12fd13dd077825c71655a9e99407f602e2ecaae8f997cb9475b3bb5a79dddec1897a9f22ef3c9d9506b8df885da5ee4dfc9baad1a7d
|
|
7
|
+
data.tar.gz: bcd3a86f5375904081c86ef8c4904bf6cf5283d4f67519df0d05711b456ab63721dd0412fe6c46d7c2774919e0f4b13a00e8eb745253937c252a86fac423182e
|
data/bin/Changes
CHANGED
|
@@ -7,6 +7,18 @@ RSS feed: https://exiftool.org/rss.xml
|
|
|
7
7
|
Note: The most recent production release is Version 12.60. (Other versions are
|
|
8
8
|
considered development releases, and are not uploaded to MetaCPAN.)
|
|
9
9
|
|
|
10
|
+
May 3, 2023 - Version 12.62
|
|
11
|
+
|
|
12
|
+
- Added basic read support for WPG images
|
|
13
|
+
- Added ImageDataMD5 support for HEIC images
|
|
14
|
+
- Added support for RAR version 5.0 compressed files (thanks Amir Gooran)
|
|
15
|
+
- Added a few new XMP-aux tags (thanks John Ellis)
|
|
16
|
+
- Made Composite tags available for use in -fileNUM argument
|
|
17
|
+
- Better handling of FlashPix VT_EMPTY value
|
|
18
|
+
- Fixed "Can't write" error when specifying a .webp file for the -o option
|
|
19
|
+
- API Changes:
|
|
20
|
+
- Added NoWarning option
|
|
21
|
+
|
|
10
22
|
Apr. 24, 2023 - Version 12.61
|
|
11
23
|
|
|
12
24
|
- Added ImageDataMD5 support for J2C and JXL images
|
data/bin/MANIFEST
CHANGED
|
@@ -176,6 +176,7 @@ html/TagNames/Torrent.html
|
|
|
176
176
|
html/TagNames/Unknown.html
|
|
177
177
|
html/TagNames/VCard.html
|
|
178
178
|
html/TagNames/Vorbis.html
|
|
179
|
+
html/TagNames/WPG.html
|
|
179
180
|
html/TagNames/WTV.html
|
|
180
181
|
html/TagNames/XMP.html
|
|
181
182
|
html/TagNames/ZIP.html
|
|
@@ -416,6 +417,7 @@ lib/Image/ExifTool/Unknown.pm
|
|
|
416
417
|
lib/Image/ExifTool/VCard.pm
|
|
417
418
|
lib/Image/ExifTool/Validate.pm
|
|
418
419
|
lib/Image/ExifTool/Vorbis.pm
|
|
420
|
+
lib/Image/ExifTool/WPG.pm
|
|
419
421
|
lib/Image/ExifTool/WTV.pm
|
|
420
422
|
lib/Image/ExifTool/WriteCanonRaw.pl
|
|
421
423
|
lib/Image/ExifTool/WriteExif.pl
|
|
@@ -856,6 +858,8 @@ t/VCard_2.out
|
|
|
856
858
|
t/VCard_3.out
|
|
857
859
|
t/Vorbis.t
|
|
858
860
|
t/Vorbis_2.out
|
|
861
|
+
t/WPG.t
|
|
862
|
+
t/WPG_2.out
|
|
859
863
|
t/WTV.t
|
|
860
864
|
t/WTV_2.out
|
|
861
865
|
t/Writer.t
|
|
@@ -965,6 +969,7 @@ t/ZIP_4.out
|
|
|
965
969
|
t/ZIP_5.out
|
|
966
970
|
t/ZIP_6.out
|
|
967
971
|
t/ZIP_7.out
|
|
972
|
+
t/ZIP_8.out
|
|
968
973
|
t/ZISRAW.t
|
|
969
974
|
t/ZISRAW_2.out
|
|
970
975
|
t/images/AFCP.jpg
|
|
@@ -1132,6 +1137,7 @@ t/images/Unknown.jpg
|
|
|
1132
1137
|
t/images/VCard.ics
|
|
1133
1138
|
t/images/VCard.vcf
|
|
1134
1139
|
t/images/Vorbis.ogg
|
|
1140
|
+
t/images/WPG.wpg
|
|
1135
1141
|
t/images/WTV.wtv
|
|
1136
1142
|
t/images/Writer.jpg
|
|
1137
1143
|
t/images/XMP.inx
|
|
@@ -1148,6 +1154,7 @@ t/images/XMP7.xmp
|
|
|
1148
1154
|
t/images/XMP8.xmp
|
|
1149
1155
|
t/images/XMP9.xmp
|
|
1150
1156
|
t/images/ZIP.gz
|
|
1157
|
+
t/images/ZIP.rar
|
|
1151
1158
|
t/images/ZIP.zip
|
|
1152
1159
|
t/images/ZISRAW.czi
|
|
1153
1160
|
t/images/iWork.numbers
|
data/bin/META.json
CHANGED
data/bin/META.yml
CHANGED
data/bin/README
CHANGED
|
@@ -14,48 +14,49 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
|
14
14
|
|
|
15
15
|
File Types
|
|
16
16
|
------------+-------------+-------------+-------------+------------
|
|
17
|
-
360 r/w |
|
|
18
|
-
3FR r |
|
|
19
|
-
3G2 r/w |
|
|
20
|
-
3GP r/w |
|
|
21
|
-
A r |
|
|
22
|
-
AA r |
|
|
23
|
-
AAE r |
|
|
24
|
-
AAX r/w |
|
|
25
|
-
ACR r |
|
|
26
|
-
AFM r |
|
|
27
|
-
AI r/w |
|
|
28
|
-
AIFF r |
|
|
29
|
-
APE r |
|
|
30
|
-
ARQ r/w |
|
|
31
|
-
ARW r/w |
|
|
32
|
-
ASF r |
|
|
33
|
-
AVI r |
|
|
34
|
-
AVIF r/w |
|
|
35
|
-
AZW r |
|
|
36
|
-
BMP r |
|
|
37
|
-
BPG r |
|
|
38
|
-
BTF r |
|
|
39
|
-
CHM r |
|
|
40
|
-
COS r |
|
|
41
|
-
CR2 r/w |
|
|
42
|
-
CR3 r/w |
|
|
43
|
-
CRM r/w |
|
|
44
|
-
CRW r/w |
|
|
45
|
-
CS1 r/w |
|
|
46
|
-
CSV r |
|
|
47
|
-
CUR r |
|
|
48
|
-
CZI r |
|
|
49
|
-
DCM r |
|
|
50
|
-
DCP r/w |
|
|
51
|
-
DCR r |
|
|
52
|
-
DFONT r |
|
|
53
|
-
DIVX r |
|
|
54
|
-
DJVU r |
|
|
55
|
-
DLL r |
|
|
56
|
-
DNG r/w |
|
|
57
|
-
DOC r |
|
|
58
|
-
DOCX r |
|
|
17
|
+
360 r/w | DR4 r/w/c | JNG r/w | ODP r | RSRC r
|
|
18
|
+
3FR r | DSS r | JP2 r/w | ODS r | RTF r
|
|
19
|
+
3G2 r/w | DV r | JPEG r/w | ODT r | RW2 r/w
|
|
20
|
+
3GP r/w | DVB r/w | JSON r | OFR r | RWL r/w
|
|
21
|
+
A r | DVR-MS r | JXL r | OGG r | RWZ r
|
|
22
|
+
AA r | DYLIB r | K25 r | OGV r | RM r
|
|
23
|
+
AAE r | EIP r | KDC r | ONP r | SEQ r
|
|
24
|
+
AAX r/w | EPS r/w | KEY r | OPUS r | SKETCH r
|
|
25
|
+
ACR r | EPUB r | LA r | ORF r/w | SO r
|
|
26
|
+
AFM r | ERF r/w | LFP r | ORI r/w | SR2 r/w
|
|
27
|
+
AI r/w | EXE r | LIF r | OTF r | SRF r
|
|
28
|
+
AIFF r | EXIF r/w/c | LNK r | PAC r | SRW r/w
|
|
29
|
+
APE r | EXR r | LRV r/w | PAGES r | SVG r
|
|
30
|
+
ARQ r/w | EXV r/w/c | M2TS r | PBM r/w | SWF r
|
|
31
|
+
ARW r/w | F4A/V r/w | M4A/V r/w | PCD r | THM r/w
|
|
32
|
+
ASF r | FFF r/w | MACOS r | PCX r | TIFF r/w
|
|
33
|
+
AVI r | FITS r | MAX r | PDB r | TORRENT r
|
|
34
|
+
AVIF r/w | FLA r | MEF r/w | PDF r/w | TTC r
|
|
35
|
+
AZW r | FLAC r | MIE r/w/c | PEF r/w | TTF r
|
|
36
|
+
BMP r | FLIF r/w | MIFF r | PFA r | TXT r
|
|
37
|
+
BPG r | FLV r | MKA r | PFB r | VCF r
|
|
38
|
+
BTF r | FPF r | MKS r | PFM r | VNT r
|
|
39
|
+
CHM r | FPX r | MKV r | PGF r | VRD r/w/c
|
|
40
|
+
COS r | GIF r/w | MNG r/w | PGM r/w | VSD r
|
|
41
|
+
CR2 r/w | GPR r/w | MOBI r | PLIST r | WAV r
|
|
42
|
+
CR3 r/w | GZ r | MODD r | PICT r | WDP r/w
|
|
43
|
+
CRM r/w | HDP r/w | MOI r | PMP r | WEBP r/w
|
|
44
|
+
CRW r/w | HDR r | MOS r/w | PNG r/w | WEBM r
|
|
45
|
+
CS1 r/w | HEIC r/w | MOV r/w | PPM r/w | WMA r
|
|
46
|
+
CSV r | HEIF r/w | MP3 r | PPT r | WMV r
|
|
47
|
+
CUR r | HTML r | MP4 r/w | PPTX r | WPG r
|
|
48
|
+
CZI r | ICC r/w/c | MPC r | PS r/w | WTV r
|
|
49
|
+
DCM r | ICO r | MPG r | PSB r/w | WV r
|
|
50
|
+
DCP r/w | ICS r | MPO r/w | PSD r/w | X3F r/w
|
|
51
|
+
DCR r | IDML r | MQV r/w | PSP r | XCF r
|
|
52
|
+
DFONT r | IIQ r/w | MRC r | QTIF r/w | XLS r
|
|
53
|
+
DIVX r | IND r/w | MRW r/w | R3D r | XLSX r
|
|
54
|
+
DJVU r | INSP r/w | MXF r | RA r | XMP r/w/c
|
|
55
|
+
DLL r | INSV r | NEF r/w | RAF r/w | ZIP r
|
|
56
|
+
DNG r/w | INX r | NKSC r/w | RAM r |
|
|
57
|
+
DOC r | ISO r | NRW r/w | RAR r |
|
|
58
|
+
DOCX r | ITC r | NUMBERS r | RAW r/w |
|
|
59
|
+
DPX r | J2C r | O r | RIFF r |
|
|
59
60
|
|
|
60
61
|
Meta Information
|
|
61
62
|
----------------------+----------------------+---------------------
|
|
@@ -107,8 +108,8 @@ your home directory, then you would type the following commands in a
|
|
|
107
108
|
terminal window to extract and run ExifTool:
|
|
108
109
|
|
|
109
110
|
cd ~/Desktop
|
|
110
|
-
gzip -dc Image-ExifTool-12.
|
|
111
|
-
cd Image-ExifTool-12.
|
|
111
|
+
gzip -dc Image-ExifTool-12.62.tar.gz | tar -xf -
|
|
112
|
+
cd Image-ExifTool-12.62
|
|
112
113
|
./exiftool t/images/ExifTool.jpg
|
|
113
114
|
|
|
114
115
|
Note: These commands extract meta information from one of the test images.
|
data/bin/exiftool
CHANGED
|
@@ -11,7 +11,7 @@ use strict;
|
|
|
11
11
|
use warnings;
|
|
12
12
|
require 5.004;
|
|
13
13
|
|
|
14
|
-
my $version = '12.
|
|
14
|
+
my $version = '12.62';
|
|
15
15
|
|
|
16
16
|
# add our 'lib' directory to the include list BEFORE 'use Image::ExifTool'
|
|
17
17
|
BEGIN {
|
|
@@ -837,7 +837,7 @@ for (;;) {
|
|
|
837
837
|
$mt->Options(Charset => $charset);
|
|
838
838
|
}
|
|
839
839
|
if ($evalWarning) {
|
|
840
|
-
|
|
840
|
+
Warn $evalWarning;
|
|
841
841
|
} else {
|
|
842
842
|
$setCharset = $mt->Options('Charset');
|
|
843
843
|
}
|
|
@@ -1738,7 +1738,8 @@ if ($textOut) {
|
|
|
1738
1738
|
if ($outOpt) {
|
|
1739
1739
|
my $type = GetFileType($outOpt);
|
|
1740
1740
|
if ($type) {
|
|
1741
|
-
|
|
1741
|
+
# (must test original file name because we can write .webp but not other RIFF types)
|
|
1742
|
+
unless (CanWrite($outOpt)) {
|
|
1742
1743
|
Warn "Can't write $type files\n";
|
|
1743
1744
|
$rtnVal = 1;
|
|
1744
1745
|
next;
|
|
@@ -4604,48 +4605,49 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
|
4604
4605
|
|
|
4605
4606
|
File Types
|
|
4606
4607
|
------------+-------------+-------------+-------------+------------
|
|
4607
|
-
360 r/w |
|
|
4608
|
-
3FR r |
|
|
4609
|
-
3G2 r/w |
|
|
4610
|
-
3GP r/w |
|
|
4611
|
-
A r |
|
|
4612
|
-
AA r |
|
|
4613
|
-
AAE r |
|
|
4614
|
-
AAX r/w |
|
|
4615
|
-
ACR r |
|
|
4616
|
-
AFM r |
|
|
4617
|
-
AI r/w |
|
|
4618
|
-
AIFF r |
|
|
4619
|
-
APE r |
|
|
4620
|
-
ARQ r/w |
|
|
4621
|
-
ARW r/w |
|
|
4622
|
-
ASF r |
|
|
4623
|
-
AVI r |
|
|
4624
|
-
AVIF r/w |
|
|
4625
|
-
AZW r |
|
|
4626
|
-
BMP r |
|
|
4627
|
-
BPG r |
|
|
4628
|
-
BTF r |
|
|
4629
|
-
CHM r |
|
|
4630
|
-
COS r |
|
|
4631
|
-
CR2 r/w |
|
|
4632
|
-
CR3 r/w |
|
|
4633
|
-
CRM r/w |
|
|
4634
|
-
CRW r/w |
|
|
4635
|
-
CS1 r/w |
|
|
4636
|
-
CSV r |
|
|
4637
|
-
CUR r |
|
|
4638
|
-
CZI r |
|
|
4639
|
-
DCM r |
|
|
4640
|
-
DCP r/w |
|
|
4641
|
-
DCR r |
|
|
4642
|
-
DFONT r |
|
|
4643
|
-
DIVX r |
|
|
4644
|
-
DJVU r |
|
|
4645
|
-
DLL r |
|
|
4646
|
-
DNG r/w |
|
|
4647
|
-
DOC r |
|
|
4648
|
-
DOCX r |
|
|
4608
|
+
360 r/w | DR4 r/w/c | JNG r/w | ODP r | RSRC r
|
|
4609
|
+
3FR r | DSS r | JP2 r/w | ODS r | RTF r
|
|
4610
|
+
3G2 r/w | DV r | JPEG r/w | ODT r | RW2 r/w
|
|
4611
|
+
3GP r/w | DVB r/w | JSON r | OFR r | RWL r/w
|
|
4612
|
+
A r | DVR-MS r | JXL r | OGG r | RWZ r
|
|
4613
|
+
AA r | DYLIB r | K25 r | OGV r | RM r
|
|
4614
|
+
AAE r | EIP r | KDC r | ONP r | SEQ r
|
|
4615
|
+
AAX r/w | EPS r/w | KEY r | OPUS r | SKETCH r
|
|
4616
|
+
ACR r | EPUB r | LA r | ORF r/w | SO r
|
|
4617
|
+
AFM r | ERF r/w | LFP r | ORI r/w | SR2 r/w
|
|
4618
|
+
AI r/w | EXE r | LIF r | OTF r | SRF r
|
|
4619
|
+
AIFF r | EXIF r/w/c | LNK r | PAC r | SRW r/w
|
|
4620
|
+
APE r | EXR r | LRV r/w | PAGES r | SVG r
|
|
4621
|
+
ARQ r/w | EXV r/w/c | M2TS r | PBM r/w | SWF r
|
|
4622
|
+
ARW r/w | F4A/V r/w | M4A/V r/w | PCD r | THM r/w
|
|
4623
|
+
ASF r | FFF r/w | MACOS r | PCX r | TIFF r/w
|
|
4624
|
+
AVI r | FITS r | MAX r | PDB r | TORRENT r
|
|
4625
|
+
AVIF r/w | FLA r | MEF r/w | PDF r/w | TTC r
|
|
4626
|
+
AZW r | FLAC r | MIE r/w/c | PEF r/w | TTF r
|
|
4627
|
+
BMP r | FLIF r/w | MIFF r | PFA r | TXT r
|
|
4628
|
+
BPG r | FLV r | MKA r | PFB r | VCF r
|
|
4629
|
+
BTF r | FPF r | MKS r | PFM r | VNT r
|
|
4630
|
+
CHM r | FPX r | MKV r | PGF r | VRD r/w/c
|
|
4631
|
+
COS r | GIF r/w | MNG r/w | PGM r/w | VSD r
|
|
4632
|
+
CR2 r/w | GPR r/w | MOBI r | PLIST r | WAV r
|
|
4633
|
+
CR3 r/w | GZ r | MODD r | PICT r | WDP r/w
|
|
4634
|
+
CRM r/w | HDP r/w | MOI r | PMP r | WEBP r/w
|
|
4635
|
+
CRW r/w | HDR r | MOS r/w | PNG r/w | WEBM r
|
|
4636
|
+
CS1 r/w | HEIC r/w | MOV r/w | PPM r/w | WMA r
|
|
4637
|
+
CSV r | HEIF r/w | MP3 r | PPT r | WMV r
|
|
4638
|
+
CUR r | HTML r | MP4 r/w | PPTX r | WPG r
|
|
4639
|
+
CZI r | ICC r/w/c | MPC r | PS r/w | WTV r
|
|
4640
|
+
DCM r | ICO r | MPG r | PSB r/w | WV r
|
|
4641
|
+
DCP r/w | ICS r | MPO r/w | PSD r/w | X3F r/w
|
|
4642
|
+
DCR r | IDML r | MQV r/w | PSP r | XCF r
|
|
4643
|
+
DFONT r | IIQ r/w | MRC r | QTIF r/w | XLS r
|
|
4644
|
+
DIVX r | IND r/w | MRW r/w | R3D r | XLSX r
|
|
4645
|
+
DJVU r | INSP r/w | MXF r | RA r | XMP r/w/c
|
|
4646
|
+
DLL r | INSV r | NEF r/w | RAF r/w | ZIP r
|
|
4647
|
+
DNG r/w | INX r | NKSC r/w | RAM r |
|
|
4648
|
+
DOC r | ISO r | NRW r/w | RAR r |
|
|
4649
|
+
DOCX r | ITC r | NUMBERS r | RAW r/w |
|
|
4650
|
+
DPX r | J2C r | O r | RIFF r |
|
|
4649
4651
|
|
|
4650
4652
|
Meta Information
|
|
4651
4653
|
----------------------+----------------------+---------------------
|
|
@@ -5555,7 +5557,7 @@ with this command:
|
|
|
5555
5557
|
|
|
5556
5558
|
produces output like this:
|
|
5557
5559
|
|
|
5558
|
-
-- Generated by ExifTool 12.
|
|
5560
|
+
-- Generated by ExifTool 12.62 --
|
|
5559
5561
|
File: a.jpg - 2003:10:31 15:44:19
|
|
5560
5562
|
(f/5.6, 1/60s, ISO 100)
|
|
5561
5563
|
File: b.jpg - 2006:05:23 11:57:38
|
|
@@ -6563,17 +6565,17 @@ tags from different files to be compared and combined using the B<-if> and
|
|
|
6563
6565
|
B<-p> options. Tags from alternate files are accessed via the corresponding
|
|
6564
6566
|
family 8 group name (eg. C<File1:TAG> for the B<-file1> option, C<File2:TAG>
|
|
6565
6567
|
for B<-file2>, etc). I<ALTFILE> may contain filename formatting codes like
|
|
6566
|
-
the B<-w> option (%d, %f, etc)
|
|
6567
|
-
in the same way as the B<-p> option (so
|
|
6568
|
-
name must be doubled, eg.
|
|
6569
|
-
|
|
6570
|
-
|
|
6568
|
+
the B<-w> option (%d, %f, etc), and/or tag names with a leading C<$> symbol
|
|
6569
|
+
to access tags from the source file in the same way as the B<-p> option (so
|
|
6570
|
+
any other dollar symbol in the file name must be doubled, eg.
|
|
6571
|
+
C<money$$.jpg>). For example, assuming that the OriginalFileName tag has
|
|
6572
|
+
been set in the edited file, a command to copy Rights from the original file
|
|
6573
|
+
could look like this:
|
|
6571
6574
|
|
|
6572
6575
|
exiftool -file1 '$originalfilename' '-rights<file1:rights' edited.jpg
|
|
6573
6576
|
|
|
6574
|
-
|
|
6575
|
-
|
|
6576
|
-
sorted) B<-fileNUM> options (including Composite tags).
|
|
6577
|
+
Composite tags may access tags from alternate files using the appropriate
|
|
6578
|
+
(case-sensitive) family 8 group name.
|
|
6577
6579
|
|
|
6578
6580
|
=item B<-list_dir>
|
|
6579
6581
|
|
|
@@ -582,10 +582,10 @@ number of available PDF tags. See
|
|
|
582
582
|
L<http://www.adobe.com/devnet/pdf/pdf_reference.html> for the official PDF
|
|
583
583
|
specification.
|
|
584
584
|
|
|
585
|
-
ExifTool supports reading and writing PDF documents up to version
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
password-protected PDF files.
|
|
585
|
+
ExifTool supports reading and writing PDF documents up to version 2.0,
|
|
586
|
+
including support for RC4, AES-128 and AES-256 encryption. A
|
|
587
|
+
L<Password|../ExifTool.html#Password> option is provided to allow processing
|
|
588
|
+
of password-protected PDF files.
|
|
589
589
|
|
|
590
590
|
ExifTool may be used to write native PDF and XMP metadata to PDF files. It
|
|
591
591
|
uses an incremental update technique that has the advantages of being both
|
|
@@ -21,7 +21,7 @@ use Image::ExifTool qw(:DataAccess :Utils);
|
|
|
21
21
|
use Image::ExifTool::Exif;
|
|
22
22
|
use Image::ExifTool::ASF; # for GetGUID()
|
|
23
23
|
|
|
24
|
-
$VERSION = '1.
|
|
24
|
+
$VERSION = '1.45';
|
|
25
25
|
|
|
26
26
|
sub ProcessFPX($$);
|
|
27
27
|
sub ProcessFPXR($$$);
|
|
@@ -1539,6 +1539,7 @@ sub ReadFPXValue($$$$$;$$)
|
|
|
1539
1539
|
}
|
|
1540
1540
|
$_[2] = $valPos; # return updated value position
|
|
1541
1541
|
|
|
1542
|
+
push @vals, '' if $type eq 0; # (VT_EMPTY)
|
|
1542
1543
|
if (wantarray) {
|
|
1543
1544
|
return @vals;
|
|
1544
1545
|
} elsif (@vals > 1) {
|
|
@@ -2393,8 +2393,8 @@ This module is loaded automatically by Image::ExifTool when required.
|
|
|
2393
2393
|
This code reads meta information from PDF (Adobe Portable Document Format)
|
|
2394
2394
|
files. It supports object streams introduced in PDF-1.5 but only with a
|
|
2395
2395
|
limited set of Filter and Predictor algorithms, however all standard
|
|
2396
|
-
encryption methods through PDF-
|
|
2397
|
-
|
|
2396
|
+
encryption methods through PDF-2.0 are supported, including AESV2 (AES-128)
|
|
2397
|
+
and AESV3 (AES-256).
|
|
2398
2398
|
|
|
2399
2399
|
=head1 AUTHOR
|
|
2400
2400
|
|
|
@@ -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.85';
|
|
51
51
|
|
|
52
52
|
sub ProcessMOV($$;$);
|
|
53
53
|
sub ProcessKeys($$$);
|
|
@@ -470,6 +470,9 @@ my %eeBox2 = (
|
|
|
470
470
|
vide => { avcC => 'stsd' }, # (parses H264 video stream)
|
|
471
471
|
);
|
|
472
472
|
|
|
473
|
+
# image types in AVIF and HEIC files
|
|
474
|
+
my %isImageData = ( av01 => 1, avc1 => 1, hvc1 => 1, lhv1 => 1, hvt1 => 1 );
|
|
475
|
+
|
|
473
476
|
# QuickTime atoms
|
|
474
477
|
%Image::ExifTool::QuickTime::Main = (
|
|
475
478
|
PROCESS_PROC => \&ProcessMOV,
|
|
@@ -2884,7 +2887,7 @@ my %eeBox2 = (
|
|
|
2884
2887
|
7 => 'SMPTE 240',
|
|
2885
2888
|
8 => 'Generic film (color filters using illuminant C)',
|
|
2886
2889
|
9 => 'BT.2020, BT.2100',
|
|
2887
|
-
10 => 'SMPTE 428 (CIE
|
|
2890
|
+
10 => 'SMPTE 428 (CIE 1931 XYZ)', #forum14766
|
|
2888
2891
|
11 => 'SMPTE RP 431-2',
|
|
2889
2892
|
12 => 'SMPTE EG 432-1',
|
|
2890
2893
|
22 => 'EBU Tech. 3213-E',
|
|
@@ -8784,15 +8787,15 @@ sub HandleItemInfo($)
|
|
|
8784
8787
|
$et->VPrint(0, "$$et{INDENT} [snip $snip bytes]\n") if $snip;
|
|
8785
8788
|
}
|
|
8786
8789
|
}
|
|
8787
|
-
# do MD5 checksum of AVIF "av01" image data
|
|
8788
|
-
if ($type
|
|
8790
|
+
# do MD5 checksum of AVIF "av01" and HEIC image data
|
|
8791
|
+
if ($isImageData{$type} and $$et{ImageDataMD5}) {
|
|
8789
8792
|
my $md5 = $$et{ImageDataMD5};
|
|
8790
8793
|
my $tot = 0;
|
|
8791
8794
|
foreach $extent (@{$$item{Extents}}) {
|
|
8792
|
-
$raf->Seek($$extent[1] + $base, 0) or $et->Warn(
|
|
8793
|
-
$tot += $et->ImageDataMD5($raf, $$extent[2],
|
|
8795
|
+
$raf->Seek($$extent[1] + $base, 0) or $et->Warn("Seek error in $type image data"), last;
|
|
8796
|
+
$tot += $et->ImageDataMD5($raf, $$extent[2], "$type image", 1);
|
|
8794
8797
|
}
|
|
8795
|
-
$et->VPrint(0, "$$et{INDENT}(ImageDataMD5: $tot bytes of
|
|
8798
|
+
$et->VPrint(0, "$$et{INDENT}(ImageDataMD5: $tot bytes of $type data)\n") if $tot;
|
|
8796
8799
|
}
|
|
8797
8800
|
next unless $name;
|
|
8798
8801
|
# assemble the data for this item
|
|
@@ -2498,6 +2498,9 @@ my %tagLookup = (
|
|
|
2498
2498
|
'energysavingmode' => { 238 => 0x648, 239 => 0x678 },
|
|
2499
2499
|
'engineer' => { 521 => 'engineer' },
|
|
2500
2500
|
'enhancedarktones' => { 280 => 0x8 },
|
|
2501
|
+
'enhancedenoisealreadyapplied' => { 491 => 'EnhanceDenoiseAlreadyApplied' },
|
|
2502
|
+
'enhancedenoiselumaamount' => { 491 => 'EnhanceDenoiseLumaAmount' },
|
|
2503
|
+
'enhancedenoiseversion' => { 491 => 'EnhanceDenoiseVersion' },
|
|
2501
2504
|
'enhancedetailsalreadyapplied' => { 491 => 'EnhanceDetailsAlreadyApplied' },
|
|
2502
2505
|
'enhancedetailsversion' => { 491 => 'EnhanceDetailsVersion' },
|
|
2503
2506
|
'enhancement' => { 112 => 0x16, 113 => 0x3016 },
|
|
@@ -9489,6 +9492,7 @@ my %tagExists = (
|
|
|
9489
9492
|
'imagefullheight' => 1,
|
|
9490
9493
|
'imagefullwidth' => 1,
|
|
9491
9494
|
'imageheader' => 1,
|
|
9495
|
+
'imageheightinches' => 1,
|
|
9492
9496
|
'imagehorizonpixelpack' => 1,
|
|
9493
9497
|
'imageid' => 1,
|
|
9494
9498
|
'imageinfo' => 1,
|
|
@@ -9522,6 +9526,7 @@ my %tagExists = (
|
|
|
9522
9526
|
'imagetoolbar' => 1,
|
|
9523
9527
|
'imageuidlist' => 1,
|
|
9524
9528
|
'imageversion' => 1,
|
|
9529
|
+
'imagewidthinches' => 1,
|
|
9525
9530
|
'imageworkstationmake' => 1,
|
|
9526
9531
|
'imagingdata' => 1,
|
|
9527
9532
|
'imdb' => 1,
|
|
@@ -11103,6 +11108,7 @@ my %tagExists = (
|
|
|
11103
11108
|
'rafdata' => 1,
|
|
11104
11109
|
'rafversion' => 1,
|
|
11105
11110
|
'rangeimagelocalset' => 1,
|
|
11111
|
+
'rarversion' => 1,
|
|
11106
11112
|
'rasterpadding' => 1,
|
|
11107
11113
|
'rate' => 1,
|
|
11108
11114
|
'rated' => 1,
|
|
@@ -11192,6 +11198,8 @@ my %tagExists = (
|
|
|
11192
11198
|
'recordingtimeyear' => 1,
|
|
11193
11199
|
'recordingtimeyearmonth' => 1,
|
|
11194
11200
|
'recordingtimeyearmonthday' => 1,
|
|
11201
|
+
'records' => 1,
|
|
11202
|
+
'recordsv2' => 1,
|
|
11195
11203
|
'rect' => 1,
|
|
11196
11204
|
'rectangleofinterest' => 1,
|
|
11197
11205
|
'red1header' => 1,
|
|
@@ -12468,6 +12476,7 @@ my %tagExists = (
|
|
|
12468
12476
|
'worldtime' => 1,
|
|
12469
12477
|
'worldtocamera' => 1,
|
|
12470
12478
|
'worldtondc' => 1,
|
|
12479
|
+
'wpgversion' => 1,
|
|
12471
12480
|
'wrapmodes' => 1,
|
|
12472
12481
|
'writername' => 1,
|
|
12473
12482
|
'writers' => 1,
|
|
@@ -12,7 +12,7 @@ meta information extracted from or written to a file.
|
|
|
12
12
|
=head1 TAG TABLES
|
|
13
13
|
|
|
14
14
|
The tables listed below give the names of all tags recognized by ExifTool.
|
|
15
|
-
They contain a total of
|
|
15
|
+
They contain a total of 26407 tags, with 16869 unique tag names.
|
|
16
16
|
|
|
17
17
|
B<Tag ID>, B<Index#> or B<Sequence> is given in the first column of each
|
|
18
18
|
table. A B<Tag ID> is the computer-readable equivalent of a tag name, and
|
|
@@ -1453,6 +1453,9 @@ These tags belong to the ExifTool XMP-aux family 1 group.
|
|
|
1453
1453
|
-------- --------
|
|
1454
1454
|
ApproximateFocusDistance rational
|
|
1455
1455
|
DistortionCorrectionAlreadyApplied boolean
|
|
1456
|
+
EnhanceDenoiseAlreadyApplied boolean
|
|
1457
|
+
EnhanceDenoiseLumaAmount string
|
|
1458
|
+
EnhanceDenoiseVersion string
|
|
1456
1459
|
EnhanceDetailsAlreadyApplied boolean
|
|
1457
1460
|
EnhanceDetailsVersion string
|
|
1458
1461
|
EnhanceSuperResolutionAlreadyApplied boolean
|
|
@@ -26022,6 +26025,18 @@ Graphics) images. See L<http://bellard.org/bpg/> for the specification.
|
|
|
26022
26025
|
0x0004 ThumbnailBPG no
|
|
26023
26026
|
0x0005 AnimationControl? no
|
|
26024
26027
|
|
|
26028
|
+
=head2 WPG Tags
|
|
26029
|
+
|
|
26030
|
+
Tags extracted from WordPerfect Graphics (WPG) images.
|
|
26031
|
+
|
|
26032
|
+
Tag Name Writable
|
|
26033
|
+
-------- --------
|
|
26034
|
+
ImageHeightInches no
|
|
26035
|
+
ImageWidthInches no
|
|
26036
|
+
Records no+
|
|
26037
|
+
RecordsV2 no+
|
|
26038
|
+
WPGVersion no
|
|
26039
|
+
|
|
26025
26040
|
=head2 ICO Tags
|
|
26026
26041
|
|
|
26027
26042
|
Information extracted from Windows ICO (icon) and CUR (cursor) files.
|
|
@@ -27199,10 +27214,10 @@ number of available PDF tags. See
|
|
|
27199
27214
|
L<http://www.adobe.com/devnet/pdf/pdf_reference.html> for the official PDF
|
|
27200
27215
|
specification.
|
|
27201
27216
|
|
|
27202
|
-
ExifTool supports reading and writing PDF documents up to version
|
|
27203
|
-
|
|
27204
|
-
|
|
27205
|
-
password-protected PDF files.
|
|
27217
|
+
ExifTool supports reading and writing PDF documents up to version 2.0,
|
|
27218
|
+
including support for RC4, AES-128 and AES-256 encryption. A
|
|
27219
|
+
Password option is provided to allow processing
|
|
27220
|
+
of password-protected PDF files.
|
|
27206
27221
|
|
|
27207
27222
|
ExifTool may be used to write native PDF and XMP metadata to PDF files. It
|
|
27208
27223
|
uses an incremental update technique that has the advantages of being both
|
|
@@ -37723,6 +37738,19 @@ These tags are extracted from RAR archive files.
|
|
|
37723
37738
|
18 PackingMethod no
|
|
37724
37739
|
25 ArchivedFileName no
|
|
37725
37740
|
|
|
37741
|
+
=head3 ZIP RAR5 Tags
|
|
37742
|
+
|
|
37743
|
+
These tags are extracted from RAR v5 archive files.
|
|
37744
|
+
|
|
37745
|
+
Tag Name Writable
|
|
37746
|
+
-------- --------
|
|
37747
|
+
ArchivedFileName no
|
|
37748
|
+
CompressedSize no
|
|
37749
|
+
ModifyDate no
|
|
37750
|
+
OperatingSystem no
|
|
37751
|
+
RARVersion no
|
|
37752
|
+
UncompressedSize no
|
|
37753
|
+
|
|
37726
37754
|
=head2 RTF Tags
|
|
37727
37755
|
|
|
37728
37756
|
This table lists standard tags of the RTF information group, but ExifTool
|