Nodes/Difforum/Difforum · Prompt Batch (→ AnimateDiff)
ComfyUI Node

Difforum · Prompt Batch (→ AnimateDiff)

The bridge that feeds Difforum prompt travel into AnimateDiff

By chillithebillis·Created 3 months ago·Updated about a month ago· 7
Difforum · Prompt Batch (→ AnimateDiff)
  • positive_schedule
  • conditioning

Here's the mismatch Difforum runs into with AnimateDiff: Difforum's own sampler wants a per-frame list of conditioning (DIFFORUM_PROMPT), but AnimateDiff - and any batch sampler - wants one CONDITIONING whose tensor has a batch dimension equal to the frame count, so frame i gets prompt i. Difforum Prompt Batch is the one-node converter between those two worlds.

You feed it a positive_schedule (anything from Prompt Schedule or Prompt Scenes) and it stacks the per-frame conditioning into a single batched CONDITIONING output. That's the whole job, and it's the reason the README's difforum_animatediff_sd15.json template works at all - Difforum's prompt travel riding on AnimateDiff's native motion.

How it works, and why you'd use it

The mechanism is honest about what a batch needs: each frame's conditioning is a tensor of shape [1, T, D]; the node pads them to a common length and concatenates into [N, T, D], and carries the pooled output along too. Nothing fancy, exactly what the bridge requires.

Why bother, given the KB's verdict that AnimateDiff is largely superseded by Wan 2.2 for general video? Because the look survives, and it's a real one: SD 1.5's whole library of checkpoints, LoRAs, and ControlNets still works unchanged with AnimateDiff's motion module. If you want a clean stylized loop with native motion and your favorite SD1.5 model, this node is the cleanest path - Difforum handles schedules, camera, and prompt travel, AnimateDiff-Evolved handles the temporal motion. Pair it with an AnimateLCM motion module and lcm sampler for a fast, good-looking setup.

Inputs, outputs, install

Input: positive_schedule (DIFFORUM_PROMPT). Output: conditioning (CONDITIONING), which you wire into your AnimateDiff batch sampler - typically through AnimateDiff-Evolved's context options for long clips.

Install is shared with the whole pack:

cd ComfyUI/custom_nodes
git clone https://github.com/chillithebillis/Difforum.git difforum

Restart ComfyUI ([Difforum] loaded N nodes in the console; ComfyUI Manager works too). Only dependency is numpy, already in ComfyUI.

The gotcha: this node only converts the prompt schedule - it does not run AnimateDiff, which needs AnimateDiff-Evolved installed separately, along with an actual motion module (mm_sd15_v3) in models/animatediff_models/. People expect the one node to do it all; it doesn't, and the README's template is your map for the rest of the graph. Also, because it concatenates padded tensors, every prompt effectively stretches to the longest encoding - harmless in practice, but don't read anything meaningful into the padding.

CategoryDifforum/schedule

Inputs (1)

NameTypeDefaultDescription
positive_scheduleDIFFORUM_PROMPT

Outputs (1)

NameTypeDescription
conditioningCONDITIONING