exiftool_vendored 11.86.0 → 11.88.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 +38 -16
- data/bin/MANIFEST +3 -0
- data/bin/META.json +1 -1
- data/bin/META.yml +1 -1
- data/bin/README +34 -33
- data/bin/config_files/acdsee.config +1 -3
- data/bin/config_files/depthmap.config +56 -0
- data/bin/config_files/example.config +2 -0
- data/bin/config_files/gps2utm.config +1 -1
- data/bin/config_files/tiff_version.config +1 -1
- data/bin/exiftool +56 -39
- data/bin/fmt_files/gpx_wpt.fmt +1 -1
- data/bin/lib/Image/ExifTool.pm +32 -7
- data/bin/lib/Image/ExifTool.pod +53 -52
- data/bin/lib/Image/ExifTool/AIFF.pm +1 -1
- data/bin/lib/Image/ExifTool/Apple.pm +1 -1
- data/bin/lib/Image/ExifTool/BuildTagLookup.pm +3 -3
- data/bin/lib/Image/ExifTool/CanonVRD.pm +1 -1
- data/bin/lib/Image/ExifTool/DNG.pm +1 -1
- data/bin/lib/Image/ExifTool/Exif.pm +3 -3
- data/bin/lib/Image/ExifTool/FITS.pm +1 -1
- data/bin/lib/Image/ExifTool/FLIR.pm +5 -5
- data/bin/lib/Image/ExifTool/Flash.pm +1 -1
- data/bin/lib/Image/ExifTool/FlashPix.pm +1 -1
- data/bin/lib/Image/ExifTool/Font.pm +2 -2
- data/bin/lib/Image/ExifTool/FujiFilm.pm +23 -7
- data/bin/lib/Image/ExifTool/GIF.pm +1 -1
- data/bin/lib/Image/ExifTool/GeoTiff.pm +1 -1
- data/bin/lib/Image/ExifTool/ICC_Profile.pm +1 -1
- data/bin/lib/Image/ExifTool/JPEGDigest.pm +1 -1
- data/bin/lib/Image/ExifTool/MIE.pm +1 -1
- data/bin/lib/Image/ExifTool/Minolta.pm +1 -1
- data/bin/lib/Image/ExifTool/Nikon.pm +1 -1
- data/bin/lib/Image/ExifTool/NikonCustom.pm +2 -2
- data/bin/lib/Image/ExifTool/Olympus.pm +4 -2
- data/bin/lib/Image/ExifTool/PDF.pm +2 -2
- data/bin/lib/Image/ExifTool/PNG.pm +10 -5
- data/bin/lib/Image/ExifTool/Panasonic.pm +1 -1
- data/bin/lib/Image/ExifTool/Pentax.pm +3 -3
- data/bin/lib/Image/ExifTool/Photoshop.pm +1 -1
- data/bin/lib/Image/ExifTool/QuickTime.pm +9 -4
- data/bin/lib/Image/ExifTool/QuickTimeStream.pl +1 -1
- data/bin/lib/Image/ExifTool/README +51 -51
- data/bin/lib/Image/ExifTool/RIFF.pm +2 -2
- data/bin/lib/Image/ExifTool/RTF.pm +1 -1
- data/bin/lib/Image/ExifTool/Samsung.pm +1 -1
- data/bin/lib/Image/ExifTool/Sony.pm +1 -1
- data/bin/lib/Image/ExifTool/TagLookup.pm +1725 -1617
- data/bin/lib/Image/ExifTool/TagNames.pod +307 -9
- data/bin/lib/Image/ExifTool/Text.pm +59 -10
- data/bin/lib/Image/ExifTool/WriteCanonRaw.pl +1 -1
- data/bin/lib/Image/ExifTool/WritePNG.pl +1 -1
- data/bin/lib/Image/ExifTool/WriteQuickTime.pl +27 -12
- data/bin/lib/Image/ExifTool/WriteXMP.pl +1 -1
- data/bin/lib/Image/ExifTool/Writer.pl +25 -7
- data/bin/lib/Image/ExifTool/XMP.pm +6 -1
- data/bin/lib/Image/ExifTool/XMP2.pl +213 -1
- data/bin/lib/Image/ExifTool/ZIP.pm +1 -1
- data/bin/perl-Image-ExifTool.spec +30 -30
- data/lib/exiftool_vendored/version.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 16ac19b072446e8aa339ead73fcf30667099de1e
|
|
4
|
+
data.tar.gz: b0af8e8ed6c32171b6a9cd49e33b1053fd1e6c20
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 2f000720df7aede27a5e7d5c0b217711277d942ef3ba9888843f25116ceec81d508fa05dcfc959f4be82b646eafde499decef831ab5b269aca28d85ebda89f99
|
|
7
|
+
data.tar.gz: 032e0cc3dcf21e0acbdf44829008781976beb2477c96fc1730b4ee912423d7d166e8aae6e861d74ca3d16864a1622107aa8061bd7adb4809a72c2ae3aa20c0ab
|
data/bin/Changes
CHANGED
|
@@ -7,12 +7,34 @@ RSS feed: https://exiftool.org/rss.xml
|
|
|
7
7
|
Note: The most recent production release is Version 11.85. (Other versions are
|
|
8
8
|
considered development releases, and are not uploaded to CPAN.)
|
|
9
9
|
|
|
10
|
+
Feb. 20, 2020 - Version 11.88
|
|
11
|
+
|
|
12
|
+
- Added write support for new Google depth-map XMP tags
|
|
13
|
+
- Added config_files/depthmap.config to the distribution
|
|
14
|
+
- Added minor error when attempting to write FFF images due to incompatibility
|
|
15
|
+
with Hasselblad Phocus software
|
|
16
|
+
- Patched to avoid "Invalid iloc offset size" error when writing some
|
|
17
|
+
QuickTime-based files
|
|
18
|
+
- Fixed incorrect ColumnCount for CSV files
|
|
19
|
+
- Fixed various spelling errors (thanks Jens Schleusener)
|
|
20
|
+
- Fixed bug writing QuickTime:Rotation in HEIC files
|
|
21
|
+
|
|
22
|
+
Feb. 13, 2020 - Version 11.87
|
|
23
|
+
|
|
24
|
+
- Added read support for CSV files
|
|
25
|
+
- Added "--" option to indicate the end of options
|
|
26
|
+
- Added ability to read/write/copy/delete the JPEG trailer as a block
|
|
27
|
+
- Added new Olympus CameraType and LensType values (thanks LibRaw)
|
|
28
|
+
- Decode a few more FujiFilm tags
|
|
29
|
+
- Enhanced -fast option (API FastScan) to bypass PNG CRC validation when
|
|
30
|
+
writing
|
|
31
|
+
|
|
10
32
|
Feb. 4, 2020 - Version 11.86
|
|
11
33
|
|
|
12
34
|
- Added support for DNG version 1.5
|
|
13
35
|
- Added config_files/acdsee.config to the full distribution (thanks StarGeek)
|
|
14
36
|
- Added a new Sony LensType (thanks Jos Roost and LibRaw)
|
|
15
|
-
- Decode two more bits
|
|
37
|
+
- Decode two more bits from Nikon LensType (thanks LibRaw)
|
|
16
38
|
- Decode QuickTime MovieFragmentSequence
|
|
17
39
|
- Patched HEIC writer to add missing iref box if necessary
|
|
18
40
|
- Fixed typo in a Canon LensType value
|
|
@@ -463,7 +485,7 @@ May 31, 2019 - Version 11.46 - "CR3 update"
|
|
|
463
485
|
- Added ability to write CanonVRD tags in CR3 images
|
|
464
486
|
- Decode a couple more tags from Canon CR3 images
|
|
465
487
|
- Enhanced Validate option to check for duplicate QuickTime atoms
|
|
466
|
-
- Relaxed
|
|
488
|
+
- Relaxed constraints when writing IPTC date tags to allow use of separators
|
|
467
489
|
other than a colon
|
|
468
490
|
- Fixed CR3 writing to update CTBO table with any changed offsets or sizes
|
|
469
491
|
(although this table doesn't seem to be used by any RAW viewer, it may be
|
|
@@ -1531,7 +1553,7 @@ Apr. 10, 2017 - Version 10.49
|
|
|
1531
1553
|
- Decode a new Panasonic tag
|
|
1532
1554
|
- Fixed problem decoding Sony VariableLowPassFilter values (thanks Jos Roost)
|
|
1533
1555
|
- Fixed problem setting XMP:About when creating new XMP in a file
|
|
1534
|
-
- Fixed an
|
|
1556
|
+
- Fixed an incorrect Pentax DriveMode value (thanks Andras Salamon)
|
|
1535
1557
|
- API Changes
|
|
1536
1558
|
- Allow access to the advanced formatting expression via a new ExifTool
|
|
1537
1559
|
"FMT_EXPR" member variable
|
|
@@ -2050,7 +2072,7 @@ Jan. 4, 2016 - Version 10.09
|
|
|
2050
2072
|
|
|
2051
2073
|
- Added ability to extract OS X system metadata ("MDItem" tags)
|
|
2052
2074
|
- Added a value conversion for GoogleTrackDuration
|
|
2053
|
-
-
|
|
2075
|
+
- Enhanced the -i option to allow full path names to be specified
|
|
2054
2076
|
- Fixed a potential runtime error when writing corrupted JPEG images
|
|
2055
2077
|
- API Changes:
|
|
2056
2078
|
- Added MDItemTags option
|
|
@@ -3369,7 +3391,7 @@ Jan. 18, 2013 - Version 9.14
|
|
|
3369
3391
|
- Decode new Canon 6D CustomFunctions
|
|
3370
3392
|
- Improved calculation of ScaleFactor35efl for Canon cameras
|
|
3371
3393
|
- Changed priority of PDF Info tags so tags from most recent Info dictionary
|
|
3372
|
-
take precedence (to partially
|
|
3394
|
+
take precedence (to partially accommodate the questionable Acrobat Pro
|
|
3373
3395
|
incremental update technique)
|
|
3374
3396
|
- Changed some verbose warnings when attempting to write "unsafe" tags
|
|
3375
3397
|
- Changed behaviour so that "unsafe" tags are not copied for any tag specified
|
|
@@ -3715,7 +3737,7 @@ Apr. 3, 2012 - Version 8.86
|
|
|
3715
3737
|
- Decode some new CanonVRD DLO tags
|
|
3716
3738
|
- Changed decoding of CanonVRD VRDVersion tag
|
|
3717
3739
|
- Changed formatting of a Pentax LensType for consistency with other lenses
|
|
3718
|
-
- Patched decoding of Reconyx:DateTimeOriginal to
|
|
3740
|
+
- Patched decoding of Reconyx:DateTimeOriginal to accommodate values written
|
|
3719
3741
|
with an incorrect byte order by some models
|
|
3720
3742
|
|
|
3721
3743
|
Mar. 25, 2012 - Version 8.85 (production release)
|
|
@@ -4283,7 +4305,7 @@ Jan. 29, 2011 - Version 8.47
|
|
|
4283
4305
|
|
|
4284
4306
|
Jan. 22, 2011 - Version 8.46
|
|
4285
4307
|
|
|
4286
|
-
-
|
|
4308
|
+
- Simplified definition of user-defined XMP structures: flattened tags are now
|
|
4287
4309
|
automatically generated, and UserDefined::xmpStruct is no longer needed (but
|
|
4288
4310
|
backward compatibility is maintained with the old-style definitions)
|
|
4289
4311
|
- Added ability to handle multi-dimensional arrays in structured output
|
|
@@ -5306,7 +5328,7 @@ June 7, 2009 - Version 7.77
|
|
|
5306
5328
|
- Decode large preview in APP2 of images from newer Samsung models
|
|
5307
5329
|
- Extract FujiFilm PreviewImage from improperly written FPXR segment
|
|
5308
5330
|
- Improved decoding of Nikon WB levels for some models
|
|
5309
|
-
- Reduced memory
|
|
5331
|
+
- Reduced memory usage when writing DNG and some other RAW image files
|
|
5310
5332
|
- Changed format of Canon D30 SerialNumber to remove the hyphen and add
|
|
5311
5333
|
leading 0's if less than 9 characters (now same format as printed on camera)
|
|
5312
5334
|
- Changed writing of GPSTimeStamp and GPSDateStamp to adjust date/time to UTC
|
|
@@ -5969,7 +5991,7 @@ May 28, 2008 - Version 7.29
|
|
|
5969
5991
|
- Renamed Pentax ModelRevision tag to ProductionCode and improved print
|
|
5970
5992
|
conversion to indicate if camera has been serviced
|
|
5971
5993
|
- Added check to prevent EXIF tags from being written to JPEG images if they
|
|
5972
|
-
would obviously exceed the
|
|
5994
|
+
would obviously exceed the maximum JPEG segment size limit
|
|
5973
5995
|
- Relaxed error checks when writing JPEG images to allow MakerNotes to be
|
|
5974
5996
|
rebuilt if the MakerNote IFD is not contained within the MakerNotes data
|
|
5975
5997
|
- Fixed decoding of Pentax ExternalFlashGuideNumber when AF360 is used with
|
|
@@ -7103,7 +7125,7 @@ Sept. 21, 2006 - Version 6.42 (production release)
|
|
|
7103
7125
|
Sept. 18, 2006 - Version 6.41
|
|
7104
7126
|
|
|
7105
7127
|
- Fixed calculation of Canon ISO in some images and renamed ShotISO to BaseISO
|
|
7106
|
-
- Minor
|
|
7128
|
+
- Minor improvement to order of operations when deleting multiple groups and
|
|
7107
7129
|
adding back information in batch mode
|
|
7108
7130
|
|
|
7109
7131
|
Sept. 14, 2006 - Version 6.40
|
|
@@ -7228,7 +7250,7 @@ June 19, 2006 - Version 6.25
|
|
|
7228
7250
|
- Added read/write support for WDP (Windows Media Photo) images
|
|
7229
7251
|
- Improved algorithm to recognize maker notes offsets which need fixing
|
|
7230
7252
|
- Properly handle maker notes which have value offsets relative to the
|
|
7231
|
-
|
|
7253
|
+
individual IFD entries (Kyocera, Rollei and some Konica and Toshiba models)
|
|
7232
7254
|
- Decode a couple of new Sigma lens values in Canon LensType
|
|
7233
7255
|
- Decreased block size for buffered files to improve performance over slow
|
|
7234
7256
|
pipes
|
|
@@ -7486,7 +7508,7 @@ Feb. 1, 2006 - Version 5.99
|
|
|
7486
7508
|
- Added Canon maker note footer when rewriting Canon maker notes
|
|
7487
7509
|
- Attempt to fix problem where ScaleFactor35efl was calculated incorrectly for
|
|
7488
7510
|
some Canon images
|
|
7489
|
-
- Reduce memory
|
|
7511
|
+
- Reduce memory usage and speed up writing of large TIFF images
|
|
7490
7512
|
- Fixed problem with binary data offsets in verbose dump
|
|
7491
7513
|
- Fixed problem writing Comment if 'File' group specified
|
|
7492
7514
|
- Fixed bug which could cause formatting error in htmlDump output
|
|
@@ -7712,7 +7734,7 @@ Oct. 24, 2005 - Version 5.71
|
|
|
7712
7734
|
|
|
7713
7735
|
Oct. 23, 2005 - Version 5.70
|
|
7714
7736
|
|
|
7715
|
-
- Significant internal changes to improve speed and reduce memory
|
|
7737
|
+
- Significant internal changes to improve speed and reduce memory usage
|
|
7716
7738
|
- Fixed a bug introduced in version 5.63 which caused incorrect XMP GPS
|
|
7717
7739
|
coordinates to be returned
|
|
7718
7740
|
- Changed handling of Kodak date records
|
|
@@ -7766,7 +7788,7 @@ Oct. 7, 2005 - Version 5.65
|
|
|
7766
7788
|
- Decode a few more Photoshop tags
|
|
7767
7789
|
- Issue an error if there is extra data after the normal end of file when
|
|
7768
7790
|
rewriting TIFF images (avoids possible data loss if attempting to write an
|
|
7769
|
-
|
|
7791
|
+
unsupported RAW image with a TIFF-like data structure)
|
|
7770
7792
|
- Added ability to replace existing tags with user defined tags
|
|
7771
7793
|
- Denote minor errors/warnings by adding '[minor]' to the message (these are
|
|
7772
7794
|
the errors which can be ignored with the -m option)
|
|
@@ -8473,7 +8495,7 @@ Jan. 28, 2005 - Version 4.42
|
|
|
8473
8495
|
specific IPTC tag values with 'TAG-=VALUE'
|
|
8474
8496
|
- Made EXIF SceneType writable
|
|
8475
8497
|
- Renamed Nikon ISOUsed tag to ISO
|
|
8476
|
-
- Added
|
|
8498
|
+
- Added documentation of Canon RAW (CRW) file format
|
|
8477
8499
|
|
|
8478
8500
|
Jan. 27, 2005 - Version 4.41
|
|
8479
8501
|
|
|
@@ -8956,7 +8978,7 @@ Mar. 26, 2004 - Version 3.27
|
|
|
8956
8978
|
|
|
8957
8979
|
- Optimized a few routines to speed things up a bit
|
|
8958
8980
|
- API Changes:
|
|
8959
|
-
- Changed GetDescription()
|
|
8981
|
+
- Changed GetDescription() documentation to indicate it is called with an
|
|
8960
8982
|
ExifTool object (this is still optional, but will be mandatory with the
|
|
8961
8983
|
next version)
|
|
8962
8984
|
|
data/bin/MANIFEST
CHANGED
|
@@ -19,6 +19,7 @@ config_files/acdsee.config
|
|
|
19
19
|
config_files/age.config
|
|
20
20
|
config_files/bibble.config
|
|
21
21
|
config_files/convert_regions.config
|
|
22
|
+
config_files/depthmap.config
|
|
22
23
|
config_files/example.config
|
|
23
24
|
config_files/fotoware.config
|
|
24
25
|
config_files/gps2utm.config
|
|
@@ -793,6 +794,7 @@ t/Text_3.out
|
|
|
793
794
|
t/Text_4.out
|
|
794
795
|
t/Text_5.out
|
|
795
796
|
t/Text_6.out
|
|
797
|
+
t/Text_7.out
|
|
796
798
|
t/Torrent.t
|
|
797
799
|
t/Torrent_2.out
|
|
798
800
|
t/Unknown.t
|
|
@@ -1057,6 +1059,7 @@ t/images/Sigma.x3f
|
|
|
1057
1059
|
t/images/SigmaDP2.x3f
|
|
1058
1060
|
t/images/Sony.jpg
|
|
1059
1061
|
t/images/Sony.pmp
|
|
1062
|
+
t/images/Text.csv
|
|
1060
1063
|
t/images/Text1.txt
|
|
1061
1064
|
t/images/Text2.txt
|
|
1062
1065
|
t/images/Text3.txt
|
data/bin/META.json
CHANGED
data/bin/META.yml
CHANGED
data/bin/README
CHANGED
|
@@ -14,34 +14,35 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
|
14
14
|
|
|
15
15
|
File Types
|
|
16
16
|
------------+-------------+-------------+-------------+------------
|
|
17
|
-
3FR r |
|
|
18
|
-
3G2 r/w |
|
|
19
|
-
3GP r/w |
|
|
20
|
-
A r |
|
|
21
|
-
AA r |
|
|
22
|
-
AAE r |
|
|
23
|
-
AAX r/w |
|
|
24
|
-
ACR r |
|
|
25
|
-
AFM r |
|
|
26
|
-
AI r/w |
|
|
27
|
-
AIFF r |
|
|
28
|
-
APE r |
|
|
29
|
-
ARQ r/w |
|
|
30
|
-
ARW r/w |
|
|
31
|
-
ASF r |
|
|
32
|
-
AVI r |
|
|
33
|
-
AVIF r/w |
|
|
34
|
-
AZW r |
|
|
35
|
-
BMP r |
|
|
36
|
-
BPG r |
|
|
37
|
-
BTF r |
|
|
38
|
-
CHM r |
|
|
39
|
-
COS r |
|
|
40
|
-
CR2 r/w |
|
|
41
|
-
CR3 r/w |
|
|
42
|
-
CRM r/w |
|
|
43
|
-
CRW r/w |
|
|
44
|
-
CS1 r/w |
|
|
17
|
+
3FR r | DR4 r/w/c | ITC r | ODP r | RIFF r
|
|
18
|
+
3G2 r/w | DSS r | J2C r | ODS r | RSRC r
|
|
19
|
+
3GP r/w | DV r | JNG r/w | ODT r | RTF r
|
|
20
|
+
A r | DVB r/w | JP2 r/w | OFR r | RW2 r/w
|
|
21
|
+
AA r | DVR-MS r | JPEG r/w | OGG r | RWL r/w
|
|
22
|
+
AAE r | DYLIB r | JSON r | OGV r | RWZ r
|
|
23
|
+
AAX r/w | EIP r | K25 r | OPUS r | RM r
|
|
24
|
+
ACR r | EPS r/w | KDC r | ORF r/w | SEQ r
|
|
25
|
+
AFM r | EPUB r | KEY r | OTF r | SKETCH r
|
|
26
|
+
AI r/w | ERF r/w | LA r | PAC r | SO r
|
|
27
|
+
AIFF r | EXE r | LFP r | PAGES r | SR2 r/w
|
|
28
|
+
APE r | EXIF r/w/c | LNK r | PBM r/w | SRF r
|
|
29
|
+
ARQ r/w | EXR r | LRV r/w | PCD r | SRW r/w
|
|
30
|
+
ARW r/w | EXV r/w/c | M2TS r | PCX r | SVG r
|
|
31
|
+
ASF r | F4A/V r/w | M4A/V r/w | PDB r | SWF r
|
|
32
|
+
AVI r | FFF r/w | MAX r | PDF r/w | THM r/w
|
|
33
|
+
AVIF r/w | FITS r | MEF r/w | PEF r/w | TIFF r/w
|
|
34
|
+
AZW r | FLA r | MIE r/w/c | PFA r | TORRENT r
|
|
35
|
+
BMP r | FLAC r | MIFF r | PFB r | TTC r
|
|
36
|
+
BPG r | FLIF r/w | MKA r | PFM r | TTF r
|
|
37
|
+
BTF r | FLV r | MKS r | PGF r | TXT r
|
|
38
|
+
CHM r | FPF r | MKV r | PGM r/w | VCF r
|
|
39
|
+
COS r | FPX r | MNG r/w | PLIST r | VRD r/w/c
|
|
40
|
+
CR2 r/w | GIF r/w | MOBI r | PICT r | VSD r
|
|
41
|
+
CR3 r/w | GPR r/w | MODD r | PMP r | WAV r
|
|
42
|
+
CRM r/w | GZ r | MOI r | PNG r/w | WDP r/w
|
|
43
|
+
CRW r/w | HDP r/w | MOS r/w | PPM r/w | WEBP r
|
|
44
|
+
CS1 r/w | HDR r | MOV r/w | PPT r | WEBM r
|
|
45
|
+
CSV r | HEIC r/w | MP3 r | PPTX r | WMA r
|
|
45
46
|
DCM r | HEIF r/w | MP4 r/w | PS r/w | WMV r
|
|
46
47
|
DCP r/w | HTML r | MPC r | PSB r/w | WTV r
|
|
47
48
|
DCR r | ICC r/w/c | MPG r | PSD r/w | WV r
|
|
@@ -53,7 +54,6 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
|
53
54
|
DOC r | INSV r | NRW r/w | RAM r | ZIP r
|
|
54
55
|
DOCX r | INX r | NUMBERS r | RAR r |
|
|
55
56
|
DPX r | ISO r | O r | RAW r/w |
|
|
56
|
-
DR4 r/w/c | ITC r | ODP r | RIFF r |
|
|
57
57
|
|
|
58
58
|
Meta Information
|
|
59
59
|
----------------------+----------------------+---------------------
|
|
@@ -105,8 +105,8 @@ your home directory, then you would type the following commands in a
|
|
|
105
105
|
terminal window to extract and run ExifTool:
|
|
106
106
|
|
|
107
107
|
cd ~/Desktop
|
|
108
|
-
gzip -dc Image-ExifTool-11.
|
|
109
|
-
cd Image-ExifTool-11.
|
|
108
|
+
gzip -dc Image-ExifTool-11.88.tar.gz | tar -xf -
|
|
109
|
+
cd Image-ExifTool-11.88
|
|
110
110
|
./exiftool t/images/ExifTool.jpg
|
|
111
111
|
|
|
112
112
|
Note: These commands extract meta information from one of the test images.
|
|
@@ -189,10 +189,11 @@ distribution package:
|
|
|
189
189
|
xmp2iptc.args - Arguments for converting XMP to IPTC
|
|
190
190
|
xmp2pdf.args - Arguments for converting XMP to PDF
|
|
191
191
|
config_files/ - Sample ExifTool configuration files:
|
|
192
|
-
acdsee.config - Definitions for writing
|
|
192
|
+
acdsee.config - Definitions for writing ACDSee XMP regions
|
|
193
193
|
age.config - Calculate Age of person in photo
|
|
194
194
|
bibble.config - Definitions for writing Bibble XMP tags
|
|
195
195
|
convert_regions.config - Convert between MWG, MP and IPTC regions
|
|
196
|
+
depthmap.config - Extract Google DepthMap images
|
|
196
197
|
example.config - General example showing config features
|
|
197
198
|
fotoware.config - Definitions for writing Fotoware XMP tags
|
|
198
199
|
gps2utm.config - Generate UTM coordinate tags from GPS info
|
|
@@ -201,7 +202,7 @@ distribution package:
|
|
|
201
202
|
picasa_faces.config - Convert from Picasa to MWG/MP face regions
|
|
202
203
|
rotate_regions.config - Rotate MWG and MP region tags
|
|
203
204
|
tiff_version.config - Determine the version of a TIFF file
|
|
204
|
-
time_zone.config -
|
|
205
|
+
time_zone.config - Calculate time zone from EXIF tags
|
|
205
206
|
exiftool - The exiftool application (Perl script)
|
|
206
207
|
fmt_files/ - Output formatting example files:
|
|
207
208
|
gpx.fmt - Format file for creating GPX track
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
#------------------------------------------------------------------------------
|
|
2
2
|
# File: acdsee.config
|
|
3
3
|
#
|
|
4
|
-
# Description: This config file defines
|
|
4
|
+
# Description: This config file defines ACDSee XMP region tags for writing.
|
|
5
5
|
#
|
|
6
6
|
# Usage: exiftool -config acdsee.config -ACDSEETAG=VALUE FILE ...
|
|
7
7
|
#
|
|
@@ -56,11 +56,9 @@ my %sACDSeeRegionStruct = (
|
|
|
56
56
|
Name => 'RegionInfoACDSee',
|
|
57
57
|
# the "Struct" entry defines the structure fields
|
|
58
58
|
Struct => {
|
|
59
|
-
# NAMESPACE => { 'acdsee-rs' => 'http://ns.acdsee.com/regions/' },
|
|
60
59
|
# optional structure name (used for warning messages only)
|
|
61
60
|
STRUCT_NAME => 'ACDSee RegionInfo',
|
|
62
61
|
RegionList => {
|
|
63
|
-
#FlatName => 'Region',
|
|
64
62
|
Struct => \%sACDSeeRegionStruct,
|
|
65
63
|
List => 'Bag',
|
|
66
64
|
},
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
#------------------------------------------------------------------------------
|
|
2
|
+
# File: depthmap.config
|
|
3
|
+
#
|
|
4
|
+
# Description: Composite tag definitions to extract DepthMap and ConfidenceMap
|
|
5
|
+
# images from Google Dynamic-depth images
|
|
6
|
+
#
|
|
7
|
+
# Usage: exiftool -config depthmap.config -W %d%f_%t.%s -depthmap -confidencemap -b DIR
|
|
8
|
+
#
|
|
9
|
+
# Requires: ExifTool version 11.88 or later
|
|
10
|
+
#
|
|
11
|
+
# Revisions: 2020/02/20 - P. Harvey Created
|
|
12
|
+
#------------------------------------------------------------------------------
|
|
13
|
+
|
|
14
|
+
sub GetTrailerImage($$)
|
|
15
|
+
{
|
|
16
|
+
my ($val, $type) = @_;
|
|
17
|
+
my @uri = ref $$val[1] ? @{$$val[1]} : $$val[1];
|
|
18
|
+
my @len = ref $$val[2] ? @{$$val[2]} : $$val[2];
|
|
19
|
+
my $start = 0;
|
|
20
|
+
for (my $i=0; $i<@uri; ++$i) {
|
|
21
|
+
if ($uri[$i] =~ /$type/) {
|
|
22
|
+
my $img = substr(${$$val[0]}, $start, $len[$i]);
|
|
23
|
+
return \$img;
|
|
24
|
+
}
|
|
25
|
+
$start += $len[$i];
|
|
26
|
+
}
|
|
27
|
+
return undef;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
%Image::ExifTool::UserDefined = (
|
|
31
|
+
'Image::ExifTool::Composite' => {
|
|
32
|
+
DepthMap => {
|
|
33
|
+
Require => {
|
|
34
|
+
0 => 'Trailer',
|
|
35
|
+
1 => 'ContainerDirectoryItemDataURI',
|
|
36
|
+
2 => 'ContainerDirectoryItemLength',
|
|
37
|
+
},
|
|
38
|
+
ValueConv => 'GetTrailerImage(\@val, "depthmap")',
|
|
39
|
+
},
|
|
40
|
+
ConfidenceMap => {
|
|
41
|
+
Require => {
|
|
42
|
+
0 => 'Trailer',
|
|
43
|
+
1 => 'ContainerDirectoryItemDataURI',
|
|
44
|
+
2 => 'ContainerDirectoryItemLength',
|
|
45
|
+
},
|
|
46
|
+
ValueConv => 'GetTrailerImage(\@val, "confidencemap")',
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
%Image::ExifTool::UserDefined::Options = (
|
|
52
|
+
RequestTags => 'Trailer',
|
|
53
|
+
);
|
|
54
|
+
|
|
55
|
+
#------------------------------------------------------------------------------
|
|
56
|
+
1; #end
|
|
@@ -215,6 +215,8 @@
|
|
|
215
215
|
2 => 'OtherImage',
|
|
216
216
|
# (DNG and A100 ARW may be have 2 PreviewImage's)
|
|
217
217
|
3 => 'PreviewImage (1)',
|
|
218
|
+
# (if the MPF has 2 previews, MPImage3 could be the larger one)
|
|
219
|
+
4 => 'MPImage3',
|
|
218
220
|
},
|
|
219
221
|
# ValueConv may also be a code reference
|
|
220
222
|
# Inputs: 0) reference to list of values, 1) ExifTool object
|
|
@@ -95,7 +95,7 @@ sub has_defined {
|
|
|
95
95
|
},
|
|
96
96
|
);
|
|
97
97
|
|
|
98
|
-
# A couple of shortcuts to test for the
|
|
98
|
+
# A couple of shortcuts to test for the existence of certain tags
|
|
99
99
|
%Image::ExifTool::UserDefined::Shortcuts = (
|
|
100
100
|
TiffVersion5Tags => [
|
|
101
101
|
'EXIF:Artist', 'EXIF:ColorMap', 'EXIF:ModifyDate', 'EXIF:HostComputer', 'EXIF:SubfileType',
|
data/bin/exiftool
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
use strict;
|
|
11
11
|
require 5.004;
|
|
12
12
|
|
|
13
|
-
my $version = '11.
|
|
13
|
+
my $version = '11.88';
|
|
14
14
|
|
|
15
15
|
# add our 'lib' directory to the include list BEFORE 'use Image::ExifTool'
|
|
16
16
|
my $exeDir;
|
|
@@ -504,6 +504,7 @@ my @fileOrder; # tags to use for ordering of input files
|
|
|
504
504
|
my $fileOrderFast; # -fast level for -fileOrder option
|
|
505
505
|
my $addGeotime; # automatically added geotime argument
|
|
506
506
|
my $doGlob; # flag set to do filename wildcard expansion
|
|
507
|
+
my $endOfOpts; # flag set if "--" option encountered
|
|
507
508
|
my $escapeXML; # flag to escape printed values for xml
|
|
508
509
|
my $setTagsFile; # filename for last TagsFromFile option
|
|
509
510
|
my $sortOpt; # sort option is used
|
|
@@ -540,7 +541,7 @@ if (not $preserveTime and $^O eq 'MSWin32') {
|
|
|
540
541
|
for (;;) {
|
|
541
542
|
|
|
542
543
|
# execute the command now if no more arguments or -execute is used
|
|
543
|
-
if (not @ARGV or $ARGV[0] =~ /^(-|\xe2\x88\x92)execute(\d*)$/i) {
|
|
544
|
+
if (not @ARGV or ($ARGV[0] =~ /^(-|\xe2\x88\x92)execute(\d*)$/i and not $endOfOpts)) {
|
|
544
545
|
if (@ARGV) {
|
|
545
546
|
$executeID = $2; # save -execute number for "{ready}" response
|
|
546
547
|
$helped = 1; # don't show help if we used -execute
|
|
@@ -591,6 +592,7 @@ for (;;) {
|
|
|
591
592
|
# process arguments which were deferred to the next pass
|
|
592
593
|
unshift @ARGV, @nextPass;
|
|
593
594
|
undef @nextPass;
|
|
595
|
+
undef $endOfOpts;
|
|
594
596
|
++$pass;
|
|
595
597
|
next;
|
|
596
598
|
}
|
|
@@ -600,8 +602,14 @@ for (;;) {
|
|
|
600
602
|
$_ = shift;
|
|
601
603
|
next if $badCmd; # flush remaining arguments if aborting this command
|
|
602
604
|
|
|
603
|
-
|
|
605
|
+
# allow funny dashes (nroff dash bug for cut-n-paste from pod)
|
|
606
|
+
if (not $endOfOpts and s/^(-|\xe2\x88\x92)//) {
|
|
604
607
|
s/^\xe2\x88\x92/-/; # translate double-dash too
|
|
608
|
+
if ($_ eq '-') {
|
|
609
|
+
$pass or push @nextPass, '--';
|
|
610
|
+
$endOfOpts = 1;
|
|
611
|
+
next;
|
|
612
|
+
}
|
|
605
613
|
my $a = lc $_;
|
|
606
614
|
if (/^list([wfrdx]|wf|g(\d*))?$/i) {
|
|
607
615
|
$pass or push @nextPass, "-$_";
|
|
@@ -3228,10 +3236,10 @@ sub FormatCSV($)
|
|
|
3228
3236
|
{
|
|
3229
3237
|
$val = 'base64:' . Image::ExifTool::XMP::EncodeBase64($val, 1);
|
|
3230
3238
|
}
|
|
3231
|
-
# currently, the value may contain NULL characters
|
|
3232
|
-
#
|
|
3233
|
-
#
|
|
3234
|
-
# the
|
|
3239
|
+
# currently, there is a chance that the value may contain NULL characters unless
|
|
3240
|
+
# the -b option is used to encode as Base64. It is unclear whether or not this
|
|
3241
|
+
# is valid CSV, but some readers may not like it. (If this becomes a problem,
|
|
3242
|
+
# in the future values may need to be truncated at the first NULL character.)
|
|
3235
3243
|
$val = qq{"$val"} if $val =~ s/"/""/g or $val =~ /(^\s+|\s+$)/ or $val =~ /[,\n\r]/;
|
|
3236
3244
|
return $val;
|
|
3237
3245
|
}
|
|
@@ -3795,7 +3803,7 @@ sub SuggestedExtension($$$)
|
|
|
3795
3803
|
$ext = 'vrd';
|
|
3796
3804
|
} elsif ($$valPt =~ /^IIII\x04\0\x04\0/) {
|
|
3797
3805
|
$ext = 'dr4';
|
|
3798
|
-
} elsif ($$valPt =~ /^(.{10}|.{522})(\x11\x01|\x00\x11)/) {
|
|
3806
|
+
} elsif ($$valPt =~ /^(.{10}|.{522})(\x11\x01|\x00\x11)/s) {
|
|
3799
3807
|
$ext = 'pict';
|
|
3800
3808
|
} else {
|
|
3801
3809
|
$ext = 'dat';
|
|
@@ -4291,34 +4299,35 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
|
4291
4299
|
|
|
4292
4300
|
File Types
|
|
4293
4301
|
------------+-------------+-------------+-------------+------------
|
|
4294
|
-
3FR r |
|
|
4295
|
-
3G2 r/w |
|
|
4296
|
-
3GP r/w |
|
|
4297
|
-
A r |
|
|
4298
|
-
AA r |
|
|
4299
|
-
AAE r |
|
|
4300
|
-
AAX r/w |
|
|
4301
|
-
ACR r |
|
|
4302
|
-
AFM r |
|
|
4303
|
-
AI r/w |
|
|
4304
|
-
AIFF r |
|
|
4305
|
-
APE r |
|
|
4306
|
-
ARQ r/w |
|
|
4307
|
-
ARW r/w |
|
|
4308
|
-
ASF r |
|
|
4309
|
-
AVI r |
|
|
4310
|
-
AVIF r/w |
|
|
4311
|
-
AZW r |
|
|
4312
|
-
BMP r |
|
|
4313
|
-
BPG r |
|
|
4314
|
-
BTF r |
|
|
4315
|
-
CHM r |
|
|
4316
|
-
COS r |
|
|
4317
|
-
CR2 r/w |
|
|
4318
|
-
CR3 r/w |
|
|
4319
|
-
CRM r/w |
|
|
4320
|
-
CRW r/w |
|
|
4321
|
-
CS1 r/w |
|
|
4302
|
+
3FR r | DR4 r/w/c | ITC r | ODP r | RIFF r
|
|
4303
|
+
3G2 r/w | DSS r | J2C r | ODS r | RSRC r
|
|
4304
|
+
3GP r/w | DV r | JNG r/w | ODT r | RTF r
|
|
4305
|
+
A r | DVB r/w | JP2 r/w | OFR r | RW2 r/w
|
|
4306
|
+
AA r | DVR-MS r | JPEG r/w | OGG r | RWL r/w
|
|
4307
|
+
AAE r | DYLIB r | JSON r | OGV r | RWZ r
|
|
4308
|
+
AAX r/w | EIP r | K25 r | OPUS r | RM r
|
|
4309
|
+
ACR r | EPS r/w | KDC r | ORF r/w | SEQ r
|
|
4310
|
+
AFM r | EPUB r | KEY r | OTF r | SKETCH r
|
|
4311
|
+
AI r/w | ERF r/w | LA r | PAC r | SO r
|
|
4312
|
+
AIFF r | EXE r | LFP r | PAGES r | SR2 r/w
|
|
4313
|
+
APE r | EXIF r/w/c | LNK r | PBM r/w | SRF r
|
|
4314
|
+
ARQ r/w | EXR r | LRV r/w | PCD r | SRW r/w
|
|
4315
|
+
ARW r/w | EXV r/w/c | M2TS r | PCX r | SVG r
|
|
4316
|
+
ASF r | F4A/V r/w | M4A/V r/w | PDB r | SWF r
|
|
4317
|
+
AVI r | FFF r/w | MAX r | PDF r/w | THM r/w
|
|
4318
|
+
AVIF r/w | FITS r | MEF r/w | PEF r/w | TIFF r/w
|
|
4319
|
+
AZW r | FLA r | MIE r/w/c | PFA r | TORRENT r
|
|
4320
|
+
BMP r | FLAC r | MIFF r | PFB r | TTC r
|
|
4321
|
+
BPG r | FLIF r/w | MKA r | PFM r | TTF r
|
|
4322
|
+
BTF r | FLV r | MKS r | PGF r | TXT r
|
|
4323
|
+
CHM r | FPF r | MKV r | PGM r/w | VCF r
|
|
4324
|
+
COS r | FPX r | MNG r/w | PLIST r | VRD r/w/c
|
|
4325
|
+
CR2 r/w | GIF r/w | MOBI r | PICT r | VSD r
|
|
4326
|
+
CR3 r/w | GPR r/w | MODD r | PMP r | WAV r
|
|
4327
|
+
CRM r/w | GZ r | MOI r | PNG r/w | WDP r/w
|
|
4328
|
+
CRW r/w | HDP r/w | MOS r/w | PPM r/w | WEBP r
|
|
4329
|
+
CS1 r/w | HDR r | MOV r/w | PPT r | WEBM r
|
|
4330
|
+
CSV r | HEIC r/w | MP3 r | PPTX r | WMA r
|
|
4322
4331
|
DCM r | HEIF r/w | MP4 r/w | PS r/w | WMV r
|
|
4323
4332
|
DCP r/w | HTML r | MPC r | PSB r/w | WTV r
|
|
4324
4333
|
DCR r | ICC r/w/c | MPG r | PSD r/w | WV r
|
|
@@ -4330,7 +4339,6 @@ supported by ExifTool (r = read, w = write, c = create):
|
|
|
4330
4339
|
DOC r | INSV r | NRW r/w | RAM r | ZIP r
|
|
4331
4340
|
DOCX r | INX r | NUMBERS r | RAR r |
|
|
4332
4341
|
DPX r | ISO r | O r | RAW r/w |
|
|
4333
|
-
DR4 r/w/c | ITC r | ODP r | RIFF r |
|
|
4334
4342
|
|
|
4335
4343
|
Meta Information
|
|
4336
4344
|
----------------------+----------------------+---------------------
|
|
@@ -4442,6 +4450,7 @@ L<Other options|/Other options>
|
|
|
4442
4450
|
-k (-pause) Pause before terminating
|
|
4443
4451
|
-list[w|f|wf|g[NUM]|d|x] List various exiftool capabilities
|
|
4444
4452
|
-ver Print exiftool version number
|
|
4453
|
+
-- End of options
|
|
4445
4454
|
|
|
4446
4455
|
L<Special features|/Special features>
|
|
4447
4456
|
|
|
@@ -5193,7 +5202,7 @@ with this command:
|
|
|
5193
5202
|
|
|
5194
5203
|
produces output like this:
|
|
5195
5204
|
|
|
5196
|
-
-- Generated by ExifTool 11.
|
|
5205
|
+
-- Generated by ExifTool 11.88 --
|
|
5197
5206
|
File: a.jpg - 2003:10:31 15:44:19
|
|
5198
5207
|
(f/5.6, 1/60s, ISO 100)
|
|
5199
5208
|
File: b.jpg - 2006:05:23 11:57:38
|
|
@@ -5771,6 +5780,9 @@ of a temporary file before deleting the temporary. The extra step results
|
|
|
5771
5780
|
in slower performance, so the B<-overwrite_original> option should be used
|
|
5772
5781
|
instead unless necessary.
|
|
5773
5782
|
|
|
5783
|
+
Note that this option reverts to the behaviour of the B<-overwrite_original>
|
|
5784
|
+
option when also writing the FileName and/or Directory tags.
|
|
5785
|
+
|
|
5774
5786
|
=item B<-P> (B<-preserve>)
|
|
5775
5787
|
|
|
5776
5788
|
Preserve the filesystem modification date/time (C<FileModifyDate>) of the
|
|
@@ -5959,6 +5971,11 @@ addition system information (see the README file of the full distribution
|
|
|
5959
5971
|
for more details about optional libraries), or B<-v2> to also list the Perl
|
|
5960
5972
|
include directories.
|
|
5961
5973
|
|
|
5974
|
+
=item B<-->
|
|
5975
|
+
|
|
5976
|
+
Indicates the end of options. Any remaining arguments are treated as file
|
|
5977
|
+
names, even if they begin with a dash (C<->).
|
|
5978
|
+
|
|
5962
5979
|
=back
|
|
5963
5980
|
|
|
5964
5981
|
=head3 Special features
|
|
@@ -6357,7 +6374,7 @@ there are three cases where file write permission is also required:
|
|
|
6357
6374
|
B<-overwrite_original> option is used, or b) the C<_original> backup already
|
|
6358
6375
|
exists.
|
|
6359
6376
|
|
|
6360
|
-
Hidden files in Windows behave as read-only files when
|
|
6377
|
+
Hidden files in Windows behave as read-only files when attempting to write
|
|
6361
6378
|
any real tags to the file -- an error is generated when using the
|
|
6362
6379
|
B<-overwrite_original_in_place>, otherwise writing should be successful and
|
|
6363
6380
|
the hidden attribute will be removed. But the B<-if> option may be used to
|