Nodes/SpicyAPI/Seedance 2.0 Fast · Image to Video
ComfyUI Node

Seedance 2.0 Fast · Image to Video

What '-1' does, and why audio is free here

By spicyapi-ai·Created 21 days ago·Updated 2 days ago· 2
Seedance 2.0 Fast · Image to Video
  • image_url
  • last_image_url
  • video
  • last frame
  • task id
◄prompt►
◄aspect_ratioadaptive►
◄resolution720p►
◄duration_seconds5►
◄generate_audiotrue►
◄seed0►
◄return_last_framefalse►
◄bitrate_modestandard►
◄watermarkfalse►

Seedance 2.0 Fast is the throughput tier of ByteDance's video line: same family, 480p or 720p only, up to 15 seconds, and a price that doesn't punish you for leaving sound on. This node animates a still you supply. From $0.04499712 per second - an unlovely number the pricing system arrived at, not a rounding joke.

The thing that makes it interesting isn't the model, it's the plumbing: Fast is where the pack stops treating video settings as a fixed list and starts exposing the model's native switches. Smart duration, bitrate mode, watermark, last frame out. That's more control than the older Seedance nodes give you.

Two ideas you should understand before you touch anything

Smart duration. duration_seconds on this node isn't a slider, it's a dropdown with -1 at the top and 4 through 15 below it. Anything else is self-explanatory. -1 means don't tell the model how long the clip should be - let it pick. It's genuinely useful when a prompt implies its own rhythm ("a slow reveal", "a snappy cutaway") and useless when you're cutting to a track and need exactly 8 seconds. Either way, the pick is the billed quantity.

Audio is priced in. On the 1.5 Pro line, generate_audio roughly doubles the rate. Here, 480p costs the same $0.04499712/s whether audio is on or off, and 720p the same $0.096768/s. So leave it on. There's no cheaper silent version to trade against - just a resolution choice that doubles the rate.

The inputs, briefly

image_url is an IMAGE socket - Load Image goes in there, and the pack uploads the picture for you (PNG up to 10 MiB, JPEG fallback above that, and the upload is cached for 12 hours so re-running the same graph doesn't re-send it). prompt is the creative input; the author's own list of what to describe is "subject, action, camera, light, sound, and constraints" - note sound, which this model can actually act on.

Then aspect_ratio (16:9, 9:16, 4:3, 3:4, 1:1, 21:9, or the default adaptive, which follows your still), resolution (480p or 720p - that's the whole list), generate_audio, seed, and three switches that are unique to the 2.0 line:

  • return_last_frame - off by default. Turn it on and you also get the clip's final frame as an IMAGE, which is the honest way to chain clips: feed frame two's first image from clip one's last frame.
  • bitrate_mode - standard, or high for a crisper file at a bigger size. Presentation only; it doesn't change the generation.
  • watermark - adds the model's visible "AI generated" mark. Off by default.

Optional last_image_url gives the shot a closing frame to arrive on. That, plus return_last_frame, is how you build a sequence that actually cuts together.

Outputs

video → Save Video. last frame → anything that takes an IMAGE, but only once return_last_frame is on; until then it hands your graph a blocker rather than an image. task id → a string, the id from your console, the thing support asks for.

Install

Manager → search SpicyAPI, or:

cd ComfyUI/custom_nodes
git clone https://github.com/spicyapi-ai/comfyui-spicyapi

Restart, paste a key into Settings > SpicyAPI (or export SPICY_API_KEY), restart again so the node list is built for your account. Zero dependencies, zero downloads.

Costs and the usual traps

The node shows its rate for the combination you've picked, and every run is quoted before it starts. Set Settings > SpicyAPI > Max cost per run - video jobs are the expensive end of this pack and a 15-second 720p take isn't pocket change. seed defaults to fixed control-after-generate so a double-queue reuses the first result instead of buying a second one; randomize deliberately.

Interrupting a run stops your wait, not the job: it finishes on SpicyAPI and is charged if it succeeds, with the result parked in your console for up to 14 days. And if the site lists a model your menu doesn't, restart ComfyUI - the catalogue is pulled at startup.

CategorySpicyAPI/Video/ByteDance

Inputs (11)

NameTypeDefaultDescription
promptSTRINGDescribe the intended subject, action, camera, light, sound, and constraints.
image_urlIMAGEA source image that you are authorised to process.
aspect_ratioCOMBOadaptiveOutput frame ratio.
resolutionCOMBO720pOutput resolution.
duration_secondsCOMBO5Requested output duration in seconds. Pass -1 for smart duration: the model picks the length itself instead of a fixed number.
generate_audioBOOLEANtrueRequest synchronised output audio.
seedINT00–2147483647Same seed and settings, same result. Set 'control after generate' to randomize to get a new result on every run; every run is billed.
return_last_frameBOOLEANfalseAlso return the clip’s final frame as a separate image.
bitrate_modeCOMBOstandardEncoding bitrate of the delivered file: standard, or high for crisper detail and a larger file.
watermarkBOOLEANfalseAdd the model’s visible "AI generated" watermark to the video.
last_image_urloptIMAGEOptional closing image for the chosen video workflow.

Outputs (3)

NameTypeDescription
videoVIDEO—
last frameIMAGENeeds return_last_frame turned on.
task idSTRINGThe SpicyAPI task id, for the console logs or support.