darktable-org / darktable-org/darktable

5.4.0 vs. 5.2.1 interprets custom illuminant differently (Color Calibration module)

Open
#20,043 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

no-issue-activity
Dominant language
C
Stars
13.1k
Forks
1.4k
Avg merge
22h 14m
Merged PRs (30d)
198

Description

Is there an existing issue for this?
  • I checked and did not find my issue in the already reported ones
Describe the bug

After upgrading from Darktable 5.2.1 -> 5.4.0, I noticed half my previously processed images now have a green tint. All the ones processed with illuminant = "as shot in camera" are unchanged, but the ones with a custom illuminant are all greenish. The effect is not only visible in the preview, but also when exported to jpeg.

I don't know if it's relevant, but my camera is a Nikon Z5 II and configure it to record uncompressed NEF.

Steps to reproduce
  1. [possibly optional] Use a Nikon Z5 II and capture an uncompressed NEF.
  2. Install Darktable 5.2.1.
  3. Process the NEF using a custom illuminant in the Color Calibration module.
  4. Export a JPEG.
  5. Upgrade to Darktable 5.4.0
  6. Open the same NEF without changing any parameters and export another JPEG.
Expected behavior

Both JPEG exports should have the same apparent white balance. Darktable should be as backwards-compatible as possible with pre-existing XMP sidecar files.

Logfile | Screenshot | Screencast

_DSC2928.NEF.xmp.txt

Image
 % exiftool -Software _DSC2928_0_old.jpg _DSC2928_0_new.jpg 
======== _DSC2928_0_old.jpg
Software                        : darktable 5.2.1
======== _DSC2928_0_new.jpg
Software                        : darktable 5.4.0
Commit

No response

Where did you obtain darktable from?

Flatpak

darktable version

5.4.0

What OS are you using?

Linux

What is the version of your OS?

Ubuntu 24.04

Describe your system
sankey@sankey ~ % neofetch
            .-/+oossssoo+/-.               sankey@sankey 
        `:+ssssssssssssssssss+:`           ------------- 
      -+ssssssssssssssssssyyssss+-         OS: Ubuntu 24.04.3 LTS x86_64 
    .ossssssssssssssssssdMMMNysssso.       Host: Laptop 13 (Intel Core Ultra Series 1) A5 
   /ssssssssssshdmmNNmmyNMMMMhssssss/      Kernel: 6.17.8-061708-generic 
  +ssssssssshmydMMMMMMMNddddyssssssss+     Uptime: 1 day, 5 hours, 17 mins 
 /sssssssshNMMMyhhyyyyhmNMMMNhssssssss/    Packages: 2844 (dpkg), 22 (flatpak), 32 (snap) 
.ssssssssdMMMNhsssssssssshNMMMdssssssss.   Shell: zsh 5.9 
+sssshhhyNMMNyssssssssssssyNMMMysssssss+   Resolution: 2880x1920 
ossyNMMMNyMMhsssssssssssssshmmmhssssssso   DE: GNOME 46.0 
ossyNMMMNyMMhsssssssssssssshmmmhssssssso   WM: Mutter 
+sssshhhyNMMNyssssssssssssyNMMMysssssss+   WM Theme: Adwaita 
.ssssssssdMMMNhsssssssssshNMMMdssssssss.   Theme: Yaru-dark [GTK2/3] 
 /sssssssshNMMMyhhyyyyhdNMMMNhssssssss/    Icons: Yaru [GTK2/3] 
  +sssssssssdmydMMMMMMMMddddyssssssss+     Terminal: xfce4-terminal 
   /ssssssssssshdmNNNNmyNMMMMhssssss/      Terminal Font: Monospace 13 
    .ossssssssssssssssssdMMMNysssso.       CPU: Intel Ultra 7 155H (22) @ 4.500GHz 
      -+sssssssssssssssssyyyssss+-         GPU: Intel Arc Graphics] 
        `:+ssssssssssssssssss+:`           Memory: 22821MiB / 96012MiB 
            .-/+oossssoo+/-.
Are you using OpenCL GPU in darktable?

I dont know

If yes, what is the GPU card and driver?

No response

Please provide additional context if applicable. You can attach files too, but might need to rename to .txt or .zip

_DSC2928.NEF.xmp.txt

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the attached _DSC2928.NEF.xmp.txt and reproduce the custom-illuminant export in Darktable 5.2.1 and 5.4.0 using the Color Calibration module. Compare the resulting JPEGs and trace the Color Calibration handling of the saved XMP parameters; done means pre-existing custom-illuminant sidecars produce matching white balance across the two versions, with a regression test if the project provides one.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.