ExifTool Version History
Oct. 1/04 - Version 3.60
- Changed group family 0 to divide EXIF group into individual IFD groups
- Fixed typos in some Casio tag names
- API Changes:
- Changed name of File::RandomAccessFile to File::RandomAccess
- Changed default setting of Duplicates to 1
Sept. 21/04 - Version 3.51
- Improvements to interpretation of Nikon D70 ISO settings
Sept. 16/04 - Version 3.50
- Fixed problem with duplicate tags showing up without the -a option
- Changed Nikon DataDump to a binary type
- Added D70Boring shortcut
Sept. 14/04 - Version 3.49
- Changed installation to also install the 'exiftool' script
Sept. 13/04 - Version 3.48
- Changed UserComment to skip first 8 bytes since the comments come after an 8 byte character code
Sept. 10/04 - Version 3.47
- Added support for second type of Casio maker notes (MakerNoteCasio2)
Sept. 1/04 - Version 3.46
- Fixed minor bug in PrintConv of FileNumber for CanonRaw files
June 3/04 - Version 3.45
- Recognize Canon 1D Mk II raw files (.CR2)
(Note: Not properly decoding maker notes from these files yet)
May 28/04 - Version 3.44
- Improved validity check of Sony maker notes
May 18/04 - Version 3.43
- A couple more changes to the Nikon maker notes
May 17/04 - Version 3.42
- Additions to Nikon maker notes for values derived from D70
Apr. 28/04 - Version 3.41
- Fixed some errors when running on older Perl versions
Apr. 7/04 - Version 3.40
- Try to extract data from unrecognized maker notes (assuming standard EXIF format)
- Added tests for different maker notes
Apr. 6/04 - Version 3.37
- Added support for Sigma maker notes
- Remember to add new files to MANIFEST so they get included in release. Doh.
Apr. 6/04 - Version 3.36
- Added support for Sanyo and Minolta maker notes
- Added skeleton for interpeting Sony maker notes
- Interpret Pentax PrintIM
Apr. 6/04 - Version 3.35
- Added support for Nikon PrintIM
- Changed names of duplicate EXIF tags
Apr. 5/04 - Version 3.34
- Added all missing tag definitions from TIFF 6 standard
- Added a few more EXIF tag definitions
- Interpret PrintIM IFD
- Fix interpretation of Interoperability IFD
- Fixed potential endless loop bug introduced in version 3.33
Apr. 5/04 - Version 3.33
- Parse SubIFD of Nikon NEF file (now extracts raw image size and thumbnail image)
Apr. 2/04 - Version 3.32
- Changes to some Nikon tag names
- Added Nikon Saturation
- Documentation improvements
Mar. 31/04 - Version 3.31
- Now recognizes NEF (Nikon Electronic image Format) files
Mar. 29/04 - Version 3.30
- Removed -w option
- Fixed problem with some XMP tags being put in the EXIF group
- More minor speed improvements
- API Changes:
- GetDescription() now requires an ExifTool object reference
- Removed WarnDuplicateDescriptions()
Mar. 26/04 - Version 3.27
- Optimized a few routines to speed things up a bit
- API Changes:
- Changed GetDescription() documention to indicate it is called with an ExifTool object (this is still optional, but will be manditory with the next version)
Mar. 25/04 - Version 3.26
- Don't generate warning if end of IPTC block is padded with nulls
Mar. 19/04 - Version 3.25
- Fixed problem with 'Input' sort order
Mar. 19/04 - Version 3.24
- Only return PreviewImage if it is a valid JPG (otherwise set 'Warning')
Mar. 16/04 - Version 3.23
- API Changes:
- Added GetGroups()
- GetGroup() now returns group names for all families if used in list context and family not specified.
Mar. 12/04 - Version 3.22
- API Changes:
- Changed GetInfo() to return list of tags like ImageInfo() if list reference provided
- Fixed bug that caused GetInfo() to ignore specified tags
Mar. 11/04 - Version 3.21
- Fixed problem with Composite group in family 1
- Changed case of Exif to EXIF in family 1
- -group option now lists Composite group as it should
- Internal Changes:
- Cleaned up handling of function arguments
Mar. 10/04 - Version 3.20
- Added -group option
- Added group families 1 and 2
- Can now specify excluded tags with leading '-' (replaces -x option)
- API Changes:
- Added ClearOptions(), ExtractInfo(), GetInfo(), CombineInfo(), GetTagList() and GetAllGroups()
- Removed IsVerbose() function (use Options('Verbose') instead)
- Allow groups to be excluded by specifying leading '-' on group name
- ImageInfo() and GetInfo() now use specified group order to set tag precidence
if Duplicates option is not set
- Change default value of Duplicates option back to 0
Mar. 1/04 - Version 3.15
- Changed format of all date and time tags to EXIF standard
- Added some composite date/time tags
- Fixed date formatting so -d option should now work with all combined date/time tags
- Other minor changes to GPS information
- Improvements to TIFF processing
- Set value to "Undefined" if PrintConv evaluates to undefined value
- Added -G option
- API changes:
- Changed all option names: shortened and changed to mixed case (sorry!)
- Internal changes:
- Standardized arguments to all processing procedures
- Made call to processing procedure more automatic
- Removed TABLE_TYPE tag and added PROCESS_PROC
- Added ProcessTagTable() member function
Feb. 27/04 - Version 3.14
- Added GPS tag conversions and GPS test
- Values that can't be converted now show up simply as "Unknown (X)"
Feb. 26/04 - Version 3.13
- Print out errors from exiftool script (since Image::ExifTool no longer prints them)
- Added more tests
- Failed tests now leave ".failed" file in "t" directory for post mortem
Feb. 25/04 - Version 3.12
- Moved all image-related warnings to new Warning tag
Feb. 25/04 - Version 3.11
- Added GeoTiff support
- Added -x option
- Improvements to documentation
- Improve XMP parsing for 'Bag' elements
- Capitalize first letter of XMP tag descriptions
- Patch problem with APP13 resource written by older Photoshop versions
- API changes:
- Added EXCLUDE and GROUP# options
- Change default value of SAVE_DUPLICATES option to 1
Feb. 20/04 - Version 3.10
- Restructuring only -- the behaviour of the exiftool
script was not changed
- Moved html documentation to new html directory
- API changes:
- Conform to standard Perl module mechanics:
- Changed ExifTool package name to Image::ExifTool
- Added Makefile.PL and other standard files
- Added Perl pod documentation
- Added standard test files
- Moved modules into lib directory
- Changed "TagTables" directory name to "ExifTool"
- Added extra parameter in new RandomAccessFile
Feb. 20/04 - Version 3.05
- Fixed problem where output files (-o) weren't written if -p option used
Feb. 19/04 - Version 3.04
- Added -U option to allow display of unknown values in Canon binary data blocks
- Made unknown tag names more specific when -u or -U option used
- Added RawData and DecoderTable tags (for Canon RAW file)
Feb. 17/04 - Version 3.03
- Fixed RandomAccessFile package name (should have been File::RandomAccessFile)
- Added IxusAFPoint tag to Canon maker notes
- Avoid scanning past end of Canon binary data blocks
- API changes:
- GetFoundTags() and GetRequestedTags() now return list instead of list reference
Feb. 16/04 - Version 3.02
- Improved handling of Pentax maker notes
Feb. 15/04 - Version 3.01
- API changes:
- Added GetValue() function
- Completed API documentation
Feb. 13/04 - Version 3.00
- Removed -all option (it is now the default -- specify -common for previous default behaviour)
- Added -a option to allow printout of duplicate tag values
- API changes:
- I am finally happy with the API, so future major changes are less likely
(hence the major version number)
- No longer return ARRAY reference for list of tags
(Instead, tag values are joined in a comma separated list if tag 'List' flag is set)
- Added SAVE_DUPLICATES option
- Added BuildCompositeTags() to EXPORT_OK list
- GetFoundTags() now sorts tags in specified order
- GetDescriptions() longer returns undef if the description doesn't exist
Feb. 12/04 - Version 2.71
- Still more playing with Pentax maker notes
- More API changes:
- Added RandomAccessFile.pm
- All image file i/o now done through a RandomAccessFile object
--> allows proper piping and use of string i/o
- Allow scalar reference to be passed to ImageInfo() (for string i/o)
Feb. 11/04 - Version 2.70
- More tweaking of Pentax maker notes
- Changed API to be more object oriented:
- Removed SetVerbose(), ExtractUnknown(), SetDateFormat(), EnablePrintConversion(),
EnableCompositeTags()
- Added Options() to replace above functions
- Changed WarnDuplicateTags() to WarnDuplicateDescriptions()
- Added GetFoundTags() and GetRequestedTags()
- Many functions now take ExifTool object reference as first argument
- ImageInfo() no longer returns reference to ExifTool object when used in list context
(you have to use "new ExifTool" and the OO form of ImageInfo() if you want the object)
Feb. 10/04 - Version 2.62
- Added -u option to allow display of unknown tags
- Major changes to Pentax maker notes (still needs work)
Feb. 09/04 - Version 2.61
- Allow file reference to be passed to ImageInfo()
- Allow file to be read from standard input by specifying "-" as file name
- Add FileType tag
Feb. 07/04 - Version 2.60
- Improve IPTC parsing and add support for more IPTC data types
- Read Photoshop APP13 records properly
- Added -g option
- Move shortcuts into separate module
- Changes to API:
- Removed LoadAllTables() and added GetAllTags()
- Removed GetDescriptions() and added GetDescription()
- Changed GetShortcuts() to return a list
- Added tag groups and GetGroup() function
- Return object data from ImageInfo() for use in GetGroup()
Jan. 30/04 - Version 2.51
- Speed up JPG reading code
- API no longer returns references to image-specific static data
- Added ExifToolVersion tag
Jan. 29/04 - Version 2.50
- Changed API to return binary data as SCALAR reference and
list of values as ARRAY reference
- Attempt to make case of tag descriptions more consistent
Jan. 28/04 - Version 2.41
- Scan photoshop JPG 0xe1 garbage for possible XMP information
Jan. 27/04 - Version 2.40
- Improved handling of XMP data
- Changed output format and added -l option
Jan. 21/04 - Version 2.36
- Don't output trailing linefeed when -b option used
Jan. 19/04 - Version 2.35
- Changes to verbose output
- Added TagTables::CanonRaw::CleanRaw() as an API utility function
Jan. 16/04 - Version 2.34
- Added 'Validate' check for Canon data fields
- Changed ScaleFactor35efl to use FocalLengthIn35mmFormat if available
Jan. 15/04 - Version 2.33
- Added ScaleFactor35efl, FocalLength35efl, Lens35efl
- Allow Composite tags to Require/Desire each other
- Changed FlashType to use FlashBits instead of CanonFlashMode
Jan. 13/04 - Version 2.32
- Added -d (date format) option
- Added -p (print format file) option
Jan. 9/04 - Version 2.31
- Exif WhiteBalance no longer overrides maker-specific WhiteBalance
Jan. 8/04 - Version 2.30
- Added support for IPTC format information
Jan. 6/04 - Version 2.25
- Fixed problem with ImageInfo() function prototype
- Fixed printout of JpgFromRaw message (doesn't effect JPG extraction)
- Set output files to binmode (including STDOUT) if -b option used
Jan. 1/04 - Version 2.24
- Fixed -list option to show all available tag names
Dec. 18/03 - Version 2.23
- Changed "Disable" routines to "Enable"
Dec. 17/03 - Version 2.22
- Fixed make/model tags which I broke with a recent change
- Removed null terminator from returned strings
Dec. 16/03 - Version 2.21
- Fixed problem with decoding some Nikon maker notes
- General improvements and tweaks to the code
Dec. 14/03 - Version 2.20
- Now extracts preview image from 300D JPG files (PreviewImage)
- Changed ThumbnailData tag name to ThumbnailImage
Dec. 12/03 - Version 2.10
- ExifTool::ImageInfo now returns reference to hash instead of hash
Dec. 10/03 - Version 2.01
- Minor fixes for reading of RAW files
Dec. 09/03 - Version 2.00
- Added support Olympus, Casio and Nikon cameras
- Now recognized GPS information
- Moved config information to TagTables modules
- Restructured API
Dec. 05/03 - Version 1.72
- Changes to composite Aperture and ShutterSpeed decisions
Dec. 05/03 - Version 1.71
- Read 10D Custom functions from CRW file too (thanks dpophyte)
Dec. 05/03 - Version 1.70
- Added custom functions for 10D and 1D
Dec. 04/03 - Version 1.62
Dec. 04/03 - Version 1.61
- Override ShutterSpeed with BulbDuration if available
- Change -s option to add tab-separated list
Dec. 03/03 - Version 1.60
- Big improvements in reading Canon RAW files
Nov. 29/03 - Version 1.50
- Added ability to extract JPG from RAW
- Added ExifData tag to allow entire EXIF block to be dumped
Nov. 26/03 - Version 1.40
- Split up config files to speed things up
- Added ability to extract binary data
- Added ThumbnailData tag (to allow extracting JPG thumbnails)
Nov. 25/03 - Version 1.30
- Added experimental Canon RAW file support
Nov. 22/03 - Version 1.20
Nov. 20/03 - Version 1.12
- Don't translate PhotoShop Brightness, etc
Nov. 20/03 - Version 1.11
- Attempt to fix problem on hp
- clean up code a bit
- added '-ver' command-line option
Nov. 20/03 - Version 1.10
- Added support for XMP format
Nov. 19/03 - Version 1.00