Skip to main content

Seedance 2.5

Seedance 2.5 is ByteDance's video model. It writes a video with sound from a text prompt, animates a first frame (and can end on a last frame), or keeps a character, product, voice or style from reference images, clips and audio. Clips run 4 to 30 seconds, or the model picks the length.

ModeEndpoint idModel page
Text to videoflymyai/bytedance-seedance-2_5-text-to-videohttps://app.flymy.ai/models/flymyai/bytedance-seedance-2_5-text-to-video
Image to videoflymyai/bytedance-seedance-2_5-image-to-videohttps://app.flymy.ai/models/flymyai/bytedance-seedance-2_5-image-to-video
Reference to videoflymyai/bytedance-seedance-2_5-reference-to-videohttps://app.flymy.ai/models/flymyai/bytedance-seedance-2_5-reference-to-video

Generate a video​

A video takes several minutes, so use the async route: submit, then poll the result. Inputs are form fields.

curl -X POST https://api.flymy.ai/api/v1/flymyai/bytedance-seedance-2_5-text-to-video/predict/async/ \
-H "X-API-KEY: fly-***" \
-F 'prompt=A paper boat drifts along a rain-soaked street at dusk, cinematic' \
-F 'resolution=720p' -F 'duration=10' -F 'ratio=16:9'
# {"prediction_id": "02ecd473..."}

curl "https://api.flymy.ai/api/v1/flymyai/bytedance-seedance-2_5-text-to-video/predict/async/result/?request_id=02ecd473..." \
-H "X-API-KEY: fly-***"

The result route answers 425 while the video is being made. When it is ready, it returns the video as a signed link valid for 24 hours, and calculated_price, what the run cost.

Image to video​

Give the first frame, and optionally the last one, as a file upload or a public image URL:

curl -X POST https://api.flymy.ai/api/v1/flymyai/bytedance-seedance-2_5-image-to-video/predict/async/ \
-H "X-API-KEY: fly-***" \
-F 'prompt=Clouds drift over the lake, gentle camera push in' \
-F 'first_frame_image=@lake.jpg' -F 'resolution=720p' -F 'duration=5'

ratio defaults to adaptive, which keeps the shape of your image. Frames with real people are accepted.

Reference to video​

Pass references as public URLs, one URL or a JSON array per field. The prompt names them in order: image 1, image 2, and so on.

FieldLimits
reference_imagesUp to 30 images
video_urlsUp to 10 clips (mp4, mov), 2-30 s each, 30 s in total
audio_urlsUp to 10 tracks (mp3, wav), 30 s in total
taskauto (default), reference (generate from them), edit (change the source clip) or extend (continue it; duration is then the length of the addition)
curl -X POST https://api.flymy.ai/api/v1/flymyai/bytedance-seedance-2_5-reference-to-video/predict/async/ \
-H "X-API-KEY: fly-***" \
-F 'prompt=The woman from image 1 walks through a night market and waves' \
-F 'reference_images=["https://example.com/woman.jpg"]' \
-F 'resolution=720p' -F 'duration=8'

Reference images, clips and audio of real people are accepted. Reference to video takes no first or last frame.

Parameters​

ParameterValues
promptWhat happens in the video
resolution480p, 720p (default) or 1080p
ratioadaptive (default), 21:9, 16:9, 4:3, 1:1, 3:4, 9:16
duration4 to 30 seconds (5 when omitted); -1 lets the model choose the length
generate_audiotrue (default) adds sound, false makes a silent video; the price is the same
enable_safety_checkertrue (default); false (API only) turns off the provider's content pre-screening
watermarkfalse (default) or true
seedFor repeatable takes

From an AI assistant​

An assistant connected to FlyMy.AI finds the three models with recommend_model, quotes them with get_pricing and makes the video with run_model (the same input as the REST fields). The result is a link to the video file.

Pricing​

You pay for the video the model renders, metered in tokens. A clip as an input uses the lower rate and adds the clip's tokens:

ResolutionPer 1M tokensWith a clip as an inputAbout, per second
480p$11.235$6.72$0.11
720p$11.235$6.72$0.24
1080p$12.285$7.35$0.60

A run with the defaults (720p, 5 seconds) costs about $1.22; a run that fails costs nothing. Sound does not change the price. Before a run starts, a request whose top price is more than your balance is refused with 403 Insufficient funds; with duration: -1 the top price counts 30 seconds, and with clips as input it also counts up to 30 seconds of them. Every charge is in your usage.