Nodes/ComfyUI-AtlasUtils/Seamless Loop Assembler
ComfyUI Node

Seamless Loop Assembler

The glue that closes the loop — stitch your interpolated seam back in

By Yoon999·Created 3 months ago·Updated 21 days ago· 0
Seamless Loop Assembler
  • head_chunk
  • vfi_interpolated
  • tail_chunk
  • looped_images

SeamlessLoopAssembler is the shortest node in this pack and it knows it. It takes the three pieces of the seamless-loop recipe - two chunks of original footage and an interpolated bridge - and glues them back into one continuous image sequence. That's the entire job.

You reach for it as the second half of the loop pipeline: SeamlessLoopSplitter cuts a clip into head_chunk, tail_chunk, and a [last, first] pair; a VFI (frame interpolation) node of your choosing turns that pair into smooth transition frames; then this node does the reassembly. It's the boring end of the job, and being boring is the point - you could chain ComfyUI core's 2-input ImageBatch nodes twice to combine three sequences, but that's exactly the kind of noodle-wiring this pack exists to delete.

How it works

It's a single torch.cat on the batch dimension, in the fixed order head_chunk → vfi_interpolated → tail_chunk. Three inputs in, one sequence out. No resizing, no frame-count checks, no opinion about whether the result is actually a loop - that part is between you and the player.

Inputs and output

  • head_chunk - the frames after the split point from the splitter.
  • vfi_interpolated - the interpolated bridge from your VFI node (the output of interpolating vfi_batch).
  • tail_chunk - the frames before the split point.
  • looped_images - everything concatenated, in that order.

Wire it like this:

SeamlessLoopSplitter.vfi_batch ──> [your VFI node] ──> SeamlessLoopAssembler.vfi_interpolated
SeamlessLoopSplitter.head_chunk ─────────────────────> SeamlessLoopAssembler.head_chunk
SeamlessLoopSplitter.tail_chunk ─────────────────────> SeamlessLoopAssembler.tail_chunk

Install

Same as its sibling in ComfyUI-AtlasUtils - ComfyUI Manager search for ComfyUI-AtlasUtils, or:

cd ComfyUI/custom_nodes
git clone https://github.com/Yoon999/ComfyUI-AtlasUtils

Then restart ComfyUI. No models, no extra dependencies; the interpolation node is yours to supply.

Where people get burned

  • It concatenates blindly. Order matters - swap head and tail and the loop has a jump cut in the wrong spot. Feed a VFI bridge with a different frame count and the timing shifts but nothing complains. Check the three inputs before you run.
  • The seam is invisible to this node. It doesn't loop anything; it returns a plain image sequence whose last frame no longer matches its first in any special way. Play it back cyclically (or export to a looping GIF/MP4) for the actual loop.
  • "It's not seamless!" - the seam quality is entirely whatever your VFI node produced. This node can't fix a bad interpolation, only reassemble one.
CategoryAnimation/Loop

Inputs (3)

NameTypeDefaultDescription
head_chunkIMAGE
vfi_interpolatedIMAGE
tail_chunkIMAGE

Outputs (1)

NameTypeDescription
looped_imagesIMAGE