# ExifTool Version History

RSS feed: https://exiftool.org/rss.xml

Note: The most recent production release is Version 13.10. (Other versions are considered development releases, and are not uploaded to MetaCPAN.)

Mar. 1, 2025 - Version 13.22

- Improvements and additions to the new plot feature
- Decode a few more DJI timed metadata tags
- Extract GainMapImage from PNG images
- Reverted WebP FileType change of version 13.20
- Set $^W in the exiftool application to re-enable global warnings (they have been disabled since version 12.92 due to the shebang change)
- Fixed possible incorrect IFD number in "No size tag" warning
- Fixed "File is empty" error when using -plot with -w to write the output file into the same directory as the input files

Feb. 20, 2025 - Version 13.21

- Patched issue that could result in runtime warning for some video files
- Fixed a bug with the new -plot option that could generate a compiler error

Feb. 20, 2025 - Version 13.20

- Added new -plot option for generating SVG-format plots from tag values
- Added a new Olympus CameraType
- Added a new Nikon Z LensID (thanks Warren Hatch)
- Overhauled decoding of Nikon AF tags (thanks Warren Hatch)
- Decode timed GPS from yet another model dashcam
- Decode more information from AAE files
- Decode more tags from DJI videos
- Updated Windows launcher (thanks Oliver Betz)
- Enhanced -w option to be available for use with the -csv output
- Attempted to patch a problem writing some PDF files
- Fail if a required module is missing when attempting to write a formatted date/time value instead of falling back to write as unformatted
- Minor change to WebP lossless FileType text
- API Changes:
  - Added Plot option

Feb. 10, 2025 - Version 13.19

- Added read/write support for PDF and XMP-pdfx SourceModified
- Decode GPS from two more DJI protobuf formats (Matrice 30 and Mini 4 Pro)
- Decode timed GPS from Rexing V1-4k dashcam
- Decode more information from AAE files
- Made a new icon for the Windows EXE application
- Improved handling of ICC_Profile in HEIC images:
  - Profiles for sub-images are extracted as sub-documents
  - Allow only the profile of the main image to be written
- Changed family 3 groups for ICO files so the first icon is in the Doc1 instead of the Main group
- Updated Sony decoding for ILCE-1M2 (thanks Jos Roost)

Feb. 3, 2025 - Version 13.18

- Decode a number of new GoPro tags
- Enhanced -geotag option to set Geotime from either SubSecDateTimeOriginal (preferentially) or DateTimeOriginal if not otherwise specified
- Don't allow ICC_Profile to be deleted from QuickTime-based files (specifically HEIC, to avoid problem where Apple Preview wouldn't display the resulting file)
- Improved decoding of AF points for Nikon D3400 and D7500
- Patched issue introduced in 13.13 which could give a "No data reference" error when writing MP4 videos from some Google phones
- Fixed problem writing XMP-iptcExt:LocationCreatedGPSAltitudeRef with an incorrect namespace

Jan. 29, 2025 - Version 13.17

