How to prevent darktable from loading input profile from XMP?

I like to hop between different raw developers. Thanks to the ubiquitous XMP standard, this works rather well! I can import my images with DigiKam, cull and tag them in Darktable, and have those tags picked up by DxO Photo Lab or ACDSee.

This works great for metadata. However, Darktable regrettably reads more than metadata from the XMP, notably the input color profile. This is relatively benign with DxO, where it reads linear Rec708 RGB instead of darktable’s linear Rec2020 RGB, but gets very annoying with Capture One, where it reads Adobe RGB.

Is there a way to limit XMP reading outside of darktable’s own namespace to metadata?

I already tried to create an auto-preset, but that doesn’t help. I guess I can probably code some Lua to work around this, but I’d prefer a “native” solution.

Are you sure that Capture One actually reads the XMP created by darktable?

darktable’s XMP files are named by the full filename including its extension and having .xmp appended, i.e. IMG_12345.CR2.xmp.
Capture One expects IMG_12345.xmp.

It does if you rename the XMP file (which you can automate with Lua).

The point is, however, that darktable does read Capture One’s XMP and imports its input color profile.

Not that I’m aware of. You could just delete that tag before you open the image in darktable, but that’s not a native solution.

Seems like you’re a bit outside the lines here :slight_smile: