VHS Chroma Smear
The bleeding color channels of a dying VHS tape
- image
- IMAGE
You know the look: a VHS frame where the color has smeared sideways out of the luminance - skin tones trailing red, the whole image looking slightly misaligned in time. That's chroma smear, a real artifact of composite video where the color carrier signal lags the brightness signal. This node reproduces it by working in YIQ color space, exactly the color model NTSC video actually uses. If you're building a retro-VHS branch of your workflow, this is the node that sells "this was on a tape," and it's what makes the difference between a desaturated filter and a plausible tape artifact.
How it works
The image is converted from RGB to YIQ - the color space NTSC was designed around, where Y is luminance and I/Q carry the color. Chroma smear is then applied by blurring or offsetting the color channels (I and Q) independently from Y, which is precisely how the real-world artifact works: the color information is smeared in one direction while brightness stays put. The smear_strength controls how far the color bleeds, and time animates it - useful if you're running this on video frames where the smear should drift from frame to frame. uniform toggles whether the smear applies evenly across the frame or varies, which gives it that organic, tape-deck imperfection.
The result is the classic "color is bleeding out of the edges" look, and because it's done in the correct color space rather than just offsetting RGB channels, the hue shift reads as authentic composite-video rather than a cheap chromatic-aberration clone.
Inputs that matter
- smear_strength - how far the chroma trails. 0–1, default 0.5
- time - 0–1 animation offset for video; leave at 0 for a static image
- uniform - even smear vs. varied smear
One IMAGE in, one IMAGE out.
Install
Ships in Photography Nodes:
cd ComfyUI/custom_nodes
git clone https://github.com/TrophiHunter/ComfyUI_Photography_Nodes
Restart, find it under TrophiHunter/Photography (ComfyUI Manager: "Photography Nodes"). Pure torch/PIL, no requirements.
Where people get burned
Chroma smear is one artifact among many on a VHS tape, and on its own it can just look like a messed-up image - it wants company. The pack's author chains it with the other tape effects: in the example workflow it's VHS Chroma Smear → NTSC Filter → VHS Degrade, and that ordering is the whole game. Use too much smear_strength on a clean still and it reads as a broken GPU, not tape; keep it low and let the other VHS nodes add scanlines and dropouts so the smear reads in context. And remember this is a single-frame effect - for real animation you'll want to drive time per frame rather than leaving it static.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| smear_strength | FLOAT | 0.5000–1 | — |
| time | FLOAT | 0.0000–1 | — |
| uniform | BOOLEAN | true | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |