exiftool_vendored 12.61.0 → 12.62.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e42c8004f68374320f592b26a0d8ceaa0d44e09331c9be1f66986d2fe94ad7d0
4
- data.tar.gz: eab311e1d2c27c522ed174ae054adc3d44e31c91992fdacbb6c6fb02e965da20
3
+ metadata.gz: b9425d3689f85ae893c11f1e1ebb63d8392eefe696b6ff685a35536da9b2b79c
4
+ data.tar.gz: a343f14b8c717420458456579562c12d399c0687865a6e54ea5df8945b096e66
5
5
  SHA512:
6
- metadata.gz: 27e28a24360bd3651900c9db4b30ddff5517d777a8d6fa9723b80e758b71947697ca80e2149107be7ed6aac3c8b9ae37364d16126ddb2ee1a6c8aeaf8034e11a
7
- data.tar.gz: 4845253fe922519e454c45d5e35e89b75a242ddf21183de8a6f5a32417d5cf814280161e46d2c722934175b4293f83ee1b0a2878bc6ea1c6fbd139cd105a6b25
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
@@ -47,5 +47,5 @@
47
47
  }
48
48
  },
49
49
  "release_status" : "stable",
50
- "version" : "12.61"
50
+ "version" : "12.62"
51
51
  }
data/bin/META.yml CHANGED
@@ -28,4 +28,4 @@ recommends:
28
28
  Time::HiRes: 0
29
29
  requires:
30
30
  perl: 5.004
