I don't understand the idea of not fully supporting a format as specified and supported by others (competitors). I have zero issues with C1 not supporting DNG at all. As a potential future customer, I have a big issue with any format not being correctly or fully supported; DNG or otherwise. And what makes you think this is 'big engineering'?
The one man band who writes Iridient Developer, a superb raw processor, doesn't have this issue. Why should a 'slightly' larger company be any different?
Hi Andrew,
With all due respect, you are obviously not a programmer (software engineer). I am a parttime programmer, but not by profession. In simple terms, what others who offer DNG 'compatibility' might do, is extract the data section (raw undemosaiced Bayerized pixels) from the DNG and ignore the rest, some just use DCRaw or the LibRAW libraries to also do demosaicing anf the standard color tables, other cook their own recipe, and either go postprocessing with standard color table matrix conversions for color in Linear gama space or not.
That is not the internal Capture One workflow. Capture One has its own conversions (which according to many leads to superior results) based on ICC input source profiles, not output referred DNG and ProPhotoRGB (partly linear gamma version) workingspace like Adobe does. Apparently they tried to follow the DNG specification (by using the SDK) but ran into inconsistencies, incompatibilities, and or other issues, so they cannot simply shoehorn the DNG output into their own processing pipeline without additional conversions. DNG data is also not always Raw, it can also be demosaiced RGB per pixel, so lots of things need to be verified/converted back if even possible.
As has been explained in earlier threads on this same topic, but not understood by most, Capture One uses its own different color models to connect the scene referred ICC input profiled Bayerized data with the output profile, and does most processing in a sort of camera space that is large enough to avoid gamut clipping from the image processing. This also allows to
modify the ICC input profile and save a modified ICC profile version for future use or as a new default for a camera.
This means that a whole lot of data from the DNG needs to be verified and converted to make that possible. And since a DNG can be created outside of a camera, a lot can be wrong that needs verification before it is used. Its usually not wrong, but it still needs to be verified to make sure. Apparently, as Anders Torger discovered, not all metadata fields are unambiguously described in the specification, so there is more room for (wrong) interpretation than a truly open specification should provide.
This all takes a lot of software engineering to cover, debug, maintain (Adobe has changed parts of the specification several times, we're currently at the fifth major version 1.4), and verify. And all this while
there is already a perfectly usable and high quality conversion from original Camera Raw implemented. It's all extra work to achieve nothing better than is already there. Capture One chose to first spend their money on improving the Raw conversion engine (improved with version 7, and again with version 9), while Adobe is still using their 2012 engine, so they apparently are focusing on other things.
As said, small one-man band application writers may cut some corners (like only using the Raw Bayerized data or DCRaw output, and ignore the rest of the DNG file) as explained above, and that may also work to a point (although rarely as good as what Capture One produces). It seems like Phase One got trapped when trying to use the DNG SDK but ran into conversion issues. Maybe they should have ignored the DNG data with the exception of the Raw Bayerized data like others, but we'll see what the future holds. Maybe they'll figure out a way to get better quality out of a DNG than Adobe ...
Cheers,
Bart