Difforum · Prompt Schedule (travel)
Morph a prompt over your clip
- params
- clip
- positive_schedule
- first_frame_cond
- info
The single most "Difforum" move in this whole pack is prompt travel: instead of one prompt for the whole clip, the description morphs as frames pass - a forest melting into a crystal cave melting into a galaxy. Difforum Prompt Schedule is the node that does it from a plain text schedule, in the same frame: prompt style you already know from the numeric schedules.
You write keyframes like:
0: a serene misty forest, soft light
30: a stormy ocean, dramatic clouds
59: a vast starry galaxy, vivid colors
The node encodes each keyframe prompt with CLIP once, then builds a per-frame list of blended CONDITIONING - so frame 15 is a half-forest, half-ocean embed. That's the mechanism: proper conditioning blending in embedding space, with an easing curve (ease_in_out by default) controlling how the blend moves between keyframes.
Inputs and outputs
params- from Difforum · Anim Setup. Itsmax_framesdefines how long the travel is.clip- your CLIP (from the checkpoint loader). Encodes each keyframe.prompts- the multilineframe: promptschedule.easing-linear,ease_in,ease_out,ease_in_out,step.stepgives hard cuts between scenes instead of morphs; everything else blends.
Outputs: positive_schedule (the per-frame DIFFORUM_PROMPT list - feed this into the Feedback Sampler's or Live Step's positive_schedule input), first_frame_cond (the CONDITIONING for frame 0, handy for the initial txt2img), and info (a text summary of your keyframes). Encoding each prompt once and reusing it per frame is what keeps this cheap - prompt travel costs a handful of CLIP encodes, not one per frame.
Install and gotchas
Same story as every node here - it's one pack:
cd ComfyUI/custom_nodes
git clone https://github.com/chillithebillis/Difforum.git difforum
Restart ComfyUI (console shows [Difforum] loaded N nodes; ComfyUI Manager has it too under "Difforum"). Only dependency is numpy, already in ComfyUI; the pack runs on Python 3.12+, which is precisely what the original Deforum library refuses to do.
Two things to watch. First, frame numbers past max_frames are ignored - if your last keyframe says 120: but Anim Setup only runs 60 frames, the travel is cut short. Second, blended conditioning is not a magic bullet: extreme subject changes (a forest to a face) can smear because the embeddings fight each other. Keep adjacent keyframes in the same visual ballpark and the morph reads as intentional, not mush. If you'd rather describe scenes in dedicated text boxes than remember frame numbers, Difforum · Prompt Scenes is the friendlier wrapper for exactly this.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| params | DIFFORUM_PARAMS | — | |
| clip | CLIP | — | |
| prompts | STRING | 0: a serene misty forest, soft light 30: a stormy ocean, dramatic clouds 59: a vast starry galaxy, vivid colors | — |
| easing | COMBO | ease_in_out | 5 options: linear, ease_in, ease_out, ease_in_out, step |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| positive_schedule | DIFFORUM_PROMPT | — |
| first_frame_cond | CONDITIONING | — |
| info | STRING | — |