Bug #9846

Vignette darkens out-of-gamut warning pixels

Added by Robert Hutton over 6 years ago. Updated over 6 years ago.

Target version:
Start date:
Due date:
% Done:


Estimated time:
Affected Version:
hardware architecture:


Steps to reproduce:
  • download some print profiles from a printing website (I used and install them in ~/.config/darktable/color/out
  • open an image in darkroom
  • apply a softproof profile in the output color profile module
  • apply adjustments that push some areas out of the gamut of the print profile (I used the a, b tabs of the tone curve)
  • apply a vignette
  • press "g" key to enable out-of-gamut warning

The vignette darkens the light blue out-of-gamut warning pixels rather than changing which pixels are shown as out-of-gamut. See attached screenshot.

Vignette on top of out of gamut.png (735 KB) Vignette on top of out of gamut.png Robert Hutton, 03/09/2014 03:03 PM


#1 Updated by Ulrich Pegelow over 6 years ago

  • % Done changed from 0 to 10
  • Status changed from New to Confirmed

Well, this is a consequence of the way the pixelpipe handles color spaces. Most darktable modules act in the Lab color space - everything between colorin and colorout. However, the modules following colorout - including vignette - act in the output RGB color space. This has a few unfarvourable consequences including the one that you you described: the out-of-gamut warning, which is produced in colorout, can get modified by the following modules. There certainly would be a way to mitigate that problem but I guess the issue is more a cosmetic one, so it's not top priority.

There are a few other problems that bug me more:

  • even if the colorout module detects a pixel to be not out-of-gamut (relative to a softproof profile) this does not prevent later modules to change that situation. The same is true for softproofing.
  • a change of the output RGB profile will change the results of all modules following colorout. This change might not be extreme but it is also nothing to be easily neglected

A "clean" solution would require us to either move more or less all modules before colorout or we would need to split colorout into two parts. The first one transfers from Lab to some working RGB color space and the second step at the end of the pixelpipe would finally transfer to the output color space.

This needs a lot of considerations and discussion and is not going to be fixed soon.

Also available in: Atom PDF

Go to top