Nodes/S42 CutFlow/🔲 S42 CutFlow Vignette
ComfyUI Node

🔲 S42 CutFlow Vignette

The cheapest production value in the pack

By GeekyGhost·Created 6 months ago·Updated 4 months ago· 3
🔲 S42 CutFlow Vignette
  • clip
  • clip
  • frame_count
  • info
intensity0.50
softness0.50
shapecircle
offset_x0.00
offset_y0.00
vignette_color#000000

Vignetting is the closest thing video post has to a free lunch. It darkens the corners, pulls the eye to the middle of the frame, and mimics the optical falloff of real cinema glass - AI-generated footage especially reads as "shot on a phone" without it, because diffusion models love perfectly even illumination. S42CF_Vignette gives you that lens character with zero GPU cost. Every frame is processed with numpy on CPU while your graphics card sits idle.

It sits in the Filters category of the S42 CutFlow pack, and it slots naturally at the tail of an edit chain - the pack's own speed-ramp workflow runs Load → SpeedRamp → Vignette → Video Combine.

How it works

For each frame it builds a distance field over the image, then shapes that field into a darkening mask. The shape parameter picks the geometry (circle, oval, rectangle), softness controls how gradually the fade ramps in (0.1 is a sharp edge, 1.0 is a whisper-soft falloff), and intensity raises the whole mask to a power before it's applied - so 0.5 is gentle, 1.0 is obvious, and 2.0 is "intentionally dramatic."

The neat part is offset_x and offset_y. Instead of always darkening around dead center, you can shift the "bright spot" to track an off-center subject - handy when your main character isn't framed center and you don't want the vignette to feel like it's dimming them.

Inputs you'll actually touch

  • clip - your IMAGE batch (any resolution; it reads the frame size and adapts).
  • intensity - darkness strength, 0–2. Start at 0.5.
  • softness - 0.5 is a good middle; drop toward 0.2 for a more visible "cinematic" ring.
  • shape - oval is usually the right call for 16:9 footage because it stretches to match the aspect ratio; circle looks off on wide frames.
  • offset_x / offset_y - shift the center, -1 to 1.
  • vignette_color - hex, default #000000. A warm orange (#402000) gives you that blockbuster sunset mood instead of plain black.

Outputs

clip is your vignetted frames - send it onward to your video saver. frame_count is a passthrough of how many frames came in, which you'll appreciate if something downstream needs to know the clip length. info is the usual human-readable summary every CutFlow node prints.

Installing it

Part of the S42 CutFlow pack: ComfyUI Manager (search "S42 CutFlow") or cd ComfyUI/custom_nodes && git clone https://github.com/GeekyGhost/S42-CutFlow, install requirements, restart. No models, no VRAM pressure.

Gotchas

The README flags that the hex color picker widget is currently broken in the pack - if the swatch doesn't respond, just type the hex code manually. And a stylistic warning: it's easy to overdo a vignette on bright, high-key footage. If the corners look like someone smudged charcoal on the lens, drop intensity to 0.3 and raise softness to 0.7. Subtle wins here.

CategoryS42 CutFlow/Filters

Inputs (7)

NameTypeDefaultDescription
clipIMAGEVideo clip to apply vignette to.
intensityFLOAT0.500–2Vignette darkness strength. 0 = none, 1.0 = strong, 2.0 = extreme.
softnessFLOAT0.500.1–1How gradually the vignette fades in. 0.1 = sharp edge, 1.0 = very soft.
shapeCOMBOcircleVignette shape. 'oval' stretches to match frame aspect ratio.
offset_xFLOAT0.00-1–1Horizontal offset of vignette center. -1=left, 0=center, 1=right.
offset_yFLOAT0.00-1–1Vertical offset of vignette center. -1=top, 0=center, 1=bottom.
vignette_colorSTRING#000000Vignette color (hex). Default #000000 = black. Click swatch to pick.

Outputs (3)

NameTypeDescription
clipIMAGE
frame_countINT
infoSTRING