seedance-2-0 reference-to-video

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

Seedance 2.0の「リファレンス動画生成」機能は、ビジュアルの統一性を保つ究極のソリューションです。参考素材からアートスタイル、ライティング、構図の意図を正確に抽出。新しく生成される動画に完璧に融合させ、シリーズ作品を通して一貫した世界観を維持します。

サンプル

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

パラメータ

名前既定制約説明
images写真セットimage_uploadimage/* · 0–9 items動画生成用の参考画像
audiosオーディオグルー​​プaudio_upload_groupaudio/* · 0–3 items動画生成用のリファレンス音声
promptプロンプトtextarea生成のためのポジティブプロンプト。
generate_audioオーディオ生成booleantrue生成ビデオに画面同期音声を含める設定
resolution解像度select720p480p | 720p | 1080p動画解像度
ratioアスペクト比selectadaptiveadaptive | 16:9 | 4:3 | 1:1 | 3:4 | 9:16 | 21:9生成動画の画面比率
duration *再生時間 (秒)select5-1 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | …生成動画の長さ(単位:秒、整数のみ)
return_last_frame生成された動画の最後のフレーム画像を返しますboolean生成された動画の最後のフレームを返す必要があるでしょうか?
watermark透かしを追加booleanfalse生成動画におけるウォーターマークの有無。
seedシード値number-1-1 ~ 4294967295シード整数は、生成されるコンテンツのランダム性を制御するために使用されます。

API

統一 REST API でこのモデルを呼び出せます。API Keys ページでキーを取得してください。

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);

ドキュメント

Doubao-Seedance 2.0

「プロダクションを一つのモデルに」:マルチモーダル融合による精密なビデオ制作。

Seedance 2.0は、ByteDanceが提供する次世代AI動画生成モデルです。「一人映画制作」を現実にするため、革新的なマルチモーダル・レファレンス・システムを搭載。最大12個の素材(画像、動画、音声、テキスト)を組み合わせることで、キャラクターの一貫性、カメラワーク、リズムをピクセル単位で正確に制御できます。

🚀 主な特徴

  • マルチモーダル融合制御: 画像9枚+動画3本+音声3本(最大12素材)を同時入力可能。キャラクターの固定や複雑な動作の指定が容易です。
  • ネイティブ2K画質: 1080Pおよび2K解像度に対応。映画レベルのライティングと質感を実現し、AI特有の違和感を排除。
  • ネイティブ音画同期: リップシンク(口パク)とリズム解析を内蔵。BGMのビートに合わせて動画の動きを自動調整します。
  • 卓越した物理演算: 流体、重力、複雑な人間動作をリアルにシミュレート。生成成功率は驚異の**99.5%**を誇ります。
  • プロ級のカメラ制御: 自然言語で「ドリーイン」「パン」「ズーム」などの高度なカメラワークや照明の変化を指定可能。

🛠️ 技術仕様

項目詳細
アーキテクチャMulti-modal Diffusion-Transformer (DiT)
最大解像度2K (標準 1080P)
動画の長さ4 - 15 秒
アスペクト比16:9, 9:16, 4:3, 3:4, 21:9, 1:1
入力モードテキスト、画像 (最大9)、動画 (最大3)、音声 (最大3)
生成速度1クリップあたり約30〜90秒

サンプルプロンプト

  • シネマティック: 「雨の夜の街、ネオンが揺れる。黒いコートの男が赤い傘を差して歩く。顔のアップまでゆっくりとズーム。憂鬱な映画風、冷たい色調。」
  • 精密制御: 「@Image1 をキャラクターに、@Video1 のカメラワークを参考に、@Audio1 のリズムに合わせて生成。」

💰 料金プラン (火山エンジン API)

サービスタイプ解像度価格概算コスト
動画生成 (T2V/I2V)480p/720p$7 / 1M トークン~1秒あたり $0.15
動画生成 (V2V)480p/720p$4.3 / 1M トークン~1秒あたり $0.09
動画生成 (T2V/I2V)1080p$7.7 / 1M トークン~1秒あたり $0.16
動画生成 (V2V)1080p$4.7 / 1M トークン~1秒あたり $0.1

💡 最適な活用シーン

  • EC・広告制作: 高品質な商品デモやプロモーション動画を短時間で作成。
  • ミュージックビデオ (MV): 曲のテンポに合わせて視覚効果やシーン転換を自動同期。
  • SNSコンテンツ: TikTokやReels向けのプロフェッショナルな動画を、高価な機材なしで量産。

関連モデル

VT Lip Sync 口形同期
Video to VideoNamiFusion

VT Lip Sync 口形同期

VT Lip Sync は、翻訳後の対象動画、翻訳後音声、翻訳後字幕タイミング、および元動画とその元字幕タイミングを使用して、翻訳後動画の口形を同期します。

$0.200 / 1 回
Kling Omni Video O3
Video to VideoKling

Kling Omni Video O3

Kling Omni Video O3は、複数の視点からキャラクター、プロップ、またはシーンの参照を使用して創造的な動画を生成します。対象の特徴を抽出し、フレーム間でアイデンティティの一貫性を維持しながら新しい動画コンテンツを作成します。音声生成をサポート。すぐに使える REST API、最高のパフォーマンス、コールドスタートなし、手頃な価格。

$0.380 / 1 回
Kling Omni Video O3
Video to VideoKling

Kling Omni Video O3

Kling Omni Video O3は、複数の視点からキャラクター、プロップ、またはシーンの参照を使用して創造的な動画を生成します。対象の特徴を抽出し、フレーム間でアイデンティティの一貫性を維持しながら新しい動画コンテンツを作成します。音声生成をサポート。すぐに使える REST API、最高のパフォーマンス、コールドスタートなし、手頃な価格。

$0.630 / 1 回
Kling Omni Video O1 リファレンス動画生成
Video to VideoKling

Kling Omni Video O1 リファレンス動画生成

Kling Omni Video O1 リファレンス動画生成は、複数の視点からのキャラクター、小道具、またはシーンのリファレンスを使用してクリエイティブな動画を生成します。被写体の特徴を抽出し、フレーム間でのアイデンティティの一貫性を維持しながら、新しい動画コンテンツを作成します。すぐに使えるREST API、最高のパフォーマンス、コールドスタートなし、手頃な価格。

$0.380 / 1 回
Kling Omni Video O1 リファレンス動画生成
Video to VideoKling

Kling Omni Video O1 リファレンス動画生成

Kling Omni Video O1 リファレンス動画生成は、複数の視点からのキャラクター、小道具、またはシーンのリファレンスを使用してクリエイティブな動画を生成します。被写体の特徴を抽出し、フレーム間でのアイデンティティの一貫性を維持しながら、新しい動画コンテンツを作成します。すぐに使えるREST API、最高のパフォーマンス、コールドスタートなし、手頃な価格。

$0.630 / 1 回
Kling 3.0 Standard モーションコントロール
Video to VideoKling

Kling 3.0 Standard モーションコントロール

Kling 3.0 Standard モーションコントロールは、参照動画の動きを静止画像に転送してアニメーション化します。キャラクター画像とモーションクリップ(ダンス、アクション、ジェスチャー)をアップロードすると、モデルが動きを抽出して滑らかでリアルな動画を生成します。すぐに使用可能な REST 推論 API、最高のパフォーマンス、コールドスタートなし、手頃な価格。

$0.380 / 1 回
Alibaba WAN 2.6
Video to VideoAlibaba

Alibaba WAN 2.6

Alibaba WAN 2.6 Reference-to-Video は、キャラクター、小道具、またはシーンの参照画像(単一または複数視点)から、新しいビデオショットを生成します。アイデンティティ、スタイル、レイアウトを忠実に再現しつつ、滑らかで一貫性のある動きを実現。即利用可能な REST 推理 API は、コールドスタートなしの最高性能を誇り、圧倒的なコストパフォーマンスを提供します。

$0.750 / 1 回