seedance-2-0 reference-to-video

doubao/seedance-2-0/reference-to-video

The "Reference-to-Video" feature of Seedance 2.0 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

seedance-2-0 reference-to-video example 1

Parameters

NameTypeDefaultConstraintsDescription
imagesImagesimage_uploadimage/* · 0–9 itemsReference images for video generation
audiosAudiosaudio_upload_groupaudio/* · 0–3 itemsReference audios for video generation
promptPrompttextareaThe positive prompt for the generation.
generate_audioGenerate AudiobooleantrueEnable synchronized audio for generated video
resolutionResolutionselect720p480p | 720p | 1080pVideo Resolution
ratioAspect Ratioselectadaptiveadaptive | 16:9 | 4:3 | 1:1 | 3:4 | 9:16 | 21:9Aspect ratio of the generated video
duration *Duration (Seconds)select5-1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | …Video duration (seconds). Only integer values are supported.
return_last_framereturn the last frame booleanShould the last frame of the generated video be returned?
watermarkAdd WatermarkbooleanfalseIndicates whether to include a watermark in the generated video.
seedSeednumber-1-1 ~ 4294967295The 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-0/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-0/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-0/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.0

The "Film Studio in a Model": Precision Control with Multi-Modal Fusion.

Seedance 2.0 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 9 images + 3 videos + 3 audio clips (up to 12 total) for precise character and scene consistency.
  • Native 2K Cinematic Quality: Industry-leading visual fidelity with support for native 1080P and 2K resolution, 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

ParameterDetails
Model ArchitectureDiffusion-based Transformer (DiT) / Multi-modal
Max Resolution2K (Standard: 1080P)
Video Duration4 - 15 Seconds
Aspect Ratios16:9, 9:16, 4:3, 3:4, 21:9, 1:1
Input ModalityText, Image (up to 9), Video (up to 3), Audio (up to 3)
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 TypeResolutionPriceEstimated Cost
Video Gen (T2V/I2V)480p/720p$7 / 1M Tokens~$0.15 per second
Video Gen (V2V)480p/720p$4.3 / 1M Tokens~$0.09 per second
Video Gen (T2V/I2V)1080p$7.7 / 1M Tokens~$0.16 per second
Video Gen (V2V)1080p$4.7 / 1M Tokens~$0.1 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

VT Lip Sync
Video to VideoNamiFusion

VT Lip Sync

VT Lip Sync synchronizes mouth movements for a translated video by using the translated target video, translated audio, translated subtitle timing, and the original source video with its original subtitle timing.

from $0.200 / per run
Kling Omni Video O3
Video to VideoKling

Kling Omni Video O3

Kling Omni Video O3 Reference-to-Video generates creative videos using character, prop, or scene references from multiple viewpoints. Extracts subject features and creates new video content while maintaining identity consistency across frames. Supports audio generation. Ready-to-use REST API, best performance, no cold starts, affordable pricing.

from $0.380 / per run
Kling Omni Video O3
Video to VideoKling

Kling Omni Video O3

Kling Omni Video O3 Reference-to-Video generates creative videos using character, prop, or scene references from multiple viewpoints. Extracts subject features and creates new video content while maintaining identity consistency across frames. Supports audio generation. Ready-to-use REST API, best performance, no cold starts, affordable pricing.

from $0.630 / per run
Kling Omni Video O1 Reference-to-Video
Video to VideoKling

Kling Omni Video O1 Reference-to-Video

Kling Omni Video O1 Reference-to-Video generates creative videos using character, prop, or scene references from multiple viewpoints. Extracts subject features and creates new video content while maintaining identity consistency across frames. Ready-to-use REST API, best performance, no cold starts, affordable pricing.

from $0.380 / per run
Kling Omni Video O1 Reference-to-Video
Video to VideoKling

Kling Omni Video O1 Reference-to-Video

Kling Omni Video O1 Reference-to-Video generates creative videos using character, prop, or scene references from multiple viewpoints. Extracts subject features and creates new video content while maintaining identity consistency across frames. Ready-to-use REST API, best performance, no cold starts, affordable pricing.

from $0.630 / per run
Kling 3.0 Standard
Video to VideoKling

Kling 3.0 Standard

Kling 3.0 Standard Motion Control transfers motion from reference videos to animate still images. Upload a character image and a motion clip (dance, action, gesture), and the model extracts the movement to generate smooth, realistic video. Ready-to-use REST inference API, best performance, no cold starts, affordable pricing.

from $0.380 / per run
Alibaba WAN 2.6
Video to VideoAlibaba

Alibaba WAN 2.6

Alibaba WAN 2.6 Reference-to-Video seamlessly transforms character, prop, or scene references—supporting both single and multi-view inputs—into high-quality video sequences. It excels at preserving identity, style, and layout while delivering fluid, coherent motion. Experience peak performance via our production-ready REST API, featuring zero cold starts and cost-effective pricing.

from $0.750 / per run
seedance-2-0 reference-to-video API — Pricing, Playground & Docs | NamiFusion