# ExifTool Version History

RSS feed: http://owl.phy.queensu.ca/~phil/exiftool/rss.xml

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

Nov. 21, 2010 - Version 8.40 (production release)

- Added -restore_original and -delete_original options
- Added new Canon, Pentax and Sony LensType values
- Decode more Pentax K-5 tags
- Decode a number of new tags in Nikon D7000 MOV videos
- Decode FocusDistance tags for the Canon EOS 60D
- Decode a few new Panasonic tags
- Decode a few maker note tags from Flip Video MP4 files
- Extract PDF PageMode and PageLayout tags
- Changed family 2 group names for a number of PDF tags
- Changed Canon LensType strings for a few lenses with updated models
- Patched problem reading GPX files which contain no newlines

Nov. 12, 2010 - Version 8.39

- Added read support for RAR archive files
- Added warning for non-standard XMP APP1 header in JPEG images
- Added a new Canon LensType (thanks Rolando Ruzic)
- Decode more Olympus WAV tags
- Decode a few more PDF document property tags
- Decode a new Canon tag
- Extract firmware revision letter with Nikon FirmwareVersion
- Improved decoding of some Pentax tags
- Changed names of a couple of Pentax tags
- Changed name of ASF:FileSize to FileLength to avoid conflict
- Fixed problem creating output files on network drives in Windows
- Fixed bug where MWG module wasn't loaded automatically when -execute was used

Nov. 7, 2010 - Version 8.38

- Added support for Nikon D3 firmware 2.02
- Decode many new Pentax K-5 tags and improved decoding of others
- Decode a few more Nikon D3 and D3S settings (thanks Warren Hatch)
- Decode some new Olympus WAV tags (thanks Tomasz Kawecki)
- Decode a few new Canon DPP 3.9.2 tags
- Decode PDF digital signature permission information
- Improved recognition of Adobe Illustrator PS-format AI files
- Disable writing XMP to Adobe Illustrator version 8 and older EPS files

Oct. 31, 2010 - Version 8.37

- Added ability to switch ARGFILE while -stay_open is active
- Fixed a couple of bugs with the new -stay_open option
- Fixed problem with -E option that caused double-escaping of Composite tags

Oct. 30, 2010 - Version 8.36

- Added ability to read/write metadata in Sigma X3F images containing a JpgFromRaw (ie. all Sigma models except the SD9 and SD10)
- Added -stay_open option to avoid startup delay when called from other applications
- Added a new Pentax LensType (thanks Hubert Meier)
- Decode a couple of new tags written by Sigma Photo Pro
- Changed family 0 group name for SonyIDC tags to "MakerNotes"
- Improved Composite:LensID to use LensModel if available when LensType is "Unknown"
- Fixed problem extracting ThumbnailImage from some FujiFilm RAF images
- Fixed problem calculating Red/BlueBalance for some newer Nikon models

Oct. 23, 2010 - Version 8.35 - "PDF Encryption"

- Added support for PDF AES-128 and AES-256 encryption (requires Digest::SHA for AES-256 support)
- Added -password option for processing password-protected PDF documents
- Added write support for a couple more FujiFilm RAF versions
- Added a number of new Olympus SceneMode values
- Added a few new SonyModelID's
- Added a new Nikon LensID (thanks marten)
- Added a Canon LensType and fixed an incorrect one (thanks Andreas Huggel)
- Decode a number of new Canon tags
- Decode a few new Nikon D3S settings (thanks Warren Hatch)
- Extract PDF UserAccess
- Extract Olympus ZoomedPreviewImage
- Updated decoding of Olympus AFPoint for recent E-models
- Avoid writing mandatory IPTC tags unless another IPTC tag actually changes (ie. trying to delete a non-existent IPTC tag will no longer have the side effect of generating mandatory IPTC tags)
- Improved language translations
- Improved error message when trying to write a file with the wrong extension
- Renamed a couple of Olympus tags
- Fixed problem reading/writing PDF tags from some encrypted stream objects
- API Changes:
  - Added Password option

Oct. 7, 2010 - Version 8.34

- Added read support for XCF and WebP images and WebM videos
- Added a couple of new PentaxModelID's
- Decode a number of new Canon 60D MakerNotes tags (thanks Bogdan for LensSerialNumber)
- Decode FrameCount from MakerNotes in Nikon MOV videos
- Decode Ambience and some video tags from Canon
- Decode more Canon EOS 1D Mark IV CameraInfo tags
- Updated decoding of Pentax HighISONoiseReduction for newer models
- Changed description of Canon SerialNumber tags
- Fixed problem with extra comma in JSON output when -w option was used

Oct. 3, 2010 - Version 8.33

