はじめに
Seedance 2.0 Mini の参照から動画は、許諾を得た複数のソースを 1 つのショットにまとめます。画像は誰と何を、クリップは動きとテンポを、音声はカットが合わせる拍を担当します。開始フレームは受け付けません。
Seedance 2.0 Mini は ByteDance の Seedance 2.0 シリーズで最も小さいグレードです。Seedance 2.0 Fast と同じエンドポイントを公開しており、480p か 720p の 4〜15 秒クリップを、同じ処理で生成した音声付きで返します。
開始素材から Seedance 2.0 Mini のモードを選ぶ
| 開始素材 | モード |
|---|---|
| 台本やシーンの説明 | Seedance 2.0 Mini テキストから動画 |
| 確定済みの開始画像 | Seedance 2.0 Mini 画像から動画 |
| 見た目・動き・音声を分けた参照素材 | Seedance 2.0 Mini 参照から動画 |
主な機能とハイライト
Seedance 2.0 Fast と同じ仕様
Mini のエンドポイントとフィールドは Seedance 2.0 Fast と同じです。アダプティブ比率と 6 つの固定比率、4〜15 秒(-1 でモデルが長さを決定)、ネイティブ音声、seed を備え、解像度だけが 720p までです。Mini 向けに作ったパイプラインは、リクエストではなくモデル ID を変えるだけで Fast に移せます。
大量生成向け
大きい Seedance 2.0 モデルの画質よりも処理量を重視するなら Mini が適しています。どのエンドポイントも非同期なので、リクエストごとに Idempotency-Key を送り、タスク ID を保存して、ポーリングかコールバックで結果を受け取ります。キーは 24 時間有効で、接続が切れたあとに再試行しても元のタスクが返ります。
動画延長で長尺に
15 秒を超えたいときは、完成したクリップを video-extend エンドポイントに送ってください。クリップの最後のフレームが Seedance 2.0 Mini の新しいショットの開始フレームになり、両方をつないだ 1 つのファイルが返ります。各ステップで課金されるのは足した秒数だけで、つないだ結果はもう一度延長できます。
リクエストパラメーター
| パラメーター | 必須 | 説明 |
|---|---|---|
prompt | はい | 必須で、ここでは配役も担います。参照は送った順に引用されるので、どの画像がどのキャラクターか、各クリップが何を寄与するのか、音声が何のためかを名指ししてください。 1 文字以上 |
reference_image_urls | いいえ | 使用許可のある画像を 9 枚まで。キャラクター、商品、スタイル、セットを保持させます。 9 件以内 |
reference_video_urls | いいえ | 動き、テンポ、カメラの語彙を与えるクリップを 3 本まで。1 本あたり 2~15 秒、合計 15 秒以内にしてください。 3 件以内 |
reference_audio_urls | いいえ | 音声ファイルを 3 件まで。1 件あたり 2~15 秒、合計 15 秒以内、各 15 MB 未満で、話し方、テンポ、音楽のフレーズといった音の手がかりをショットに与え、動きやカット点をそれに合わせます。 3 件以内 |
aspect_ratio | いいえ | 出力の画面比率です。既定の adaptive では、主となる参照素材の形に合わせます。 |
resolution | いいえ | 出力解像度。480p か既定の 720p。 |
duration_seconds | いいえ | 完成クリップの長さを整数秒で指定します。4~15 秒で既定は 5 秒、-1 ならモデルが長さを決め、見積もりは 15 秒で計算します。 |
generate_audio | いいえ | 映像に同期したネイティブのサウンドトラックを生成するかどうかです。既定でオンですが、このバージョンではオフにしても料金は下がりません。 デフォルト値: |
enable_web_search | いいえ | 既定はオフです。オンにすると、モデルは描画の前にプロンプトに関連する情報をウェブで検索することがあります。 デフォルト値: |
seed | いいえ | 整数の seed。省くと毎回それぞれの乱数になります。 |
return_last_frame | いいえ | 動画と一緒に、クリップの最終フレームを別の画像として返します。次の先頭フレームとして image-to-video に渡せば、自分で静止画を書き出さずにショットをつなげられます。 デフォルト値: |
bitrate_mode | いいえ | 納品ファイルのビットレートです。 |
watermark | いいえ | モデル自身の「AI generated」という可視の透かしを動画に入れます。既定ではオフです。 デフォルト値: |
料金
参照クリップの長さも課金対象の秒数に加算されます。実行前にクリップの長さを計測できないため、まず上限の15秒分を仮押さえし、精算時に未使用分を即座に解放します。実際に使用された秒数のみが課金されます。
| 仕様 | 料金 |
|---|---|
| $0.010969 / 秒 |
| $0.023588 / 秒 |
| $0.0246078 / 秒 |
| $0.05292 / 秒 |
| $0.036 / 秒 |
| $0.072 / 秒 |
ユースケース
1 組の参照でシリーズ全体を
1 人の男性を正面、斜め、横顔から撮った 3 枚と、エプロンの 4 枚目があれば、リクエストごとにプロンプトを変えるだけでシリーズ全体を支えられます。公開しているパン屋の例はまさにこの構成です。
クリップからテンポを借りる
参照クリップは内容ではなくリズムを提供することもできます。例の 1 つでは、クリップのゆったりした連続のプッシュインを取り入れ、参照画像の通路で演出し、足音を参照トラックの拍に合わせています。9:16 で 8 秒です。
角度が変わっても同じカップル
同じカップルの画像が 3 枚あれば、顔と衣装を保ったまま新しいショットで 3 つ目の角度を作れます。480p で生成した公園のベンチの例がそうです。
プロンプトガイドと実践のヒント
参照素材は順番で呼ぶ
参照素材は送った順に読まれるため、プロンプトは必須で、配役の役割も担います。「References 1-3 are...」と書くか @Image1、@Image2 を使い、各素材の役割を 1 つに絞ってください。
上限を把握する
画像は最大 9 枚、クリップは 3 本、音声は 3 トラックまでで、各リクエストに画像かクリップが少なくとも 1 つ必要です。クリップと音声はそれぞれ 2〜15 秒、合計 15 秒までで、参照クリップの秒数は出力とは別に課金されます。
付属の例を応用する
公開している例は aspect_ratio 16:9、duration_seconds 6、generate_audio true、resolution 720p で、reference_image_urls に画像を 4 枚入れています。
@Image1, @Image2 and @Image3 are the same man from front, three-quarter and profile; @Image4 is his apron. Put him behind the counter of a small bakery at opening time in that apron, sliding a tray into the case and glancing up as the door chimes. Warm ovens, flat morning light.
3 つの角度が顔を、4 枚目が衣装を支え、どれが何かはプロンプトが示しています。自分のキャラクターを配役するときも、この分担を保ってください。
開始フレームを正確にしたいなら画像から動画へ
このエンドポイントには開始フレームや終了フレームのフィールドがありません。冒頭の画をある写真と完全に一致させたい場合は、その写真を画像から動画に送り、動きだけを書いてください。
API クイックスタート
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "bytedance/seedance-2.0-mini/reference-to-video",
"input": {
"aspect_ratio": "adaptive",
"bitrate_mode": "standard",
"duration_seconds": 5,
"enable_web_search": false,
"generate_audio": true,
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"reference_image_urls": [
"https://example.com/reference.png"
]
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
認証、完全なスキーマ、ポーリング、エラー処理は API リファレンスを参照してください。
















