There are open-source RAW decoders, like LibRaw, and while they offer broad support, Bhatt says they typically deliver worse results,
Bullshit. It either decodes the raw file and passes the data into the editing pipeline or it doesn’t.
It’s not only decoding, but also interpreting: each RAW decoder gives indeed different results.
The first step is decoding the raw, which is usually just a derivative of the TIFF/EP standard with additional metadata fields and proprietary compression. Almost all RAW files are dead simple. They are literally just a TIFF image of the raw mosaic, with additional text describing what the lens was used, what white balance settings were used, etc. The second step is processing the data from the raw file. This is exclusively on the processor and here quality varies quite a bit. Decoding most often is really simple. It’s what you do with the data that you have successfully decoded, this is on the raw processor. Decoder and processor are two entirely different things.
Now the article muddies decoder and processor. If I understood correctly, it was talking about generating previews in the file manager on macOS, and the other one is just a processor. Now, if you were to just decode RAW files, you would essentially just get a green picture, because if you zoom out all the way on a mosaic, what you’re left with is completely green. So, of course, it needs to do some processing that you can actually view it, how it’s meant to look, and not just in false colour.
You know a lot more than me! Interesting post, thanks :)
So on the muddled part (PetaPixel is pretty generalist and simplifies a lot): the actual difference is given by the processing and not strictly by the decoder? I don’t like how Apples “RAW pipeline” handles Canon RAW, so I either use the toggle in Nitro to bypass it (and start with a LOG-like image for a video comparison) or have to rely on the horrendous Canon DPP. All three cases give me different results in colors and noise (with the native Canon solution usually giving the best image, unfortunately)
The short version is all of them use different processes to get to the final result. And what’s complicating things even more is that the order in which things are processed. Darktable uses the same process colourists from the video and cinema world use. Thanks to that, Darktable is significantly more consistent and predictable than its competitors. Because essentially how other raw editors process a raw is, they target the “casual” audience and they want good looking results fast without any sort of user input. So they essentially just slap a gamma curve and a lut on your file and then you can only make your adjustments on top of that. This is essentially just editing a high quality jpeg at this point. Worst of all, most RAW editors do not even give you control over this base curve or base RAW lu. This is bad because it’s curves upon curves upon curves upon curves, and these errors multiply over each other, so good luck controlling the output.
Now on the other hand, Darktable not only exposes everything from raw black and white points, demosaicking and any sort of other adjustments that you’d like, but also, thanks to the scene-referred process, it defers the Gamma Curve to the last step, which essentially just means that everything happens in scene-linear space and your adjustments are linear and predictable. No curves multiplying errors with curves. Plus, you can fully control the gamma curve and this guarantees that the entire dynamic range of your camera gets output to the display, which is not the case for other raw editors which use the other process with curves, the so called “display referred” process.
All of this may seem very complicated, but using Darktable is really easy, because it by default gives you a well thought out process for handling your raw files, which gives you consistent and predictable results. Darktable is free software and available on GNU,/Linux, macOS and Windows.
TLDR: Darktable hype.
Edit: I accidentally deleted half a sentence and it awkwardly melded two sentences together. I corrected it and I apologise for my mistake!
Nice write up, I will for sure check out Darktable again 👌🏻
Oops, I accidentally deleted some of the previous message. Here’s what it’s supposed to say. I apologise for that!
And what’s complicating things even more is that the order in which things are applied to the image matter a lot. Darktable uses the same process that colorists from the cinema world use.
Ok now that part makes more sense, thanks for the correction.
Do you have any suggestions for iPad and or mobile versions of Darktable? Nitro runs on iOS, iPadOS and MacOS and I use it regularly on all three platforms
Yes. The decoder decodes. There are several open source ones, libraw, rawspeed, rawler. They all do the same thing.
At least for rawpseed, things aren’t always straight forward, as all camera support is reverse engineered. Don’t have data from the manufacturers as its all locked up behind NDAs and such


