Nodes/FizzNodes/Frame Concatenate πŸ“…πŸ…•πŸ…
ComfyUI Node Runs on cloud

Frame Concatenate πŸ“…πŸ…•πŸ…

Turn your Node Frame chain back into a keyframe string β€” the bridge between two FizzNodes worlds

By FizzleDorfΒ·Created 3 years agoΒ·Updated 2 years agoΒ· 479
Frame Concatenate πŸ“…πŸ…•πŸ…
  • frame
  • STRING

Frame Concatenate is the bridge between FizzNodes' two ways of building prompt schedules. The FrameNodes system (Init Node Frame β†’ Node Frame β†’ …) lets you build keyframes as a graph. The batch schedulers (Batch Prompt Schedule and friends) eat keyframe strings. This node converts the former into the latter: feed it the frame (a FIZZFRAME from the end of a Node Frame chain) and it serializes every frame in that chain back into the "frame" : "prompt" text format the text-based schedulers expect.

That might sound like going around in a circle, and in a way it is - but it's a useful circle. You can assemble a schedule visually and dynamically with frame nodes, then hand the resulting string to Batch Prompt Schedule (or Batch String Schedule) to actually run the animation. The node reads each frame's positive and negative text out of the chain, appends the chain's general positive/negative text, and formats the negatives with the --neg marker so the string scheduler splits them correctly. Output is a single STRING.

What it does to your text

For a chain with frames at 0, 30, and 60, the output looks like:

"0": "a cat in a kitchen, cinematic lighting",
"30": "a cat in a spaceship, --neg blurry, bad anatomy",
"60": "a robot cat, cyberpunk city",

That's valid input for Batch Prompt Schedule as-is. The frame numbers come from what you set on each Node Frame, so keep them consistent with your intended animation length.

Honest caveats

This node only has value if you're already using the FrameNodes system - if you build schedules as text, you don't need it, and it adds a hop for nothing. It also only works on a complete chain: feed it an Init node or an empty FIZZFRAME and you'll get an empty or partial string, since there are no accumulated frames to serialize. Install the pack the usual way:

cd ComfyUI/custom_nodes && git clone https://github.com/FizzleDorf/ComfyUI_FizzNodes.git
cd ComfyUI_FizzNodes && pip install -r requirements.txt

Or "FizzNodes" via ComfyUI Manager and restart. No models, no extra deps beyond the pack's numpy/pandas/numexpr.

CategoryFizzNodes πŸ“…πŸ…•πŸ…/FrameNodes

Inputs (1)

NameTypeDefaultDescription
frameFIZZFRAMEβ€”

Outputs (1)

NameTypeDescription
STRINGSTRINGβ€”