Nodes/ComfyUI-VideoTransition/Video Blinds Transition
ComfyUI Node

Video Blinds Transition

Window-blind transitions — horizontal, vertical, or diagonal slats flipping between clips

By yichengup·Created 11 months ago·Updated 11 months ago· 25
Video Blinds Transition
  • video1
  • video2
  • video
blinds_direction
total_frames24
fps24
blinds_count4
flip_duration0.60
stagger_delay0.05
use_gpufalse
batch_size5
background_color#000000
width640
height640
quality90

The blinds transition is the classic "shutters" wipe: your frame is divided into horizontal (or vertical, or diagonal) slats, and they rotate over, like a window blind closing - except each slat is revealing video2 on its back. It's a clean, architectural cut that sits nicely between a plain crossfade and the full 3D theater of the cube nodes. If you want a transition that reads as deliberate without being gimmicky - titles, section breaks, corporate-but-stylish intros - this is the one. And it's the node where the pack's CSS3 rendering approach genuinely shines, because the slats are real 3D-flipped elements, not a warp trick.

How it works

Chromium branch: video1 and video2 are baked onto both sides of a set of CSS 3D transform "slats," and a headless Chromium (Playwright) animates each slat flipping, screenshotting every frame back into an IMAGE tensor. blinds_count sets how many slats; flip_duration is how long each slat takes to turn; and stagger_delay offsets each slat from its neighbor, which is what turns a synchronized flip into that satisfying cascading wave. The four blinds_direction options - horizontal, vertical, diagonal_right, diagonal_left - set the slat orientation. Horizontal blinds (slats running across the frame, flipping up/down) are the default and the most legible.

Inputs and outputs that matter

  • video1, video2 - the two clips, sampled by progress.
  • blinds_direction - the four-way enum above.
  • blinds_count (4–30, default 4) - number of slats. 4 is bold and readable; 30 is fine Venetian-blind texture that gets expensive.
  • flip_duration (0.3–1, default 0.6) - per-slat flip time.
  • stagger_delay (0–0.2, default 0.05) - the cascade offset. 0 = everything flips at once; 0.05–0.1 gives the wave.
  • total_frames (4–300, default 24) and fps (default 24) - a fast, percussive wipe is the look; the defaults are already in the right place.
  • use_gpu (off by default), batch_size, background_color, width/height (up to 3840), quality.

Output is video - an IMAGE batch; wire it to VHS_VideoCombine or ImageBatch to export.

Installing it

Same pack, same steps as the other Chromium nodes. ComfyUI Manager → search "VideoTransition", or:

cd ComfyUI/custom_nodes
git clone https://github.com/yichengup/ComfyUI-VideoTransition
cd ComfyUI-VideoTransition
pip install -r requirements.txt
playwright install chromium

The Chromium install is required - no browser binary, no blinds.

Common issues

  • Missing Chromium crash - playwright install chromium (with --mirror=https://registry.npmmirror.com behind the GFW).
  • Slats all flip at once, no wave - stagger_delay is at 0. Raise it to 0.05–0.1.
  • Flip looks too slow or sluggish - flip_duration at 1.0 over a short transition is a lot of motion per frame; drop it toward 0.3–0.5 and keep total_frames short.
  • Black gaps between slats - the background_color shows through between the 3D slats mid-flip; set it to match your footage (or accept it as a deliberate frame).
  • Many slats = slow render - blinds_count at 30 means 30 animated CSS elements screenshot per frame. Keep it modest unless you need the texture.
CategoryVideoTransition

Inputs (14)

NameTypeDefaultDescription
video1IMAGE
video2IMAGE
blinds_directionCOMBO4 options: horizontal, vertical, diagonal_right, diagonal_left
total_framesINT244–300
fpsINT2415–60
blinds_countoptINT44–30
flip_durationoptFLOAT0.600.3–1
stagger_delayoptFLOAT0.050–0.2
use_gpuoptBOOLEANfalse
batch_sizeoptINT51–20
background_coloroptSTRING#000000
widthoptINT640640–3840
heightoptINT640360–2160
qualityoptINT9060–100

Outputs (1)

NameTypeDescription
videoIMAGE