- Added ability to specify numerator and denominator of rational values
- Decode more Canon custom picture style settings (thanks Tom Kawecki)
- Decode Samsung MP4 "TAGS" information from WP10 videos
- Decode thumbnail image and maker notes from Canon S95 MOV videos
- Decode Microsoft Photo 1.1 EXIF and XMP information
- Fixed problem copying tags dynamically from files with read errors
- Fixed problem setting FileName with a Windows UNC path (leading "\\")

Sept. 25, 2010 - Version 8.32

- Added the ability to use wildcards ('?' and '*') in tag names when extracting or copying information
- Added a number of new CanonModelID's
- Decode a few more QuickTime tags and improved decoding of others
- Decode UserDefPictureStyle tags for more Canon cameras (thanks Tom Kawecki)
- Extract unknown text-based maker notes under new MakerNoteUnknownText tag
- Tested writing of PDF 1.7 files and removed warning for this version
- Identify Canon MakerNote footer in HtmlDump of DNG images
- Updated MimeType for PSD, AVI, AIFF plus a number of raw file formats
- Changed FileType for Adobe Illustrator (AI) files
- Fixed "Can't handle XMP attribute 'rdf:xmlns'" error when writing some XMP

Sept. 17, 2010 - Version 8.31 - "CRW+XMP"

- Added ability to read/write XMP inside CanonVRD, which finally provides a technique to write XMP in CRW images! (thanks Mike Kobzar for help testing)
- Added a couple of new Canon LensType's and CanonModelID's
- Added a number of new Nikon LensID's (thanks Robert Rottmerhusen)
- Added a new Sony LensType (thanks Mladen Sever)
- Treat 'eng' as a default language in ID3v2 information
- Recognize AIT file extension (AI file)
- Fixed problem where ExifTool could refuse to write PDF files containing XMP-pdf:PDFVersion information

Sept. 11, 2010 - Version 8.30

- Added a couple of new Nikon LensID's (thanks Robert Rottmerhusen)
- Added a couple more Sigma LensType values
- Added a few more tag values for the new Sony SLT-A33, SLT-A55V and DSLR-A560
- Added a few more values for various Casio tags
- Added a new Canon LensType (thanks Guido)
- Decode Panasonic ContrastMode for the TZ10/ZS7
- Decode some Canon CameraInfo tags for the 60D
- Updated Canon custom functions for the 60D
- Updated Flash video to add some new values and decode some new tags
- Updated QuickTime decoding for new track and movie header formats
- Named a couple of unknown Canon tags
- Made Nikon PictureControl and NikonCaptureOutput directories block writable
- Fixed problem geotagging when any coordinate was exactly zero
- Fixed typo in Canon AFAssistBeam converted value
- Fixed problem displaying exiftool documentation on OS/2 (thanks Ilya Zakharevich)

Aug. 22, 2010 - Version 8.29

- Added a few new CanonModelID's
- Added verbose messages for "unsafe" and "protected" tags which are not copied
- Decode CameraTemperature for a few new Canon models
- Decode a few new Panasonic tags (thanks Zdenĕk Mihula)
- Decode a number of new 3rd party RIFF tags
- Recognize Casio-type maker notes in Concord cameras
- Handle "CDATA" sections in XML/XMP
- Fixed problem that could cause value to be added twice when writing MWG list-type tags without specifying a group
- Fixed bug extracting altitude from GPX files containing "rtept" nodes which could result in an altitude being associated with the next GPS fix
- Fixed problem deleting PreviewImage from MIE files

Aug. 14, 2010 - Version 8.28

- Added ability to specify Photoshop encoding (-charset Photoshop=CHARSET)
- Added support for maker notes of some Sony Ericsson phones
- Improved conversion for SigmaRaw:FocalLengthIn35mmFormat (thanks Niels Kristian Bech Jensen)
- Fixed bug in calculation of AvgBitrate for QuickTime videos (thanks Mats Peterson)
- Improved error handling when reading Matroska files
- Fixed -GROUP:geotag= to allow multiple geotag groups to be deleted separately

July 31, 2010 - Version 8.27

- Added support for QuickTime localized languages and character encodings
- Added support for alternate language ICC_Profile tags
- Added a new XMP-swf tag
- Added a new Sony LensType (thanks Mladen Sever)
- Added ability to specify any group (not only family 0 and 1) for source tag when copying
- Decode a number of new QuickTime tags
- Decode MakerNoteKodak9 maker notes in a few non-Kodak cameras
- Extract NikonCaptureHistory and drop when copying Nikon MakerNotes
- Calculate AvgBitrate for QuickTime movies
- Fixed names of a few recently added ICC_Profile tags (thanks Jeff Harmon)
- Fixed bug calculating duration of AVI videos for which FrameCount is zero
- Fixed tag ID for XMP-iptcExt:AdditionalModelInformation
- Fixed decoding of ShiftJIS character set

