Seedance 2.5 Reference to Video
doubao/seedance-2-5/reference-to-video
The "Reference-to-Video" feature of Seedance 2.5 is the ultimate solution for visual stylistic unity. It precisely extracts artistic styles, lighting tones, or compositional intents from reference materials and seamlessly integrates them into newly generated videos, ensuring a highly consistent visual language for your creative series.
Examples
Parameters
| Name | Type | Default | Constraints | Description |
|---|---|---|---|---|
| imagesImages | image_upload_group | — | image/* · 0–9 items | Reference images for video generation |
| audiosAudios | audio_upload_group | — | audio/* · 0–3 items | Reference audios for video generation |
| promptPrompt | textarea | — | — | The positive prompt for the generation. |
| generate_audioGenerate Audio | boolean | true | — | Enable synchronized audio for generated video |
| resolutionResolution | select | 720p | 480p | 720p | Video Resolution |
| ratioAspect Ratio | select | adaptive | adaptive | 16:9 | 4:3 | 1:1 | 3:4 | 9:16 | 21:9 | Aspect ratio of the generated video |
| durationDuration (Seconds) | slider | 5 | 4 ~ 30 · step 1 | Video duration in seconds. Only integer values from 4 to 30 are supported. |
| return_last_framereturn the last frame | boolean | — | — | Should the last frame of the generated video be returned? |
| watermarkAdd Watermark | boolean | false | — | Indicates whether to include a watermark in the generated video. |
| seedSeed | number | -1 | -1 ~ 4294967295 | The seed integer is used to control the randomness of the generated content. |
API
Call this model through one unified REST API. Get a key on the API Keys page.
cURL
# 1) Submit — returns { "task_uuid": "..." }
curl -X POST "https://www.namifusion.com/api/v1/marketplace/run/doubao/seedance-2-5/reference-to-video" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"images": [
"https://assets-public.namifusion.com/uploads/images/2026-04-10/a9489888297a.png",
"https://assets-public.namifusion.com/marketplace/images/2026-04-10/6abd3e6e8a4e.jpeg"
],
"prompt": "The puppy in @Image2 is running on the beach in @Image1.",
"generate_audio": true,
"resolution": "720p",
"ratio": "16:9",
"duration": 7,
"watermark": false,
"seed": -1
}
}'
# 2) Poll until status is "completed", then read the output URLs
curl "https://www.namifusion.com/api/v1/marketplace/run/tasks/TASK_UUID" \
-H "Authorization: Bearer YOUR_API_KEY"Python
import time, requests
API_KEY = "YOUR_API_KEY"
HEADERS = {"Authorization": f"Bearer {API_KEY}"}
# 1) Submit
resp = requests.post(
"https://www.namifusion.com/api/v1/marketplace/run/doubao/seedance-2-5/reference-to-video",
headers=HEADERS,
json={
"input": {
"images": [
"https://assets-public.namifusion.com/uploads/images/2026-04-10/a9489888297a.png",
"https://assets-public.namifusion.com/marketplace/images/2026-04-10/6abd3e6e8a4e.jpeg"
],
"prompt": "The puppy in @Image2 is running on the beach in @Image1.",
"generate_audio": True,
"resolution": "720p",
"ratio": "16:9",
"duration": 7,
"watermark": False,
"seed": -1
}
},
)
resp.raise_for_status() # 401/402/429/5xx stop here instead of polling a bad task
task = resp.json()
# 2) Poll until a terminal state (completed / failed / cancelled).
# This model is allowed up to 300s server-side.
deadline = time.time() + 360
while task.get("status") not in ("completed", "failed", "cancelled"):
if time.time() > deadline:
raise TimeoutError(f"still {task.get('status')} — keep the task_uuid and poll later")
time.sleep(3)
poll = requests.get(f"https://www.namifusion.com/api/v1/marketplace/run/tasks/{task['task_uuid']}", headers=HEADERS)
poll.raise_for_status()
task = poll.json()
print(task["status"], task.get("output"))JavaScript
const API_KEY = "YOUR_API_KEY";
const HEADERS = { Authorization: `Bearer ${API_KEY}` };
// 1) Submit
const resp = await fetch("https://www.namifusion.com/api/v1/marketplace/run/doubao/seedance-2-5/reference-to-video", {
method: "POST",
headers: { ...HEADERS, "Content-Type": "application/json" },
body: JSON.stringify({
"input": {
"images": [
"https://assets-public.namifusion.com/uploads/images/2026-04-10/a9489888297a.png",
"https://assets-public.namifusion.com/marketplace/images/2026-04-10/6abd3e6e8a4e.jpeg"
],
"prompt": "The puppy in @Image2 is running on the beach in @Image1.",
"generate_audio": true,
"resolution": "720p",
"ratio": "16:9",
"duration": 7,
"watermark": false,
"seed": -1
}
}),
});
if (!resp.ok) throw new Error(`submit failed: ${resp.status} ${await resp.text()}`);
let task = await resp.json();
// 2) Poll until a terminal state (completed / failed / cancelled).
// This model is allowed up to 300s server-side.
const deadline = Date.now() + 360 * 1000;
while (!["completed", "failed", "cancelled"].includes(task.status)) {
if (Date.now() > deadline) throw new Error(`still ${task.status} — keep the task_uuid and poll later`);
await new Promise((r) => setTimeout(r, 3000));
const poll = await fetch(`https://www.namifusion.com/api/v1/marketplace/run/tasks/${task.task_uuid}`, { headers: HEADERS });
if (!poll.ok) throw new Error(`poll failed: ${poll.status}`);
task = await poll.json();
}
console.log(task.status, task.output);Documentation
Doubao-Seedance 2.5
The "Film Studio in a Model": Precision Control with Multi-Modal Fusion.
Seedance 2.5 is ByteDance's next-generation video generation model, designed to revolutionize the "one-person film studio" workflow. Unlike traditional T2V models, it features a revolutionary Multi-modal Reference System, allowing users to blend up to 12 different inputs (images, videos, and audio) to achieve pixel-perfect control over characters, motion, and rhythm.
🚀 Key Features
- Multi-modal Fusion: Supports simultaneous input of 30 images + 10 videos + 10 audio clips (up to 50 total) for precise character and scene consistency.
- Cinematic Quality: High visual fidelity optimized for 480p and 720p resolutions, featuring realistic lighting and physics.
- Audio-Visual Synchronicity: Native support for lip-sync and rhythm matching, automatically aligning visual motion with background music or speech.
- Exceptional Physical Logic: Advanced simulation of fluid dynamics, gravity, and complex human movements with a 99.5% generation success rate.
- Pro Camera Control: Direct language-based control over cinematic camera movements (pan, tilt, zoom) and lighting transitions.
🛠️ Technical Specifications
| Parameter | Details |
|---|---|
| Model Architecture | Diffusion-based Transformer (DiT) / Multi-modal |
| Max Resolution | 720p (Supported: 480p, 720p) |
| Video Duration | 4 - 30 Seconds (integer) |
| Aspect Ratios | 16:9, 9:16, 4:3, 3:4, 21:9, 1:1, adaptive |
| Input Modality | Text, Image (up to 30), Video (up to 10), Audio (up to 10) |
| Generation Speed | ~30-90 seconds per clip |
Sample Prompts
- Cinematic: "Rainy city street at night, neon flickering. A man in a black trench coat walks with a red umbrella. Slow dolly-in to a facial close-up. Moody film noir aesthetic."
- Character Consistency: "Use @Image1 as the character, reference @Video1 for the running motion, and match the tempo of @Audio1."
💰 Pricing (Volcengine API)
| Service Type | Resolution | Price | Estimated Cost |
|---|---|---|---|
| Video Gen (Input without video) | 480p/720p | $10.70 / 1M Tokens | ~$0.103/0.231 per second |
| Video Gen (Input with video) | 480p/720p | $6.40 / 1M Tokens | ~$0.079/$0.178 per second |
💡 Best Use Cases
- E-commerce & Advertising: Rapidly creating high-quality product demos and promotional short videos.
- Music Videos (MV): Automatically syncing visual transitions and effects to the beat of a song.
- Social Media Content: Professional-grade storytelling for TikTok/Reels with zero hardware overhead.
Related models
xAI Grok Imagine Video v1.5 Reference to Video
Generate a 1-15 second video from a prompt and 1-7 reference images at 480p or 720p.
MiniMax H3 Reference to Video
MiniMax H3 Reference to Video generates coherent 2K videos from natural-language prompts and multimodal references, including images, videos, and audio, guiding subject consistency, motion, timing, visual style, and scene continuity. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Gemini Omni Flash Reference to Video API
Gemini Omni Flash Reference to Video creates short AI videos with synchronized audio from one or more reference images and a text prompt, preserving visual identity and following the provided references for guided multimodal video generation. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.
Seedance 2.0 Mini Reference to Video
Seedance 2.0 Mini Reference-to-Video is a high-speed, cost-effective video generation model developed by ByteDance, engineered specifically for creating multi-shot videos with a cinematic feel. By seamlessly combining reference images with text prompts, it generates highly narrative video segments. The model features advanced AI camera control and ensures robust character consistency across different scenes. It supports multiple output resolutions from 480P up to 4K, durations ranging from 4 to 15 seconds, and flexible aspect ratios. Complete with an out-of-the-box REST inference API, it delivers exceptional performance with zero cold starts, offering an affordable yet premium solution for professional video creation.
Seedance 2.0 Fast reference-to-video
Seedance 2.0 Fast (Video-Edit) edits an input video from a natural-language prompt at a faster, cheaper tier. Built on ByteDance Seed's unified multimodal architecture, it preserves subject identity, composition, and motion while rewriting lighting, style, weather, environment, or specific elements as instructed. Ready-to-use REST API, best performance, no coldstarts, affordable pricing.