Nodes/ComfyUI Seed API Integration/Seedance Lite First+Last Frame
ComfyUI Node

Seedance Lite First+Last Frame

Animate between two images

By FloyoAI·Created 12 months ago·Updated 8 months ago· 6
Seedance Lite First+Last Frame
  • first_frame
  • last_frame
  • STRING
prompt
resolution720p
ratioadaptive
duration5
framepersecond24
seed-1

Image-to-video gets you from one image. First+last frame gets you between two. You give this node a starting frame and an ending frame, and Seedance Lite (seedance-1-0-lite-i2v-250428) invents a plausible, smooth transition: the opening image, the closing image, and everything the model decides happens in between. It's the node for morphing a character, panning from one location to another, or turning a "then and now" pair into motion. ByteDance's Seedance is API-only - the KB's ByteDance panel is explicit that the whole video line stays on the paid API - so this is a cloud task wrapped in a ComfyUI node, same as the other Seedance nodes in the pack.

The mechanism is clean: both frames are base64-encoded and sent as first_frame and last_frame content parts alongside your prompt, the node creates an async generation task, and it polls until the video is ready. Your prompt gets to steer how the transition happens - "the camera arcs around," "she turns and walks away" - and the model does the interpolation. It's a Lite-only feature in this pack; the Pro 1.5 node supports end frames too, but on Lite this is your dedicated path.

Inputs and outputs that matter

  • first_frame and last_frame - both required. They don't need matching dimensions, but the closer they are in style, the more believable the transition.
  • prompt - describe the motion between the frames. This is where you tell it the transition's character.
  • resolution - 480p or 720p only on this node (no 1080p, an honest Lite limitation).
  • ratio - adaptive plus the usual six aspect options.
  • duration - 3–12 seconds; longer durations make slower, more interpolated transitions.
  • seed - reproducibility, -1 for random. framepersecond is locked at 24.

Output is a single STRING: the hosted video URL. Route it to a video preview/save node or Video URL to Frames.

Install

cd ComfyUI/custom_nodes
git clone https://github.com/FloyoAI/ComfyUI-Seed-API
cd ComfyUI-Seed-API
pip install -r requirements.txt

Restart, set your BytePlus API key in config.ini or BYTEPLUS_API_KEY. Manager: search "ComfyUI Seed API Integration".

Where people get burned

The end frames aren't promises - the model uses them as anchors, but a morph between two wildly different images can drift into uncanny territory halfway through, so don't expect pixel-perfect fidelity to either frame. Also, a common confusion: you can't connect an image to this node and get single-image-to-video; that's the Lite Image-to-Video node's job. And the empty-string-on-failure trap applies here as always - if you get an empty output, the real error is in the console. If the transition looks wrong, iterate on the prompt before the seed; the model leans on your description of the motion far more than on luck. Each render is a paid task, so use the shorter durations while you're still dialing in the look.

CategorySeed/VideoGeneration

Inputs (8)

NameTypeDefaultDescription
promptSTRING
first_frameIMAGE
last_frameIMAGE
resolutionCOMBO720p2 options: 480p, 720p
ratioCOMBOadaptive7 options: 16:9, 4:3, 1:1, 3:4, 9:16, 21:9, +1
durationINT53–12
framepersecondoptINT2424–24
seedoptINT-1-1–2147483647

Outputs (1)

NameTypeDescription
STRINGSTRING