- Added support for reading more embedded images and videos written in the JPEG trailer by some phones
- Added support for reading JPEG trailer written by some OnePlus phones
- Added a -validate warning for QuickTime 'wide' atoms with an invalid size
- Added a new CanonLensType
- Avoid decoding Sony 0x9050 data for the ILCE-1M2 because the encoding has changed since the ILCE-1 and the new encoding is not yet known (github #310)
- Fixed issue that could cause runtime warning when using -j with -b
- Fixed some issues decoding AFPointsUsed for some newer Nikon models
- Fixed problem corrupting QuickTime-format videos when writing if they contain a 'wide' atom with an invalid size

Jan. 25, 2025 - Version 13.16

- Added a couple of new Nikon Z lenses (thanks Warren Hatch)
- Added a new Canon RFLensType (thanks Norbert Wasser)
- Added support for a MIE trailer on QuickTime-format files
- Added a number of new EXE MachineType values (github #309)
- Made "iTunes" a deletable group
- Updated decoding of many Nikon tags for the Z9 firmware version 5.1 (thanks Warren Hatch)
- Fixed issue where -diff option would miss showing 1 tag from a group that exists in the difference file but not in the source file
- Fixed issue where tag exclusions for alternate files weren't honoured in a -p formatting expression when using "$file#:all:all" in the expression and the -file#, -x, and -p options all together
- Fixed FileTypeDescription for lossless extended WebP images

Jan. 23, 2025 - Version 13.15

- Added a few new Panasonic AFSubjectDetection values (thanks Andrew J)
- Added " (lossless)" to FileType for lossless WebP images
- Avoid treating the QuickTime 'eng' language code as the default 'und' unless the country code is also the default
- Fixed issue where writing metadata to a non-extended lossless WebP image with an alpha channel could mess up rendering of the transparency
- Fixed problem decoding ID3 WXXX frames (github #307)

Jan. 20, 2025 - Version 13.14

- Changed so that deleting QuickTime ItemList group no longer deletes Keys
- Fixed bug where new ItemList tags weren't created when also creating new AudioKeys or VideoKeys tags in the same command if neither tag group pre-existed in the file

Jan. 20, 2025 - Version 13.13

- Added ability to write tags to the audio/video tracks of MOV/MP4 videos using the new AudioKeys and VideoKeys group names
- Decode GPS from another DJI protobuf format (Mavic 3)
- Decode yet another type of LIGOGPSINFO timed GPS from a dashcam video
- Extract some proprietary information from JPEG images of Vivo phones
- Enhanced Geolocation feature to allow the nearest cities to a specified city to be returned
- Updated xmp2exif.args and exif2xmp.args to properly handle time zones in XMP-exif date/time tags
- Changed family 1 group names for Keys, ItemList and UserData tags in a track
- Patched github #306 issue where a torrent file would return a format error when reading if it didn't contain an "announce" or "created by" entry
- Fixed "uninitialized value" runtime warning when reading some EXE files
- Fixed -diff output to add colon missing from some lines when used with -g

Jan. 13, 2025 - Version 13.12

- Added a few new Panasonic AFAreaMode values (thanks Andrew J)
- Added a couple of new Canon RFLensType values (thanks Norbert Wasser)
- Added a -validate warning for duplicate IPTC tags
- Decode AF points for some newer Nikon models (thanks Warren Hatch)
- Decode a new Panasonic tag (thanks Andrew J)
- Decode a couple of previously unknown tags from LIGOGPSINFO records
- Extract some PDB information if available from Win32 EXE files (github #303)
- Improved handling of duplicate tags in -diff output
- Improved handling of QuickTime zero date/time values
- Enchanced -csv= and -json= options to allow group names and wildcards to be used when specifying which tags to import
- Updated some EXIF:Compression values (github #304)
- Changed wording of warning when file time couldn't be updated
- Fixed bug introduced in 13.11 reading EXIF from some EXV files
- Fixed bug introduced in 12.99 where empty entries in a CSV file weren't ignored as they should be when importing with -csv=
- Fixed problem where MWG module wasn't loaded automatically when specifying Composite:MWG:TAG instead of MWG:TAG
- Fixed bug where -diff option was inconsistent in its treatment of List values when used with the -sep option

Jan. 1, 2025 - Version 13.11

- Added warning for an unknown DJI protobuf schema
- Decode timed GPS from DJI Osmo Action 5 videos
- Decode yet another type of LIGOGPSINFO timed GPS from a dashcam video
- Made Matroska Keywords and Instruments List-type tags
- Fixed problem were EXIF couldn't be added to some AVIF files
- API Changes:
  - Added GPSQuadrant option

Dec. 20, 2024 - Version 13.10 (production release)

- Added warnings for out-of-order entries in 'iinf' and 'ipma' boxes of HEIC images
- Added support for date/time formatting codes %f and %z in the inverse print conversion when writing tags
- Updated Geolocation databases from current geonames.org files
- Improved verbose output to show values stored with construction method 1 in MP4-based files
- Enhanced the date/time timezone format specifier %z so that %:z returns the time zone with a colon separator (eg. "-05:00")
- Fixed bug where the existing tag wasn't being removed when writing a new value for an Unknown QuickTime UserData or ItemList tag

Dec. 17, 2024 - Version 13.09

- Added a new QuickTime tag (thanks Matti)
- Added a missing format check on a few tags when writing
- Decode a couple of new ICC_Profile tags
- Patched HEIC writer so newly added XMP or EXIF refers to the 'tmap' item as well as the primary item of an HDRGainMap image (since iPhone 15 and 16 do it this way)
- Fixed compatibility issue where Apple Preview would no longer show the gain map image after adding new XMP to an HEIC with an HDR gain map

Dec. 14, 2024 - Version 13.08

- Decode ShutterCount for Canon EOS R6 Mark II (thanks Agoston Kapitany)
- Decode a few new Photoshop tags
- Suppress all duplicate Warning tags and add count to end of message
- Changed format of bitmask keys in -listx output
- Internal streamlining of LIGOGPSINFO decoding
- Fixed issue where some tags were incorrectly shown as writable in -listx output
- Fixed incorrect scaling for GPSSpeed in one LIGOGPSINFO variant
- Fixed an issue with filename encoding when the -L option is used and the API WindowsLongPath option is active

Dec. 11, 2024 - Version 13.07

- Decode a number of LIGOGPSINFO encrypted and enciphered timed GPS types (long overdue, but it took me a couple of years to acquire enough sample videos to have a good cross-section of the different formats)
- Fixed another place where FileSequence could be incremented twice when a -if condition was used
- Fixed a few places where character 0x7f may not have been escaped in string values
- API Changes:
  - Changed default WindowsLongPath option back to 1 after adding a patch to fix issue with piping from stdin

Dec. 5, 2024 - Version 13.06

- Decode timed metadata from MP4 videos of yet another dashcam model
- Patched issue where FileSequence could increment twice for each file when a -if condition was used
- API Changes:
  - Revert default WindowsLongPath option to the pre-13.05 setting until we can solve the pipe problem

Dec. 4, 2024 - Version 13.05

- Added a new SonyModelID
- Added support for XMP HDRGainMap and apdi namespaces
- Decode DJI timed djmd and dbgi protobuf-format metadata
- Decode APP10 AROT HDRGainCurve and APP2 URN UniformResourceName
- Decode a couple of new GoPro tags
- API Changes:
  - Changed default WindowsLongPath option to 1 (please report if this causes any problems)

Nov. 26, 2024 - Version 13.04

- Added the ability to write GPSDOP and GPSMeasureMode from the -geotag option if hdop or pdop information exists in the input track file
- Added a few new Canon RFLensTypes (thanks Norbert Wasser)
- Decode timed GPS from GoPro Hero 13 videos
- Improved writing of GPSDestLatitudeRef and GPSDestLongitudeRef tags to allow signed numbers to be written in the same way as GPSLatitudeRef and GPSLongitudeRef
- Warn if using an Image::ExifTool library that doesn't match the application version
- Renamed an Unknown Photoshop tag
- Convert GoPro GPSSpeed and GPSSpeed3D from m/s to km/h
- Patched to tolerate XML header in DOCX xml files
- Fixed incorrect file offsets for tags in some embedded files of -htmldump output
- Fixed -htmldump output to show the same names for unknown EXIF tags as with the -u option

Nov. 12, 2024 - Version 13.03

- Added ability to include or exclude tags from CSV and JSON imports (-csv=CSVFILE and -json=JSONFILE) by adding -TAG or --TAG options
- Added read/delete support for SEAL metadata in JPG, TIFF, XMP, PNG, WEBP, HEIC, PPM, MOV and MP4 files, and read support in PDF, MKV and WAV files
- Added support for user-defined application extensions in GIF images
- Added print conversion for QuickTime VideoFullRangeFlag
- Apply API LimitLongValues option to hex field in -j output
- Avoid extracting some large AES-encrypted data from PDF files for performance reasons unless the -m option is used (current limits are 100 kB for XMP and 10 kB for everything else)
- Fixed WindowsLongPath option to support wide characters (thanks Frank B)
- Fixed problem writing ICC_Profile to a GIF image which already had one
- Fixed problem writing Apple:FocusDistanceRange
- API Changes:
  - Enchanced GlobalTimeShift option to allow the base tag to be specified, otherwise use the first specified source date/time tag when copying tags

Nov. 5, 2024 - Version 13.02

- Enhanced -j -l output to add optional "fmt" and "hex" fields
- Enhanced -geotag option to support Android "Export Timeline data" JSON format
- Changed ProductVersion of Windows launcher to match ExifTool version
- Patched to use empty group name instead of "Copy0" for family 4 group name of missing tag when the -f option is used
- Patched to avoid showing "Unknown" for group of primary tag when -g4 or -G4 was used with the -j or -csv option
- Patched to avoid using Encode module in Windows because it can hang if run from a working directory with a long path name
- Patched to use -csv output if -j also used
- Fixed a few problems with the new WindowsLongPath option
- Fixed problem setting FileCreateDate with Xcode 16 command line tools if the date/time contains a time zone
- Fixed problem in -csv output when combined with -g
- API Changes:
  - Added SaveBin option

Nov. 1, 2024 - Version 13.01

- NOTE: Please test the new API WindowsLongPath option because the idea is to enable this by default if everything works out well
- Fixed bug which could result in runtime warning if when API IgnoreTags option is set to "all" when reading a TXT file format
- Fixed problem reading some information from LNK files
- Fixed verbose output to show "Binary data" message for SCALAR values
- Fixed bug where part of the hex dump from a -v3 output could go to stdout instead of the file specified by a -w option
- API Changes:
  - Added WindowsLongPath option for testing
  - Changed CharsetFileName option to automatically assume UTF8 if the file name contains special characters and is valid UTF8

Oct. 29, 2024 - Version 13.00 (production release)

- Added support for reading GPS from Autel Evo II drone videos
- Added a new PhaseOne RawFormat value
- Updated XMP-exifEX tags, exif2xmp.args and xmp2exif.args according to the 2024 EXIF for XMP specification
- Updated Geolocation databases from current geonames.org files
- Updated the MIME types for a couple of font formats
- Enhanced -diff option to work with -ec (C-style escape of special chars)
- Changed name of EXIF Title tag to ImageTitle to correspond with specifiation
- Reverted a geotag warning message to remove debugging information that was added in version 12.67 and moved this information into a -v3 verbose message
- Patched Perl bug which gave "Can't spawn" warning in Windows if control-C was pressed while displaying the exiftool application help
- Fixed API StructFormat JSONQ setting to properly quote values in structures
- Fixed incorrect AudioStreamType for M2TS videos containing a PGS stream
- Fixed -diff option so "same tags" messages are only shown when -v is added (as per the documentation)

History of older versions (back to Nov. 19, 2003 - Version 1.00) -->

<-- Back to ExifTool home page