Nodes/SpicyAPI/Seedance 2.5 · Reference to Video
ComfyUI Node

Seedance 2.5 · Reference to Video

30 images of your own material is the whole trick

By spicyapi-ai·Created 21 days ago·Updated 2 days ago· 2
Seedance 2.5 · Reference to Video
  • reference_image_urls
  • reference_video_urls
  • reference_audio_urls
  • video
  • last frame
  • task id
◄prompt►
◄aspect_ratioadaptive►
◄resolution720p►
◄duration_seconds5►
◄generate_audiotrue►
◄output_formatmp4►
◄enable_web_searchfalse►
◄seed0►
◄return_last_framefalse►
◄watermarkfalse►

Reference-to-video at 2.5 scale is a different animal from the 2.0 version. The 2.0 reference nodes take up to nine images, three clips and three audio tracks. This one takes thirty images, ten video clips, ten audio tracks, and renders 4 to 30 seconds at 480p, 720p or 1080p. From $0.0738 per second with a video reference attached - cheaper per second than the image-to-video node, oddly, because the video-reference variant is priced differently (the same request without a clip reference is $0.1234/s).

The point of that many references is consistency over a long take. Thirty images is enough to pin down a character from several angles, a location, a wardrobe, a lighting mood - and to have the model keep all of it coherent for half a minute instead of drifting at second ten. This is the mode people ask for a local equivalent of; this KB's honest read is that the local answer is stacking identity adapters on a video model and accepting you'll get closer to "recognisably similar" than "same person".

The reference sockets

No image_url, no first frame. The images tooltip is explicit: reference images "cannot be combined with a first-frame image". Three autogrow groups instead:

  • reference_image_urls - up to 30. Carries characters, style and scene composition.
  • reference_video_urls - up to 10 clips, 2 to 30 seconds each and 30 seconds total. Carries motion and pacing.
  • reference_audio_urls - up to 10 clips, 2 to 30 seconds each, 30 seconds total. The generated soundtrack follows them, for beat matching or lip sync.

Connect one item and the node grows the next socket (reference_image_0, reference_image_1, …) up to the cap. The pack uploads all of it.

Read the pricing tooltip on the video references. Reference footage is added to the billed duration, so a 30-second reference reel is not free flavour - it's seconds you're paying for on top of the clip you asked for. Keep references tight and purposeful: a few seconds of the walk, the gesture, the camera move.

The rest of the node

prompt does the creative work: what the new shot is, now that your references have established who and how. aspect_ratio gives you 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 or adaptive (default). resolution is 480p, 720p or 1080p. duration_seconds is an integer slider from 4 to 30 and the billed quantity.

generate_audio is on by default and price-neutral at a given resolution. output_format picks mp4 or mov. enable_web_search lets the model look things up before rendering - no surcharge appears in 2.5's published rates, unlike the 2.0 nodes. return_last_frame also emits the closing frame as an IMAGE, the clean handoff into another generation. watermark asks the model to mark it AI-generated. seed is fixed after generate so a double-queue reuses the cache rather than paying again.

Outputs and install

Outputs are video (into Save Video), last frame (an IMAGE, only with return_last_frame on) and task id (a string for the console or support).

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

Restart, add your key under Settings > SpicyAPI (from spicyapi.ai/console/keys, or SPICY_API_KEY on a server), then restart once more. Manager can do the install if you search SpicyAPI. No dependencies, no weights, no GPU.

Before you upload thirty images

Set Max cost per run in Settings - with this many references and a 30-second duration, the quote can climb faster than you expect, and the cap stops the run before it charges. Image uploads cap out at 10 MiB after a PNG-to-JPEG fallback; video and audio cap at 90 MiB. Interrupting doesn't cancel the server-side job. And everything you attach leaves your machine, which for reference-heavy work means your own footage.

CategorySpicyAPI/Video/ByteDance

Inputs (13)

NameTypeDefaultDescription
promptSTRINGWhat to generate: subject, action, camera movement and mood.
aspect_ratioCOMBOadaptiveAspect ratio of the generated video.
resolutionCOMBO720pOutput resolution. Super-resolution tiers are not offered.
duration_secondsINT54–30Clip length in seconds. This is the billed quantity.
generate_audioBOOLEANtrueGenerate a native soundtrack synchronised to the picture.
output_formatCOMBOmp4Container of the returned video.
enable_web_searchBOOLEANfalseLet the model search the web for information related to the prompt before rendering.
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.
watermarkBOOLEANfalseAsk the model to watermark the video as AI-generated.
reference_image_urlsoptCOMFY_AUTOGROW_V3Reference image URLs that carry over characters, style or scene composition. Up to 30 images. Cannot be combined with a first-frame image.
reference_video_urlsoptCOMFY_AUTOGROW_V3Reference video URLs that carry over motion and pacing. Up to 10 clips, 2-30 seconds each and 30 seconds in total. Reference footage is added to the billed duration.
reference_audio_urlsoptCOMFY_AUTOGROW_V3Reference audio URLs the generated soundtrack follows, for beat matching or lip sync. Up to 10 clips, 2-30 seconds each and 30 seconds in total.

Outputs (3)

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