dcraw v. 8.99
|Original author(s)||Dave Coffin|
|Initial release||May 5, 2000[nb 1]|
|Stable release||9.19 (June 16, 2013[±])|
|Written in||ANSI C|
|Available in||English and 11 others|
|Type||RAW decoding software|
dcraw is an open-source computer program which is able to read numerous raw image formats, typically produced by high-end digital cameras. dcraw converts these images into the standard PPM and TIFF image formats. This conversion is sometimes referred to as developing a raw image (by analogy with the process of film development) since it renders raw image sensor data (a "digital negative") into a viewable form.
While most camera manufacturers supply raw image decoding software for their cameras, this software is almost always proprietary, and often becomes unsupported when a camera model is discontinued. The file formats themselves are often undocumented, and several manufacturers have gone so far as to encrypt all or part of the data in their raw image format, in an attempt to prevent third-party software from accessing it.
Given this ever-expanding plethora of raw image formats, and uncertain and inconsistent support for them by the manufacturers, many photographers worry that their valuable raw images may become unreadable as the applications and operating systems required become obsolete.
In contrast to proprietary decoding software, dcraw strives for simplicity, portability, and consistency, as expressed by its author:
|“||So here is my mission: Write and maintain an ANSI C program that decodes any raw image from any digital camera on any computer running any operating system.||”|
dcraw's open source nature is crucial in assuring this universality: even if its author loses interest in developing the software, or in supporting a particular model of camera, interested users are free to extend it. This helps ensure that it will be possible to decode supported raw image formats far into the future, even after the cameras that produced them are obsolete.
dcraw is written by Dave Coffin in portable ANSI C. Because many raw image formats are specific to one make or model of camera, dcraw is frequently updated to support new models.
For many proprietary raw image formats, dcraw's source code (based largely on reverse-engineering) is the best—or only—publicly available documentation. dcraw currently supports the raw formats of several hundred cameras (including intentionally obfuscated formats).
dcraw is built around the Unix philosophy. The program is a command line tool which takes a list of raw image files to process, along with any image adjustment options desired. This makes dcraw easy to use from shell scripts, but harder to call from C programs, as calling reliably out to other programs in C, especially in multithreaded software, can be very hard to get correct and deadlock-free. dcraw also serves as the basis for numerous high-level raw image-processing applications (such as viewers and converters), both free and open source software as well as proprietary software.
Several GUI front-ends for dcraw are available. These applications use dcraw as a back-end to do the actual processing of raw images, but present a graphical interface with which to adjust the image processing options.
- darktable, a free RAW developer software for GNU/Linux based operating systems and MacOS X.
- iRAW, free GUI based on dcraw.
- LibRAW DCRAW based library.
- RawTherapee, a standalone GTK+ raw developer, it uses a tweaked version of dcraw for reading raw photos. It is not just a front-end.
- UFRaw, a standalone GTK+ application and GIMP plugin.
Unix-like operating systems:
- Rawstudio, a standalone GTK+ application.
- dcraw-assist, a KDE-based GUI for dcraw and ImageMagick, supporting ICC-enabled high-quality, web-ready batched RAW conversion.
- Not So Original, An online image gallery that permits you to manage your workflow and raw photographs with powerful operators.
Mac OS X:
- AZImage Batch and GUI based image converter using LibRAW Lite to read raw formats
- EasyHDR uses DCRAW to access RAW files.
- Helicon Filter, Proprietary, can use dcraw for its raw processing.
- RAWDrop, Windows frontend.
- Zero Noise uses DCRAW as development engine to blend several RAW files into a noise free image with expanded dynamic range ideal for HDR.
- Konvertor uses DCRAW to access RAW files.
- SNS-HDR uses DCRAW to read RAW files.
An alpha quality reimplementation in C# exists - dcraw.net
- According to the RCS log, the version number was bumped to 1.00 in revision 1.18, on May 5, 2000.