Nodes/⚗ AlchemicaSampler/⚗ Alchemica · Black and white (darkroom filters) [1.0, use Alchemica Black and White (darkroom filters)]
ComfyUI Node

⚗ Alchemica · Black and white (darkroom filters) [1.0, use Alchemica Black and White (darkroom filters)]

Same monochrome, Italian names

By Nessuno76·Created about a month ago·Updated 21 days ago· 4
⚗ Alchemica · Black and white (darkroom filters) [1.0, use Alchemica Black and White (darkroom filters)]
  • immagine
  • maschera
  • immagine
◄filtrofiltro arancio (ritratto)►
◄viraggiobianco e nero►
◄contrasto1.15►
◄luminosita0.00►
◄grana0.000►
◄inverti_mascherafalse►

This is the original ⚗ Alchemica · Black and white - the darkroom-style monochrome converter, before the pack's 1.1 restyle renamed every socket and widget into English and moved the originals into a legacy (1.0) category. It works, it's the same code, and its twin is ⚗ Alchemica Black and White.

You're here because a workflow you downloaded references it. That's the only good reason.

The mapping, since that's what you need

| 1.0 | 1.1 twin | Notes | |---|---|---| | immagine | image | The decoded image | | filtro | filter | filtro arancio (ritratto) → orange (portrait); also red, yellow, green, blue, neutral Rec. 709 | | viraggio | toning | bianco e nero → black and white; sepia, selenium, platinum | | contrasto | contrast | S-curve around mid-grey. 1.15 default; 1.2–1.4 is punchy | | luminosita | brightness | ±0.5, default 0 | | grana | grain | 0–0.15; 0.02–0.04 reads like 400 ISO film | | maschera | mask | Optional MASK: convert only where painted | | inverti_maschera | invert_mask | Flips it - painted mask plus inverted gives colour splash | | immagine (out) | image (out) | Single output |

What it's doing

No model, no sampling, no queue cost. It's a weighted channel mix (which is what a coloured darkroom filter does to b/w film: an orange filter lightens and smooths skin, a green one darkens and textures it, blue is the dramatic one), then an S-curve around mid-grey, optional toning for a sepia/selenium/platinum print, and optional grain. Painting a mask limits the conversion to that zone; inverting the mask keeps the subject in colour and desaturates everything else.

Porting it

Swap in ⚗ Alchemica Black and White, reconnect the image and the optional mask, and translate filtro, viraggio and inverti_maschera - those are the only menu and boolean values that don't map by position. Defaults are the same in both nodes (orange filter, pure black and white, contrast 1.15), so a rewire with no changes gives the identical result.

If you're keeping the workflow as-is: legacy nodes are hidden from search but not gone. Right-click → Add Node → ⚗ AlchemicaMente → legacy (1.0).

Installing

# ComfyUI Manager: search "AlchemicaSampler"
cd ComfyUI/custom_nodes && git clone https://github.com/Nessuno76/ComfyUI-AlchemicaSampler

ComfyUI 0.36+ for the pack as a whole, no pip dependencies of its own. Restart the ComfyUI server after cloning; a browser reload won't register nodes.

Common issues

Painting the mask and seeing nothing change. The maschera input has to come from a Load Image node's MASK output, and the painting happens in the MaskEditor (right-click the Load Image node → Open in MaskEditor). An unconnected or empty mask means "convert everything".

Colour splash comes out backwards. inverti_maschera is the toggle. One way gives you a monochrome subject on a colour background, the other the reverse.

The result looks like a desaturated colour photo. Contrast too low and grain at 0. 1.2–1.4 and 0.03 respectively is the difference between an export and a print.

Category⚗ AlchemicaMente/legacy (1.0)

Inputs (8)

NameTypeDefaultDescription
immagineIMAGE—
filtroCOMBOfiltro arancio (ritratto)Which colours become light: as the coloured filters used with b/w film. Red/orange = lighter, smoother skin; green = darker, more textured skin; blue = dramatic
viraggioCOMBObianco e neroPure grey, or a toned print (sepia, selenium, platinum)
contrastoFLOAT1.150.5–2.5S-curve around the mid-grey: 1 = as it is, 1.2-1.4 = punchy b/w
luminositaFLOAT0.00-0.5–0.5—
granaFLOAT0.0000–0.15Film grain (0.02-0.04 = like a 400 ISO film). 0 = none
mascheraoptMASKOptional: b/w only in the painted zone (or everywhere ELSE with 'inverti': colour splash, the subject stays in colour)
inverti_mascheraoptBOOLEANfalse—

Outputs (1)

NameTypeDescription
immagineIMAGE—