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:
parent
80ac2c76e6
commit
ba0f131390
631
README
631
README
@ -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/
|
||||||
|
@ -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
3
dcraw-9.15.tar.gz
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:35441de0b1afded88ec8e4fc5596ad1efbc0c81312f97b9abe9f25661ff99f00
|
||||||
|
size 166297
|
152
dcraw-omp.patch
152
dcraw-omp.patch
@ -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;
|
|
||||||
}
|
|
@ -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
|
||||||
|
|
||||||
|
15
dcraw.spec
15
dcraw.spec
@ -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
107
parse.c
@ -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());
|
||||||
|
Loading…
x
Reference in New Issue
Block a user