31
- version: 12.61
31
+ version: 12.62
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 | DPX r | ITC r | NRW r/w | RAM r
18
- 3FR r | DR4 r/w/c | J2C r | NUMBERS r | RAR r
19
- 3G2 r/w | DSS r | JNG r/w | O r | RAW r/w
20
- 3GP r/w | DV r | JP2 r/w | ODP r | RIFF r
21
- A r | DVB r/w | JPEG r/w | ODS r | RSRC r
22
- AA r | DVR-MS r | JSON r | ODT r | RTF r
23
- AAE r | DYLIB r | JXL r | OFR r | RW2 r/w
24
- AAX r/w | EIP r | K25 r | OGG r | RWL r/w
25
- ACR r | EPS r/w | KDC r | OGV r | RWZ r
26
- AFM r | EPUB r | KEY r | ONP r | RM r
27
- AI r/w | ERF r/w | LA r | OPUS r | SEQ r
28
- AIFF r | EXE r | LFP r | ORF r/w | SKETCH r
29
- APE r | EXIF r/w/c | LIF r | ORI r/w | SO r
30
- ARQ r/w | EXR r | LNK r | OTF r | SR2 r/w
31
- ARW r/w | EXV r/w/c | LRV r/w | PAC r | SRF r
32
- ASF r | F4A/V r/w | M2TS r | PAGES r | SRW r/w
33
- AVI r | FFF r/w | M4A/V r/w | PBM r/w | SVG r
34
- AVIF r/w | FITS r | MACOS r | PCD r | SWF r
35
- AZW r | FLA r | MAX r | PCX r | THM r/w
36
- BMP r | FLAC r | MEF r/w | PDB r | TIFF r/w
37
- BPG r | FLIF r/w | MIE r/w/c | PDF r/w | TORRENT r
38
- BTF r | FLV r | MIFF r | PEF r/w | TTC r
39
- CHM r | FPF r | MKA r | PFA r | TTF r
40
- COS r | FPX r | MKS r | PFB r | TXT r
41
- CR2 r/w | GIF r/w | MKV r | PFM r | VCF r
42
- CR3 r/w | GPR r/w | MNG r/w | PGF r | VNT r
43
- CRM r/w | GZ r | MOBI r | PGM r/w | VRD r/w/c
44
- CRW r/w | HDP r/w | MODD r | PLIST r | VSD r
45
- CS1 r/w | HDR r | MOI r | PICT r | WAV r
46
- CSV r | HEIC r/w | MOS r/w | PMP r | WDP r/w
47
- CUR r | HEIF r/w | MOV r/w | PNG r/w | WEBP r/w
48
- CZI r | HTML r | MP3 r | PPM r/w | WEBM r
49
- DCM r | ICC r/w/c | MP4 r/w | PPT r | WMA r
50
- DCP r/w | ICO r | MPC r | PPTX r | WMV r
51
- DCR r | ICS r | MPG r | PS r/w | WTV r
52
- DFONT r | IDML r | MPO r/w | PSB r/w | WV r
53
- DIVX r | IIQ r/w | MQV r/w | PSD r/w | X3F r/w
54
- DJVU r | IND r/w | MRC r | PSP r | XCF r
55
- DLL r | INSP r/w | MRW r/w | QTIF r/w | XLS r
56
- DNG r/w | INSV r | MXF r | R3D r | XLSX r
57
- DOC r | INX r | NEF r/w | RA r | XMP r/w/c
58
- DOCX r | ISO r | NKSC r/w | RAF r/w | ZIP 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.61.tar.gz | tar -xf -
111
- cd Image-ExifTool-12.61
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.61';
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
- warn $evalWarning;
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
- unless (CanWrite($type)) {
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 | DPX r | ITC r | NRW r/w | RAM r
4608
- 3FR r | DR4 r/w/c | J2C r | NUMBERS r | RAR r
4609
- 3G2 r/w | DSS r | JNG r/w | O r | RAW r/w
4610
- 3GP r/w | DV r | JP2 r/w | ODP r | RIFF r
4611
- A r | DVB r/w | JPEG r/w | ODS r | RSRC r
4612
- AA r | DVR-MS r | JSON r | ODT r | RTF r
4613
- AAE r | DYLIB r | JXL r | OFR r | RW2 r/w
4614
- AAX r/w | EIP r | K25 r | OGG r | RWL r/w
4615
- ACR r | EPS r/w | KDC r | OGV r | RWZ r
4616
- AFM r | EPUB r | KEY r | ONP r | RM r
4617
- AI r/w | ERF r/w | LA r | OPUS r | SEQ r
4618
- AIFF r | EXE r | LFP r | ORF r/w | SKETCH r
4619
- APE r | EXIF r/w/c | LIF r | ORI r/w | SO r
4620
- ARQ r/w | EXR r | LNK r | OTF r | SR2 r/w
4621
- ARW r/w | EXV r/w/c | LRV r/w | PAC r | SRF r
4622
- ASF r | F4A/V r/w | M2TS r | PAGES r | SRW r/w
4623
- AVI r | FFF r/w | M4A/V r/w | PBM r/w | SVG r
4624
- AVIF r/w | FITS r | MACOS r | PCD r | SWF r
4625
- AZW r | FLA r | MAX r | PCX r | THM r/w
4626
- BMP r | FLAC r | MEF r/w | PDB r | TIFF r/w
4627
- BPG r | FLIF r/w | MIE r/w/c | PDF r/w | TORRENT r
4628
- BTF r | FLV r | MIFF r | PEF r/w | TTC r
4629
- CHM r | FPF r | MKA r | PFA r | TTF r
4630
- COS r | FPX r | MKS r | PFB r | TXT r
4631
- CR2 r/w | GIF r/w | MKV r | PFM r | VCF r
4632
- CR3 r/w | GPR r/w | MNG r/w | PGF r | VNT r
4633
- CRM r/w | GZ r | MOBI r | PGM r/w | VRD r/w/c
4634
- CRW r/w | HDP r/w | MODD r | PLIST r | VSD r
4635
- CS1 r/w | HDR r | MOI r | PICT r | WAV r
4636
- CSV r | HEIC r/w | MOS r/w | PMP r | WDP r/w
4637
- CUR r | HEIF r/w | MOV r/w | PNG r/w | WEBP r/w
4638
- CZI r | HTML r | MP3 r | PPM r/w | WEBM r
4639
- DCM r | ICC r/w/c | MP4 r/w | PPT r | WMA r
4640
- DCP r/w | ICO r | MPC r | PPTX r | WMV r
4641
- DCR r | ICS r | MPG r | PS r/w | WTV r
4642
- DFONT r | IDML r | MPO r/w | PSB r/w | WV r
4643
- DIVX r | IIQ r/w | MQV r/w | PSD r/w | X3F r/w
4644
- DJVU r | IND r/w | MRC r | PSP r | XCF r
4645
- DLL r | INSP r/w | MRW r/w | QTIF r/w | XLS r
4646
- DNG r/w | INSV r | MXF r | R3D r | XLSX r
4647
- DOC r | INX r | NEF r/w | RA r | XMP r/w/c
4648
- DOCX r | ISO r | NKSC r/w | RAF r/w | ZIP 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.61 --
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) , and/or tag names with a leading C<$> symbol
6567
- in the same way as the B<-p> option (so any other dollar symbol in the file
6568
- name must be doubled, eg. C<money$$.jpg>). For example, assuming that the
6569
- OriginalFileName tag has been set in the edited file, a command to copy
6570
- Rights from the original file could look like this:
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
- Tag names in a B<-fileNUM> argument may access any tag from the original
6575
- file except for Composite tags, and any tag from earlier (alphabetically
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
 
@@ -358,4 +358,3 @@ L<Image::ExifTool::TagNames/BMP Tags>,
358
358
  L<Image::ExifTool(3pm)|Image::ExifTool>
359
359
 
360
360
  =cut
361
-
@@ -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 1.7
586
- extension level 3, including support for RC4, AES-128 and AES-256
587
- encryption. A L<Password|../ExifTool.html#Password> option is provided to allow processing of
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.44';
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-1.7 extension level 3 are supported,
2397
- including AESV2 (AES-128) and AESV3 (AES-256).
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.84';
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 1921 XYZ)',
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 eq 'av01' and $$et{ImageDataMD5}) {
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('Seek error in av01 image data'), last;
8793
- $tot += $et->ImageDataMD5($raf, $$extent[2], 'av01 image', 1);
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 av01 data)\n") if $tot;
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 26393 tags, with 16860 unique tag names.
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 1.7
27203
- extension level 3, including support for RC4, AES-128 and AES-256
27204
- encryption. A Password option is provided to allow processing of
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