darktable's filmic FAQ

Just wanted to say thank you for the amazing work. The guide is very useful and much appreciated!

1 Like

Well, people pay me to be useful… :smiley:


These are tokens of appreciation - well deserved. What matters more is the big present of Darktable from the developers to the users - mostly driven by the love of photography, freedom and desire to give to others.
Thank you!

I’ve watched the explanations on youtube by Aurelian and learned a lot in the process. So, I now understand the reasoning behind the UX, which to the uneducated user probably must appear very complex still.

One observation I have with this tool is that in the new scene referred mode, it’s enabled together with the exposure module and the two are so dependent on each other that you could argue, they should be integrated into one because it doesn’t make sense to have one without the other. Basically the two modules split management of 3 parameters across two modules: graypoint, blackpoint, and white point.

Confusingly, you manage the graypoint (and blackpoint) with the exposure module and then fix the blown highlights with Filmic. Prior to 3.2 you’d be deliberately blowing your highlights with the basecurev and then adding filmic manually to fix it; which was somewhat awkward. The new mode makes this easy because filmic is already on and basically autofixes whatever “damage” you do in exposure. This is what makes it a drop in superior replacement for the basecurve because what that used to do was blindly blow your highlights according to some predefined curve and then let people fix it themselves.

Simply put, the new scene referred mode reduces the workload for post processing because you basically slide a “brightness” slider in the exposure module and then filmic just adjust the curves to keep the whitepoint and blackpoint in a sensible range. Then you can tweak the process further there but mostly this already gets you in a better starting position that the base curve ever did. I never got very usable results with that and basically a large part of my workflow used to be trying to undo what was basically just miles of anywhere near acceptable with the basecurve. It would essentially just blow your highlights unless you severely underexposed on the camera and then you’d have to compensate for a very dark image that would come out of the base curve.

As a future UX improvement, I would suggest maybe adding an alternate module that does the same as exposure+filmic but simplifies the workflow a bit. Maybe what novice users want is something that looks like the level tool (or basic adjustments) but works like/drives exposure + filmic in the background.


The’re in very different parts of the pipe so it doesn’t really make sense to incorporate the exposure module into filmic. Something similar was previously achieved in filmic v3 with the ‘middle grey luminance’ slider. If you really want to keep that functionality you can click the ‘use custom middle-grey values’ check box in the filmic module (though you have to do it on each image). But the point is there’s no need given that you can do exactly the same thing with the exposure module and if you set up a dynamic keyboard shortcut it’s trivial to do so.

No no. Filmic is an alternative to basecurve. It was never recommended to use both modules together and you shouldn’t.


@aurelienpierre: How ready for use is this code?

I’ve tried it on about 6 or so miscellaneous images and I’m getting the following for all of them:

luminance: all blue
saturation: no indications
any RGB: all blue
gamut: all blue

Some have a dot or 2 red. None, except the saturation setting, show any “normal” areas. Tested this by discarding history and only turning on exposure and filmic (basic scene referred), nothing else.

I almost always use the clipping indicator, but neither of these settings are any useful for my workflow.

Images I tested with that are available:

Am I missing something here?

Did you try resetting your thresholds to default ? It’s supposed to be ready.


Mmmmm. Why didn’t I think of that…

That’s a whole lot better and IS a good replacement for the current indicator.



No no. Filmic is an alternative to basecurve. It was never recommended to use both modules together and you shouldn’t.

Eh yes you are right, I typed to quickly I meant fixing it using other modules like curves, levels, etc.

The point about pipelines is technically correct but impossible to explain to a novice user. They should not care about pipeline order until they complete some basic courses on linear algebra, color theory and a few other things. Most photographers, even the professional ones, don’t have much background in either.

That’s the point about the current UX. It only makes sense if you are a hardcore graphics nerd. It’s better in this release mostly because it’s on by default with some sensible defaults. So, you can sort of ignore the fact that it’s there.

Most people aren’t graphics nerd but vaguely understand the notion of brightness and black and white. The net effect of using exposure with filmic is that you are basically managing those 3 things with a pleasing curve that magically maps what your camera produced to what your display and output mediums can handle without a lot of fuss.

The optimal UX for that would be a much smaller number of sliders than exposure plus filmic currently provide that most users stand no chance in hell of ever fully understanding. IMHO each of the four tabs in filmic could basically be a separate module. And prior to filmic they basically were. And those modules are still around, which adds to the confusion because which ones should you use and why? Filmic is almost like a pipeline in a pipeline and the exposure module is basically the first module in that pipeline, which also includes tweaking blackpoint/whitepoint (tab 1), highlights (tab2), look (tab3), and output (tab4).

If you are familiar with it, it’s basically the law of leaky abstractions. Filmic is complex because it doesn’t really fit Darktable’s UX paradigm of modules being independent things in the graphics pipelines, which is why it is grouping logically different things in one module because their implementations is basically one thing in the pipeline instead of four. For the same reason it’s just four things when really it should be five things if you add exposure to the mix.


Filmic expects an input middle-grey value of 18.45%. It doesn’t have a hard-dependency on exposure as there are other ways to achieve that. Most of the display-referred modules expect an input middle-grey value of 50% so in that respect I’m not sure how filmic is really all that different. Those display-referred modules essentially assumed that some prior module would first do the tone mapping to get middle-grey to this value.

