Skip to content

Releases: drewnoakes/metadata-extractor

v2.2.0

20 Nov 14:19
Compare
Choose a tag to compare

Released 18 Oct 2003

  • Added support for extraction of Jpeg image information (from the SOF0 segment.) Thanks to Darrell Silver for commencing the code for this extension
  • Added support for reading Jpeg comments
  • Additional Nikon camera makernote support for D1/D100 family models. Thanks to Daniel Waeber for providing sample images and to Fabrizio Giudici for publishing his work in decoding this makernote data.
  • Added convenient writing of thumbnails to files from ExifDirectory
  • Fixed a bug in date format strings, whereby times in the AM / PM were indistinguishable. Thanks to Bill Boland for being the first person to point this out (this was a popular one!)
  • Fixed bug for multi-component tag values of certain types. Thanks to Derek Wegner for identifying the bug and providing a solution.
  • More unit tests (consequently, the source-code download is much larger.)
  • First version with an Ant build script

v2.1.0

20 Nov 14:18
Compare
Choose a tag to compare

Released 12 Jan 2003

  • Extract methods no longer throw exceptions, with error information stored in Metadata instances, using hasErrors() and getErrors()
  • Metadata and dependant classes now serializable for network transmission, and persistance in files & databases
  • Support for extracting metadata from InputStreams, such as network connections
  • Replaced code that depended upon JDK 1.4

v2.0.0

20 Nov 14:17
Compare
Choose a tag to compare

Released 10 Dec 2002

Enormous changes to the class and package structure in this release prohibit a class-by-class breakdown of changes. The focus is no longer on Exif metadata alone, but now on general metadata extraction from multiple media types.

Changes support:

  • easier future extensibility
  • IPTC metadata extraction
  • multiple directories of tags
  • descriptor class for interpreting values in a given directory
  • multiple media and metadata types
  • enhanced handling of Exif makernote values
  • many more unit tests
  • numerous other enhancements
  • minor bug fixes

Simpler extensibility changes the focus from Exif extraction alone and opens the scope to general metadata extraction. Future development will introduce new media and metadata support with little or no impact to existing classes.

v1.2.0

20 Nov 14:12
Compare
Choose a tag to compare

Released 6 Nov 2002

ExifExtractor.java

  • Proper traversing of Exif file structure and complete refactor & tidy of the codebase (a few unnoticed bugs removed)
  • Reads makernote data for 6 families of camera (5 makes)
  • Tags now stored in directories... use the IFD_* constants to refer to the image file directory you require (Exif, Interop, GPS and Makernote*) -- this avoids collisions where two tags share the same code
  • Correct extraction of multi-component values
  • No longer decodes image to extract Exif data -- this is much faster
  • Takes componentCount of unknown tags into account
  • Now understands GPS tags (thanks to Colin Briton for his help with this)
  • Returns null when no Exif data present, instead of throwing an exception
  • Some other bug fixes, pointed out by users around the world. Thanks!

ExifLoader.java

  • Removed (unnecessary)

ImageInfo.java

  • Stored IFD directories in separate tag-spaces
  • iterator() now returns an Iterator over a list of TagValue objects
  • More get*Description() methods to detail GPS tags, among others

TagValue.java

  • New class to encapsualte information about a particular tag

Rational.java

  • Improved toSimpleString() to factor more complex rational numbers into a simpler form. I.e. 10/15 -> 2/3
  • toSimpleString() now accepts a boolean flag, 'allowDecimals' which will display the rational number in decimal form if it fits within 5 digits. I.e. 3/4 -> 0.75 when allowDecimal == true

JpegSegmentReader.java

  • New class to extract APP1 segment (and others) from a Jpeg file -- this avoids decoding images just to get metadata

tests\*.java

  • First collection of basic unit tests, to compile against JUnit
  • Doesn't yet cover all classes

Website

  • A collection of JPEGs from various digital camera models, collected on the web and contributed by many users of ExifExtractor
  • Updated documentation