New since last update:
Changed for 06/29/2008 version
1. Added additional camera codecs
2. Added ability to just get the RAW image <RGGB>
data before any processing is done.
3. Added a SATuration option which is the -S option
in the DCRAW.C code
Changed for 04/23/2008 version
1. Added code to control AUTO ROTATE of RAW images.
You now have 5 options
Auto Rotate
No Rotate
90 Degree rotate
180 Degree rotate
270 Degree rotate
Changed for 04/04/2008 version
5. Added source code for MSDCRAW.C in case you feel
the need ;)
4. Added support for MEMORY thumbnails instead of
thumbnails saved to file.
3. Much more camera support
2. A couple of new options (you can see the new
checkboxs etc...)
1. Improved CSTDIO.PAS file (mostly in MyProgress
funtion)
======================================================================================
David Coffin: Please click here for your test files.
The DCRAW c++ files allow you to read RAW images from higher end digital cameras. If you don't know c++, then you are at a disadvantage to use them. That is why I've written a wrapper for Delphi that can make use of the DCRAW c++ code.
The first thing I had to do was to compile the DCRAW.C code along with additional c++ files I created in order to produce a viable DLL that could be used with Delphi. This compiled code is MSDCRAW.DLL. You need this DLL to be included with your application and keep the DLL in the same folder as your application program.
DCRAW c++ code was generously written by David Coffin and you can view his website by clicking here.
The purpose of the DCRAW functionality is so that programmers can have the ability to load RAW digital images. For example: The Canon G2, G3, G5 Digital EOS Rebel all have the ability to save photos in either RAW or JPG format. The JPG format is best for 95% of what you photograph. However, if you are taking an award winning photo and you want the very best results, some people choose to save in the RAW format. For Canon, these files are *.crw, for Nikon, they are *.nef and other manufacturers have there own extensions as well. Please refer to David Coffin's web site for a complete list of extensions.
There are 3 functions that you can use to work with RAW images:
These 3 functions are located in the CstdIO.pas file. In order to show
you how to use them, I've provided a sample project that utilizes them.
The sample project allows you to browse for a file and then either get
INFO on it, or LOAD the raw file, or Extract the thumbnail.
** NOTE: The TFastFile class is basically a BUFFERED file
I/O system that uses a 4K buffer. This produces MUCH faster processing
of reading single byte at a time. It's about 20 times faster than using
the standard TFileStream class. Have fun with it.
**** NOTE: The CSTDIO not only contains the 3 Raw function calls, but it also contains all of the FILE I/O faking needed. See, the C++ library has it's own TStream which is DIFFERENT from Delphi's TStream :( So, I had to create all of the C++ stream functions like fseek, feof, fread, fwrite, fopen, fclose etc...
Please DONATE to keep my efforts worth it. As long as the donations are fair, I will keep this web site up.
Click on the "Make A Donation" button to donate an amount that you think is fair.
OLDER Previous Versions
OLDER Download Sample Delphi
Project files. (dated April 2008)
OLDER Download Sample Delphi
Project files. (dated June 2007)
NOTE: You NEED to make sure you have the latest version of the
MSDCRAW.DLL
on an ongoing basis. This is because it's periodically updated to add new
camera models to the list of what RAW files it can deal with.
If you wish to leave us mail just click on the name below:
E-Mail to: Davie Lee Reed
We use the PayPal System to accept donations.
If you have a PayPal account, then you have many ways to donate. If you do NOT have a PayPal account, then you can just use one of your credit cards to pay thru the PayPal system secure site.
Donate a specific amount in US Dollars
Once again, thank you for donating so that we can continue to offer some free services and software. If it were not for people like yourself, these great services wouldn't be available.
THANK YOU VERY MUCH
David, here are the files in question:
SIGMA Problem dated 01/24/2006
Sigma photo of a bird IMG00203.X3F
Same photo converted to jpg with the sigma software IMG00203_sRGB.JPG
Files below are older problem files that have been resolved.
2 Sample NEF Files:
File to produce a JPG thumbnail: nef_jpg.nef
File to produce a PPM thumbnail: nef_ppm.nef
08/2005
Canon 350D file that decodes as black :(: Download
CANON.350D CR2 raw file.
05/2005
PHASE_ONE doesn't parse a viable thumbnail : Download
phaseone raw file.
CANON_CR2 doesn't dcraw a viable image: Download
CANON.CR2 raw file.
RT16.TIF file that dcraw decodes black and parse extracts white thumbnail:
Download
RT16.TIF.