Dcraw Explained

dcraw
Author:Dave Coffin
Operating System:Cross-platform
Platform:Platform independent
Programming Language:ANSI C
Language:English and 11 others
Genre:raw decoding software
License:GPLv2+

dcraw is an open-source computer program which is able to read numerous raw image format files, typically produced by mid-range and high-end digital cameras. dcraw converts these images into the standard TIFF and PPM 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.

A number of other image processing programs use dcraw internally to enable them to read raw files.

Development of dcraw began on February 23, 1997. Version 1.0 was released in revision 1.18, on May 5, 2000.[1] Versions up to 3.15 used the name Canon PowerShot Converter, starting with v3.40 the name was Raw Photo Decoder, switching to Raw Photo Decoder "dcraw" in v5.70. Version 8.86 supported 300 cameras.[2] The development has stalled, with only two releases since May 2015 and the last release dated June 2018, but parts of dcraw are included in LibRaw.

Motivation

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.[3]

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.[4]

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.

Design

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.[5]

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. dcraw also serves as the basis for various high-level raw image-processing applications (such as viewers and converters), both free and open source software as well as proprietary software.

GUI front-ends

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 the image processing options can be adjusted.

External links

Notes and References

  1. According to the Revision Control System log
  2. Web site: dcraw.c,v -- complete unabridged RCS file. Dave Coffin. 2018. 2019-12-19. 2019-01-29. https://web.archive.org/web/20190129230109/http://cybercom.net/~dcoffin/dcraw/RCS/dcraw.c,v. dead.
  3. Web site: Raw storm in a teacup?. Digital Photography Review. 2005-04-27.
  4. Web site: The RAW Problem . . Larry Strunk . 2006-03-19 . dead . https://web.archive.org/web/20071210090847/http://www.openraw.org/info . 2007-12-10 .
  5. Web site: Decoding raw digital photos in Linux . 2005-10-25 . https://web.archive.org/web/20161019024525/https://www.dechifro.org/dcraw/#cameras . 2016-10-19 . dead .