pixel pipe is like grilling a steak: you can pour pepper on it before grilling the steak or you can do it afterwards: in both cases you did the same (put pepper on the steak) but the result wont be the same …
sequence is important even most users don’t understand this :wink:


Maybe we could introduce an ‘Adobe mode’ where there’s just a single ‘goodness’ slider in each module (which obviously should be set to 100 because you can’t have too much goodness) :wink:

Seriously though most darktable users prefer the control that all those sliders provide. Personally I use them all.

1 Like

The real problem is that darktable has to keep its old artifacts despite its new direction. Its old artifacts are the non linear rgb modules and modules that hard clip. Its new direction is linear rgb with no hard clipping. It keeps the old artifacts so old edits still load (great), with the drawback that new users see 70+ modules appearing in numerous different tabs and don’t know which way to turn.

I would actually love to see a darktable fork with only the linear rgb, and non hard clipping modules. It would be quite simple to follow.

Redundancy (Eg. Should you boost contrast in filmic or color balance?) is an issue in all photo editing software. Always multiple ways to do the same sort of thing. Some will prefer the choice, some will wish the devs just found the one best solution and used that. Cant please everyone.

I know, I’ve watched Aurelian’s awesome presentations on youtube and I’m a programmer. So, I can generally figure complex abstractions out and appreciate the maginificant results. To be clear, filmic is awesome because it gets great results with minimal efforts. Most users don’t need to know how it works just how to manipulate the outcome.

But I can’t explain what it does in a sane way to a normal user like e.g. my father, who is an old school photographer transitioning to digital only now. Darktable basically scares the hell out of him but he’s a way better photographer than I’ll ever be. Basically, the difference between scene referred and display referred is vary opaque to users like him and I guarantee you that if you take 100 random users very few of them can tell you what is what in the current version of Darktable. Mostly they’ll get decent results regardless. Most of them ought to be switching to filmic and the current UX is an obstacle for that still even though it’s improved massively.

The difference between scene referred and display referred makes complete sense as an implementation detail if you understand how things actually work in terms of color spaces and algorithms (and the math behind that) but not as something to burden users with.

If you don’t believe me just watch Bruce Willam’s latest efforts on explaining filmic. He’s basically saying that he still doesn’t really get the difference (despite multiple exchanges with Aurelian on this) but he’s happy to take his word for it. Now that’s a serious photographer that has put in lots of effort trying to wrap his head around this stuff. He actually reads the documentation.


You can already adapt the module lists to only show the modules you want, and iirc there are a few presets for module selection. That should significantly reduce the number of visible modules, and allow you to limit use of some of the stranger combinations.

Another thing is that a certain number of modules are “special effects”, what should be done with those?

Redundancy also arises through creative use of some modules (e.g. exposure + parametric masks can also change global contrast…). And it’s not always that clear-cut what the “one best solution” is: (almost) all editing programs I know have both levels and tone curve; but everything I can do with levels can also be done with the tone curve (and perhaps even with just the exposure module…). Is that enough reason to remove the levels module?

1 Like

THere’s nothing wrong with taking the authors word for how things work under the hood. Like you said, he reads the documentation, that gives him enough to start working with the tool.

Don’t forget that filmic and the whole scene referred work flow are new tools as far as dt is concerned, and like every new tool, we’ll have to learn how to use it. Like we have to learn how to (best) use a new camera.

There are some very user-friendly guides by @aurelienpierre about how to use filmic (darktable 3.0 for dummies (in 3 modules) and darktable 3.0 for dummies: hardcore edition). It’s not all that complicated to use and you don’t have to know the hows and the whys to be able to get good results from it.

1 Like

I can’t really understand that. When your father started with photography, he had to be able to acquire a lot of expertise before he could get reasonable results. He had to learn the relationship between aperture, exposure time and ISO. That was the necessary knowledge that could not simply be ignored in those days.

I don’t know why today he should expect some tool to do the job for him. Digital image processing also requires knowledge to be able to edit images adequately. Even back then there were simple cameras and Polaroids with which one could quickly take a few holiday photos without much effort. But if you wanted to take your photos more seriously, you needed to know how to do it.

Today it is no different. With your mobile phone you can quickly take photos, make the basic corrections with a simple app and that’s it. But if you want more, you need to know how to do it. In my opinion, darktable is not a simple app to easy get quick results, but a tool whose primary function is to offer you the possibility to get high quality results if you make an effort to acquire the necessary knowledge.


I think that that’s actually a common problem (not limited to dt/photography):
someone has learned to make images in a particular way, and changing those habits is hard.

Whether that is due to learning new things becoming more difficult with age, or whether it’s difficult to accept that the new methods give initially worse results than the old methods (for by that person!), I don’t know.

Or another reason might be a lack of patience for studying a new tool ("I know how to take pictures, why should I learn that again?’).

That said, when you just open dt to start editing, it is rather opaque, more so than some other programs (I only switched to dt on my third try…). Then again, rawtherapee scared the heck out of me when I had a look at that a few months ago :wink: (just out of curiosity, not thinking of switching, so no effort to understand the interface, let alone the individual tools).

Yes, this is exactly what I was concerned about. After using auto adjustment for black/white relelative exposure I can still the under/overexposure warnings in jpg, while there are no warninings in raw. Even though I set thresholds at 0% / 100%. For that reason I though that the auto buttons used different method.