/metadata-extractor

Extracts Exif, IPTC, XMP, ICC and other metadata from image files

Primary LanguageJava

metadata-extractor logo

metadata-extractor build status Maven Central

metadata-extractor is a straightforward Java library for reading metadata from image files.

Metadata metadata = ImageMetadataReader.readMetadata(imagePath);

With that metadata object, you can iterate or query the various tag values that were read from the image.

The library understands several formats of metadata, many of which may be present in a single image:

It will process files of type:

  • JPEG
  • TIFF
  • WebP
  • PSD
  • PNG
  • BMP
  • GIF
  • ICO
  • PCX
  • Camera Raw
    • NEF (Nikon)
    • CR2 (Canon)
    • ORF (Olympus)
    • ARW (Sony)
    • RW2 (Panasonic)
    • RWL (Leica)
    • SRW (Samsung)

Camera-specific "makernote" data is decoded for cameras manufactured by:

  • Agfa
  • Canon
  • Casio
  • Epson
  • Fujifilm
  • Kodak
  • Kyocera
  • Leica
  • Minolta
  • Nikon
  • Olympus
  • Panasonic
  • Pentax
  • Sanyo
  • Sigma/Foveon
  • Sony

Read getting started for an introduction to the basics of using this library.

Mailing Lists

Feedback

Have questions or ideas? Try the mailing list or open an issue. GitHub's issue tracker accepts attachments, and sample images are often crucial in debugging problems.

Contribute

If you want to get your hands dirty, clone this repository, enhance the library and submit a pull request. Review the issue list and ask around on the mailing list to avoid duplication of work.

An easier way to help is to contribute to the sample image file library used for research and testing.

Credits

This library is developed by Drew Noakes.

Thanks are due to the many users who sent in suggestions, bug reports, sample images from their cameras as well as encouragement. Wherever possible, they have been credited in the source code and commit logs.

License

Copyright 2002-2015 Drew Noakes

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

More information about this project is available at: