UNPKG

exiftool-vendored.pl

Version:
1,043 lines (890 loc) 557 kB
DO NOT EDIT THIS FILE -- it is generated from the html history files. ExifTool Version History RSS feed: https://exiftool.org/rss.xml Note: The most recent production release is Version 13.55. (Other versions are considered development releases, and are not uploaded to MetaCPAN.) May 27, 2026 - Version 13.59 - Security update - Added NewUUID Extra tag (thanks Daniel Dumitriu, github #421) - Added a new Canon RF lens (thanks Norbert Wasser) - Added config_files/novelty.config to the distribution (github #422) - Decode tags from the Sony ILCE-7RM6 (thanks Jos Roost) - Decode a new FujiFilm tag (thanks Iliah Borg) - Decode a few more DJI protobuf tags - Decode a new Ricoh Pentax tag - Issue Error instead of Warning when writing XMP with some problems which could cause loss of data - Improved error message when reading wrongly encoded CSV or JSON file - Enhanced -config option to allow piped input with "-config -" - Enhanced -validate option to do more strict checking of EXIF-for-XMP tags - Patched -sort option avoid inconsistent output ordering of same-named tags - Patched Composite SubSec date/time tags to specify the EXIF group for the SubSec and OffsetTime tags upon which they are based (avoids non-standard XMP tags from being incorrectly used here) - Fixed bug in -diff feature when finding differences for specific tags and a specified tag was missing from the source file May 5, 2026 - Version 13.58 - Added a few new Nikon Z lenses (thanks Warren Hatch) - Added a few new QuickTime MajorBrand values (thanks Herb) - Added a new RAFCompression value - Added undocumented -eh option (alias for -E/-escapeHTML) - Decode timed GPS from INNOVV N2 TS videos - Improved decoding of Canon ColorData for some models (thanks Iliah Borg) - Changed the name of the RAFVersion tag to FirmwareVersion - Removed conversion for Garmin FIT DeviceIndex values - Properly parse XML CDATA and comment sections - Fixed issue which could cause failed Garmin test on some systems Apr. 17, 2026 - Version 13.57 - Added print conversions for Garmin FIT enum tags - Decode a number of undocumented Garmin FIT tags - Reverted XML patch of 13.56 which broke structured output for XMP files with an XML header Apr. 15, 2026 - Version 13.56 - "Exif 3.1" - Added new tags of the Exif 3.1 specification - Added ability to geotag directly from any supported file(s) containing GPS - Added read support for Garmin FIT files, and the ability to use them with the -geotag option - Added a new Panasonic AFAreaMode (thanks Andrew) - Decode maker notes from newer FLIR cameras (github #408) - Improved config_files/local_time.config to add LocalTag UserParam feature - Updated Compression value re-purposed by GoPro (github #411) - Allow a few more different characters in the Windows -progress title string - Avoid trying to return structured information from XML files - Patched bug when reading QuickTime MTDT metadata (thanks Thurein Oo) - API Changes: - Enhanced GetValue so input tag name is no longer case sensitive Apr. 7, 2026 - Version 13.55 (production release) - Added a few new Windows LNK GUID values - Extract more unknown information from QuickTime metadata tracks - Improved config_files/local_time.config to preserve sub seconds - Improved lens identification logic for Canon cameras in the case where the maker notes are missing Apr. 1, 2026 - Version 13.54 - Security update - Added a new PentaxModelID - Decode timed GPS from another DJI model - Decode more information from Apple live photo videos - Updated DICOM tags to 2026b specification - Patched to fix failed tests on Windows (was a bug in the tests) - Patched to allow spaces in Windows title strings Mar. 19, 2026 - Version 13.53 - Security update (Windows only) - Added ability to read FileCreateDate (btime) on Linux systems (requires File::StatX) - Added a bunch more Sony lenses (thanks Jos Roost) - Added warnings for possibly malicious or corrupted LNK files (github #401) - Decode more information from LNK files - Decode timed GPS from Kenwood DRV-A510W MP4 videos - Fixed possible "undefined value" runtime warnings when reading torrent and WPG files (thanks Raf) - Fixed issue which could result in an "uninitialized value" runtime error when parsing corrupted CBOR information Feb. 27, 2026 - Version 13.52 - Added a number of new XMP tags written by Adobe software - Added UTF-16 support for a few different metadata types in which only UCS-2 was previously implemented (github #396) - Added a few more Canon FlashModel values and decode FlashModel for the 5DmkII (thanks Peter Wem, github #390) - Added a new Canon LensType (github #395) - Added some missing file attribute bits to two of the new LNK tags - Decode internal serial number for the 5DmkII (thanks Peter Wem, github #398) - Decode another OwnerName for the 5DmkII (thanks Peter Wem, github #397) - Decode some timed GPS for a couple of new DJI drones - Enable WindowsLongPath by default only if Win32::API is available - Renamed the Pentax K3III AFInfo tag to AFInfoK3III Feb. 19, 2026 - Version 13.51 - Added a new Nikon LensID (thanks Johan) - Decode more tags from Windows LNK files - Decode another LIGOGPSINFO variant (github #394) - Decode some new Canon tags (thanks Peter Wem, github #389, #390, #393) - Decode some new Nikon tags - Split decoding on Nikon BurstGroupID into separate tags - Fixed round-off error in GPSDateTime seconds for camm6 metadata in MP4 videos introduced in 13.45 - Fixed bug generating the default-language version of QuickTime:LocationInformation (github #391) Feb. 7, 2026 - Version 13.50 (production release) - Security update (MacOS only) - Added a few new Sony lenses (thanks Jos Roost) - Added a couple of new Canon lenses (thanks Norbert Wasser) - Decode another Samsung trailer tag - Decode BlackLevels from some Canon CRW files (github #387) - Updated Sony maker note decoding for the ILCE-7M5 (thanks Jos Roost) - Fixed -list options so reading image files beforehand doesn't add tags to the output when running multiple commands using the -execute feature Feb. 3, 2026 - Version 13.49 - Decode a couple of new Samsung trailer tags - Disabled decoding of MenuSettings for the Nikon Z6III firmware 2.0 until the changes can be worked through in detail - Fixed problem where Google Photos had problems displaying ExifTool-edited HEIC MotionPhoto images. Files written by older versions of ExifTool may be repaired by re-writing with 13.49 or later Jan. 31, 2026 - Version 13.48 - Added a new Nikon LensID (github #385) - Added support for quoted entries in input -geotag CSV files - Fixed decoding of Nikon Z6III menu settings for firmware 2.0 update - Fixed -fast2 to avoid processing maker notes in some QuickTime-based files - Fixed bug introduced in version 13.46 where some tags may be associated with the next fix when geotagging from GPX files Jan. 27, 2026 - Version 13.47 - Enhanced -fast option to avoid scanning QuickTime MediaData for metadata (improves performance when reading CR3 files from slow media, github #384) and -fast2 to avoid reading HDRP maker notes - Fixed hang problem when reading HDRPMakerNotes from some Google phones - API Changes: - Added CSV support to GeoUserTag option Jan. 25, 2026 - Version 13.46 - Added a new Pentax LensType - Decode some new Canon tags (github #380) - Renamed a newly added Canon tag (thanks Martin Chvatal) - Improved identification of Canon RF lenses in edited images when an extender was used - Changed description of FocalLength35efl to add "35mm Equiv" - Patched -validate option to recognize DNG 1.7.1 tags - Patched to remove maker note error/warning when writing files from some Google phones (github #377) - Patched to improve warning for corrupted HEIC files downloaded from heic.digital, and added ability to delete this garbage when writing (github #361 and #378) - Fixed minor error when writing some DJI DNG files - API Changes: - Added GeoUserTag option Dec. 26, 2025 - Version 13.45 - Added a number of new values for some Sony tags (thanks Milos Komarcevic) - Added a few new button functions for the Nikon Z9 (thanks Warren Hatch) - Added some Nikon subject detection values (thanks Warren Hatch) - Added a new Canon SubjectSwitching value - Decode Ricoh APP7 maker notes - Patched to allow a specific PreviewImage to be written to a DNG file containing multiple previews - Fixed bug reading large Protobuf integers on 32-bit systems (github #373) - Fixed minor error when writing some DJI DNG files - API Changes: - Added SystemTimeRes option Dec. 15, 2025 - Version 13.44 (production release) - Added read support for Kandao KVAR files - Added a few new Panasonic tags (github #365) - Added a new XMP-crs tag - Added a few new Matroska tags - Added a few values related to the new RAW file types for the Sony ILCE-7M5 (thanks Milos Komarcevic) - Decode a few new PhaseOne tags (github #372) - Decode timed GPS and other metadata from Kandao MP4 videos - Improvements to family 1 and 5 groups for tags in Matroska videos, and prioritize top-level tags when duplicates exist - Assume a default TimecodeScale of 1ms for MKV videos - Patched to avoid runtime warning when parsing corrupted QuickTime data (thanks Neal Krawetz) - Fixed decoding of ShutterCount for Sony ILCE-7M5 (github #369) Dec. 4, 2025 - Version 13.43 - Added support for a couple of new Android QuickTime Keys tags - Added date/time conversion for RIFF DateCreated - Added ability to read/write (but not create/delete) the HEIF Mirroring tag - Added a new SonyModelID - Added a new Canon LensType (thanks Matthias) - Decode ShutterCount for the Canon EOS R6 Mark III - Decode another Samsung trailer tag - Convert invalid Panasonic AFPointPosition to 'n/a' - Fixed issue extracting timed GPS from some Wolfbox G900 MP4 videos Nov. 17, 2025 - Version 13.42 - Added warning if tag arguments come before -csv= or -json= in a command - Added a new CanonModelID and RFLensType (thanks Norbert Wasser) - Added ability to read XML as a block from Sony MP4 videos - Added "EOS" to the R5 Mark II CanonModelID string - Decode ReEditData in Samsung trailer - Decode a couple more Sony rtmd tags from MP4 videos - Tolerate some types of trailer corruption as caused by Samsung Gallery - Restrict decoding of MetaImageSize to HEIC files only - Fixed issue writing Keys tags to Sony PMW-EX1R videos - Fixed behaviour of CSV/JSON import when specifying tags to import into an existing list, or when importing ValueConv values (ie. "TAG#"), or when specifying a group name of "All" Nov. 5, 2025 - Version 13.41 - Added a new Canon LensType - Added Extra MakerNoteByteOrder tag - Added byte-order indication to the -v3 output for EXIF and BinaryData directories - Added a new Panasonic/Olympus LensType (github #363) - Added a new ProfileCMMType value (thanks Herb) - Extract EnvironmentTarget from LNK files (github #362) - Extract HighlightMarkers from DJI videos - Decode another Red tag - Recognize LRF file extension - Updated CanonColorData decoding for the R50V - Enhanced -csv= and -json= database import options to support full redirection and advanced formatting expressions - Require tags to be specified after the corresponding -csv= or -json= option when importing specific tags from a database - Fixed problem reading R3D images from the Red Komodo Oct. 24, 2025 - Version 13.40 - Added read support for WOFF and WOFF2 font files (github #358) - Added read support for Windows .URL files - Added new XMP-iptcExt generative AI tags (thanks IPTC) - Added config_files/local_time.config to the full distribution - Enhanced CSV import to allow SourceFile entries with a different case Oct. 15, 2025 - Version 13.39 - Added a few new Sony lens types and improved support for a few new cameras (thanks Jos Roost) - Added a new Olympus LensType (thanks Karsten Gieselmann) - Added some new Pentax PictureMode values (thanks Karsten Gieselmann) - Decode GPS from a number of new DJI protobuf formats (thanks Juan Irache, github #355) - Improved identification of M4A audio files (github #80) - Properly recognize VSDX files (github #357) - Patched to use date from the previous RMC sentence when missing an RMC sentence in timed GPS from the buggy NextBase 662GW - API Changes: - Added GeoHPosErr option to set GPSHPositioningError when geotagging Sept. 30, 2025 - Version 13.38 - Added read support for DSF audio files (github #331) - Decode a couple more GoPro tags - Improved WavPack audio file support to recognize the WVP extension and extract more than just RIFF metadata - Updated Sony decoding for the ILCE-6400A (thanks Jos Roost) - Set family 0 group name to "Composite" for approximated GPSDateTime in timed video metadata - Patched to recognize M2TS videos which begin in the middle of a packet - Patched to attempt reading XMP which has an invalid encoding (github #348) - Patched to avoid possible runtime warning when reading a EXE file with corrupt resources (github #354) - Fixed typo in a GoPro tag name Sept. 22, 2025 - Version 13.37 - Added support for geotagging from Columbus GPS logger CSV files - Added some new Canon, Sony and Olympus lenses (thanks Hubert Figuiere, github #352 and Jos Roost) - Added new Canon RFLensType and CanonModelID values (thanks Norbert Wasser and Hubert Figuiere, github #350) - Added a new FujiFilm FaceElementType value - Decode Google HDRP maker notes (both text and Protobuf formats) - Decode Reconyx MicroFire and Hyperfire 4K maker notes (thanks Reconyx) - Decode a number of new Canon and Pentax tags and add a number of new values (thanks Karsten Gieselmann) - Decode maker notes from Ricoh GR III videos - Decode a new Sony tag (thanks Jos Roost) - Raised size limit on QuickTime atoms extracted for the -ee option, and added a minor warning and allow bypassing with the -m option if over this limit - Minor change to verbose output for XMP metadata - Fixed possible hang/crash when reading Windows executables (github #351) - Fixed incorrect FujiFilm PanoramaDirection values - API Changes: - Fixed GeoDir option so alternate languages are loaded properly when a relative path is specified Sept. 9, 2025 - Version 13.36 (production release) - Added a new Nikon LensID (thanks Max, github #345) - Added new Sony and Pentax camera ID's (thanks Hubert Figuiere, github #347) - Tolerate 'junk' after 'WAVE' chunk in LA, PAC, OFR and WV audio files - Use gnu tar 1.35 to build the .tar.gz distribution package (versions 13.31-13.35 used bsdtar 3.5.3, and earlier versions used bsdtar 2.8.3) Sept. 6, 2025 - Version 13.35 (production release) - Added a new CanonModelID - Added new Olympus PictureMode and LensType values (thanks Michael Meissner) - Decode GPS from another DJI protobuf format (DJI Neo) - Decode a few new FujiFilm tags - Enhanced -ee option to extract M-RAW information from all images in FujiFilm RAF files - Improved handling of standard-format unknown XMP date/time tags when the API XMPAutoConv option is set (which is the default) to put them in the "Time" group and apply the -d date/time formatting - Improved -fileNUM option so it may be used to access tags from alternate files when the specified target FILE doesn't exist - Improved print conversions for some Canon tags to handle "n/a" values - Enhanced JSON long output (-j -l) so the API SaveBin option also returns the Rational ("rat") value if available - Changed -if option so the expression is evaluated even when the source file doesn't exist (to allow more flexibily when using -fileNUM option or when creating the output file when writing) - Fixed decoding of a few new Pentax tags (thanks Karsten Gieselmann) - Fixed -diff feature to report differences in binary-data values and to be consistent with handling of backslashes in Windows path names Aug. 18, 2025 - Version 13.34 - Decode a number of new Pentax tags (thanks Karsten Gieselmann) - Decode a new Canon tag (thanks Peter Wem, github #344) - Updated Sony decoding for the ILME-FX2 and DSC-RX1RM3 (thanks Jos Roost) - Minor fixes to decoding of new Olympus tags (thanks Karsten Gieselmann) - Reverted change of 13.20 which changed the behaviour when writing incorrectly-formatted date/time values - Patched to avoid "uninitialized value $module" when using some custom config files - Fixed issue reading maker notes from some Sony ILCE models - API Changes: - Added UndefTags option to allow -m and/or -f to be used without modifying the value of undef tags in -if expressions (which was the behaviour prior to version 12.60) July 25, 2025 - Version 13.33 - Added read support for TNEF files (eg. "winmail.dat") - Added a new Canon HighlightTonePriority value (github #339) - Decode Canon FocusBracketing tag (github #340) - Decode more tags for newer Nikon Z models (thanks Warren Hatch) - Decode a few more Olympus tags (thanks Karsten Gieselmann) - Decode face detection tags for the Pentax K-3III (thanks Karsten Gieselmann) - Decode a few more FujiFilm tags (github #343) - Handle Olympus RawDev2IFD tag 0x8000 (named it RawDevSubIFD) - Improved recognition of some Sony lenses (github #342) - Enhanced the -p option to cycle through sub-documents - Improved extraction of GoPro timed GPS to use sub-document numbers to separate the individual fixes, allowing -p to extract all fixes at sub-second resolution (although for earlier models these may not contain timestamps) - Extract EXIF information from Sigma fp MOV videos - Patched to avoid "multi-segment EXIF with external pointers" error when writing Olympus OM-1 JPG files converted by some utilities - Fixed decoding of Panasonic LongExposureNRUsed (thanks AndrewJ) - Fixed long-standing bug when using special characters in the -d option argument July 2, 2025 - Version 13.32 - Added a new Olympus CameraType (thanks Herb and Albert Shan) - Added a new Sony LensType (github #335) - Added a new Nikon CropHiSpeed value (thanks Albert Shan) - Added a warning if a tag value couldn't be packed for writing to a binary data structure - Decode more Ricoh/Pentax AF tags for some models (thanks Karsten Gieselmann) - Decode Canon HDR-PQ tag (github #336) - Extract a couple more EXIF tags - Patched to allow a dot (.) in the name of a structure element when writing - Fixed "uninitialized value" bug when using -w with the -stay_open feature - Fixed bug in -file option when using tag names to specify the name of the alternate file (the tags were taken only from the first input file unless a file name formatting code was also specified) June 19, 2025 - Version 13.31 - Added a new CanonModelID and RFLensType (thanks Norbert Wasser) - Added some new FujiFilm AdvancedFilter values (thanks Greybeard) - Added a new Nikon Z LensID (thanks Warren Hatch) - Decode a few new Sigma tags - Decode two more types of timed GPS from MP4 videos - Decode more Pentax AF tags for some models (thanks Karsten Gieselmann) - Extract Pages MediaBox from PDF files (github #333) - Enhanced Validate feature to check some embedded images - Remove sub-seconds if they exist when writing a PDF date - Removed a debugging warning left in the -plot update of 13.28 - Changed DNG ProfileIFD RGBTables to Binary-type tag (github #334) - Internal code improvements in the handling of some trailers - Patched LNK string parsing for Windows nonconformity (github #332) - Fixed a few possible "uninitialized value" warnings May 22, 2025 - Version 13.30 (production release) - Added a new Canon RF lens (thanks Norbert Wasser) - Added some new Olympus ArtFilter values - Added support for reading timed GPS from Transcend Drive Body Camera 70 MP4 videos - Added a new FujiFilm AdvancedFilter value (thanks Greybeard) - Decode maker notes from Sigma BF images - Decode a few more Pentax AF-related tags (thanks Karsten Gieselmann) - Extract PreviewImage and its metadata from Sigma BF MOV videos - Allow multiple config files to be specified on the command line (but leave undocumented for now because the config files currently included in the full ExifTool package aren't compatible with this feature) - Removed warning introduced in version 12.60 for an undefined tag in a -if condition, but leave the 12.60 change that sets these tags to an empty string when -m is used - Patched LensID conversion to better handle a manual lens on a Sony ILCE-7M2 - Patched to avoid runtime warning when using -fast option and reading and HEIC file via a pipe (but you will still get a seek error) - Fixed some tag format types in the config_files/pix4d.config file - Fixed possible "uninitialized value" warning when reading some types of Ligo timed GPS Apr. 27, 2025 - Version 13.29 - Changed default -geotime argument to use SubSecDateTimeOriginal if available instead of DateTimeOriginal, instead of applying both (as was done since ExifTool 13.18). This is more efficient, and avoids an unnecessary warning - Properly return warnings from inverse value conversions when copying a tag using -tagsFromFile with a tag name string - Fixed issue where RW2 images from the Panasonic DC-S1RM2 could be corrupted when writing Apr. 25, 2025 - Version 13.28 - Added print conversion for Pentax AFPointValues - Added another Pentax PictureMode value - Decode timed GPS from GKU D900 dashcam videos - Decode timed telemetry data from newer ARCore videos - Decode Panasonic AFAreaSize (thanks andrewj) - Decode ShutterCount for Canon EOS R8 and R50 (github #325) - Decode ThumbnailTIFF from some Insta360 videos - Decode AROT:HDRGainCurveSize from APP10 - Enhanced the -plot feature to allow Multi option to specify a different number of datasets for each plot - Updated to the 2025 MPF specification - Renamed K-3III AFPoints to AFPointsSelected and changed decoding - Fixed bug introduced in 13.23 that could cause an incorrect parsing of XMP attributes containing an equals sign - Fixed issue reading timed GPS from some Insta360 videos, and issue where writing these videos would fail - Fixed exif2xmp.args and xmp2exif.args to properly handle EXIF:ImageUniqueID Apr. 8, 2025 - Version 13.27 - Decode AF points for the Pentax K-3III - Decode timed GPS from a variant of the Rove R2-4K dashcam - Properly decode SensorTemperature for Pentax K3-III - Patched PCAP test to avoid potential failure - Patched to avoid potential "not a HASH reference" error when writing MOV/MP4 videos - Fixed issue which could result in "uninitialized value" errors when reading one type of timed GPS from MP4 videos - Fixed problem writing MotionPhotoVideo in MP4 files Mar. 31, 2025 - Version 13.26 - Added a new Olympus CameraType (thanks Herb) - Added a new PentaxModelID (github #322) - Added a new Nikon LensID - Improved Duration calculation for some WAV files - Changed a PCAP tag name and fixed typos in a few others (thanks blue-j) - Patched to avoid VignettingCorr warning for images from some Canon cameras - Patched to avoid some unnecessary duplicate tag warnings when -validate used with HEIC images - Fixed issue with XMP-xmpMM:Pantry items not exhibiting proper List-type behaviour Mar. 11, 2025 - Version 13.25 (production release) - IMPORTANT: Fixed issue which could corrupt HEIC images from newer iPhones under certain conditions when writing QuickTime:Rotation - Decode more PLIST information from HEIC images - Updated Geolocation databases from current geonames.org files - Updated DarwinCore for the 2023 specification (thanks Herb) - API Changes: - Added KeepUTCTime option Mar. 7, 2025 - Version 13.24 - Changed -listf, -listr and -listwf options to print descriptions when either -v or -l is added (previously only -l did this) - Patched to avoid failed PCAP test due to differing time zones (github #319) Mar. 7, 2025 - Version 13.23 - Added read support for CAP, PCAP and PCAPNG files (github #318) - Added a number of new Sony LensType2 values (thanks Jos Roost) - Added the 2 new GPSAltitudeRef values defined by EXIF 3.0 - Decode APP4 "Qualcomm Dual Camera Attributes" metadata - EXIF X/YResolution, ResolutionUnit and FlashpixVersion are no longer treated as mandatory tags (they were changed to optional in the EXIF 3.0 specification) - Patched decoding of Nikon Z8 MenuSettings to accommodate changes in the data structure as of firmware version 2.1 - Patched to avoid bug in Perl v5.26.3 which could cause hang when reading very large and corrupted XMP - Patched -plot option to avoid bug in Google Chrome SVG marker rendering - API Changes: - Fixed documentation for LargeFileSupport option to reflect current default 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 - "SVG Plot" - 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 Google Maps "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) Oct. 18, 2024 - Version 12.99 - Added -diff option to compare the metadata in two files - Added a new Canon lens (thanks Norbert Wasser) - Decode GPS from 70mai A810 dashcam videos - Decode a new QuickTime tag - Patched to recognize C2PA APP11 JUMBF header with incorrect byte order written by buggy Microsoft software - Patched to maintain order of entries in a JSON object when reading - Patched to maintain order of CSV columns when setting tags from a CSV file - Patched to maintain order of XMP lang-alt entries when writing/copying - Fixed typo in an APP12 tag name - API Changes: - Structured values returned as HASH references with the Struct option may contain a new "_ordered_keys_" entry used to preserve the order of the entries - Added the OrderedKeys method to return the ordered or sorted keys from a returned structure value Oct. 8, 2024 - Version 12.98 - Added write support for PDF files with huge offsets - Added a number of new Sony LensType values (thanks Jos Roost) - Require -v4 or higher to output "JPG RST" lines - Patched problem with -fast option when reading HEIC file via a pipe - Patched to avoid hang when reading some corrupted XMP Sept. 25, 2024 - Version 12.97 - Added ability to ignore up to 4095 bytes of garbage at the end of an INDD file with the -m option - Added a new Canon RFLensType value (thanks Norbert Wasser) - Added a new Nikon Z LensID - Decode a number of new Nikon Z6_3 tags (thanks Warren Hatch) - Decode a few more FujiFilm tags (thanks Greybeard) - Enhanced %C format code to allow file-name collisions to be avoided by using a colon instead of a decimal in the format modifier - Fixed bug which could result in hang when using %C code in an output file name Sept. 1, 2024 - Version 12.96 - More improvements to handling of trailers on video files (and add ability to write videos which have an unknown trailer) - Fixed problem geotagging from some newer Google Takeout files Aug. 30, 2024 - Version 12.95 - Added a couple of new CanonModelID values - Decode ColorData for a couple of new Canon models - Fixed problem writing video files which have some known trailer types Aug. 29, 2024 - Version 12.94 - Added ability to geotag from new-format Google Takeout JSON files - Added a few new Android and Xiaomi QuickTime Keys tags - Added ability to read C2PA JUMBF metadata from TTF/OTF files - Internal changes to code for creating new directories - Changed Windows packages to have the application help text file in the exiftool_files folder instead of writing it to a temporary directory - Removed new QuickTime Keys tags added in 12.93 because these aren't used in top-level metadata (written to the video track by Apple devices) - Fixed the group names for synthesized default-language QuickTime tags and added a verbose message when generating these tags - Fixed warning in Geolocation.t self test Aug. 20, 2024 - Version 12.93 - Added a new Nikon LensID - Added a couple of new OpenEXR Compression types - Added a couple of new QuickTime Keys tags - Decode timed metadata from E-ACE B44 dashcam videos - Made "Unrecognized" Samsung Meta warnings minor - Fixed bug in -listg6 option which resulted in "uninitialized value" warnings - Fixed decoding of Func1Button and Func2Button for the Nikon Z6/Z7 - Fixed bug reading JUMB metadata from JXL images July 24, 2024 - Version 12.92 - Removed -w from exiftool shebang due to compatibility issues on some systems July 24, 2024 - Version 12.91 - Added a couple of new OpenEXR Compression values (github #276) - Updated 2 test files that were causing failed tests (ExifTool itself is unchanged) July 24, 2024 - Version 12.90 - Added support for reading Samsung trailer from PNG images - Decode two more formats of timed GPS from MP4 videos - Decode a few more Samung trailer tags (thanks Neal Krawetz) - Decode Canon AntiFlicker tag - Drop Nikon ShotInfo record when copying MakerNotes from NEF to JPG if it is larger than 50000 bytes (then MakerNotes would be too large for a single JPEG segment) - Changed exiftool shebang to use env: "#!/usr/bin/env perl -w" - Revert change of 12.84 to iterate through sub-documents with the -p option only if -ee is used July 12, 2024 - Version 12.89 - Added new Sony lenses and updated decoding of some tags (thanks Jos Roost) - Minor change to description of NKA files - Fixed Archive::Zip problem in Windows executable version July 11, 2024 - Version 12.88 - "New Windows/MacOS packages" - NOTE: The install procedure for the Windows executable has changed! - Windows EXE version now uses Oliver Betz's bundle with Strawberry Perl and comes in 32- and 64-bit versions - MacOS distribution now uses a flattened package - Added ability to read/write deflate-compressed XMP in HEIC files - Added a new Canon LensType (thanks Norbert Wasser) - Added a new XMP-GCamera tag (thanks Herb) - Added a new Nikon LensID - Added a few new Canon AFAreaMode values (thanks Wernfried) - Added config_files/onone.config to the distribution - Decode timed accelerometer readings from NextBase 622GW videos - Decode Pentax K-3III CameraOrentation (thanks Peter) - Improved German translation for LensModel - Enhanced the API StructFormat JSONQ setting to quote all JSON values, even if they aren't in a structure - Changed -geolocate option so specifying the Keys group writes Keys:GPSPosition only if an input city is specified, and Keys:LocationName only for input GPS coordinates - Tweaked API Geolocation option recognized space-separated lat/lon even when there is no decimal point in the numbers - API Changes: - Changed LargeFileSupport default to 1 and added a setting of 2 to warn if a large chunk is encountered June 13, 2024 - Version 12.87 - Added ability to write Google Container XMP tags (using the namespace prefix 'GContainer' to avoid conflict with the Google Device Container prefix) - Decode a few new tags for the Canon EOS R5 (thanks John Moyer) - Decode battery information for the Pentax K-3 III (thanks Peter) - Decode RAFCompression from FujiFilm RAF images (thanks Albert Shan) - Avoid reporting FileSize for pipes - Updated Geolocation databases from current geonames.org files - Enhanced Geolocation feature to allow lat/lon to be input with a space separator instead of a comma - Skip over Matroska Cluster if necessary to read Tags when referenced from SeekHead - Changed conversion for Matroska SeekID (now in hex with tag name in brackets) and SeekPosition (now returns an absolute offset) - Fixed problem writing XMP-Device:EarthPos coordinates - Fixed typo in a value of Canon:DigitalLensOptimizer (thanks Martin B.) - Fixed decoding of Matroska VideoScanType - Fixed misleading error message when -o option was used to write to an unsupported file type June 7, 2024 - Version 12.86 - Added a new value for a couple of Olympus tags (thanks Herb) - Improved handling of ID3 user-defined tags - Decode all JPEG segments from RICO box in Ricoh MOV videos - Decode a few new values for some tags written by Canon EOS R cameras (thanks John Moyer and Martin B.) - Patched some Olympus WB_RBLevels tags to allow 4 values to be written as per some newer models - Fixed issue when writing IPTC date tags with a date/time value containing subseconds with 4 or more digits May 21, 2024 - Version 12.85 - Added GeolocationFeatureType tag - Added read support for Nikon NKA and NXD adjustment files - Added a new Apple:ImageCaptureType value, and changed another one - Decode a few new Pentax tags - Decode a few new Canon tags - Decode some Ricoh Exif metadata from MOV videos - Extract ID3 UserDefinedText and UserDefinedURL tags by name - Make $advFmtSelf available for user-defined helper functions - Documented API GeoDir pseudo option feature - Tolerate pad byte at end of HIF file when writing - Raised priority of FileName, BaseName, Directory and FileType tags so they don't get hidden by other tags in the file which may have these names - Changed decoding of QuickTime Rotation (irot) to correspond with EXIF:Orientation (previously this was oddly reported as degrees of counterclockwise rotation) - Fixed a typo in the print conversion value for a couple of DPX tags - Fixed problem writing some QuickTime tags with very large (> 16 MB) values - Fixed bug in build_geolocation utility that resul