Nodes/S42 CutFlow/🔁 S42 CutFlow Loop Bounce
ComfyUI Node

🔁 S42 CutFlow Loop Bounce

Infinite Loops From a 2-Second Clip

By GeekyGhost·Created 6 months ago·Updated 4 months ago· 3
🔁 S42 CutFlow Loop Bounce
  • clip
  • clip
  • frame_count
  • info
loops2
modeloop
crossfade_frames0

AI video models hand you 2–5 second clips, and your timeline wants 10 seconds of ambient background or a loop for a social post. S42CF_LoopBounce is the S42 CutFlow node that extends a clip by repeating it - with the two tricks that make repeats actually watchable: ping-pong mode and seam crossfades.

What you set

  • loops - total plays. 1 is passthrough (no loop), 2 plays the clip twice, and so on.
  • mode - loop repeats forward; ping_pong plays forward then reverse, alternating. Ping-pong is the star here: because each seam transitions into a reversed version of the clip, the motion is continuous and the loop point is effectively invisible. That's the boomerang trick, and it's why ping-pong loops get used everywhere from GIFs to streaming overlays.
  • crossfade_frames - frames to crossfade at each seam. 0 is a hard cut; a small number (4–8) dissolves the loop boundary so you don't get that telltale "pop" where the clip restarts.

The output is clip, frame_count (multiplied by the loop count), and info.

The two ways people use this

The honest loop. Feed it footage where the end can plausibly meet the beginning - drifting clouds, ocean, a walk cycle - and use loop mode with a short crossfade_frames. A few frames of dissolve and most viewers won't spot the seam.

The bounce. Feed it anything with motion and use ping_pong. Because the reverse plays the motion backward, the seam isn't a jump - it's a natural reversal. This is the go-to for product showcases, ambient backgrounds, and profile-page loops. It's also the natural partner for S42CF_ClipReverse: reverse a clip, bounce it, and you've got a seamless forward-backward-forward motion.

A pro tip: AI clips that end on a held pose loop far more convincingly than clips that end mid-motion. If your loop seam keeps catching the eye, fix the source, not the node - pick a seed where the last frame is close to a static composition.

Install

Standard pack install: ComfyUI Manager → search "S42 CutFlow" → Install → restart. Or:

cd ComfyUI/custom_nodes/
git clone https://github.com/GeekyGhost/S42-CutFlow.git
pip install -r S42-CutFlow/requirements.txt

Restart ComfyUI completely; the console should print [S42 CutFlow] Loaded 53 total nodes. Pure CPU tensor work - no models, no VRAM. Only required dependency for the pack is OpenCV (opencv-python-headless in requirements.txt; README's troubleshooting uses opencv-python - either clears "No module named 'cv2'").

And the pack's standing caveat: Geeky Ghost is building S42 CutFlow as a work-in-progress to groom nodes for LTX Desktop. The clip-ops core - LoopBounce included - is the stable layer; expanded nodes are the moving parts.

CategoryS42 CutFlow/Clip Ops

Inputs (4)

NameTypeDefaultDescription
clipIMAGEVideo clip to loop.
loopsINT21–20Total number of times the clip plays (1 = no loop, just passthrough).
modeCOMBOloop'loop' = repeat forward. 'ping_pong' = forward then reverse alternating.
crossfade_framesINT00–60Number of frames to crossfade at each loop seam. 0 = hard cut.

Outputs (3)

NameTypeDescription
clipIMAGE
frame_countINT
infoSTRING