Nodes/ComfyTV/Luma Wipe
ComfyUI Node

Luma Wipe

The gradient wipe, from radial iris to your own artwork

By jtydhr88·Created 3 months ago·Updated about 15 hours ago· 725
Luma Wipe
  • video_a
  • video_b
  • luma_image
  • video
force_run_token0
project_id
parent_output_id0
luma_mapradial
duration1.00
softness0.10
invertfalse

Some transitions are geometric, and some are shaped - a reveal that sweeps across a gradient, opening from a circle or ticking like a clock. That's a luma wipe, the classic compositor's move, and Luma Wipe is ComfyTV's version. It blends one clip into another by sweeping a threshold across a grayscale pattern: dark areas of the map reveal first, bright areas last (or reversed).

What it does

On ▶ Run it blends video_a (outgoing) into video_b (incoming) driven by a luma map, and outputs a single COMFYTV_VIDEO. Both clips are required, and the map can be built-in or yours:

  • luma_map - a built-in pattern: radial (default), linear_x, linear_y, bilinear_x/y, square, diamond, clock, symmetric_clock, spiral, burst, curtain, blinds_h/v, checker, cloud. Ignored when you wire your own image.
  • luma_image - an optional COMFYTV_IMAGE input with your own grayscale pattern. If set, it overrides luma_map. If luma_map is none and no image is wired, the run stops and asks for one.
  • duration - transition length, 0.1–5.0s, default 1.0.
  • softness - feathering of the wipe edge, 0–1, default 0.1. 0 = crisp graphic edge; higher = softer blend. This is the knob that hides seams in hand-drawn maps.
  • invert - reverses the wipe direction (bright areas reveal first).

When no luma_image is connected, the node generates the chosen pattern at video_a's resolution, so you get a shaped reveal without hunting for a file.

Where it fits

Luma wipes are the stylized alternative to a straight crossfade - a radial iris into the next scene, a blinds reveal for a montage, or a custom wipe driven by your own grayscale artwork, which is a genuinely creative option (text, a logo silhouette, a gradient that tells the story). The natural companions: Video Transition for the geometric xfade menu, and the Sequence stage for assembling many clips with per-cut transitions in one node.

Install and troubleshooting

Pack-standard: git clone https://github.com/jtydhr88/ComfyTV into ComfyUI/custom_nodes, restart, under ComfyTV → Compose. No models, no GPU - PyAV processing.

  • Run errors "pick a luma pattern or wire a luma_image" - you set luma_map to none without connecting an image. Either pick a pattern or wire one in.
  • Wipe edge looks crunchy - raise softness; especially with hand-drawn maps, a little feather hides the seams.
  • Reveal goes the wrong way - flip invert.

Output is a COMFYTV_VIDEO snapshot; cross to native ComfyUI nodes with a ← ComfyTV Video Bridge.

CategoryComfyTV/Compose

Inputs (10)

NameTypeDefaultDescription
force_run_tokenINT00–2147483647Internal — bumped on Run to invalidate ComfyUI's input cache.
project_idSTRINGInternal — populated by the projectStore on the frontend.
parent_output_idINT00–2147483647Internal — lineage parent set by spawn handlers on the frontend.
luma_mapCOMBOradial17 options: none, linear_x, linear_y, bilinear_x, bilinear_y, radial, +11
durationFLOAT1.000.1–5
softnessFLOAT0.100–1
invertBOOLEANfalse
video_aoptCOMFYTV_VIDEO
video_boptCOMFYTV_VIDEO
luma_imageoptCOMFYTV_IMAGE

Outputs (1)

NameTypeDescription
videoCOMFYTV_VIDEO