Nodes/radiance/◎ Radiance DaVinci Wide Gamut
ComfyUI Node

◎ Radiance DaVinci Wide Gamut

DaVinci Wide Gamut conversion

By fxtdstudios·Created 7 months ago·Updated 9 days ago· 242
◎ Radiance DaVinci Wide Gamut
  • image
  • image
transformLinear to DaVinci WG

DaVinci Wide Gamut is the color space Blackmagic made its Resolve color science around, and if you've ever had a graded file exported from Resolve, it's a coin flip that the color data inside is DaVinci Wide Gamut whether it looks like Rec.709 or not. This small Radiance node moves images in and out of that space, including DaVinci Intermediate - the log-ish encoding that Resolve uses as its working transform.

It's a focused utility: one dropdown, no settings, image in, image out. If your workflow never touches Resolve, you can skip it and never feel the gap; the same pack's ColorSpaceConvert also lists DaVinci Wide Gamut as a source and target. You come here for the DaVinci Intermediate step, which the big converter doesn't do.

The one input

  • transform - six directions:
    • Linear to DaVinci WG / DaVinci WG to Linear
    • Linear to DaVinci Intermediate / DaVinci Intermediate to Linear
    • DaVinci WG to ACEScg / ACEScg to DaVinci WG

The DaVinci Intermediate options are the reason to use this node over the generic converter: Intermediate is DaVinci's log curve, and the source implements its own encode/decode - a precise log-to-linear pair on top of the gamut matrix. So Linear to DaVinci Intermediate does two things at once: it maps your linear values into the DWG gamut and applies the Intermediate log curve, which is exactly what you'd see if Resolve handed you an Intermediate-encoded image and expected you to decode it.

How it works

Straightforward primaries math, same pattern as the pack's other color nodes: your source → XYZ → DWG matrix (or the inverse), with the Intermediate curve applied when the transform asks for it. No GPU, no models - this is deterministic colorimetry that runs in milliseconds.

Where you'd use it

The realistic workflow: you have a plate or a render graded in Resolve, exported as an EXR in DWG/Intermediate, and you want it in the same ACEScg space as the rest of your Radiance chain. DaVinci Intermediate to Linear gets you to linear, then Linear to ACEScg if you want it in AP1 - or just use DaVinci WG to ACEScg when your file is already linear DWG.

The reverse direction is the "make my AI output feel like a Resolve grade" move: convert generated content into DaVinci Wide Gamut (and optionally through Intermediate), do your grade in that wider space, and it inherits a bit of that color-managed film look before you convert back down for delivery.

Caveats

  • Same limitation as every space converter: it moves values between spaces, it doesn't invent dynamic range. Feed it an 8-bit SDR PNG and you get a wide-gamut version of the same 8 bits.
  • Watch your gamma. "Linear" inputs must actually be linear. If your source is still in a camera log (LogC, S-Log3, etc.), decode that first - the pack has dedicated log curve nodes in the same menu.
  • Intermediate-encoded data should be decoded before you grade it as linear. That's the one way people get burned: they drop an Intermediate EXR straight into a linear workflow, everything looks gray and flat, and they blame the pack when the file was telling them it was log.

Install

Part of Radiance - ComfyUI Manager → search Radiance, or:

cd ComfyUI/custom_nodes
git clone https://github.com/fxtdstudios/radiance.git
cd radiance
pip install -r requirements.txt

Restart and you'll find it under FXTD Studios/Radiance/Color.

CategoryFXTD Studios/Radiance/Color

Inputs (2)

NameTypeDefaultDescription
imageIMAGE
transformCOMBOLinear to DaVinci WG6 options: Linear to DaVinci WG, DaVinci WG to Linear, Linear to DaVinci Intermediate, DaVinci Intermediate to Linear, DaVinci WG to ACEScg, ACEScg to DaVinci WG

Outputs (1)

NameTypeDescription
imageIMAGE