Technicolor 3-Strip v2
The three-strip look, plus grain, halation, and everything else
- images
- IMAGE
Technicolor 3-Strip v1 gives you the channel-push core of the look. v2 is that same engine plus the full period-film dressing room: color temperature, vibrance, brightness, split shadow/highlight tones, grain, sharpening, and halation - the soft glow around bright areas that old lenses and film stock produced almost by accident. It's the difference between "this looks Technicolor" and "this looks like a Technicolor movie still."
How it works
The v2 pipeline keeps v1's channel-gain and cross-processing core, then layers on a much longer PIL-based finishing chain: per-channel strengths, cross-process bleed, then ImageEnhance-style controls for saturation/vibrance/brightness/contrast, separate tone adjustments for shadows and highlights, a grain pass, sharpening, and halation. Because it's built on PIL for the extra stages, everything still runs per-frame - so it stays batch-safe for video, just slower than v1's lean cv2 path.
The inputs that matter
- red/green/blue_strength - same three-strip core as v1 (defaults 1.5/1.3/1.2)
- cross_process_amount (0–0.5) - the channel bleed that gives the vintage color contamination
- color_saturation, color_vibrance, color_temperature - the new finishing trio. Temperature above 1.0 warms, below cools; vibrance is the "don't blow out skin tones" version of saturation
- contrast / brightness - straightforward
- shadow_tone / highlight_tone - tint the dark and bright ends separately, which is how you get that teal-shadow/warm-highlight period grade
- grain_amount (0–1), sharpness (0–2), halation (0–1) - the texture trio that sells it as film rather than a filter
Output: IMAGE, same dimensions as input, batch-safe.
That's fourteen sliders. It's a kitchen-sink node, and that's both the appeal and the trap - the defaults are usable, but it's very easy to keep turning knobs until you've invented a new color space. Start at defaults, move one thing at a time.
v1 or v2?
Pick based on how much of the look you want:
- v1 - the lean, fast three-strip push. Two or three knobs, instant, and it runs on big batches happily.
- v2 - the full treatment. Grain + halation + split tones are what actually make footage look filmed, and if you're grading a video clip rather than a still, that's usually what you want.
If you're just adding color, v1. If you're finishing a piece, v2.
Install
Part of DJZ-Nodes by Drift Johnson. ComfyUI Manager → "DJZ-Nodes", or:
cd ComfyUI/custom_nodes
git clone https://github.com/MushroomFleet/DJZ-Nodes
cd DJZ-Nodes
pip install -r requirements.txt
Restart ComfyUI. Needs torch/numpy/cv2/PIL - all standard in ComfyUI; the pack's heavy requirements are for other nodes.
Gotchas
Halation and grain both push toward a soft, dreamy result - if your video is already low-contrast, keep them low or you'll lose the image entirely. And the PIL enhancement stages make v2 noticeably slower than v1 on long frame batches; for a 300-frame render, that's real wall-clock time. Speed-sensitive folks: v1 for the color, a separate grain node for the texture.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| red_strength | FLOAT | 1.50.1–3 | — |
| green_strength | FLOAT | 1.30.1–3 | — |
| blue_strength | FLOAT | 1.20.1–3 | — |
| cross_process_amount | FLOAT | 0.100–0.5 | — |
| color_saturation | FLOAT | 1.40–3 | — |
| color_temperature | FLOAT | 1.00.5–2 | — |
| color_vibrance | FLOAT | 1.20.5–2 | — |
| contrast | FLOAT | 1.20.5–2 | — |
| brightness | FLOAT | 1.00.5–1.5 | — |
| shadow_tone | FLOAT | 0.90.5–1.5 | — |
| highlight_tone | FLOAT | 0.90.5–1.5 | — |
| grain_amount | FLOAT | 0.100–1 | — |
| sharpness | FLOAT | 1.10–2 | — |
| halation | FLOAT | 0.20–1 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |