Seedance 2.5 icon

Seedance 2.5 API

ByteDance の Seedance 2.5 を1つの統合 API で使い、シネマティックな AI 動画を生成。単一の REST エンドポイント、非同期ジョブ、Webhook を備え、ByteDance の個別アカウントの管理は不要です。

Seedance 2.5 を1回のAPIコールで統合できます。1つのキー、1つの統一エンドポイント、そしてApiframe上のすべてのモデルで共通の請求。

model: "seedance-2.5"

Seedance 2.5 の特長

より洗練されたマルチモーダル演出

Seedance 2 のワークフローを継承し、テキスト・画像・音声・動画の参照を1回の生成で受け付けます。各参照に役割を付与し、スタイル・モーション・サウンドのどれを動かすかをモデルに伝えられます。

ネイティブの同期音声

生成と同時に音楽・効果音・ビートに合わせたカット・リップシンクを付与。あとからサウンドトラックを足す必要はありません。

より緻密なモーションと物理

Seedance 2 よりモーションの安定性と物理的な妥当性が向上し、激しいアクションや複数被写体のシーン、複雑なインタラクションでも破綻しにくくなっています。

シネマティックなマルチショット

1回の生成で自然なカットやトランジションを伴う複数ショットを連結。一発撮りではなく、編集済みのシーケンスのように仕上がります。

強化されたキャラクター一貫性

動き・アングル変更・シーン転換をまたいでキャラクターのアイデンティティを保持。映画・ブランド動画・連作コンテンツに役立ちます。

編集と延長を内蔵

特定のクリップ・キャラクター・アクション・ストーリーを調整し、要素を置換・削除し、クリップ全体を作り直さずにショットを延長できます。

Seedance 2.5 で作成

Apiframeの Seedance 2.5 API で生成した出力例です。

サンプル準備中

Drone shot flying over a tropical coastline at sunrise, smooth cinematic motion

サンプル準備中

A vintage car driving through a rainy neon city at night, reflections on the asphalt

サンプル準備中

Time-lapse of clouds rolling over a mountain range in warm golden light

概要

エンドポイント
POST /v2/videos/generate
モデルID
seedance-2.5
パラメータキー
seedanceParams
モダリティ
動画
プロバイダー
ByteDance
平均完了時間
~120s

機能

アスペクト比21:9, 16:9, 4:3, 1:1, 3:4, 9:16
解像度480p, 720p, 1080p
長さ4秒, 6秒, 8秒, 10秒, 12秒, 15秒
画像入力対応
音声対応
平均時間~120秒

クイックスタート

APIキーを添えて POST /v2/videos/generate に1回リクエストを送るだけで Seedance 2.5 による生成が始まります。レスポンスには、ポーリングまたはWebhookで受け取れる jobId が返ります。

curl -X POST https://api.apiframe.ai/v2/videos/generate \
  -H "X-API-Key: afk_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
        "prompt": "a cinematic sunrise over a futuristic cityscape, smooth camera push-in",
        "model": "seedance-2.5",
        "seedanceParams": {
            "resolution": "720p",
            "start_image": "https://example.com/input.jpg",
            "generate_audio": false,
            "end_image": "https://example.com/input.jpg"
        }
    }'
import requests

response = requests.post(
    "https://api.apiframe.ai/v2/videos/generate",
    headers={
        "X-API-Key": "afk_your_api_key_here",
        "Content-Type": "application/json",
    },
    json={
        "prompt": "a cinematic sunrise over a futuristic cityscape, smooth camera push-in",
        "model": "seedance-2.5",
        "seedanceParams": {
            "resolution": "720p",
            "start_image": "https://example.com/input.jpg",
            "generate_audio": False,
            "end_image": "https://example.com/input.jpg"
        }
    },
)
print(response.json())  # { "jobId": "...", "status": "QUEUED" }
const response = await fetch("https://api.apiframe.ai/v2/videos/generate", {
  method: "POST",
  headers: {
    "X-API-Key": "afk_your_api_key_here",
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    "prompt": "a cinematic sunrise over a futuristic cityscape, smooth camera push-in",
    "model": "seedance-2.5",
    "seedanceParams": {
      "resolution": "720p",
      "start_image": "https://example.com/input.jpg",
      "generate_audio": false,
      "end_image": "https://example.com/input.jpg"
    }
  }),
});
const { jobId } = await response.json();
console.log(jobId);