July 20, 2010 - Version 8.26

- Decode a number of new ICC_Profile tags added in approved revisions to the specification
- Drop NikonCaptureData when copying Nikon MakerNotes (it may be too large for a JPEG APP1 segment when copying from an NEF image)
- Made NikonCaptureData writable as a block and NikonCapture a deletable group
- Minor addition to tooltip for HtmlDump of offset values
- Fixed problem writing to an incorrectly-typed XMP list (patch for LR3 bug)
- Fixed problem setting file ownership on OS/2 systems when writing (thanks Ilya Zakharevich)
- Fixed incorrect ICC_Profile tag name (thanks Jeff Harmon)

July 13, 2010 - Version 8.25 (production release)

- Added CommonIFD0 shortcut tag to help when deleting metata from TIFF images
- Added a new Pentax LensType and fixed an incorrect one
- Added a new Panasonic ColorMode
- Decode FLAC picture metadata
- Changed ASF Preview tags to be consistent with ID3 and FLAC Picture tags
- Patched problem with funny dash character in cut-n-paste from documentation on some systems (by allowing the funny dash in command-line arguments)
- Fixed misleading warning message which could appear when writing MWG tags
- Fixed typo in an ID3 tag name (thanks Mats Peterson)
- Fixed an incorrect Sony lens name (thanks Stephen Bishop)
- Fixed problem misidentifying some other RAW files as Epson ERF

June 30, 2010 - Version 8.24

- Added ability to write some Kodak APP3 Meta tags
- Added a few new Olympus LensType's and new values for a couple of other tags
- Added support for yet another Kodak MakerNote variation (M580)
- Added conversion for OOXML DocSecurity tag (thanks Jeff Harmon)
- Added another Nikon ExternalFlashFlags value (thanks Warren Hatch)
- Decode more Canon VRD tags (thanks Gert Kello) and changed some tag names
- Decode a couple of new Canon 7D tags (thanks Vesa Kivisto)
- Decode a few more Sigma tags
- Decode HTML tags written by Microsoft Office
- Decode some MakerNotes tags from Samsung MP4 videos
- Allow RFC 8601 date/time values to be written without seconds
- Fixed conversion for Kodak Meta:SerialNumber
- Changed conversion of Canon FocusDistanceUpper/Lower tags to add units (m)
- Changed the names of some Nikon FlashExposureComp tags
- Changed name of RTF CharactersNoWhiteSpace tag to CharactersWithSpaces to conform with what Microsoft does with their software as opposed to what they say in their RTF specification
- Changed a few FlashPix tags for better consistency with OOXML and RTF
- Properly convert OOXML Unicode character entities
- Fixed problem writing some Sigma MakerNote tags
- Fixed problem writing incorrect value for "Uncalibrated" XMP:ColorSpace
- Fixed bug where some unknown Canon values were extracted twice with -U

June 20, 2010 - Version 8.23

- Added write support for FujiFilm RAF images from the HS10 and S100FS
- Added read support for RTF files
- Added read support for FPXR in JPEG APP4 as written by some HP cameras
- Added ability to copy files of any type (now does a straight copy instead of processing the file if no new values are set for any "real" tag)
- Added new values for CanonModelID, PentaxModelID and SonyModelID
- Added a new Ricoh LensID
- Added conversion for "Off" and "On" values when writing EXIF:Flash
- Added a new Canon LensType and changed the name of one Sigma lens
- Decode more Canon VRD tags and update to DPP 3.8 (thanks Gert Kello)
- Decode FujiFilm AutoDynamicRange
- Changed some DNG tags to make them writable (but "unsafe")

June 9, 2010 - Version 8.22

- Implemented PNG alternate language tags and special character translations
- Added print conversion for XMP-photoshop:ColorMode
- Decode some new Pentax 645D tags/values and added more PentaxModelID's
- Changed family 1 group names for Matroska Chapters
- Changed frame rate conversions to round to 3 decimal points
- Enable summary messages when -b is combined with -w
- Assume local system timezone on specified date (instead of current local timezone) when writing an IPTC time tag with a date/time value which doesn't include a timezone
- Fixed conversion of Matroska:ChapterTimeStart/End values
- Fixed an incorrect Panasonic Lens name (thanks Michael Byczkowski)

June 2, 2010 - Version 8.21

