I've also done some work on saving in DNG format. This is in a less advanced stage to the work that ewavr has done, but I've also done some work in areas that ewavr has not (yet).
My code is at:
chdkmartin - Google CodeI've taken a slightly different approach that has some advantages and some disadvantages. ewavr's data-driven handling of the TIFF tags in the .DNG file is supperior to my code-driven approach (I used a code-driven approach for expediency). Also this is the first work that I've done with CHDK, so I've probably not done some things in the most straightforward way. My code has the following characteristics:
1) All differences between cameras can be handled just by changes to camera.h - no changes to any files in the platform subdirectories are required. This probably makes it easier to support more cameras.
2) The code does not require the camera color profile. Of course it's better to have this, but if one is not available for your camera you can still shoot in DNG format. It is possible to add the color profile later (for example using Adobe's DNG Profile Editor)
3) I've started work on including a thumbnail in the DNG file
4) The DNG file includes all the tags required by Adobe's dng_validate program. This comes as part of Adobe's DNG SDK, see
Adobe DNG Software Development Kit (SDK)5) I haven't yet included the EXIF data in the DNG file
Rather than continue in parallel with ewavr, I'm quite happy to donate my code to the cause. ewavr - if there is anything you feel is useful in my code, feel free to use/copy it in your code.
And finally ewavr - you haven't built a version for my camera, the IXUS 850 IS. Would it be possible for you to build one for this camera. Or even better could you point me to where your code is so that I can build it myself?
Martin