レスポンスとジョブのライフサイクル

生成は非同期で行われます。送信が成功すると 202 AcceptedjobId が返ります。ステータスが COMPLETED になるまで GET /v2/jobs/{id} をポーリングする(または webhook_url を指定する)と、result フィールドに出力URLが格納されます。

1. 送信レスポンス (202)

{
  "jobId": "b2c3d4e5-f6a7-8901-bcde-f23456789012",
  "status": "QUEUED"
}

2. 結果をポーリング

curl https://api.apiframe.ai/v2/jobs/JOB_ID \
  -H "X-API-Key: afk_your_api_key_here"
import requests, time

while True:
    job = requests.get(
        "https://api.apiframe.ai/v2/jobs/JOB_ID",
        headers={"X-API-Key": "afk_your_api_key_here"},
    ).json()
    if job["status"] in ("COMPLETED", "FAILED"):
        break
    time.sleep(2)
print(job["result"])
let job;
do {
  await new Promise((r) => setTimeout(r, 2000));
  job = await fetch("https://api.apiframe.ai/v2/jobs/JOB_ID", {
    headers: { "X-API-Key": "afk_your_api_key_here" },
  }).then((r) => r.json());
} while (job.status !== "COMPLETED" && job.status !== "FAILED");
console.log(job.result);

入力スキーマ

Seedance 2.5 エンドポイントが受け付けるリクエストパラメータです。モデル固有のオプションは、下記のパラメータオブジェクトの中にネストされます。

パラメータ 必須 デフォルト 許可値 / 範囲 説明
prompt string 必須 生成する内容のテキスト説明。
model string 必須 "seedance-2.5" "seedance-2.5" このエンドポイントのモデル識別子。
seedanceParams.resolution string 任意 "720p" "480p", "720p", "1080p" Resolution
seedanceParams.start_image string (URL) 任意 Use a still as the first frame of the clip.
seedanceParams.generate_audio boolean 任意 false Generate audio
seedanceParams.end_image string (URL) 任意 Optional last frame to control the ending.
seedanceParams.reference_image_urls string[] (URLs) 任意 Reference images
seedanceParams.reference_video_urls string[] (URLs) 任意 Reference videos
seedanceParams.reference_audio_urls string[] (URLs) 任意 Reference audio
seedanceParams.return_last_frame boolean 任意 false Also return the final frame as a still image.
seedanceParams.web_search boolean 任意 false Web search
seedanceParams.camera_fixed boolean 任意 false Disable camera movement.
seedanceParams.seed number 任意 step 1 Reuse a number to reproduce the same result.

よくある質問

Seedance 2.5 APIに関するよくある質問をまとめました。

Seedance 2.5 とは何ですか?

ByteDance の最新マルチモーダル AI 動画生成モデルで、Seedance 2 を発展させ、モーション・音声・一貫性を強化したものです。

どんな入力に対応していますか?

テキスト・画像・音声・動画に対応し、それらを組み合わせて役割を付与し、出力を誘導できます。

音声は生成されますか?

はい。音楽・効果音・ビート同期・リップシンクを含む、同期したネイティブ音声を生成します。

クリップの長さと解像度は?

最大15秒、最大1080p、複数のアスペクト比に対応します。料金は出力1秒あたりの従量制です。

動画の編集や延長はできますか?

はい。クリップ・キャラクター・アクションを変更し、要素を置換し、ショットを延長・継続できます。

料金はどう計算されますか?

生成された動画1秒あたりで課金されるため、長いクリップはその分だけ費用が増えます。成功した生成にのみ課金されます。

解決しませんでしたか?

Seedance 2.5 API で開発を始めよう

APIキーを取得すれば数分で Seedance 2.5 を統合できます — 従量課金。

無料クレジットですぐに開始
すべてのモデルを1つのAPIで
Webhook・SDK・冪等性に対応
プロバイダーのアカウント不要

ご質問はありますか? Discordに参加 または 営業に問い合わせる