SHA256
1
0
forked from pool/dcraw

Accepting request 126363 from home:adra:branches:graphics

Update to version 9.15, Dropped dcraw-omp.patch (wasn't used anyway)

OBS-URL: https://build.opensuse.org/request/show/126363
OBS-URL: https://build.opensuse.org/package/show/graphics/dcraw?expand=0&rev=30
This commit is contained in:
Marcus Meissner 2012-06-27 19:23:41 +00:00 committed by Git OBS Bridge
parent 80ac2c76e6
commit ba0f131390
7 changed files with 442 additions and 484 deletions

631
README
View File

@ -6,11 +6,18 @@ http://www.cybercom.net/~dcoffin/dcraw/:
[3]en Esperanto [3]en Esperanto
[4]em Português [4]em Português
[5]на русском [5]auf Deutsch
[6]па-беларуску [6]на русском
[7]па-беларуску
Note to dcraw users in Brazil:
I'll be speaking at the [8]Free Software Forum in Porto Alegre between
July 25 and July 28. I hope to see you there!
__________________________________________________________________
Welcome! If you are wondering how to connect your digital camera and Welcome! If you are wondering how to connect your digital camera and
download images to a Linux PC, go to the [7]gPhoto homepage. My download images to a Linux PC, go to the [9]gPhoto homepage. My
software is for processing those images after downloading them. software is for processing those images after downloading them.
If you're downloading JPEG files, you don't need my software at all. If you're downloading JPEG files, you don't need my software at all.
@ -35,13 +42,13 @@ http://www.cybercom.net/~dcoffin/dcraw/:
decodes any raw image from any digital camera on any computer running decodes any raw image from any digital camera on any computer running
any operating system. any operating system.
That program is called [8]dcraw (pronounced "dee-see-raw"), and it's That program is called [10]dcraw (pronounced "dee-see-raw"), and it's
become a standard tool within and without the Open Source world. It's become a standard tool within and without the Open Source world. It's
small (about 8000 lines), portable (standard C libraries only), free small (about 9000 lines), portable (standard C libraries only), free
(both "gratis" and "libre"), and when used skillfully, produces better (both "gratis" and "libre"), and when used skillfully, produces better
quality output than the tools provided by the camera vendor. quality output than the tools provided by the camera vendor.
[9]Here's my resume. I do freelance consulting related to dcraw, and [11]Here's my resume. I do freelance consulting related to dcraw, and
I'm also available for full-time software work in the Northeast USA. I'm also available for full-time software work in the Northeast USA.
I can be reached by sending e-mail to cybercom dot net with the I can be reached by sending e-mail to cybercom dot net with the
@ -49,12 +56,12 @@ http://www.cybercom.net/~dcoffin/dcraw/:
News and Interviews News and Interviews
[10]Essay for Digital Outback Photo, 25 April 2003 [12]Essay for Digital Outback Photo, 25 April 2003
[11]Article in News.com, 21 April 2005 [13]Article in News.com, 21 April 2005
[12]Interview with Digital Photography Review, 27 April 2005 [14]Interview with Digital Photography Review, 27 April 2005
[13]Dcraw mentioned in Editors Guild magazine, July/August 2005 [15]Dcraw mentioned in Editors Guild magazine, July/August 2005
[14]Interview with Thorsten Schnebeck, 10 June 2006 [16]Interview with Thorsten Schnebeck, 10 June 2006
[15]Interview with Ladinamo, 16 June 2006 [17]Interview with Ladinamo, 16 June 2006
My Code My Code
@ -68,58 +75,58 @@ http://www.cybercom.net/~dcoffin/dcraw/:
"fuji_green", "fujiturn", and "fujiturn16". My shell scripts are "fuji_green", "fujiturn", and "fujiturn16". My shell scripts are
dangerous and should only be installed in a "doc" directory without dangerous and should only be installed in a "doc" directory without
execute permission. execute permission.
* [16]dcraw.c -- decodes raw photos, extracts thumbnails, and * [18]dcraw.c -- decodes raw photos, extracts thumbnails, and
displays metadata displays metadata
Supports 438 cameras at last count. Compile with "gcc -o dcraw -O4 Supports 466 cameras at last count. Compile with "gcc -o dcraw -O4
dcraw.c -lm -ljasper -ljpeg -llcms" or "gcc -o dcraw -O4 dcraw.c dcraw.c -lm -ljasper -ljpeg -llcms" or "gcc -o dcraw -O4 dcraw.c
-lm -DNODEPS". Run with no arguments to see a usage message. Don't -lm -DNODEPS". Run with no arguments to see a usage message. Don't
complain that 16-bit output is too dark -- read the [17]FAQ! complain that 16-bit output is too dark -- read the [19]FAQ!
* [18]UNIX manpage for dcraw * [20]UNIX manpage for dcraw
This is dcraw's official user documentation, updated in lockstep This is dcraw's official user documentation, updated in lockstep
with the source code. with the source code.
* [19]rawphoto.c -- basic plugin for GIMP 1.2 & 2.0 * [21]rawphoto.c -- basic plugin for GIMP 1.2 & 2.0
After installing "dcraw", do "gimptool --install rawphoto.c". My After installing "dcraw", do "gimptool --install rawphoto.c". My
plugin provides a simple dialog box for loading raw files into the plugin provides a simple dialog box for loading raw files into the
Gimp. [20]Udi Fuchs and [21]Joseph Heled have written much nicer Gimp. [22]Udi Fuchs and [23]Joseph Heled have written much nicer
plugins, with live preview, histograms, and color curves. plugins, with live preview, histograms, and color curves.
* [22].badpixels -- my camera's "hot pixels" * [24].badpixels -- my camera's "hot pixels"
This file tells dcraw which pixels have died and when, so that it This file tells dcraw which pixels have died and when, so that it
can interpolate around them. can interpolate around them.
* [23]dcraw.c,v -- complete unabridged RCS file * [25]dcraw.c,v -- complete unabridged RCS file
This file contains the entire history of dcraw.c since its This file contains the entire history of dcraw.c since its
conception on February 23, 1997. If you don't have the RCS toolkit, conception on February 23, 1997. If you don't have the RCS toolkit,
[24]download it here. [26]download it here.
* [25]parse.c -- read image data structures * [27]parse.c -- read image data structures
This program displays CIFF and TIFF data structures in a very This program displays CIFF and TIFF data structures in a very
cryptic format. cryptic format.
* [26]clean_crw.c -- clean Canon CRW files * [28]clean_crw.c -- clean Canon CRW files
Recovered or undeleted CRW files often have junk appended to them Recovered or undeleted CRW files often have junk appended to them
that makes them unreadable. This program safely cleans CRW files. that makes them unreadable. This program safely cleans CRW files.
* [27]fujiturn.c -- rotate Fuji Super CCD images * [29]fujiturn.c -- rotate Fuji Super CCD images
An alternative to dcraw's built-in Fuji rotation. An alternative to dcraw's built-in Fuji rotation.
* [28]fuji_green.c -- convert Fuji green pixels to PGM * [30]fuji_green.c -- convert Fuji green pixels to PGM
A side benefit of the Fuji Super CCD design is that its green A side benefit of the Fuji Super CCD design is that its green
pixels make nice greyscale images. pixels make nice greyscale images.
For hackers only: For hackers only:
* [29]decompress.c is a simple reference decompressor for CRW files. * [31]decompress.c is a simple reference decompressor for CRW files.
* [30]sony_clear.c decrypts SRF files from the Sony DSC-F828. * [32]sony_clear.c decrypts SRF files from the Sony DSC-F828.
Internationalization Internationalization
To build and install multilingual dcraw in Linux, download the latest To build and install multilingual dcraw in Linux, download the latest
tarball [31]from this directory and run the "install" script. The tarball [33]from this directory and run the "install" script. The
currently supported languages are [32]Esperanto, [33]Russian, currently supported languages are [34]Esperanto, [35]Russian,
[34]French, [35]Italian, [36]German, [37]Portuguese, [38]Spanish, [36]French, [37]Italian, [38]German, [39]Portuguese, [40]Spanish,
[39]Dutch, [40]Polish, [41]Hungarian, [42]Czech, [43]Swedish, [41]Dutch, [42]Polish, [43]Hungarian, [44]Czech, [45]Swedish,
[44]Catalan, [45]Danish, and Chinese (both [46]Traditional and [46]Catalan, [47]Danish, and Chinese (both [48]Traditional and
[47]Simplified). [49]Simplified).
To build a unilingual, self-contained DCRAW.EXE for DOS/Windows, use a To build a unilingual, self-contained DCRAW.EXE for DOS/Windows, use a
source file [48]from this directory instead. source file [50]from this directory instead.
To add another language, send me translations of [49]this manpage and To add another language, send me translations of [51]this manpage and
[50]this message table in UTF-8 encoding. Translate only from my [52]this message table in UTF-8 encoding. Translate only from my
original English and Esperanto texts -- other languages may contain original English and Esperanto texts -- other languages may contain
factual errors invisible to me. factual errors invisible to me.
@ -150,67 +157,67 @@ http://www.cybercom.net/~dcoffin/dcraw/:
digital cameras in their applications. They can call dcraw from a digital cameras in their applications. They can call dcraw from a
graphical interface, paste pieces of dcraw.c into their code, or just graphical interface, paste pieces of dcraw.c into their code, or just
use dcraw.c as the documentation that camera makers refuse to provide: use dcraw.c as the documentation that camera makers refuse to provide:
* [51]ACDSee * [53]ACDSee
* [52]Adobe Photoshop * [54]Adobe Photoshop
* [53]BR's PhotoArchiver by Baard Riiber * [55]BR's PhotoArchiver by Baard Riiber
* [54]BreezeBrowser by Chris Breeze * [56]BreezeBrowser by Chris Breeze
* [55]Conceiva Lightbox * [57]Conceiva Lightbox
* [56]cPicture by Jürgen Eidt * [58]cPicture by Jürgen Eidt
* [57]Cumulus by Canto * [59]Cumulus by Canto
* [58]dcRAW-X by Bryan Chang * [60]dcRAW-X by Bryan Chang
* [59]DCRawUI by Sune Trudslev * [61]DCRawUI by Sune Trudslev
* [60]Directory Opus Plugin by Leo Davidson(with C++ source code) * [62]Directory Opus Plugin by Leo Davidson(with C++ source code)
* [61]DeepSkyStacker by Luc Coiffier * [63]DeepSkyStacker by Luc Coiffier
* [62]dpMagic by Mikhail Stolpner * [64]dpMagic by Mikhail Stolpner
* [63]GraphicConverter by Thorsten Lemke * [65]GraphicConverter by Thorsten Lemke
* [64]GTKRawGallery by Daniele Isca * [66]GTKRawGallery by Daniele Isca
* [65]GVBox from JCO Consulting * [67]GVBox from JCO Consulting
* [66]HDR Shop * [68]HDR Shop
* [67]ImageLab from Aragon System * [69]ImageLab from Aragon System
* [68]Imagina by Rob Baker * [70]Imagina by Rob Baker
* [69]IrfanView by Irfan Skiljan * [71]IrfanView by Irfan Skiljan
* [70]IRIS image processor for astronomers * [72]IRIS image processor for astronomers
* [71]Lightbox by Josh Anon * [73]Lightbox by Josh Anon
* [72]LightZone by Anton Kast * [74]LightZone by Anton Kast
* [73]LRViewer by Marc Rochkind * [75]LRViewer by Marc Rochkind
* [74]MediaRECOVER File Recovery Software * [76]MediaRECOVER File Recovery Software
* [75]Mixpo by Mixpo Portfolio Broadcasting Inc. * [77]Mixpo by Mixpo Portfolio Broadcasting Inc.
* [76]Photo Acute by Almalence * [78]Photo Acute by Almalence
* [77]Photo Companion by Jeff Moore * [79]Photo Companion by Jeff Moore
* [78]Photo Jockey by Davie Lee Reed who also wrote a [79]dcraw * [80]Photo Jockey by Davie Lee Reed who also wrote a [81]dcraw
interface for Delphi programmers. interface for Delphi programmers.
* [80]Photo Organizer by Balint Kis * [82]Photo Organizer by Balint Kis
* [81]PhotoRescue from DataRescue * [83]PhotoRescue from DataRescue
* [82]PhotoReviewer by Ben Haller * [84]PhotoReviewer by Ben Haller
* [83]Photovault by Harri Kaimio * [85]Photovault by Harri Kaimio
* [84]Picasa from Google * [86]Picasa from Google
* [85]Picture Arena by Felix Schwarz * [87]Picture Arena by Felix Schwarz
* [86]PixInsight by Pleiades Software * [88]PixInsight by Pleiades Software
* [87]PolyView by Polybytes * [89]PolyView by Polybytes
* [88]RAW Developer by Iridient Digital * [90]RAW Developer by Iridient Digital
* [89]Raw Magick * [91]Raw Magick
* [90]RawDrop by Frank Siegert * [92]RawDrop by Frank Siegert
* [91]RawTherapee by RT Team * [93]RawTherapee by RT Team
* [92]Serif PhotoPlus, PanoramaPlus, and AlbumPlus * [94]Serif PhotoPlus, PanoramaPlus, and AlbumPlus
* [93]SharpRaw by Duane DeSieno * [95]SharpRaw by Duane DeSieno
* [94]SilverFast DCPro by LaserSoft Imaging * [96]SilverFast DCPro by LaserSoft Imaging
* [95]StudioLine Photo by H&M Software * [97]StudioLine Photo by H&M Software
* [96]ViewIt by Zdzislaw Losvik * [98]ViewIt by Zdzislaw Losvik
* [97]Viewer n5 by Dmitry Fedorov * [99]Viewer n5 by Dmitry Fedorov
* [98]VueScan by Ed Hamrick * [100]VueScan by Ed Hamrick
* [99]Xara Xtreme Pro * [101]Xara Xtreme Pro
Frequently Asked Questions Frequently Asked Questions
I don't have a C compiler. Could you send me an executable? I don't have a C compiler. Could you send me an executable?
No, but Francisco Montilla provides Mac OS and Windows No, but Francisco Montilla provides Mac OS and Windows
executables [100]on his website. And Manuel Llorens has provided executables [102]on his website. And Manuel Llorens has provided
a [101]huge cache of Windows executables here. Dcraw has also a [103]huge cache of Windows executables here. Dcraw has also
been ported to [102]Amiga, [103]MorphOS, [104]BeOS, [105]OS/2, been ported to [104]Amiga, [105]MorphOS, [106]BeOS, [107]OS/2,
and [106]RISC OS. and [108]RISC OS.
If you're familiar with the DOS command line but don't know C, If you're familiar with the DOS command line but don't know C,
you can install this [107]free C compiler for Windows and you can install this [109]free C compiler for Windows and
compile dcraw.c quite easily. compile dcraw.c quite easily.
Why does dcraw say "Out of memory" in Windows Vista? Why does dcraw say "Out of memory" in Windows Vista?
@ -219,40 +226,40 @@ http://www.cybercom.net/~dcoffin/dcraw/:
32MB of memory. This limitation can be removed with some 32MB of memory. This limitation can be removed with some
combination of service packs and registry hacks, or you can combination of service packs and registry hacks, or you can
compile dcraw to use the newer Win32 API. Thomas Nicely (of compile dcraw to use the newer Win32 API. Thomas Nicely (of
Pentium FDIV fame) has a [108]page describing the problem and Pentium FDIV fame) has a [110]page describing the problem and
various workarounds. various workarounds.
How can I read the EXIF data (shutter speed, aperture, etc.)? How can I read the EXIF data (shutter speed, aperture, etc.)?
[109]Phil Harvey's ExifTool provides a unified Perl-based EXIF [111]Phil Harvey's ExifTool provides a unified Perl-based EXIF
reader (and editor!) for all cameras and file formats. "dcraw -i reader (and editor!) for all cameras and file formats. "dcraw -i
-v" is much faster, but provides less information. -v" is much faster, but provides less information.
How can I read NEF files from Nikon scanners? How can I read NEF files from Nikon scanners?
Dcraw only supports cameras. Try [110]this simple program for Dcraw only supports cameras. Try [112]this simple program for
scanners. scanners.
How can I read Nikon Dust Off images (NDF files)? How can I read Nikon Dust Off images (NDF files)?
[111]Use this program. [113]Use this program.
Do you have any specifications describing raw photo formats? Do you have any specifications describing raw photo formats?
Yes, but they tend to omit important details, like how to Yes, but they tend to omit important details, like how to
decompress the raw image or decrypt private metadata. See the decompress the raw image or decrypt private metadata. See the
[112]TIFF spec, the [113]TIFF/EP spec, the [114]Adobe DNG spec, [114]TIFF spec, the [115]TIFF/EP spec, the [116]Adobe DNG spec,
the [115]CIFF (CRW) spec, and the [116]X3F spec. the [117]CIFF (CRW) spec, and the [118]X3F spec.
Where can I get an assortment of raw photos to test my software? Where can I get an assortment of raw photos to test my software?
For the latest cameras, I get samples from [117]Photography For the latest cameras, I get samples from [119]Photography
Blog. A "Full Review" at [118]Imaging Resource usually includes Blog. A "Full Review" at [120]Imaging Resource usually includes
a few raw shots. [119]www.rawsamples.ch is no longer updated, a few raw shots. [121]www.rawsamples.ch is no longer updated,
but it has samples from older cameras. For $700, I sell a but it has samples from older cameras. For $700, I sell a
complete test suite on four DVDs containing every camera complete test suite on four DVDs containing every camera
supported by dcraw, and provide web-based updates for $300/year. supported by dcraw, and provide web-based updates for $300/year.
I'm designing a digital camera. How do I convert its raw photos into I'm designing a digital camera. How do I convert its raw photos into
something that dcraw and Adobe Photoshop can open? something that dcraw and Adobe Photoshop can open?
Download [120]LibTIFF v3.8.2 and apply [121]this patch. Then use Download [122]LibTIFF v3.8.2 and apply [123]this patch. Then use
[122]this C program as a template for converting your photos to [124]this C program as a template for converting your photos to
valid [123]Adobe DNG files. valid [125]Adobe DNG files.
Why are dcraw output images larger than camera JPEGs? Why are dcraw output images larger than camera JPEGs?
Any algorithm that combines each pixel with its neighbors is Any algorithm that combines each pixel with its neighbors is
@ -273,11 +280,11 @@ http://www.cybercom.net/~dcoffin/dcraw/:
Why is 16-bit output dark / unreadable? Why is 16-bit output dark / unreadable?
If you want pretty pictures straight out of dcraw, stay with If you want pretty pictures straight out of dcraw, stay with
8-bit output. 16-bit linear output is the best raw material for 8-bit output. 16-bit linear output is the best raw material for
professional image editors such as [124]Photoshop and professional image editors such as [126]Photoshop and
[125]CinePaint, but it's no good for most image viewers. [127]CinePaint, but it's no good for most image viewers.
What does the "-f" (four color RGB) option do? What does the "-f" (four color RGB) option do?
If you see patterns like [126]this or [127]this in your output If you see patterns like [128]this or [129]this in your output
images, first try "dcraw -a". If these patterns persist, use images, first try "dcraw -a". If these patterns persist, use
"dcraw -f" to get rid of them. "dcraw -f" to get rid of them.
@ -291,8 +298,8 @@ dcraw -c crw_0001.crw | pnmtopng > crw_0001.png
dcraw -c crw_0001.crw | ppmtobmp > crw_0001.bmp dcraw -c crw_0001.crw | ppmtobmp > crw_0001.bmp
dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
I used the [128]Netpbm toolkit in these examples. I used the [130]Netpbm toolkit in these examples.
[129]ImageMagick also does command-line format conversions. Both [131]ImageMagick also does command-line format conversions. Both
are free. are free.
Why don't you implement dcraw as a library? Why don't you implement dcraw as a library?
@ -306,7 +313,7 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
formats that change every day. formats that change every day.
There's a simpler way to make dcraw modular and thread-safe: Run There's a simpler way to make dcraw modular and thread-safe: Run
it as a separate process. Eric Raymond [130]explains this it as a separate process. Eric Raymond [132]explains this
technique here. technique here.
Why are there false colors along edges within the image? Why are there false colors along edges within the image?
@ -322,7 +329,7 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
Variable Number of Gradients (VNG), Patterned Pixel Grouping Variable Number of Gradients (VNG), Patterned Pixel Grouping
(PPG), and Adaptive Homogeneity-Directed (AHD). (PPG), and Adaptive Homogeneity-Directed (AHD).
[131]The Foveon X3 Capture chip requires a different kind of [133]The Foveon X3 Capture chip requires a different kind of
interpolation. Unlike CCD arrays, it captures three colors at interpolation. Unlike CCD arrays, it captures three colors at
every pixel location. But the colors are not well separated, so every pixel location. But the colors are not well separated, so
the raw data looks very gray. Much processing is needed to the raw data looks very gray. Much processing is needed to
@ -330,17 +337,17 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
How do I get my camera to take raw photos? How do I get my camera to take raw photos?
For Canon PowerShots that don't output CRW or CR2, you need the For Canon PowerShots that don't output CRW or CR2, you need the
[132]CHDK hack. [134]CHDK hack.
For some Nikon Coolpix cameras, you need to enable a For some Nikon Coolpix cameras, you need to enable a
[133]special "DIAG RAW" mode. [135]special "DIAG RAW" mode.
For Casio cameras, see [134]Maurice Delaney's website or read For Casio cameras, see [136]Maurice Delaney's website or read
[135]this discussion on dpreview. [137]this discussion on dpreview.
For the Minolta DiMAGE G400, G500, G530, or G600, go [136]here For the Minolta DiMAGE G400, G500, G530, or G600, go [138]here
(in Russian) or [137]here (in English). (in Russian) or [139]here (in English).
For the Minolta DiMAGE Z2 and Nikon Coolpix 2100/3100/3700, For the Minolta DiMAGE Z2 and Nikon Coolpix 2100/3100/3700,
[138]go here. [140]go here.
For SMaL cameras, see the [139]camerahacking Forum. For SMaL cameras, see the [141]camerahacking Forum.
For Agfa and Samsung cameras, [140]go here. For Agfa and Samsung cameras, [142]go here.
For other cameras, refer to the User's Manual. For other cameras, refer to the User's Manual.
@ -350,9 +357,9 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
try dcraw anyway. If it doesn't work perfectly, don't just sit try dcraw anyway. If it doesn't work perfectly, don't just sit
quietly waiting for my next version. Ask me if I need any raw quietly waiting for my next version. Ask me if I need any raw
photos, or go ahead and post a photo to your website and e-mail photos, or go ahead and post a photo to your website and e-mail
me the URL. If you don't have a website, use [141]YouSendIt, me the URL. If you don't have a website, use [143]YouSendIt,
[142]RapidShare, [143]Sendshack, [144]ShareFile, [145]sendspace, [144]RapidShare, [145]Sendshack, [146]ShareFile, [147]sendspace,
or [146]Megaupload. or [148]Megaupload.
Before choosing a photo to send, read the next question: Before choosing a photo to send, read the next question:
@ -360,8 +367,8 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
Because dcraw doesn't have a color matrix for your camera model, Because dcraw doesn't have a color matrix for your camera model,
it outputs raw color instead of sRGB. To fix this, I need a it outputs raw color instead of sRGB. To fix this, I need a
photo of a [147]Wolf Faust, [148]Calibr8, [149]CMP, photo of a [149]Wolf Faust, [150]Calibr8, [151]CMP,
[150]GretagMacbeth, or other calibrated color chart. Follow this [152]GretagMacbeth, or other calibrated color chart. Follow this
checklist: checklist:
+ Use a real chart, not a printout or screen image. + Use a real chart, not a printout or screen image.
@ -374,12 +381,12 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
Supported Cameras Supported Cameras
* [151]Adobe Digital Negative (DNG) * [153]Adobe Digital Negative (DNG)
* AgfaPhoto DC-833m * AgfaPhoto DC-833m
* Apple QuickTake 100 * Apple QuickTake 100
* Apple QuickTake 150 * Apple QuickTake 150
* Apple QuickTake 200 * Apple QuickTake 200
* [152]ARRIRAW format * [154]ARRIRAW format
* AVT F-080C * AVT F-080C
* AVT F-145C * AVT F-145C
* AVT F-201C * AVT F-201C
@ -405,6 +412,7 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Canon PowerShot Pro90 IS * Canon PowerShot Pro90 IS
* Canon PowerShot Pro1 * Canon PowerShot Pro1
* Canon PowerShot G1 * Canon PowerShot G1
* Canon PowerShot G1 X
* Canon PowerShot G2 * Canon PowerShot G2
* Canon PowerShot G3 * Canon PowerShot G3
* Canon PowerShot G5 * Canon PowerShot G5
@ -430,12 +438,14 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Canon PowerShot SX1 IS * Canon PowerShot SX1 IS
* Canon PowerShot SX110 IS (CHDK hack) * Canon PowerShot SX110 IS (CHDK hack)
* Canon PowerShot SX120 IS (CHDK hack) * Canon PowerShot SX120 IS (CHDK hack)
* Canon PowerShot SX220 HS (CHDK hack)
* Canon PowerShot SX20 IS (CHDK hack) * Canon PowerShot SX20 IS (CHDK hack)
* Canon PowerShot SX30 IS (CHDK hack) * Canon PowerShot SX30 IS (CHDK hack)
* Canon EOS D30 * Canon EOS D30
* Canon EOS D60 * Canon EOS D60
* Canon EOS 5D * Canon EOS 5D
* Canon EOS 5D Mark II * Canon EOS 5D Mark II
* Canon EOS 5D Mark III
* Canon EOS 7D * Canon EOS 7D
* Canon EOS 10D * Canon EOS 10D
* Canon EOS 20D * Canon EOS 20D
@ -455,6 +465,7 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Canon EOS D2000C * Canon EOS D2000C
* Canon EOS-1D * Canon EOS-1D
* Canon EOS-1DS * Canon EOS-1DS
* Canon EOS-1D X
* Canon EOS-1D Mark II * Canon EOS-1D Mark II
* Canon EOS-1D Mark II N * Canon EOS-1D Mark II N
* Canon EOS-1D Mark III * Canon EOS-1D Mark III
@ -473,10 +484,12 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Casio EX-S100 * Casio EX-S100
* Casio EX-Z4 * Casio EX-Z4
* Casio EX-Z50 * Casio EX-Z50
* Casio EX-Z500
* Casio EX-Z55 * Casio EX-Z55
* Casio EX-Z60 * Casio EX-Z60
* Casio EX-Z75 * Casio EX-Z75
* Casio EX-Z750 * Casio EX-Z750
* Casio EX-Z8
* Casio EX-Z850 * Casio EX-Z850
* Casio EX-Z1050 * Casio EX-Z1050
* Casio EX-Z1080 * Casio EX-Z1080
@ -487,29 +500,34 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Creative PC-CAM 600 * Creative PC-CAM 600
* Epson R-D1 * Epson R-D1
* Foculus 531C * Foculus 531C
* Fuji FinePix E550 * Fuji E550
* Fuji FinePix E900 * Fuji E900
* Fuji FinePix F700 * Fuji F700
* Fuji FinePix F710 * Fuji F710
* Fuji FinePix F800 * Fuji F800
* Fuji FinePix F810 * Fuji F810
* Fuji FinePix S2Pro * Fuji S2Pro
* Fuji FinePix S3Pro * Fuji S3Pro
* Fuji FinePix S5Pro * Fuji S5Pro
* Fuji FinePix S20Pro * Fuji S20Pro
* Fuji FinePix S100FS * Fuji S100FS
* Fuji FinePix S5000 * Fuji S5000
* Fuji FinePix S5100/S5500 * Fuji S5100/S5500
* Fuji FinePix S5200/S5600 * Fuji S5200/S5600
* Fuji FinePix S6000fd * Fuji S6000fd
* Fuji FinePix S7000 * Fuji S7000
* Fuji FinePix S9000/S9500 * Fuji S9000/S9500
* Fuji FinePix S9100/S9600 * Fuji S9100/S9600
* Fuji FinePix S200EXR * Fuji S200EXR
* Fuji FinePix HS10/HS11 * Fuji HS10/HS11
* Fuji FinePix HS20EXR * Fuji HS20EXR
* Fuji FinePix F550EXR * Fuji HS30EXR
* Fuji FinePix X100 * Fuji F550EXR
* Fuji F600EXR
* Fuji F770EXR
* Fuji X-Pro1
* Fuji X-S1
* Fuji X100
* Fuji X10 * Fuji X10
* Fuji IS-1 * Fuji IS-1
* Hasselblad CFV * Hasselblad CFV
@ -524,7 +542,7 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Kodak DC25 * Kodak DC25
* Kodak DC40 * Kodak DC40
* Kodak DC50 * Kodak DC50
* Kodak DC120 (also try [153]kdc2tiff) * Kodak DC120 (also try [155]kdc2tiff)
* Kodak DCS200 * Kodak DCS200
* Kodak DCS315C * Kodak DCS315C
* Kodak DCS330C * Kodak DCS330C
@ -616,6 +634,7 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Nikon D3 * Nikon D3
* Nikon D3s * Nikon D3s
* Nikon D3X * Nikon D3X
* Nikon D4
* Nikon D40 * Nikon D40
* Nikon D40X * Nikon D40X
* Nikon D50 * Nikon D50
@ -631,9 +650,11 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Nikon D700 * Nikon D700
* Nikon D3000 * Nikon D3000
* Nikon D3100 * Nikon D3100
* Nikon D3200
* Nikon D5000 * Nikon D5000
* Nikon D5100 * Nikon D5100
* Nikon D7000 * Nikon D7000
* Nikon D800
* Nikon 1 J1 * Nikon 1 J1
* Nikon 1 V1 * Nikon 1 V1
* Nikon E700 ("DIAG RAW" hack) * Nikon E700 ("DIAG RAW" hack)
@ -657,6 +678,7 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Nikon E8800 * Nikon E8800
* Nikon Coolpix P6000 * Nikon Coolpix P6000
* Nikon Coolpix P7000 * Nikon Coolpix P7000
* Nikon Coolpix P7100
* Nikon Coolpix S6 ("DIAG RAW" hack) * Nikon Coolpix S6 ("DIAG RAW" hack)
* Nokia N95 * Nokia N95
* Nokia X2 * Nokia X2
@ -692,6 +714,7 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Olympus E-PL2 * Olympus E-PL2
* Olympus E-PL3 * Olympus E-PL3
* Olympus E-PM1 * Olympus E-PM1
* Olympus E-M5
* Olympus SP310 * Olympus SP310
* Olympus SP320 * Olympus SP320
* Olympus SP350 * Olympus SP350
@ -717,6 +740,7 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Panasonic DMC-GF1 * Panasonic DMC-GF1
* Panasonic DMC-GF2 * Panasonic DMC-GF2
* Panasonic DMC-GF3 * Panasonic DMC-GF3
* Panasonic DMC-GF5
* Panasonic DMC-GH1 * Panasonic DMC-GH1
* Panasonic DMC-GH2 * Panasonic DMC-GH2
* Panasonic DMC-GX1 * Panasonic DMC-GX1
@ -777,6 +801,13 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Sigma SD9 * Sigma SD9
* Sigma SD10 * Sigma SD10
* Sigma SD14 * Sigma SD14
* Sigma SD15
* Sigma DP1
* Sigma DP1S
* Sigma DP1X
* Sigma DP2
* Sigma DP2S
* Sigma DP2X
* Sinar 3072x2048 * Sinar 3072x2048
* Sinar 4080x4080 * Sinar 4080x4080
* Sinar 4080x5440 * Sinar 4080x5440
@ -805,10 +836,14 @@ dcraw -c crw_0001.crw | cjpeg > crw_0001.jpeg
* Sony NEX-3 * Sony NEX-3
* Sony NEX-5 * Sony NEX-5
* Sony NEX-5N * Sony NEX-5N
* Sony NEX-7
* Sony NEX-C3 * Sony NEX-C3
* Sony NEX-F3
* Sony SLT-A33 * Sony SLT-A33
* Sony SLT-A35 * Sony SLT-A35
* Sony SLT-A37
* Sony SLT-A55V * Sony SLT-A55V
* Sony SLT-A57
* Sony SLT-A65V * Sony SLT-A65V
* Sony SLT-A77V * Sony SLT-A77V
* Sony XCD-SX910CR * Sony XCD-SX910CR
@ -821,152 +856,154 @@ References
2. http://www.cybercom.net/~dcoffin/dcraw/plate_large.jpg 2. http://www.cybercom.net/~dcoffin/dcraw/plate_large.jpg
3. http://www.cybercom.net/~dcoffin/dcraw/index_eo.html 3. http://www.cybercom.net/~dcoffin/dcraw/index_eo.html
4. http://www.cybercom.net/~dcoffin/dcraw/index_pt.html 4. http://www.cybercom.net/~dcoffin/dcraw/index_pt.html
5. http://www.cybercom.net/~dcoffin/dcraw/index_ru.html 5. http://www.cybercom.net/~dcoffin/dcraw/index_de.html
6. http://www.movavi.com/opensource/dcraw-be 6. http://www.cybercom.net/~dcoffin/dcraw/index_ru.html
7. http://gphoto.sourceforge.net/ 7. http://www.movavi.com/opensource/dcraw-be
8. http://www.cybercom.net/~dcoffin/dcraw/dcraw.c 8. http://softwarelivre.org/fisl13
9. http://www.cybercom.net/~dcoffin/resume.html 9. http://gphoto.sourceforge.net/
10. http://www.outbackphoto.com/artofraw/raw_07/essay.html 10. http://www.cybercom.net/~dcoffin/dcraw/dcraw.c
11. http://news.com.com/Nikons+photo+encryption+reported+broken/2100-1030_3-5679848.html 11. http://www.cybercom.net/~dcoffin/resume.html
12. http://www.dpreview.com/news/0504/05042701davecoffininterview.asp 12. http://www.outbackphoto.com/artofraw/raw_07/essay.html
13. http://www.editorsguild.com/v2/magazine/archives/0705/cover_story.htm 13. http://news.com.com/Nikons+photo+encryption+reported+broken/2100-1030_3-5679848.html
14. http://www.schnebeck.de/interview-with-dave-coffin-creator-of-dcraw 14. http://www.dpreview.com/news/0504/05042701davecoffininterview.asp
15. http://www.ladinamo.org/english/raw-format-the-captive-photo.php 15. http://www.editorsguild.com/v2/magazine/archives/0705/cover_story.htm
16. http://www.cybercom.net/~dcoffin/dcraw/dcraw.c 16. http://www.schnebeck.de/interview-with-dave-coffin-creator-of-dcraw
17. http://www.cybercom.net/~dcoffin/dcraw/#faq 17. http://www.ladinamo.org/english/raw-format-the-captive-photo.php
18. http://www.cybercom.net/~dcoffin/dcraw/dcraw.1.html 18. http://www.cybercom.net/~dcoffin/dcraw/dcraw.c
19. http://www.cybercom.net/~dcoffin/dcraw/rawphoto.c 19. http://www.cybercom.net/~dcoffin/dcraw/#faq
20. http://ufraw.sourceforge.net/ 20. http://www.cybercom.net/~dcoffin/dcraw/dcraw.1.html
21. http://homepages.ihug.co.nz/~peps/ 21. http://www.cybercom.net/~dcoffin/dcraw/rawphoto.c
22. http://www.cybercom.net/~dcoffin/dcraw/.badpixels 22. http://ufraw.sourceforge.net/
23. http://www.cybercom.net/~dcoffin/dcraw/RCS/dcraw.c,v 23. http://homepages.ihug.co.nz/~peps/
24. http://www.cs.purdue.edu/homes/trinkle/RCS/ 24. http://www.cybercom.net/~dcoffin/dcraw/.badpixels
25. http://www.cybercom.net/~dcoffin/dcraw/parse.c 25. http://www.cybercom.net/~dcoffin/dcraw/RCS/dcraw.c,v
26. http://www.cybercom.net/~dcoffin/dcraw/clean_crw.c 26. http://www.cs.purdue.edu/homes/trinkle/RCS/
27. http://www.cybercom.net/~dcoffin/dcraw/fujiturn.c 27. http://www.cybercom.net/~dcoffin/dcraw/parse.c
28. http://www.cybercom.net/~dcoffin/dcraw/fuji_green.c 28. http://www.cybercom.net/~dcoffin/dcraw/clean_crw.c
29. http://www.cybercom.net/~dcoffin/dcraw/decompress.c 29. http://www.cybercom.net/~dcoffin/dcraw/fujiturn.c
30. http://www.cybercom.net/~dcoffin/dcraw/sony_clear.c 30. http://www.cybercom.net/~dcoffin/dcraw/fuji_green.c
31. http://www.cybercom.net/~dcoffin/dcraw/archive/ 31. http://www.cybercom.net/~dcoffin/dcraw/decompress.c
32. http://www.cybercom.net/~dcoffin/dcraw/dcraw_eo.1.html 32. http://www.cybercom.net/~dcoffin/dcraw/sony_clear.c
33. http://www.cybercom.net/~dcoffin/dcraw/dcraw_ru.1.html 33. http://www.cybercom.net/~dcoffin/dcraw/archive/
34. http://www.cybercom.net/~dcoffin/dcraw/dcraw_fr.1.html 34. http://www.cybercom.net/~dcoffin/dcraw/dcraw_eo.1.html
35. http://www.cybercom.net/~dcoffin/dcraw/dcraw_it.1.html 35. http://www.cybercom.net/~dcoffin/dcraw/dcraw_ru.1.html
36. http://www.cybercom.net/~dcoffin/dcraw/dcraw_de.1.html 36. http://www.cybercom.net/~dcoffin/dcraw/dcraw_fr.1.html
37. http://www.cybercom.net/~dcoffin/dcraw/dcraw_pt.1.html 37. http://www.cybercom.net/~dcoffin/dcraw/dcraw_it.1.html
38. http://www.cybercom.net/~dcoffin/dcraw/dcraw_es.1.html 38. http://www.cybercom.net/~dcoffin/dcraw/dcraw_de.1.html
39. http://www.cybercom.net/~dcoffin/dcraw/dcraw_nl.1.html 39. http://www.cybercom.net/~dcoffin/dcraw/dcraw_pt.1.html
40. http://www.cybercom.net/~dcoffin/dcraw/dcraw_pl.1.html 40. http://www.cybercom.net/~dcoffin/dcraw/dcraw_es.1.html
41. http://www.cybercom.net/~dcoffin/dcraw/dcraw_hu.1.html 41. http://www.cybercom.net/~dcoffin/dcraw/dcraw_nl.1.html
42. http://www.cybercom.net/~dcoffin/dcraw/dcraw_cs.1.html 42. http://www.cybercom.net/~dcoffin/dcraw/dcraw_pl.1.html
43. http://www.cybercom.net/~dcoffin/dcraw/dcraw_sv.1.html 43. http://www.cybercom.net/~dcoffin/dcraw/dcraw_hu.1.html
44. http://www.cybercom.net/~dcoffin/dcraw/dcraw_ca.1.html 44. http://www.cybercom.net/~dcoffin/dcraw/dcraw_cs.1.html
45. http://www.cybercom.net/~dcoffin/dcraw/dcraw_da.1.html 45. http://www.cybercom.net/~dcoffin/dcraw/dcraw_sv.1.html
46. http://www.cybercom.net/~dcoffin/dcraw/dcraw_zh_TW.1.html 46. http://www.cybercom.net/~dcoffin/dcraw/dcraw_ca.1.html
47. http://www.cybercom.net/~dcoffin/dcraw/dcraw_zh_CN.1.html 47. http://www.cybercom.net/~dcoffin/dcraw/dcraw_da.1.html
48. http://www.cybercom.net/~dcoffin/dcraw/msdos/ 48. http://www.cybercom.net/~dcoffin/dcraw/dcraw_zh_TW.1.html
49. http://www.cybercom.net/~dcoffin/dcraw/dcraw.1 49. http://www.cybercom.net/~dcoffin/dcraw/dcraw_zh_CN.1.html
50. http://www.cybercom.net/~dcoffin/dcraw/dcraw_eo.po 50. http://www.cybercom.net/~dcoffin/dcraw/msdos/
51. http://www.acdsystems.com/ 51. http://www.cybercom.net/~dcoffin/dcraw/dcraw.1
52. http://www.adobe.com/products/photoshop/cameraraw.html 52. http://www.cybercom.net/~dcoffin/dcraw/dcraw_eo.po
53. http://www.br-software.com/ 53. http://www.acdsystems.com/
54. http://www.breezesys.com/ 54. http://www.adobe.com/products/photoshop/cameraraw.html
55. http://www.conceiva.com/ 55. http://www.br-software.com/
56. http://cpicture.net/en/t_raw.html 56. http://www.breezesys.com/
57. http://www.canto.com/ 57. http://www.conceiva.com/
58. http://frostyplace.com/dcraw/ 58. http://cpicture.net/en/t_raw.html
59. http://www.tanis.dk/wiki/index.php/DCRawUI 59. http://www.canto.com/
60. http://www.pretentiousname.com/jp2raw/ 60. http://frostyplace.com/dcraw/
61. http://deepskystacker.free.fr/ 61. http://www.tanis.dk/wiki/index.php/DCRawUI
62. http://www.dpmagic.com/ 62. http://www.pretentiousname.com/jp2raw/
63. http://www.lemkesoft.com/ 63. http://deepskystacker.free.fr/
64. http://sourceforge.net/projects/gtkrawgallery/ 64. http://www.dpmagic.com/
65. http://jcoconsulting.com/index.asp?Section=GVOCX 65. http://www.lemkesoft.com/
66. http://www.hdrshop.com/ 66. http://sourceforge.net/projects/gtkrawgallery/
67. http://www.aragonsystem.com/ 67. http://jcoconsulting.com/index.asp?Section=GVOCX
68. http://www.planetimagina.com/ 68. http://www.hdrshop.com/
69. http://www.irfanview.com/ 69. http://www.aragonsystem.com/
70. http://www.astrosurf.com/buil/us/iris/iris.htm 70. http://www.planetimagina.com/
71. http://www.lightboxsoftware.com/ 71. http://www.irfanview.com/
72. http://www.lightcrafts.com/ 72. http://www.astrosurf.com/buil/us/iris/iris.htm
73. http://imageingester.com/ 73. http://www.lightboxsoftware.com/
74. http://www.mediarecover.com/ 74. http://www.lightcrafts.com/
75. http://www.mixpo.com/ 75. http://imageingester.com/
76. http://www.photoacute.com/ 76. http://www.mediarecover.com/
77. http://www.wildcape.com/ 77. http://www.mixpo.com/
78. http://photojockey.com/ 78. http://www.photoacute.com/
79. http://smatters.com/dcraw/ 79. http://www.wildcape.com/
80. http://www.k-i-s.net/ 80. http://photojockey.com/
81. http://www.datarescue.com/photorescue/ 81. http://smatters.com/dcraw/
82. http://www.sticksoftware.com/software/PhotoReviewer.html 82. http://www.k-i-s.net/
83. http://www.photovault.org/ 83. http://www.datarescue.com/photorescue/
84. http://www.picasa.com/ 84. http://www.sticksoftware.com/software/PhotoReviewer.html
85. http://www.picturearena.com/ 85. http://www.photovault.org/
86. http://pleiades-astrophoto.com/ 86. http://www.picasa.com/
87. http://www.polybytes.com/ 87. http://www.picturearena.com/
88. http://www.iridientdigital.com/ 88. http://pleiades-astrophoto.com/
89. http://www.rawmagick.com/ 89. http://www.polybytes.com/
90. http://www.wizards.de/rawdrop 90. http://www.iridientdigital.com/
91. http://www.rawtherapee.com/ 91. http://www.rawmagick.com/
92. http://www.serif.com/ 92. http://www.wizards.de/rawdrop
93. http://www.logicaldesigns.com/ 93. http://www.rawtherapee.com/
94. http://www.silverfast.com/ 94. http://www.serif.com/
95. http://www.studioline.net/ 95. http://www.logicaldesigns.com/
96. http://www.hexcat.com/viewit/ 96. http://www.silverfast.com/
97. http://www.dimin.net/software/viewer/ 97. http://www.studioline.net/
98. http://www.hamrick.com/ 98. http://www.hexcat.com/viewit/
99. http://www.xara.com/products/xtreme/ 99. http://www.dimin.net/software/viewer/
100. http://www.insflug.org/raw/ 100. http://www.hamrick.com/
101. http://www.rawness.es/dcraw/?lang=en 101. http://www.xara.com/products/xtreme/
102. http://aminet.net/search?query=dcraw 102. http://www.insflug.org/raw/
103. http://amis.flatrate.ru/dcraw/ 103. http://www.rawness.es/dcraw/?lang=en
104. http://www.pidcock.co.uk/beos/index.html 104. http://aminet.net/search?query=dcraw
105. http://hobbes.nmsu.edu/h-search.php?key=dcraw 105. http://amis.flatrate.ru/dcraw/
106. http://www.riscos.info/unix/indexes/graphics.html 106. http://www.pidcock.co.uk/beos/index.html
107. http://www.delorie.com/djgpp/ 107. http://hobbes.nmsu.edu/h-search.php?key=dcraw
108. http://www.trnicely.net/misc/vista.html 108. http://www.riscos.info/unix/indexes/graphics.html
109. http://www.sno.phy.queensu.ca/~phil/exiftool/ 109. http://www.delorie.com/djgpp/
110. http://www.cybercom.net/~dcoffin/dcraw/scan.c 110. http://www.trnicely.net/misc/vista.html
111. http://www.cybercom.net/~dcoffin/dcraw/read_ndf.c 111. http://www.sno.phy.queensu.ca/~phil/exiftool/
112. http://partners.adobe.com/asn/developer/PDFS/TN/TIFF6.pdf 112. http://www.cybercom.net/~dcoffin/dcraw/scan.c
113. http://www.cybercom.net/~dcoffin/N4378.pdf 113. http://www.cybercom.net/~dcoffin/dcraw/read_ndf.c
114. http://www.adobe.com/products/dng/pdfs/dng_spec.pdf 114. http://partners.adobe.com/asn/developer/PDFS/TN/TIFF6.pdf
115. http://xyrion.org/ciff/ 115. http://www.cybercom.net/~dcoffin/N4378.pdf
116. http://web.archive.org/web/20070317042320/http://www.x3f.info/technotes/FileDocs/X3F_Format.pdf 116. http://www.adobe.com/products/dng/pdfs/dng_spec.pdf
117. http://www.photographyblog.com/ 117. http://xyrion.org/ciff/
118. http://www.imaging-resource.com/MFR1.HTM 118. http://web.archive.org/web/20070317042320/http://www.x3f.info/technotes/FileDocs/X3F_Format.pdf
119. http://www.rawsamples.ch/ 119. http://www.photographyblog.com/
120. http://dl.maptools.org/dl/libtiff/tiff-3.8.2.tar.gz 120. http://www.imaging-resource.com/MFR1.HTM
121. http://www.cybercom.net/~dcoffin/dcraw/libtiff.patch 121. http://www.rawsamples.ch/
122. http://www.cybercom.net/~dcoffin/dcraw/elphel_dng.c 122. http://dl.maptools.org/dl/libtiff/tiff-3.8.2.tar.gz
123. http://www.adobe.com/products/dng/main.html 123. http://www.cybercom.net/~dcoffin/dcraw/libtiff.patch
124. http://www.adobe.com/products/photoshop/main.html 124. http://www.cybercom.net/~dcoffin/dcraw/elphel_dng.c
125. http://cinepaint.sourceforge.net/ 125. http://www.adobe.com/products/dng/main.html
126. http://www.cybercom.net/~dcoffin/dcraw/ahd_maze.png 126. http://www.adobe.com/products/photoshop/main.html
127. http://www.cybercom.net/~dcoffin/dcraw/vng_grid.png 127. http://cinepaint.sourceforge.net/
128. http://netpbm.sourceforge.net/ 128. http://www.cybercom.net/~dcoffin/dcraw/ahd_maze.png
129. http://www.imagemagick.org/ 129. http://www.cybercom.net/~dcoffin/dcraw/vng_grid.png
130. http://www.faqs.org/docs/artu/multiprogramchapter.html 130. http://netpbm.sourceforge.net/
131. http://www.dpreview.com/news/0202/02021101foveonx3.asp 131. http://www.imagemagick.org/
132. http://digicanon.narod.ru/ 132. http://www.faqs.org/docs/artu/multiprogramchapter.html
133. http://e2500.narod.ru/raw_format_e.htm 133. http://www.dpreview.com/news/0202/02021101foveonx3.asp
134. http://www.inweb.ch/foto/rawformat.html 134. http://digicanon.narod.ru/
135. http://forums.dpreview.com/forums/read.asp?forum=1015&message=4961779 135. http://e2500.narod.ru/raw_format_e.htm
136. http://myfototest.narod.ru/ 136. http://www.inweb.ch/foto/rawformat.html
137. http://forums.dpreview.com/forums/read.asp?forum=1024&message=11773287 137. http://forums.dpreview.com/forums/read.asp?forum=1015&message=4961779
138. http://tester13.nm.ru/nikon/ 138. http://myfototest.narod.ru/
139. http://camerahacks.10.forumer.com/ 139. http://forums.dpreview.com/forums/read.asp?forum=1024&message=11773287
140. http://forums.dpreview.com/forums/read.asp?forum=1001&message=28484239 140. http://tester13.nm.ru/nikon/
141. http://yousendit.com/ 141. http://camerahacks.10.forumer.com/
142. http://rapidshare.com/ 142. http://forums.dpreview.com/forums/read.asp?forum=1001&message=28484239
143. http://sendshack.com/ 143. http://yousendit.com/
144. http://www.sharefile.com/ 144. http://rapidshare.com/
145. http://www.sendspace.com/ 145. http://sendshack.com/
146. http://www.megaupload.com/ 146. http://www.sharefile.com/
147. http://www.targets.coloraid.de/ 147. http://www.sendspace.com/
148. http://www.calibr8.com/ 148. http://www.megaupload.com/
149. http://www.cmp-color.fr/eng%20digital%20target.html 149. http://www.targets.coloraid.de/
150. http://www.xrite.com/product_overview.aspx?ID=820 150. http://www.calibr8.com/
151. http://www.adobe.com/products/dng/ 151. http://www.cmp-color.fr/eng%20digital%20target.html
152. http://archiv.arri.de/arriraw/index.html 152. http://www.xrite.com/product_overview.aspx?ID=820
153. http://kdc2tiff.sourceforge.net/ 153. http://www.adobe.com/products/dng/
154. http://archiv.arri.de/arriraw/index.html
155. http://kdc2tiff.sourceforge.net/

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bb19d7eb7062172f4318d6ab5dcba22f5b6e17fb46d10803b83e6bd9affa8742
size 164353

3
dcraw-9.15.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:35441de0b1afded88ec8e4fc5596ad1efbc0c81312f97b9abe9f25661ff99f00
size 166297

View File

@ -1,152 +0,0 @@
--- dcraw.c.orig 2011-01-29 09:43:38.000000000 +0200
+++ dcraw.c 2011-03-20 22:53:08.976000042 +0200
@@ -217,7 +217,7 @@
#define BAYER2(row,col) \
image[((row) >> shrink)*iwidth + ((col) >> shrink)][fc(row,col)]
-int CLASS fc (int row, int col)
+static int CLASS fc (int row, int col)
{
static const char filter[16][16] =
{ { 2,1,1,3,2,3,2,0,3,2,3,0,1,2,1,0 },
@@ -273,7 +273,7 @@
data_error++;
}
-ushort CLASS sget2 (uchar *s)
+static ushort CLASS sget2 (uchar *s)
{
if (order == 0x4949) /* "II" means little-endian */
return s[0] | s[1] << 8;
@@ -281,14 +281,14 @@
return s[0] << 8 | s[1];
}
-ushort CLASS get2()
+static ushort CLASS get2()
{
uchar str[2] = { 0xff,0xff };
fread (str, 1, 2, ifp);
return sget2(str);
}
-unsigned CLASS sget4 (uchar *s)
+static unsigned CLASS sget4 (uchar *s)
{
if (order == 0x4949)
return s[0] | s[1] << 8 | s[2] << 16 | s[3] << 24;
@@ -297,26 +297,26 @@
}
#define sget4(s) sget4((uchar *)s)
-unsigned CLASS get4()
+static unsigned CLASS get4()
{
uchar str[4] = { 0xff,0xff,0xff,0xff };
fread (str, 1, 4, ifp);
return sget4(str);
}
-unsigned CLASS getint (int type)
+static unsigned CLASS getint (int type)
{
return type == 3 ? get2() : get4();
}
-float CLASS int_to_float (int i)
+static float CLASS int_to_float (int i)
{
union { int i; float f; } u;
u.i = i;
return u.f;
}
-double CLASS getreal (int type)
+static double CLASS getreal (int type)
{
union { char c[8]; double d; } u;
int i, rev;
@@ -340,7 +340,7 @@
}
}
-void CLASS read_shorts (ushort *pixel, int count)
+static void CLASS read_shorts (ushort *pixel, int count)
{
if (fread (pixel, 2, count, ifp) < count) derror();
if ((order == 0x4949) == (ntohs(0x1234) == 0x1234))
@@ -846,7 +846,7 @@
return diff;
}
-ushort * CLASS ljpeg_row (int jrow, struct jhead *jh)
+static ushort * CLASS ljpeg_row (int jrow, struct jhead *jh)
{
int col, c, diff, pred, spred=0;
ushort mark=0, *row[3];
@@ -885,7 +885,7 @@
return row[2];
}
-void CLASS lossless_jpeg_load_raw()
+static void CLASS lossless_jpeg_load_raw()
{
int jwide, jrow, jcol, val, jidx, c, i, j, row=0, col=0;
struct jhead jh;
@@ -3713,6 +3713,8 @@
fputc ('\n', stderr);
}
size = iheight*iwidth;
+
+#pragma omp parallel for default(none) private(i, val) shared(size,stderr,image,black,scale_mul)
for (i=0; i < size*4; i++) {
val = image[0][i];
if (!val) continue;
@@ -3782,7 +3784,7 @@
if (half_size) filters = 0;
}
-void CLASS border_interpolate (int border)
+static void CLASS border_interpolate (int border)
{
unsigned row, col, y, x, f, c, sum[8];
@@ -4070,6 +4072,7 @@
lab = (short (*)[TS][TS][3])(buffer + 12*TS*TS);
homo = (char (*)[TS][TS]) (buffer + 24*TS*TS);
+#pragma omp for
for (top=2; top < height-5; top += TS-6)
for (left=2; left < width-5; left += TS-6) {
@@ -8308,8 +8311,14 @@
_("Converting to %s colorspace...\n"), name[output_color-1]);
memset (histogram, 0, sizeof histogram);
- for (img=image[0], row=0; row < height; row++)
- for (col=0; col < width; col++, img+=4) {
+
+#pragma omp parallel for \
+ default(none) \
+ shared(height, width, image, raw_color, out_cam, colors, document_mode, filters, histogram) \
+ private(row, col, out, c, img)
+ for (row = 0; row < height; row++) {
+ img = image[0] + row * width * 4;
+ for (col = 0; col < width; col++, img += 4) {
if (!raw_color) {
out[0] = out[1] = out[2] = 0;
FORCC {
@@ -8321,8 +8330,12 @@
}
else if (document_mode)
img[0] = img[FC(row,col)];
- FORCC histogram[c][img[c] >> 3]++;
+ FORCC {
+#pragma omp atomic
+ histogram[c][img[c] >> 3]++;
+ }
}
+ }
if (colors == 4 && output_color) colors = 3;
if (document_mode && filters) colors = 1;
}

View File

@ -1,3 +1,18 @@
-------------------------------------------------------------------
Tue Jun 26 17:57:13 UTC 2012 - asterios.dramis@gmail.com
- Update to version 9.15:
dcraw - revision 1.449
* Fixed gravity sensor for Canon 5D Mark III with Firmware Version 1.1.x.
* Decode CAMF and IMAG blocks from Sigma SD15 and DP cameras. Added "-E" and
"-I" options to support raw pixel substitution. Support Adobe Lossy DNG and
the Imacon Flexframe 3f format. Support the Canon G1-X, 1D-X, 5D Mark III,
the Fuji X-Pro1, X-S1, and many others.
* Support the Casio EX-Z500.
dcparse - revision 1.74
* Decode CAMF blocks from Sigma SD15 and DP cameras.
- Dropped dcraw-omp.patch (wasn't used anyway).
------------------------------------------------------------------- -------------------------------------------------------------------
Tue Mar 27 08:41:25 UTC 2012 - cfarrell@suse.com Tue Mar 27 08:41:25 UTC 2012 - cfarrell@suse.com

View File

@ -1,7 +1,7 @@
# #
# spec file for package dcraw # spec file for package dcraw
# #
# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany.
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@ -17,7 +17,7 @@
Name: dcraw Name: dcraw
Version: 9.12 Version: 9.15
Release: 0 Release: 0
Summary: Raw Digital Photo Decoding Summary: Raw Digital Photo Decoding
License: GPL-2.0+ License: GPL-2.0+
@ -36,12 +36,10 @@ Source7: http://www.cybercom.net/~dcoffin/dcraw/rawphoto.c
#*** #***
Source100: README.SuSE Source100: README.SuSE
Source101: update_dcraw Source101: update_dcraw
# PATCH-FEATURE-OPENSUSE dcraw-omp.patch postadal@suse.cz -- Speed up decoding (-fomp disabled by default)
Patch0: dcraw-omp.patch
# PATCH-FIX-OPENSUSE dcraw.1.patch asterios.dramis@gmail.com -- Fix "macro `LO' not defined" rpm post build check warning # PATCH-FIX-OPENSUSE dcraw.1.patch asterios.dramis@gmail.com -- Fix "macro `LO' not defined" rpm post build check warning
Patch1: dcraw.1.patch Patch0: dcraw.1.patch
# PATCH-FIX-OPENSUSE fuji_green.c_fix_gcc_warnings.patch asterios.dramis@gmail.com - Fix gcc implicit declaration warning # PATCH-FIX-OPENSUSE fuji_green.c_fix_gcc_warnings.patch asterios.dramis@gmail.com -- Fix gcc implicit declaration warning
Patch2: fuji_green.c_fix_gcc_warnings.patch Patch1: fuji_green.c_fix_gcc_warnings.patch
BuildRequires: gettext-runtime BuildRequires: gettext-runtime
BuildRequires: libjasper-devel BuildRequires: libjasper-devel
BuildRequires: libjpeg-devel BuildRequires: libjpeg-devel
@ -59,7 +57,6 @@ Command line tools for raw digital photo decoding and processing.
cp -a %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE6} . cp -a %{SOURCE3} %{SOURCE4} %{SOURCE5} %{SOURCE6} .
%patch0 %patch0
%patch1 %patch1
%patch2
%build %build
export CFLAGS="%{optflags} -fno-strict-aliasing -fstack-protector-all" export CFLAGS="%{optflags} -fno-strict-aliasing -fstack-protector-all"
@ -69,7 +66,6 @@ for file in *.c ; do
OTHERFLAGS= OTHERFLAGS=
if test $file = dcraw.c ; then if test $file = dcraw.c ; then
LDFLAGS="-lm -ljasper -ljpeg -llcms -DLOCALEDIR=\""%{_datadir}/locale"\"" LDFLAGS="-lm -ljasper -ljpeg -llcms -DLOCALEDIR=\""%{_datadir}/locale"\""
# gcc $CFLAGS -fopenmp -o ${file%.c}-omp $file $LDFLAGS
fi fi
if test $file = fuji_green.c ; then if test $file = fuji_green.c ; then
LDFLAGS="-lm" LDFLAGS="-lm"
@ -91,7 +87,6 @@ install -d -m 0755 %{buildroot}%{_bindir}
install -d -m 0755 %{buildroot}%{_mandir}/man1 install -d -m 0755 %{buildroot}%{_mandir}/man1
install -pm 0755 dcraw %{buildroot}%{_bindir}/ install -pm 0755 dcraw %{buildroot}%{_bindir}/
#install -pm 0755 dcraw-omp %{buildroot}%{_bindir}/
install -pm 0644 dcraw.1 %{buildroot}%{_mandir}/man1/ install -pm 0644 dcraw.1 %{buildroot}%{_mandir}/man1/
install -pm 0755 clean_crw %{buildroot}%{_bindir}/ install -pm 0755 clean_crw %{buildroot}%{_bindir}/

107
parse.c
View File

@ -5,8 +5,8 @@
This program displays raw metadata for all raw photo formats. This program displays raw metadata for all raw photo formats.
It is free for all uses. It is free for all uses.
$Revision: 1.73 $ $Revision: 1.74 $
$Date: 2011/05/11 03:29:49 $ $Date: 2012/01/24 07:15:43 $
*/ */
#include <stdio.h> #include <stdio.h>
@ -89,6 +89,42 @@ double get_double()
return u.d; return u.d;
} }
unsigned getbithuff (int nbits, const ushort *huff)
{
static unsigned bitbuf=0;
static int vbits=0, reset=0;
unsigned c;
if (nbits == -1)
return bitbuf = vbits = reset = 0;
if (nbits == 0 || vbits < 0) return 0;
while (vbits < nbits && (c = fgetc(ifp)) != EOF) {
bitbuf = (bitbuf << 8) + (uchar) c;
vbits += 8;
}
c = bitbuf << (32-vbits) >> (32-nbits);
if (huff) {
vbits -= huff[c] >> 8;
c = (uchar) huff[c];
} else
vbits -= nbits;
return c;
}
#define getbits(n) getbithuff(n,0)
#define gethuff(h) getbithuff(*h,h+1)
int ljpeg_diff (ushort *huff)
{
int len, diff;
len = gethuff(huff);
diff = getbits(len);
if ((diff & (1 << (len-1))) == 0)
diff -= (1 << len) - 1;
return diff;
}
void tiff_dump(int base, int tag, int type, int count, int level) void tiff_dump(int base, int tag, int type, int count, int level)
{ {
int save, j, num, den; int save, j, num, den;
@ -692,8 +728,9 @@ void get_utf8 (int offset, char *buf, int len)
void parse_foveon() void parse_foveon()
{ {
unsigned entries, off, len, tag, save, i, j, k, pent, poff[256][2]; unsigned entries, off, len, tag, save, i, j, k, pent, poff[256][2];
char name[128], value[128], camf[0x20000], *pos, *cp, *dp; char name[128], value[128], *camf, *pos, *cp, *dp;
unsigned val, key, type, num, ndim, dim[3]; unsigned val, wide, high, row, col, diff, type, num, ndim, dim[3];
ushort huff[258], vpred[2][2], hpred[2];
order = 0x4949; /* Little-endian */ order = 0x4949; /* Little-endian */
fseek (ifp, -4, SEEK_END); fseek (ifp, -4, SEEK_END);
@ -730,26 +767,51 @@ void parse_foveon()
order = 0x4949; order = 0x4949;
break; break;
case 0x464d4143: /* CAMF */ case 0x464d4143: /* CAMF */
printf ("type %d, ", get4()); type = get4();
get4(); printf ("type %d\n", type);
for (i=0; i < 4; i++) get4(); get4();
putchar(fgetc(ifp)); wide = get4();
val = get4(); high = get4();
printf (" version %d.%d:\n",val >> 16, val & 0xffff); if (type == 2) {
key = get4(); camf = malloc (len -= 28);
if ((len -= 28) > 0x20000) fread (camf, 1, len, ifp);
len = 0x20000; for (i=0; i < len; i++) {
fread (camf, 1, len, ifp); high = (high * 1597 + 51749) % 244944;
for (i=0; i < len; i++) { val = high * (INT64) 301593171 >> 24;
key = (key * 1597 + 51749) % 244944; camf[i] ^= ((((high << 8) - val) >> 1) + val) >> 17;
val = key * (INT64) 301593171 >> 24; }
camf[i] ^= ((((key << 8) - val) >> 1) + val) >> 17; } else if (type == 4) {
camf = malloc (len = wide*high*3/2);
memset (huff, 0xff, sizeof huff);
huff[0] = 8;
for (i=0; i < 13; i++) {
tag = getc(ifp);
val = getc(ifp);
for (j=0; j < 256 >> tag; )
huff[val+ ++j] = tag << 8 | i;
}
fseek (ifp, 6, SEEK_CUR);
getbits(-1);
vpred[0][0] = vpred[0][1] =
vpred[1][0] = vpred[1][1] = 512;
for (j=row=0; row < high; row++) {
for (col=0; col < wide; col++) {
diff = ljpeg_diff(huff);
if (col < 2) hpred[col] = vpred[row & 1][col] += diff;
else hpred[col & 1] += diff;
if (col & 1) {
camf[j++] = hpred[0] >> 4;
camf[j++] = hpred[0] << 4 | hpred[1] >> 8;
camf[j++] = hpred[1];
}
}
}
} else {
printf ("Unknown CAMF type %d\n", type);
break;
} }
for (pos=camf; (unsigned) (pos-camf) < len; pos += sget4(pos+8)) { for (pos=camf; (unsigned) (pos-camf) < len; pos += sget4(pos+8)) {
if (strncmp (pos, "CMb", 3)) { if (strncmp (pos, "CMb", 3)) goto done;
printf("Bad CAMF tag \"%.4s\"\n", pos);
break;
}
val = sget4(pos+4); val = sget4(pos+4);
printf (" %4.4s version %d.%d: ", pos, val >> 16, val & 0xffff); printf (" %4.4s version %d.%d: ", pos, val >> 16, val & 0xffff);
switch (pos[3]) { switch (pos[3]) {
@ -812,6 +874,7 @@ void parse_foveon()
printf ("\n"); printf ("\n");
} }
} }
done: free (camf);
break; break;
case 0x504f5250: /* PROP */ case 0x504f5250: /* PROP */
printf ("entries %d, ", pent=get4()); printf ("entries %d, ", pent=get4());