Image Transition
Turn two stills into a reveal video
- image1
- image2
- output_path
The Image Transition node does one specific thing and does it well: it takes two images and produces an MP4 video of a mask-based reveal - image1 underneath, image2 wiping across it in a chosen direction, over a duration you set. Optionally it draws a visible line at the reveal edge. This is your b-roll transition, your slideshow wipe, your "here's the before, here's the after" clip - without touching a video editor.
One structural thing to know immediately: this is a file-out node. It takes two IMAGE tensors, animates them internally, and encodes the result to an MP4 saved in ComfyUI's output directory - the output is a path string, not frames. If you want a transition you can keep manipulating in the graph, this isn't it. If you want a finished, savable transition clip, it absolutely is.
How it works
The node builds a frame-by-frame animation: a dynamic mask progressively reveals image2 over image1 across the duration in seconds, and if line_toggle is on, a colored line of thickness pixels marks the current reveal position in hex_color (e.g. #FFFFFF). Frames are encoded into an MP4 with ffmpeg at 24 FPS. Direction comes from the direction dropdown: Vertical-Down, Vertical-Up, Horizontal-Left, or Horizontal-Right. Filenames are auto-generated with your prefix plus _001.mp4, and incrementing numbers avoid overwrites.
Inputs and output
image1- the bottom layer (shown first).image2- the top layer (revealed by the wipe).duration- transition length in seconds (default 1.0, min 0.1).direction- which way the reveal travels.line_toggle- show the edge line or not (default off).thickness- line width in pixels (1–50, default 2).hex_color- the line color as hex (default#FFFFFF).prefix- filename prefix (defaulttransition).use_gpu- optional NVENC encoding, off by default; the README claims 5–10x faster with it.
Output is output_path - the full path to the generated MP4.
Installing it
One of ~25 nodes in the Simple Video Effects pack:
cd ComfyUI/custom_nodes
git clone https://github.com/scofano/ComfyUI-Simple-video-effects
cd ComfyUI-Simple-video-effects
pip install -r requirements.txt
Restart ComfyUI, or install via ComfyUI Manager (search "Simple Video Effects"). No models - but it encodes with ffmpeg, so the binaries need to be on your PATH.
Common issues
The line is off by default, so if you expected the reveal marker and got a clean wipe, flip line_toggle. If both images aren't the same resolution, the animation composites them as-is - mismatch shows up as an obvious jump at the seam, so normalize your two images first. And remember the output is a file, not frames: wire output_path into whatever consumes paths (or just find it in ComfyUI/output). If the transition is too fast or too slow, that's duration - at 24 FPS, 1 second is 24 frames of wipe, which is brisk; 2–3 seconds reads as a proper transition.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| image1 | IMAGE | — | |
| image2 | IMAGE | — | |
| duration | FLOAT | 1.0 | — |
| direction | COMBO | Horizontal - Right | 4 options: Vertical - Down, Vertical - Up, Horizontal - Left, Horizontal - Right |
| line_toggle | BOOLEAN | false | — |
| thickness | INT | 21–50 | — |
| hex_color | STRING | #FFFFFF | — |
| prefix | STRING | transition | — |
| use_gpuopt | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| output_path | STRING | — |