- Added read support for Matroska multimedia files (MKA, MKV and MKS)
- Added a new PentaxModelID (Optio E80)
- Decode some information from Casio EX-7000SX APP1 "QVCI", HP Photosmart R837 APP6 "TDHD" JPEG segments
- Extract more Samsung and HP PreviewImages hidden in other JPEG APP segments
- Extract unknown tags with numerical ID's by default when -v option is used
- Updated default GPSVersionID to 2.3.0.0 when writing
- Fixed bug geotagging from KML file (lat/long were swapped)

May 26, 2010 - Version 8.20

- Added read support for Open Document files (ODP, ODS, ODT)
- Added Composite:AudioBitrate tag for VBR MPEG audio
- Added support for IPTC:CatalogSets written by iView MediaPro
- Decode Olympus MagicFilter tag and add a two new SceneMode values
- Decode a few new Sony tags written by NEX models
- Decode a number of new Sony A100 tags (thanks Igal Milchtaich)
- Decode some information from MPEG audio LAME header
- Updated to Exif 2.3 specification (!!)
- Allow date/time tags to be shifted by the values of other tags when using the -tagsFromFile feature
- Fixed formatting of QuickTime:CreateDate as written by iPhone
- Fixed problem conditionally replacing some blank EXIF tags and alternate language tags in XMP

May 11, 2010 - Version 8.19

- Added ability to read/write Samsung PreviewImage trailer
- Added two new PentaxModelID's (Optio H90 and W90)
- Added a new Canon LensType
- Added a new CanonModelID
- Decode more Sony tags/values (thanks Michael Reitinger)
- Decode more Leica M9 tags (thanks Michael Byczkowski and Carl Bretteville)
- Updated to XMP April 2010 specification
- Avoid extracting Sony DSLR-A100 tags which have "n/a" values
- Improved German language translations (thanks Herbert Kauer)
- Improved efficiency of Composite tag calculations
- Made RSRC a deletable group
- Tolerate extra white space at the start of an XMP file
- Changed MWG logic to ignore blank EXIF tags
- Changed a few print conversion strings to improve interoperability
- Changed XMP namespace prefix 'prismusagerights' to 'pur' as per most recent PRISM specification
- Patched memory problem in Windows when processing very large EPS files
- Fixed a couple of incorrectly named Sony Panorama tags
- Fixed bug which could prevent file from being updated when deleting mandatory tags and adding back tags in other locations

Apr. 16, 2010 - Version 8.18

- Added read support for Sony DSC-F1 PMP images
- Added a new Nikon LensID (thanks Jeffrey Friedl)
- Decode a number of new Sony tags (thanks Michael Reitinger)
- Decode a few more Leica M9 tags (thanks Michael Byczkowski)
- Preserve original file permissions and ownership when writing
- Made Canon DustRemovalData writable
- Changed some Pentax WhiteBalance strings for consistency
- Patched potential security problem when writing values
- Fixed bug extracting unsynchronized ID3v2.4 information

Apr. 9, 2010 - Version 8.17

- Added a new Sony ExposureMode (thanks Michael Reitinger)
- Decode Casio DriveMode (thanks Robert Chi)
- Decode CameraTemperature for more Canon EOS models (thanks Vesa Kivisto)
- Updated to the DICOM 2009 specification (Note: Changed some DICOM tag names)
- Improved conversions for XMP:LensInfo, EXIF:DNGLensInfo and Nikon:Lens
- Changed case of some Canon DriveMode strings
- Fixed divide-by-zero error when Geotagging from a track with only one point
- Fixed incorrect ImageHeight reported for top-to-bottom BMP images
- API Changes:
  - Fixed a problem passing options to Image::ExifTool::TagInfoXML::Write()

Mar. 31, 2010 - Version 8.16

- Preserve Mac OS resource fork when writing (OS X only)
- Added a number of new Nikon LensID's (thanks Robert Rottmerhusen)
- Decode a couple more Mac OS resources
- Decode Olympus LensModel tag (thanks Martin Hilbers)
- Extract PrintIMVersion tag from PrintIM information
- Separate extraction of Leica FrameSelector information from LensType tag
- Recognize Bitstream PFA/PFB font files
- Patched ActivePerl 5.10 bug which could cause Perl crash during Geotag tests
- Fixed another Geotag test that fails due to round-off errors on some systems

Mar. 18, 2010 - Version 8.15 (production release)

- Added read support for Macintosh resource files:
  - Generate ResourceForkSize tag if data exists in a file's resource fork
  - Enhanced -ee option to process resource fork as a sub-document
- Added a new PentaxModelID (Optio I-10)
- Decode Panasonic DMC-ZS7 landmark tags
- Fixed decoding of Pentax Optio 555 PictureMode and added a number of new values (thanks Ralf Medow)

History of older versions (back to 1.00) -->

<-- Back to ExifTool home page