Nodes/radiance/◎ Radiance Mux
ComfyUI Node

◎ Radiance Mux

Radiance Mux — flip between four inputs without touching a wire

By fxtdstudios·Created 7 months ago·Updated 9 days ago· 242
◎ Radiance Mux
  • A
  • B
  • C
  • D
  • selected
index0
label

The most annoying thing about A/B testing in ComfyUI is that it's never just A/B. You want to compare three grades, four upscalers, two samplers plus a baseline. Radiance Mux gives you four inputs - A, B, C, D - and a single index integer that decides which one comes out. Same idea as any switch node, but with the routing kept deliberately bare so it's obvious what you're doing at a glance.

It's an any-type node, so it doesn't care what you're multiplexing. Images, latents, models, conditioning - wire anything into the four slots, set index to 0, 1, 2, or 3, and the matching input passes straight through.

How it works

index maps to 0 = A, 1 = B, 2 = C, 3 = D. That's the whole mechanism, with one subtlety worth knowing: unconnected slots are skipped, and only the selected input executes. This matters more than it looks. It means you can keep four heavy branches - four VAE decodes, four full sampler chains - wired in and only pay for the one you've selected. ComfyUI's lazy execution does the rest of the work, so switching index doesn't just change the output, it changes what actually runs.

That makes the mux a slightly better comparison tool than wiring four outputs into separate previews and squinting. It's one node, one knob, and you can drop a PrimitiveInt on the converted index input if you want to drive the selection from somewhere else in the graph. The label input is a free-form string that just sits on the node - handy when you've got three muxes in one graph and need to remember which is which.

Where it sits in the pack

Radiance is the 32-bit-float color and VFX suite from FXTD Studios - the "hidden gem" the community found for HDR/EXR work. The mux is one of its few generic layout nodes, and it's the natural companion to ◎ Radiance Gate. Gate enables a branch; mux chooses between branches. In a grading workflow the classic pattern is: grade the same frame four ways, wire all four into the mux, and toggle index to compare looks before you commit.

Installing

Same as every Radiance node - it's one pack:

cd ComfyUI/custom_nodes
git clone https://github.com/fxtdstudios/radiance.git
cd radiance
pip install -r requirements.txt   # or requirements_windows.txt / requirements_linux.txt / requirements_mac_silicon.txt

Or just search Radiance in ComfyUI Manager and hit install. Restart after. Linux needs libopenexr-dev before the pip step. It's a heavy dependency set for a mux, so if a four-input switch is literally all you need, lighter plumbing packs (rgthree's switchers, any generic Any-switch) do the job without pulling in OpenColorIO and OpenEXR. Grab the mux when you're already living in the suite.

Gotchas

Nothing exotic here - the two things that trip people up are both "I didn't read the docs" moments. First, leaving inputs unconnected is fine (they're all optional), but if you select an unconnected slot you get None out, and whatever's downstream may not thank you. Second, the index is a hard 0–3 integer; there's no wrap-around and no auto-fallback, so a 4 silently does nothing useful. Keep the index on the widget, flip it by hand, and you'll be fine.

CategoryFXTD Studios/Radiance/Layout

Inputs (6)

NameTypeDefaultDescription
indexINT00–30 = A, 1 = B, 2 = C, 3 = D. Select which input to pass through.
Aopt*Input A (index 0).
Bopt*Input B (index 1).
Copt*Input C (index 2).
Dopt*Input D (index 3).
labeloptSTRINGOptional label for this mux node.

Outputs (1)

NameTypeDescription
selected*