Skip to content
Guides · 動画生成

動画生成

Seedance 2.5 で動画生成 — テキスト/画像/動画からの動画生成 (video-to-video)


Portrait を入力に使う

仮想または実在人物のポートレートを asset://<asset-id> としてマルチモーダル入力に渡すことで、動画生成で参照できます。asset://seedance-2.0 / seedance-2.0-fast でのみサポートされますseedance-2.5 では対応していません。エンドツーエンドのオンボーディングフローは Portrait ガイド を参照してください。

概要

Seedance モデルを使って、テキストプロンプト・参照画像・参照動画から短いシネマティックな動画クリップを生成します。seedance-2.5 が現在のフラッグシップで、テキストから動画、画像から動画、動画から動画に対応します(reference_video を通じて参照動画から新しいクリップを駆動)。

動画を作成

Submit a video generation task using the Videos API:

cURL
1curl https://api.alltoken.ai/v1/videos/generations -H "Authorization: Bearer $ALLTOKEN_API_KEY" -H "Content-Type: application/json" -d '{
2 "model": "seedance-2.5",
3 "prompt": "A serene mountain lake at sunrise, cinematic 4K",
4 "ratio": "16:9",
5 "duration": 5,
6 "resolution": "720p"
7 }'

参照素材

テキストプロンプトに加えて、Seedance は content[] 配列を通じて参照画像・参照動画・参照音声を受け取ることができます。各項目は typerole を持ちます:

素材type利用可能な role
画像image_urlreference_imagefirst_framelast_frame
動画video_urlreference_video
音声audio_urlreference_audio

各素材には 2 通りの渡し方があり、1 回のリクエスト内で混在させることもできます:

  • すでに公開ホスト上にある場合http(s) URL を type オブジェクト内に渡します。例:{ "type": "image_url", "image_url": { "url": "https://..." }, "role": "reference_image" }。上流から公開アクセス可能である必要があります(プライベートリンクや署名付き限定リンクは不可)。
  • ローカルファイルの場合presign してアップロードし、返された upload_id を参照します:{ "type": "image_url", "upload_id": "upl_...", "role": "reference_image" }

警告

data: base64 インラインパスは 2026-08-06 に削除されましたdata: 素材を含む動画リクエストは 400 inline_media_removed を返すようになりました。インライン URL を upload_id に置き換えるだけで移行でき、その他のフィールドはすべて同じままです。http(s) URL と upload_id は影響を受けません。

インライン参照をアップロードへ移行する
1- { "type": "image_url", "image_url": { "url": "data:image/png;base64,iVBOR..." }, "role": "reference_image" }
2+ { "type": "image_url", "upload_id": "upl_9f3c...", "role": "reference_image" }

role のデフォルト値とフレームのルール

type は短縮形 image / video / audio でも記述できます(ゲートウェイが正規化します)が、role を省略するとデフォルト値が適用されます — そして画像のデフォルト値は予想とは異なる可能性があります:

短縮 type正規化後省略時のデフォルト role
imageimage_urlfirst_framereference_image ではありません!
videovideo_urlreference_video
audioaudio_urlreference_audio

つまり { "type": "image", "upload_id": "upl_..." } は参照画像ではなく先頭フレームとして扱われます。デフォルト値に頼らず、明示的な role を伴う長い形式を使うことをおすすめします。GET タスクレスポンスは検出された input_type をそのまま返すため、ゲートウェイが content[] をどう解釈したかを確認できます。

警告

フレームと視覚的リファレンスは混在させられません。上流はこれらを排他的なパラダイムとして扱います:first_frame / last_frame(成果物の開始/終了画面を指定)と reference_image / reference_video(スタイルや被写体のリファレンスを提供)です。同一リクエスト内に両方の視覚素材を含めると 400 invalid_request を返します。reference_audio は対象外です — 「画像を先頭フレーム + 音声をリファレンス」は対応している組み合わせです。

入力の制約

制約どこの制限か
参照動画のピクセル数≥ 409,600(すなわち 640×640 以上)上流モデル — そのまま透過
1 ファイルあたりのアップロードサイズメディアアップロード の purpose ごとの上限を参照AllToken
参照画像の枚数上流ドキュメントでは 9 枚、当社では上限を設けません上流

参照動画のピクセルが小さすぎる場合、上流のエラーがそのまま透過されます(例:InvalidParameter: ... video pixel count ... must be greater than or equal to 409600 ...)。なお framescamera_fixed は 2.0 系ではサポートされておらず、拒否されるのではなく静かに無視されます。

対応モデル

最新の一覧は GET /videos/models を呼び出してください。seedance-2.5 が現在のフラッグシップです(テキストから動画、画像から動画、動画から動画)。asset:// のポートレート参照は 2.0 系にとどまります。

Model最適な用途asset:// ポートレート参照
seedance-2.5フラッグシップ — テキスト / 画像 / 動画から動画❌ 非対応(ポートレートは 2.0 専用)
seedance-2.0 / seedance-2.0-fastポートレート(asset://)ワークフロー✅ 対応
seedance-1.5-pro旧世代❌ 非対応(通常の画像 URL を使用)

asset_id の取得方法は Portrait ガイド を参照してください。

パラメータ

  • model"seedance-2.5" (flagship), "seedance-2.0", "seedance-2.0-fast", or "seedance-1.5-pro"
  • prompt — text description of the desired video
  • ratio"16:9", "9:16", "4:3", "3:4", "21:9", "1:1", or "adaptive"
  • duration — length in seconds; -1 lets the model choose automatically
  • resolution"480p", "720p", or "1080p"
  • content — multimodal input array for image-to-video or references, for example { "type": "image_url", "image_url": { "url": "..." }, "role": "first_frame" }. Images containing real human faces must go through Portrait first — pass asset://<asset_id> after onboarding (see Portrait guide); public URLs of real-person images may be rejected upstream for deepfake / consent compliance.

タスク状態を確認

Video generation is asynchronous. Poll for status:

cURL
$curl https://api.alltoken.ai/v1/videos/generations/{task_id} -H "Authorization: Bearer $ALLTOKEN_API_KEY"

The response includes status (queued, processing, completed, failed, expired, or cancelled) and a download URL when complete.

タスクをキャンセル

Cancel a queued or processing task:

cURL
$curl -X POST https://api.alltoken.ai/v1/videos/generations/{task_id}/cancel   -H "Authorization: Bearer $ALLTOKEN_API_KEY"

Tasks already completed, failed, or cancelled cannot be cancelled.