exiftool_vendored 13.22.0 → 13.25.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 +34 -1
- data/bin/MANIFEST +5 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +46 -46
- data/bin/exiftool +53 -53
- data/bin/lib/Image/ExifTool/Apple.pm +12 -2
- data/bin/lib/Image/ExifTool/BuildTagLookup.pm +2 -2
- data/bin/lib/Image/ExifTool/DarwinCore.pm +22 -11
- data/bin/lib/Image/ExifTool/GPS.pm +3 -3
- data/bin/lib/Image/ExifTool/Geolocation.dat +0 -0
- data/bin/lib/Image/ExifTool/JPEG.pm +4 -0
- data/bin/lib/Image/ExifTool/Nikon.pm +142 -746
- data/bin/lib/Image/ExifTool/PCAP.pm +462 -0
- data/bin/lib/Image/ExifTool/PLIST.pm +2 -2
- data/bin/lib/Image/ExifTool/Plot.pm +3 -2
- data/bin/lib/Image/ExifTool/Protobuf.pm +3 -1
- data/bin/lib/Image/ExifTool/Qualcomm.pm +78 -1
- data/bin/lib/Image/ExifTool/QuickTime.pm +12 -4
- data/bin/lib/Image/ExifTool/Sony.pm +18 -5
- data/bin/lib/Image/ExifTool/TagLookup.pm +165 -148
- data/bin/lib/Image/ExifTool/TagNames.pod +132 -219
- data/bin/lib/Image/ExifTool/Validate.pm +4 -4
- data/bin/lib/Image/ExifTool/WriteExif.pl +4 -4
- data/bin/lib/Image/ExifTool/WriteQuickTime.pl +10 -3
- data/bin/lib/Image/ExifTool/Writer.pl +9 -9
- data/bin/lib/Image/ExifTool/XMP.pm +17 -3
- data/bin/lib/Image/ExifTool.pm +36 -15
- data/bin/lib/Image/ExifTool.pod +52 -86
- data/bin/perl-Image-ExifTool.spec +45 -45
- 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: b32fb55b43516b86b41460ed80654d3214bcee87257d0a90c614c40bb29fa16f
|
4
|
+
data.tar.gz: 02d0ebd73cd108f256854da2ae9994f0e33fe2db0c84a3af5b76c6510d0d3e10
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 44f7894cac459290dbf545321f068ae903b2212abc5cd88ef399949bfa667511e01cbc9049b6329301a268a7daf4b4a5bb05c66625655010356b9bc895d23954
|
7
|
+
data.tar.gz: 74d8a93399c703661ad4ed05d7f3a4748f994950be72be4b1237cb033a8c5b494ba9ce93a0bd79f9acae788afd74c8149e4ae3250b85d66d9bff18dd6209ec99
|
data/bin/Changes
CHANGED
@@ -4,9 +4,42 @@ ExifTool Version History
|
|
4
4
|
|
5
5
|
RSS feed: https://exiftool.org/rss.xml
|
6
6
|
|
7
|
-
Note: The most recent production release is Version 13.
|
7
|
+
Note: The most recent production release is Version 13.25. (Other versions are
|
8
8
|
considered development releases, and are not uploaded to MetaCPAN.)
|
9
9
|
|
10
|
+
Mar. 11, 2025 - Version 13.25 (production release)
|
11
|
+
|
12
|
+
- IMPORTANT: Fixed issue which could corrupt HEIC images from newer iPhones
|
13
|
+
when writing QuickTime:Rotation
|
14
|
+
- Decode more PLIST information from HEIC images
|
15
|
+
- Updated Geolocation databases from current geonames.org files
|
16
|
+
- Updated DarwinCore for the 2023 specification (thanks Herb)
|
17
|
+
- API Changes:
|
18
|
+
- Added KeepUTCTime option
|
19
|
+
|
20
|
+
Mar. 7, 2025 - Version 13.24
|
21
|
+
|
22
|
+
- Changed -listf, -listr and -listwf options to print descriptions when either
|
23
|
+
-v or -l is added (previously only -l did this)
|
24
|
+
- Patched to avoid failed PCAP test due to differing time zones (github #319)
|
25
|
+
|
26
|
+
Mar. 7, 2025 - Version 13.23
|
27
|
+
|
28
|
+
- Added read support for CAP, PCAP and PACPNG files (github #318)
|
29
|
+
- Added a number of new Sony LensType2 values (thanks Jos Roost)
|
30
|
+
- Added the 2 new GPSAltitudeRef values defined by EXIF 3.0
|
31
|
+
- Decode APP4 "Qualcomm Dual Camera Attributes" metadata
|
32
|
+
- EXIF X/YResolution, ResolutionUnit and FlashpixVersion are no longer treated
|
33
|
+
as mandatory tags (they were changed to optional in the EXIF 3.0 specification)
|
34
|
+
- Patched decoding of Nikon Z8 MenuSettings to accommodate changes in the data
|
35
|
+
structure as of firmware version 2.1
|
36
|
+
- Patched to avoid bug in Perl v5.26.3 which could cause hang when reading
|
37
|
+
very large and corrupted XMP
|
38
|
+
- Patched -plot option to avoid bug in Google Chrome SVG marker rendering
|
39
|
+
- API Changes:
|
40
|
+
- Fixed documentation for LargeFileSupport option to reflect current
|
41
|
+
default
|
42
|
+
|
10
43
|
Mar. 1, 2025 - Version 13.22
|
11
44
|
|
12
45
|
- Improvements and additions to the new plot feature
|
data/bin/MANIFEST
CHANGED
@@ -137,6 +137,7 @@ html/TagNames/Olympus.html
|
|
137
137
|
html/TagNames/OpenEXR.html
|
138
138
|
html/TagNames/Opus.html
|
139
139
|
html/TagNames/Other.html
|
140
|
+
html/TagNames/PCAP.html
|
140
141
|
html/TagNames/PCX.html
|
141
142
|
html/TagNames/PDF.html
|
142
143
|
html/TagNames/PGF.html
|
@@ -387,6 +388,7 @@ lib/Image/ExifTool/Olympus.pm
|
|
387
388
|
lib/Image/ExifTool/OpenEXR.pm
|
388
389
|
lib/Image/ExifTool/Opus.pm
|
389
390
|
lib/Image/ExifTool/Other.pm
|
391
|
+
lib/Image/ExifTool/PCAP.pm
|
390
392
|
lib/Image/ExifTool/PCX.pm
|
391
393
|
lib/Image/ExifTool/PDF.pm
|
392
394
|
lib/Image/ExifTool/PGF.pm
|
@@ -758,6 +760,8 @@ t/OpenEXR.t
|
|
758
760
|
t/OpenEXR_2.out
|
759
761
|
t/Opus.t
|
760
762
|
t/Opus_2.out
|
763
|
+
t/PCAP.t
|
764
|
+
t/PCAP_2.out
|
761
765
|
t/PCX.t
|
762
766
|
t/PCX_2.out
|
763
767
|
t/PDF.t
|
@@ -1131,6 +1135,7 @@ t/images/OlympusE1.jpg
|
|
1131
1135
|
t/images/OpenDoc.ods
|
1132
1136
|
t/images/OpenEXR.exr
|
1133
1137
|
t/images/Opus.opus
|
1138
|
+
t/images/PCAP.pcapng
|
1134
1139
|
t/images/PCX.pcx
|
1135
1140
|
t/images/PDF.pdf
|
1136
1141
|
t/images/PDF2.pdf
|
data/bin/META.json
CHANGED
data/bin/META.yml
CHANGED
data/bin/README
CHANGED
@@ -14,50 +14,50 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
14
14
|
|
15
15
|
File Types
|
16
16
|
------------+-------------+-------------+-------------+------------
|
17
|
-
360 r/w | DOCX r | ITC r | NUMBERS r |
|
18
|
-
3FR r | DPX r | J2C r | NXD r |
|
19
|
-
3G2 r/w | DR4 r/w/c | JNG r/w | O r |
|
20
|
-
3GP r/w | DSS r | JP2 r/w | ODP r |
|
21
|
-
7Z r | DV r | JPEG r/w | ODS r |
|
22
|
-
A r | DVB r/w | JSON r | ODT r |
|
23
|
-
AA r | DVR-MS r | JXL r/w | OFR r |
|
24
|
-
AAC r | DYLIB r | K25 r | OGG r |
|
25
|
-
AAE r | EIP r | KDC r | OGV r |
|
26
|
-
AAX r/w | EPS r/w | KEY r | ONP r |
|
27
|
-
ACR r | EPUB r | LA r | OPUS r |
|
28
|
-
AFM r | ERF r/w | LFP r | ORF r/w |
|
29
|
-
AI r/w | EXE r | LIF r | ORI r/w |
|
30
|
-
AIFF r | EXIF r/w/c | LNK r | OTF r |
|
31
|
-
APE r | EXR r | LRV r/w | PAC r |
|
32
|
-
ARQ r/w | EXV r/w/c | M2TS r | PAGES r |
|
33
|
-
ARW r/w | F4A/V r/w | M4A/V r/w | PBM r/w |
|
34
|
-
ASF r | FFF r/w | MACOS r |
|
35
|
-
AVI r | FITS r | MAX r |
|
36
|
-
AVIF r/w | FLA r | MEF r/w |
|
37
|
-
AZW r | FLAC r | MIE r/w/c |
|
38
|
-
BMP r | FLIF r/w | MIFF r |
|
39
|
-
BPG r | FLV r | MKA r |
|
40
|
-
BTF r | FPF r | MKS r |
|
41
|
-
C2PA r | FPX r | MKV r |
|
42
|
-
CHM r | GIF r/w | MNG r/w |
|
43
|
-
COS r | GLV r/w | MOBI r |
|
44
|
-
CR2 r/w | GPR r/w | MODD r |
|
45
|
-
CR3 r/w | GZ r | MOI r |
|
46
|
-
CRM r/w | HDP r/w | MOS r/w |
|
47
|
-
CRW r/w | HDR r | MOV r/w |
|
48
|
-
CS1 r/w | HEIC r/w | MP3 r |
|
49
|
-
CSV r | HEIF r/w | MP4 r/w |
|
50
|
-
CUR r | HTML r | MPC r |
|
51
|
-
CZI r | ICC r/w/c | MPG r |
|
52
|
-
DCM r | ICO r | MPO r/w |
|
53
|
-
DCP r/w | ICS r | MQV r/w |
|
54
|
-
DCR r | IDML r | MRC r |
|
55
|
-
DFONT r | IIQ r/w | MRW r/w |
|
56
|
-
DIVX r | IND r/w | MXF r |
|
57
|
-
DJVU r | INSP r/w | NEF r/w |
|
58
|
-
DLL r | INSV r | NKA r |
|
59
|
-
DNG r/w | INX r | NKSC r/w |
|
60
|
-
DOC r | ISO r | NRW r/w |
|
17
|
+
360 r/w | DOCX r | ITC r | NUMBERS r | RAM r
|
18
|
+
3FR r | DPX r | J2C r | NXD r | RAR r
|
19
|
+
3G2 r/w | DR4 r/w/c | JNG r/w | O r | RAW r/w
|
20
|
+
3GP r/w | DSS r | JP2 r/w | ODP r | RIFF r
|
21
|
+
7Z r | DV r | JPEG r/w | ODS r | RSRC r
|
22
|
+
A r | DVB r/w | JSON r | ODT r | RTF r
|
23
|
+
AA r | DVR-MS r | JXL r/w | OFR r | RW2 r/w
|
24
|
+
AAC r | DYLIB r | K25 r | OGG r | RWL r/w
|
25
|
+
AAE r | EIP r | KDC r | OGV r | RWZ r
|
26
|
+
AAX r/w | EPS r/w | KEY r | ONP r | RM r
|
27
|
+
ACR r | EPUB r | LA r | OPUS r | SEQ r
|
28
|
+
AFM r | ERF r/w | LFP r | ORF r/w | SKETCH r
|
29
|
+
AI r/w | EXE r | LIF r | ORI r/w | SO r
|
30
|
+
AIFF r | EXIF r/w/c | LNK r | OTF r | SR2 r/w
|
31
|
+
APE r | EXR r | LRV r/w | PAC r | SRF r
|
32
|
+
ARQ r/w | EXV r/w/c | M2TS r | PAGES r | SRW r/w
|
33
|
+
ARW r/w | F4A/V r/w | M4A/V r/w | PBM r/w | SVG r
|
34
|
+
ASF r | FFF r/w | MACOS r | PCAP r | SWF r
|
35
|
+
AVI r | FITS r | MAX r | PCAPNG r | THM r/w
|
36
|
+
AVIF r/w | FLA r | MEF r/w | PCD r | TIFF r/w
|
37
|
+
AZW r | FLAC r | MIE r/w/c | PCX r | TORRENT r
|
38
|
+
BMP r | FLIF r/w | MIFF r | PDB r | TTC r
|
39
|
+
BPG r | FLV r | MKA r | PDF r/w | TTF r
|
40
|
+
BTF r | FPF r | MKS r | PEF r/w | TXT r
|
41
|
+
C2PA r | FPX r | MKV r | PFA r | VCF r
|
42
|
+
CHM r | GIF r/w | MNG r/w | PFB r | VNT r
|
43
|
+
COS r | GLV r/w | MOBI r | PFM r | VRD r/w/c
|
44
|
+
CR2 r/w | GPR r/w | MODD r | PGF r | VSD r
|
45
|
+
CR3 r/w | GZ r | MOI r | PGM r/w | WAV r
|
46
|
+
CRM r/w | HDP r/w | MOS r/w | PLIST r | WDP r/w
|
47
|
+
CRW r/w | HDR r | MOV r/w | PICT r | WEBP r/w
|
48
|
+
CS1 r/w | HEIC r/w | MP3 r | PMP r | WEBM r
|
49
|
+
CSV r | HEIF r/w | MP4 r/w | PNG r/w | WMA r
|
50
|
+
CUR r | HTML r | MPC r | PPM r/w | WMV r
|
51
|
+
CZI r | ICC r/w/c | MPG r | PPT r | WPG r
|
52
|
+
DCM r | ICO r | MPO r/w | PPTX r | WTV r
|
53
|
+
DCP r/w | ICS r | MQV r/w | PS r/w | WV r
|
54
|
+
DCR r | IDML r | MRC r | PSB r/w | X3F r/w
|
55
|
+
DFONT r | IIQ r/w | MRW r/w | PSD r/w | XCF r
|
56
|
+
DIVX r | IND r/w | MXF r | PSP r | XISF r
|
57
|
+
DJVU r | INSP r/w | NEF r/w | QTIF r/w | XLS r
|
58
|
+
DLL r | INSV r | NKA r | R3D r | XLSX r
|
59
|
+
DNG r/w | INX r | NKSC r/w | RA r | XMP r/w/c
|
60
|
+
DOC r | ISO r | NRW r/w | RAF r/w | ZIP r
|
61
61
|
|
62
62
|
Meta Information
|
63
63
|
----------------------+----------------------+---------------------
|
@@ -109,8 +109,8 @@ your home directory, then you would type the following commands in a
|
|
109
109
|
terminal window to extract and run ExifTool:
|
110
110
|
|
111
111
|
cd ~/Desktop
|
112
|
-
gzip -dc Image-ExifTool-13.
|
113
|
-
cd Image-ExifTool-13.
|
112
|
+
gzip -dc Image-ExifTool-13.25.tar.gz | tar -xf -
|
113
|
+
cd Image-ExifTool-13.25
|
114
114
|
./exiftool t/images/ExifTool.jpg
|
115
115
|
|
116
116
|
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 = '13.
|
14
|
+
my $version = '13.25';
|
15
15
|
|
16
16
|
$^W = 1; # enable global warnings
|
17
17
|
|
@@ -4952,7 +4952,7 @@ sub PrintTagList($@)
|
|
4952
4952
|
my $msg = shift;
|
4953
4953
|
print $msg, ":\n" unless $quiet;
|
4954
4954
|
my $tag;
|
4955
|
-
if ($outFormat < 0 and $msg =~ /file extensions$/ and @_) {
|
4955
|
+
if (($outFormat < 0 or $verbose) and $msg =~ /file extensions$/ and @_) {
|
4956
4956
|
foreach $tag (@_) {
|
4957
4957
|
printf(" %-11s %s\n", $tag, GetFileType($tag, 1));
|
4958
4958
|
}
|
@@ -5055,50 +5055,50 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
5055
5055
|
|
5056
5056
|
File Types
|
5057
5057
|
------------+-------------+-------------+-------------+------------
|
5058
|
-
360 r/w | DOCX r | ITC r | NUMBERS r |
|
5059
|
-
3FR r | DPX r | J2C r | NXD r |
|
5060
|
-
3G2 r/w | DR4 r/w/c | JNG r/w | O r |
|
5061
|
-
3GP r/w | DSS r | JP2 r/w | ODP r |
|
5062
|
-
7Z r | DV r | JPEG r/w | ODS r |
|
5063
|
-
A r | DVB r/w | JSON r | ODT r |
|
5064
|
-
AA r | DVR-MS r | JXL r/w | OFR r |
|
5065
|
-
AAC r | DYLIB r | K25 r | OGG r |
|
5066
|
-
AAE r | EIP r | KDC r | OGV r |
|
5067
|
-
AAX r/w | EPS r/w | KEY r | ONP r |
|
5068
|
-
ACR r | EPUB r | LA r | OPUS r |
|
5069
|
-
AFM r | ERF r/w | LFP r | ORF r/w |
|
5070
|
-
AI r/w | EXE r | LIF r | ORI r/w |
|
5071
|
-
AIFF r | EXIF r/w/c | LNK r | OTF r |
|
5072
|
-
APE r | EXR r | LRV r/w | PAC r |
|
5073
|
-
ARQ r/w | EXV r/w/c | M2TS r | PAGES r |
|
5074
|
-
ARW r/w | F4A/V r/w | M4A/V r/w | PBM r/w |
|
5075
|
-
ASF r | FFF r/w | MACOS r |
|
5076
|
-
AVI r | FITS r | MAX r |
|
5077
|
-
AVIF r/w | FLA r | MEF r/w |
|
5078
|
-
AZW r | FLAC r | MIE r/w/c |
|
5079
|
-
BMP r | FLIF r/w | MIFF r |
|
5080
|
-
BPG r | FLV r | MKA r |
|
5081
|
-
BTF r | FPF r | MKS r |
|
5082
|
-
C2PA r | FPX r | MKV r |
|
5083
|
-
CHM r | GIF r/w | MNG r/w |
|
5084
|
-
COS r | GLV r/w | MOBI r |
|
5085
|
-
CR2 r/w | GPR r/w | MODD r |
|
5086
|
-
CR3 r/w | GZ r | MOI r |
|
5087
|
-
CRM r/w | HDP r/w | MOS r/w |
|
5088
|
-
CRW r/w | HDR r | MOV r/w |
|
5089
|
-
CS1 r/w | HEIC r/w | MP3 r |
|
5090
|
-
CSV r | HEIF r/w | MP4 r/w |
|
5091
|
-
CUR r | HTML r | MPC r |
|
5092
|
-
CZI r | ICC r/w/c | MPG r |
|
5093
|
-
DCM r | ICO r | MPO r/w |
|
5094
|
-
DCP r/w | ICS r | MQV r/w |
|
5095
|
-
DCR r | IDML r | MRC r |
|
5096
|
-
DFONT r | IIQ r/w | MRW r/w |
|
5097
|
-
DIVX r | IND r/w | MXF r |
|
5098
|
-
DJVU r | INSP r/w | NEF r/w |
|
5099
|
-
DLL r | INSV r | NKA r |
|
5100
|
-
DNG r/w | INX r | NKSC r/w |
|
5101
|
-
DOC r | ISO r | NRW r/w |
|
5058
|
+
360 r/w | DOCX r | ITC r | NUMBERS r | RAM r
|
5059
|
+
3FR r | DPX r | J2C r | NXD r | RAR r
|
5060
|
+
3G2 r/w | DR4 r/w/c | JNG r/w | O r | RAW r/w
|
5061
|
+
3GP r/w | DSS r | JP2 r/w | ODP r | RIFF r
|
5062
|
+
7Z r | DV r | JPEG r/w | ODS r | RSRC r
|
5063
|
+
A r | DVB r/w | JSON r | ODT r | RTF r
|
5064
|
+
AA r | DVR-MS r | JXL r/w | OFR r | RW2 r/w
|
5065
|
+
AAC r | DYLIB r | K25 r | OGG r | RWL r/w
|
5066
|
+
AAE r | EIP r | KDC r | OGV r | RWZ r
|
5067
|
+
AAX r/w | EPS r/w | KEY r | ONP r | RM r
|
5068
|
+
ACR r | EPUB r | LA r | OPUS r | SEQ r
|
5069
|
+
AFM r | ERF r/w | LFP r | ORF r/w | SKETCH r
|
5070
|
+
AI r/w | EXE r | LIF r | ORI r/w | SO r
|
5071
|
+
AIFF r | EXIF r/w/c | LNK r | OTF r | SR2 r/w
|
5072
|
+
APE r | EXR r | LRV r/w | PAC r | SRF r
|
5073
|
+
ARQ r/w | EXV r/w/c | M2TS r | PAGES r | SRW r/w
|
5074
|
+
ARW r/w | F4A/V r/w | M4A/V r/w | PBM r/w | SVG r
|
5075
|
+
ASF r | FFF r/w | MACOS r | PCAP r | SWF r
|
5076
|
+
AVI r | FITS r | MAX r | PCAPNG r | THM r/w
|
5077
|
+
AVIF r/w | FLA r | MEF r/w | PCD r | TIFF r/w
|
5078
|
+
AZW r | FLAC r | MIE r/w/c | PCX r | TORRENT r
|
5079
|
+
BMP r | FLIF r/w | MIFF r | PDB r | TTC r
|
5080
|
+
BPG r | FLV r | MKA r | PDF r/w | TTF r
|
5081
|
+
BTF r | FPF r | MKS r | PEF r/w | TXT r
|
5082
|
+
C2PA r | FPX r | MKV r | PFA r | VCF r
|
5083
|
+
CHM r | GIF r/w | MNG r/w | PFB r | VNT r
|
5084
|
+
COS r | GLV r/w | MOBI r | PFM r | VRD r/w/c
|
5085
|
+
CR2 r/w | GPR r/w | MODD r | PGF r | VSD r
|
5086
|
+
CR3 r/w | GZ r | MOI r | PGM r/w | WAV r
|
5087
|
+
CRM r/w | HDP r/w | MOS r/w | PLIST r | WDP r/w
|
5088
|
+
CRW r/w | HDR r | MOV r/w | PICT r | WEBP r/w
|
5089
|
+
CS1 r/w | HEIC r/w | MP3 r | PMP r | WEBM r
|
5090
|
+
CSV r | HEIF r/w | MP4 r/w | PNG r/w | WMA r
|
5091
|
+
CUR r | HTML r | MPC r | PPM r/w | WMV r
|
5092
|
+
CZI r | ICC r/w/c | MPG r | PPT r | WPG r
|
5093
|
+
DCM r | ICO r | MPO r/w | PPTX r | WTV r
|
5094
|
+
DCP r/w | ICS r | MQV r/w | PS r/w | WV r
|
5095
|
+
DCR r | IDML r | MRC r | PSB r/w | X3F r/w
|
5096
|
+
DFONT r | IIQ r/w | MRW r/w | PSD r/w | XCF r
|
5097
|
+
DIVX r | IND r/w | MXF r | PSP r | XISF r
|
5098
|
+
DJVU r | INSP r/w | NEF r/w | QTIF r/w | XLS r
|
5099
|
+
DLL r | INSV r | NKA r | R3D r | XLSX r
|
5100
|
+
DNG r/w | INX r | NKSC r/w | RA r | XMP r/w/c
|
5101
|
+
DOC r | ISO r | NRW r/w | RAF r/w | ZIP r
|
5102
5102
|
|
5103
5103
|
Meta Information
|
5104
5104
|
----------------------+----------------------+---------------------
|
@@ -6053,7 +6053,7 @@ with this command:
|
|
6053
6053
|
|
6054
6054
|
produces output like this:
|
6055
6055
|
|
6056
|
-
-- Generated by ExifTool 13.
|
6056
|
+
-- Generated by ExifTool 13.25 --
|
6057
6057
|
File: a.jpg - 2003:10:31 15:44:19
|
6058
6058
|
(f/5.6, 1/60s, ISO 100)
|
6059
6059
|
File: b.jpg - 2006:05:23 11:57:38
|
@@ -6859,12 +6859,12 @@ B<-listw> and B<-listx> options may be followed by an additional argument of
|
|
6859
6859
|
the form C<-GROUP:All> to list only tags in a specific group, where C<GROUP>
|
6860
6860
|
is one or more family 0-2 group names (excepting EXIF IFD groups) separated
|
6861
6861
|
by colons. With B<-listg>, I<NUM> may be given to specify the group family,
|
6862
|
-
otherwise family 0 is assumed. The B<-l> option may be combined
|
6863
|
-
B<-listf>, B<-listr> or B<-listwf> to add file descriptions to the
|
6864
|
-
The B<-lang> option may be combined with B<-listx> to output
|
6865
|
-
a single language, and the B<-sort> and/or B<-lang> options
|
6866
|
-
with B<-listgeo>. Also, the API GeolocMinPop, GeolocFeature
|
6867
|
-
GeolocAltNames options apply to the B<-listgeo> output. Here are some
|
6862
|
+
otherwise family 0 is assumed. The B<-l> or B<-v> option may be combined
|
6863
|
+
with B<-listf>, B<-listr> or B<-listwf> to add file descriptions to the
|
6864
|
+
list. The B<-lang> option may be combined with B<-listx> to output
|
6865
|
+
descriptions in a single language, and the B<-sort> and/or B<-lang> options
|
6866
|
+
may be combined with B<-listgeo>. Also, the API GeolocMinPop, GeolocFeature
|
6867
|
+
and GeolocAltNames options apply to the B<-listgeo> output. Here are some
|
6868
6868
|
examples:
|
6869
6869
|
|
6870
6870
|
-list # list all tag names
|
@@ -16,7 +16,7 @@ use vars qw($VERSION);
|
|
16
16
|
use Image::ExifTool::Exif;
|
17
17
|
use Image::ExifTool::PLIST;
|
18
18
|
|
19
|
-
$VERSION = '1.
|
19
|
+
$VERSION = '1.15';
|
20
20
|
|
21
21
|
sub ConvertPLIST($$);
|
22
22
|
|
@@ -307,7 +307,17 @@ sub ConvertPLIST($$);
|
|
307
307
|
Name => 'Apple_0x004f',
|
308
308
|
Unknown => 1,
|
309
309
|
ValueConv => \&ConvertPLIST,
|
310
|
-
}
|
310
|
+
},
|
311
|
+
0x0054 => {
|
312
|
+
Name => 'Apple_0x0054',
|
313
|
+
Unknown => 1,
|
314
|
+
ValueConv => \&ConvertPLIST,
|
315
|
+
},
|
316
|
+
0x005a => {
|
317
|
+
Name => 'Apple_0x005a',
|
318
|
+
Unknown => 1,
|
319
|
+
ValueConv => \&ConvertPLIST,
|
320
|
+
},
|
311
321
|
);
|
312
322
|
|
313
323
|
# PLIST-format CMTime structure (ref PH)
|
@@ -1795,8 +1795,8 @@ sub NumbersFirst($$)
|
|
1795
1795
|
my ($a2, $b2) = ($a, $b);
|
1796
1796
|
# expand numbers to 3 digits (with restrictions to avoid messing up
|
1797
1797
|
# ascii-hex tags -- Nikon LensID's are 23 characters long)
|
1798
|
-
$a2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $a2 =~ /^(APP|DMC-\w+ |dvtm_
|
1799
|
-
$b2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $b2 =~ /^(APP|DMC-\w+ |dvtm_
|
1798
|
+
$a2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $a2 =~ /^(APP|DMC-\w+ |dvtm_.*|(IDB|SHB)-)?[.0-9 ]*$/ and length($a2)<23;
|
1799
|
+
$b2 =~ s/(\d+)/sprintf("%.3d",$1)/eg if $b2 =~ /^(APP|DMC-\w+ |dvtm_.*|(IDB|SHB)-)?[.0-9 ]*$/ and length($b2)<23;
|
1800
1800
|
$caseInsensitive and $rtnVal = (lc($a2) cmp lc($b2));
|
1801
1801
|
$rtnVal or $rtnVal = ($a2 cmp $b2);
|
1802
1802
|
}
|
@@ -4,6 +4,7 @@
|
|
4
4
|
# Description: Darwin Core XMP tags
|
5
5
|
#
|
6
6
|
# Revisions: 2013-01-28 - P. Harvey Created
|
7
|
+
# 2025-03-09 - Herb forum17172 changes dwc.tdwg.org 2023
|
7
8
|
#
|
8
9
|
# References: 1) http://rs.tdwg.org/dwc/index.htm
|
9
10
|
# 2) https://exiftool.org/forum/index.php/topic,4442.0/all.html
|
@@ -15,7 +16,7 @@ use strict;
|
|
15
16
|
use vars qw($VERSION);
|
16
17
|
use Image::ExifTool::XMP;
|
17
18
|
|
18
|
-
$VERSION = '1.
|
19
|
+
$VERSION = '1.08';
|
19
20
|
|
20
21
|
my %dateTimeInfo = (
|
21
22
|
# NOTE: Do NOT put "Groups" here because Groups hash must not be common!
|
@@ -35,7 +36,7 @@ my %event = (
|
|
35
36
|
STRUCT_NAME => 'DarwinCore Event',
|
36
37
|
NAMESPACE => 'dwc',
|
37
38
|
day => { Writable => 'integer', Groups => { 2 => 'Time' } },
|
38
|
-
earliestDate => { %dateTimeInfo, Groups => { 2 => 'Time' } },
|
39
|
+
earliestDate => { %dateTimeInfo, Groups => { 2 => 'Time' } }, # dwc.tdwg.org removed 2023
|
39
40
|
endDayOfYear => { Writable => 'integer', Groups => { 2 => 'Time' } },
|
40
41
|
eventDate => { %dateTimeInfo, Groups => { 2 => 'Time' } },
|
41
42
|
eventID => { Avoid => 1, Notes => 'avoided in favor of XMP-iptcExt:EventID' },
|
@@ -63,7 +64,7 @@ my %event = (
|
|
63
64
|
fieldNotes => { },
|
64
65
|
fieldNumber => { },
|
65
66
|
habitat => { },
|
66
|
-
latestDate => { %dateTimeInfo, Groups => { 2 => 'Time' } },
|
67
|
+
latestDate => { %dateTimeInfo, Groups => { 2 => 'Time' } }, # dwc.tdwg.org removed 2023
|
67
68
|
month => { Writable => 'integer', Groups => { 2 => 'Time' } },
|
68
69
|
parentEventID => { },
|
69
70
|
samplingEffort => { },
|
@@ -73,6 +74,7 @@ my %event = (
|
|
73
74
|
startDayOfYear => { Writable => 'integer', Groups => { 2 => 'Time' } },
|
74
75
|
verbatimEventDate => { Groups => { 2 => 'Time' } },
|
75
76
|
year => { Writable => 'integer', Groups => { 2 => 'Time' } },
|
77
|
+
eventType => { }, # dwc.tdwg.org added 2023
|
76
78
|
);
|
77
79
|
|
78
80
|
# Darwin Core tags
|
@@ -161,6 +163,7 @@ my %event = (
|
|
161
163
|
measurementType => { },
|
162
164
|
measurementUnit => { },
|
163
165
|
measurementValue => { },
|
166
|
+
parentMeasurementID => { }, # dwc.tdwg.org added 2023
|
164
167
|
},
|
165
168
|
},
|
166
169
|
Occurrence => {
|
@@ -170,25 +173,25 @@ my %event = (
|
|
170
173
|
associatedMedia => { },
|
171
174
|
associatedOccurrences => { },
|
172
175
|
associatedReferences => { },
|
173
|
-
associatedSequences => { },
|
176
|
+
associatedSequences => { }, # dwc.tdwg.org removed 2023
|
174
177
|
associatedTaxa => { },
|
175
178
|
behavior => { },
|
176
179
|
catalogNumber => { },
|
177
|
-
disposition => { },
|
180
|
+
disposition => { }, # dwc.tdwg.org removed 2023
|
178
181
|
establishmentMeans => { },
|
179
182
|
individualCount => { },
|
180
|
-
individualID => { },
|
183
|
+
individualID => { }, # dwc.tdwg.org removed 2023
|
181
184
|
lifeStage => { },
|
182
185
|
occurrenceDetails => { },
|
183
|
-
occurrenceID => { },
|
186
|
+
occurrenceID => { }, # dwc.tdwg.org removed 2023
|
184
187
|
occurrenceRemarks => { },
|
185
188
|
occurrenceStatus => { },
|
186
189
|
organismQuantity => { },
|
187
190
|
organismQuantityType => { },
|
188
191
|
otherCatalogNumbers => { },
|
189
192
|
preparations => { },
|
190
|
-
previousIdentifications => { },
|
191
|
-
recordedBy => { },
|
193
|
+
previousIdentifications => { }, # dwc.tdwg.org removed 2023
|
194
|
+
recordedBy => { }, # dwc.tdwg.org removed 2023
|
192
195
|
recordNumber => { },
|
193
196
|
reproductiveCondition => { },
|
194
197
|
sex => { },
|
@@ -197,6 +200,8 @@ my %event = (
|
|
197
200
|
georeferenceVerificationStatus => { },
|
198
201
|
pathway => { },
|
199
202
|
recordedByID => { },
|
203
|
+
caste => { }, # dwc.tdwg.org added 2023
|
204
|
+
vitality => { }, # dwc.tdwg.org added 2023
|
200
205
|
},
|
201
206
|
},
|
202
207
|
OccurrenceOccurrenceDetails => { Name => 'OccurrenceDetails', Flat => 1 },
|
@@ -207,7 +212,7 @@ my %event = (
|
|
207
212
|
Struct => {
|
208
213
|
STRUCT_NAME => 'DarwinCore Organism',
|
209
214
|
NAMESPACE => 'dwc',
|
210
|
-
associatedOccurrences => { },
|
215
|
+
associatedOccurrences => { }, # dwc.tdwg.org removed 2023
|
211
216
|
associatedOrganisms => { },
|
212
217
|
organismID => { },
|
213
218
|
organismName => { },
|
@@ -291,6 +296,12 @@ my %event = (
|
|
291
296
|
taxonomicStatus => { },
|
292
297
|
verbatimTaxonRank => { },
|
293
298
|
vernacularName => { Writable => 'lang-alt' },
|
299
|
+
superFamily => { }, # dwc.tdwg.org added 2023
|
300
|
+
subFamily => { }, # dwc.tdwg.org added 2023
|
301
|
+
tribe => { }, # dwc.tdwg.org added 2023
|
302
|
+
subTribe => { }, # dwc.tdwg.org added 2023
|
303
|
+
genericName => { }, # dwc.tdwg.org added 2023
|
304
|
+
infragenericEpithet => { }, # dwc.tdwg.org added 2023
|
294
305
|
},
|
295
306
|
},
|
296
307
|
TaxonTaxonConceptID => { Name => 'TaxonConceptID', Flat => 1 },
|
@@ -321,7 +332,7 @@ my %event = (
|
|
321
332
|
georeferenceProtocol => { },
|
322
333
|
georeferenceRemarks => { },
|
323
334
|
georeferenceSources => { },
|
324
|
-
georeferenceVerificationStatus => { },
|
335
|
+
georeferenceVerificationStatus => { }, # dwc.tdwg.org removed 2023
|
325
336
|
higherGeography => { },
|
326
337
|
higherGeographyID => { },
|
327
338
|
island => { },
|
@@ -12,7 +12,7 @@ use strict;
|
|
12
12
|
use vars qw($VERSION);
|
13
13
|
use Image::ExifTool::Exif;
|
14
14
|
|
15
|
-
$VERSION = '1.
|
15
|
+
$VERSION = '1.58';
|
16
16
|
|
17
17
|
my %coordConv = (
|
18
18
|
ValueConv => 'Image::ExifTool::GPS::ToDegrees($val)',
|
@@ -112,8 +112,8 @@ my %printConvLonRef = (
|
|
112
112
|
},
|
113
113
|
0 => 'Above Sea Level', # (ellipsoidal surface, Exif 3.0)
|
114
114
|
1 => 'Below Sea Level', # (ellipsoidal surface, Exif 3.0)
|
115
|
-
|
116
|
-
|
115
|
+
2 => 'Positive Sea Level (sea-level ref)', # sea-level reference, Exif 3.0
|
116
|
+
3 => 'Negative Sea Level (sea-level ref)', # sea-level reference, Exif 3.0
|
117
117
|
},
|
118
118
|
},
|
119
119
|
0x0006 => {
|
Binary file
|
@@ -134,6 +134,10 @@ sub ProcessJPEG_HDR($$$);
|
|
134
134
|
Name => 'FPXR', # (non-standard location written by some HP models)
|
135
135
|
Condition => '$$valPt =~ /^FPXR\0/',
|
136
136
|
SubDirectory => { TagTable => 'Image::ExifTool::FlashPix::Main' },
|
137
|
+
}, {
|
138
|
+
Name => 'QualcommDualCamera',
|
139
|
+
Condition => '$$valPt =~ /^Qualcomm Dual Camera Attributes/',
|
140
|
+
SubDirectory => { TagTable => 'Image::ExifTool::Qualcomm::DualCamera' },
|
137
141
|
}, {
|
138
142
|
Name => 'InfiRayFactory',
|
139
143
|
Condition => '$$self{HasIJPEG}"',
|