Text-to-Video API

純粋なテキストプロンプトから動画を生成します。これは Seedance 2.0 で最も一般的なモードで、クリエイティブ発想、広告スクリプト、絵コンテ、短尺コンテンツなど、視覚的な参照素材なしで開始するあらゆるシナリオに最適です。

エンドポイント

POST https://api.evolink.ai/v1/videos/generations

モデル ID: seedance-2.0-text-to-video

より高速かつ低価格で生成したい場合は、代わりに seedance-2.0-fast-text-to-video を使用してください。パラメータ構造は同一です。

リクエストパラメータ

パラメータ必須デフォルト説明
modelstringはいseedance-2.0-text-to-video を指定
promptstringはい動画内容の説明。中国語 500 文字以下または英語 1000 ワード以下
durationintegerいいえ5動画の長さ(秒)、範囲は 415。秒単位で課金
qualitystringいいえ720p品質ティア: 480p または 720p1080p はサポートされていません
aspect_ratiostringいいえ16:916:99:161:14:33:421:9adaptive
generate_audiobooleanいいえtrue同期音声(環境音、音楽、セリフ)を生成するか
model_params.web_searchbooleanいいえfalse有効化すると、モデルが自律的にインターネット検索を実行するかを判断します。実際に検索が発動した場合のみ課金
callback_urlstringいいえタスク完了コールバック用の HTTPS URL。最大 2048 文字、プライベート IP は禁止

パラメータの詳細

良い prompt の書き方

  • 被写体、アクション、カメラ言語(パン/ティルト/ズーム/ドリー)、ライティングの雰囲気を記述する
  • セリフは半角ダブルクォートで囲み、専用の音声合成を発動させる: She turned and said: "You're finally here."
  • プロンプト内で特定のアスペクト比(例: "2.35:1")を指定しないこと。代わりに aspect_ratio フィールドを使用する

generate_audio: false は無音の動画を出力します。映像品質の劣化はなく、帯域コストがわずかに下がります。音声生成自体には追加料金はかかりません。

model_params.web_search: true は次の場合に有用です。

  • プロンプトが「最新」「今日」「今週」など時期に関する内容を含む
  • 実在のイベント、人物、場所を参照するブランド広告が必要
  • モデルは内部で検索が必要かを判断します。不要であれば検索は実行されず、追加課金もありません

リクエスト例

cURL

curl -X POST https://api.evolink.ai/v1/videos/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.0-text-to-video",
    "prompt": "A macro lens focuses on a green glass frog on a leaf. The focus gradually shifts from its smooth skin to its completely transparent abdomen, where a bright red heart is beating powerfully and rhythmically.",
    "duration": 8,
    "quality": "720p",
    "aspect_ratio": "16:9",
    "generate_audio": true
  }'

Python

import requests

response = requests.post(
    "https://api.evolink.ai/v1/videos/generations",
    headers={
        "Authorization": "Bearer YOUR_API_KEY",
        "Content-Type": "application/json"
    },
    json={
        "model": "seedance-2.0-text-to-video",
        "prompt": "A luxury watch rotating slowly on a marble surface, soft studio lighting, product showcase, cinematic",
        "duration": 8,
        "quality": "720p",
        "aspect_ratio": "16:9",
        "generate_audio": False
    }
)

task = response.json()
print(f"Task ID: {task['id']}")

Node.js

const res = await fetch("https://api.evolink.ai/v1/videos/generations", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    model: "seedance-2.0-text-to-video",
    prompt: "A cinematic sunset over the ocean, wide angle",
    duration: 5,
    quality: "720p",
    aspect_ratio: "16:9",
    model_params: { web_search: false }
  })
});

const task = await res.json();
console.log("Task ID:", task.id);

レスポンス

リクエストが正常に受理されると、即座にタスクオブジェクトが返されます(HTTP 200)。この時点ではまだ生成は開始されていません。

{
    "id": "task-unified-1774857405-abc123",
    "object": "video.generation.task",
    "created": 1774857405,
    "model": "seedance-2.0-text-to-video",
    "status": "pending",
    "progress": 0,
    "type": "video",
    "task_info": {
        "can_cancel": true,
        "estimated_time": 165,
        "video_duration": 8
    },
    "usage": {
        "billing_rule": "per_second",
        "credits_reserved": 50,
        "user_group": "default"
    }
}

フィールドリファレンス

フィールド説明
idタスク ID — ステータスポーリングや Webhook の照合に使用
statuspendingprocessingcompleted / failed
progress0〜100 のパーセンテージ
task_info.estimated_time完了までの推定秒数
task_info.video_duration要求された動画の長さ
task_info.can_cancelキャンセルエンドポイントを呼び出せるか
usage.billing_rule常に per_second
usage.credits_reserved予約クレジット — 実際の課金はタスクが completed に達した時点で確定

結果の取得

リクエスト送信後、最終的な動画 URL を取得する方法は 2 つあります。

  1. ポーリングGET /v1/tasks/{id} を 5 秒ごとに呼び出します。非同期タスク を参照。
  2. Webhook — リクエストに callback_url を渡します。タスク完了時にシステムが結果を POST します。Webhook を参照。

生成された動画 URL は 24 時間 有効です。早めに自前のストレージへダウンロードしてください。

FAQ

text-to-video に image_urls を渡すとなぜエラーになるのですか? text-to-video はメディア入力を一切受け付けません。参照画像がある場合は代わりに image-to-video を使用してください。

正確なピクセル解像度を指定できますか? いいえ。quality480p720p のティアのみ公開しています。実際のピクセル寸法は aspect_ratioquality の組み合わせに依存します。

セリフを自然に聞こえさせるには? 発話を半角ダブルクォートで囲んでください。モデルは自動的にこれをセリフと検出し、環境ナレーションとしてではなく専用の音声合成を実行します。

関連