mcanthony / rawspeed

fast raw decoding library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

rawspeed travis-ci appveyor-ci codecov coverity status

#RawSpeed Developer Information

##What is RawSpeed?

RawSpeed…

  • is capable of decoding various images in RAW file format.
  • is intended to provide the fastest decoding speed possible.
  • supports the most common DSLR and similar class brands.
  • supplies unmodified RAW data, optionally scaled to 16 bit, or normalized to 0->1 float point data.
  • supplies CFA layout for all known cameras.
  • provides automatic black level calculation for cameras having such information.
  • optionally crops off “junk” areas of images, containing no valid image information.
  • can add support for new cameras by adding definitions to an xml file.
  • is extensively crash-tested on broken files.
  • decodes images from memory, not a file stream. You can use a memory mapped file, but it is rarely faster.
  • is currently tested on raw.pixls.us - the free raw sample archive unique cameras, on raw.pixls.us - the free raw sample archive unique samples. Please contribute samples!
  • open source under the LGPL v2 license.

RawSpeed does NOT…

  • read metadata information, beside whitebalance information.
  • do any color correction or whitebalance correction.
  • de-mosaic the image.
  • supply a viewable image or thumbnail.
  • crop the image to the same sizes as manufactures, but supplies biggest possible images.

So RawSpeed is not intended to be a complete RAW file display library, but only act as the first stage decoding, delivering the RAW data to your application.

##Version 2, new cameras and features

  • Support for Sigma foveon cameras.
  • Support for Fuji cameras.
  • Support old Minolta, Panasonic, Sony cameras (contributed by Pedro Côrte-Real)
  • Arbitrary CFA definition sizes.
  • Use pugixml for xml parsing to avoid depending on libxml.

##Getting Source Code

You can get access to the lastest version using from here. You will need to include the “RawSpeed” and “data” folder in your own project.

CMake-based build system is provided.

##Background of RawSpeed

The main objectives were to make a very fast loader that worked for 75% of the cameras out there, and was able to decode a RAW file at close to the optimal speed. The last 25% of the cameras out there could be serviced by a more generic loader, or convert their images to DNG – which as a sidenote usually compresses better than your camera.

RawSpeed is not at the moment a separate library, so you have to include it in your project directly.

##Please see RawSpeed/README.md for usage instructions.

##Submitting Requests and Patches

Please go to the github page and submit your (pull)requests and issues there.

About

fast raw decoding library

License:GNU Lesser General Public License v2.1


Languages

Language:C++ 94.1%Language:CMake 4.9%Language:XSLT 0.7%Language:Shell 0.2%Language:Ruby 0.0%