影片生成

使用 OpenAI Videos 相容介面生成影片,支援 Seedance 系列模型。

影片生成是非同步的,分三步:

  1. POST /v1/videos 提交任務,立即回傳任務 ID;
  2. GET /v1/videos/{id} 查詢進度,直到狀態變為 completed;
  3. GET /v1/videos/{id}/content 下載 MP4 檔案。

影片模型只能透過影片介面呼叫。Chat Completions、Responses、Messages 這些對話介面不能生成影片,聊天類用戶端(Cherry Studio、各類 Agent 工具等)裡填影片模型也不會產出影片。用對話介面呼叫影片模型會回傳 400,提示改用 POST /v1/videos。

提交任務

curl https://api.flyrouter.ai/v1/videos \
  -H "Authorization: Bearer $FLYROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "一隻橘貓在陽光下的草地上奔跑,鏡頭跟隨",
    "seconds": "5",
    "resolution": "720p"
  }'

提交成功會立即回傳任務:

json
{
  "id": "task_ONjXxwTNHDSrXnuIYoMe9yFzLlOArglc",
  "object": "video",
  "model": "seedance-2.5",
  "status": "queued",
  "progress": 0,
  "created_at": 1793779897
}

查詢進度

終端機
curl https://api.flyrouter.ai/v1/videos/task_ONjXxwTNHDSrXnuIYoMe9yFzLlOArglc \
  -H "Authorization: Bearer $FLYROUTER_API_KEY"

status 的取值:

狀態說明
queued排隊中
in_progress生成中,progress 為進度百分比
completed已完成,可以下載
failed失敗,原因在 error.message,費用自動退回

生成一般需要 1–5 分鐘,時長越長、解析度越高越慢,建議每 10 秒左右查詢一次。

下載影片

終端機
curl https://api.flyrouter.ai/v1/videos/task_ONjXxwTNHDSrXnuIYoMe9yFzLlOArglc/content \
  -H "Authorization: Bearer $FLYROUTER_API_KEY" \
  -L -o video.mp4

下載需要帶 API Key。需要長期保存的影片請下載到自己的儲存空間。

參數

參數說明
model必填,影片模型 ID,見下表
prompt必填,影片描述
seconds時長(秒),整數,範圍見下表,不填用預設值
resolution解析度,可選值見下表,不填用預設值
sizeseedance-2.5 的畫面寬高比:16:9、4:3、1:1、3:4、9:16、21:9 或 adaptive,預設 adaptive;首幀和首尾幀任務只能用 adaptive
image_urls參考圖陣列,用於圖生影片。每項為公開圖片連結或 Base64 Data URL(如 data:image/png;base64,...);不支援上傳檔案
image_with_rolesseedance-2.5 的帶角色圖片陣列,可透過 first_frame 和 last_frame 指定首尾幀,見下方範例
audio_urlsseedance-2.5 參考音訊陣列,每項為公開音訊連結;可與 image_urls 一起使用,也可單獨使用

resolution 控制解析度,size 控制寬高比。例如一般文生影片可同時傳 "resolution": "720p" 和 "size": "16:9"。上表比例適用於 seedance-2.5,其他模型的可選比例請以對應模型要求為準。

n 只能為 1,不支援參考影片。seedance-2.5 不支援 tools、draft 或自動時長 -1;請指定 4–30 秒的整數時長。

首幀和首尾幀

seedance-2.5 可透過 image_with_roles 指定首幀和尾幀,每個角色各傳一張公開圖片。首幀或首尾幀任務的 size 必須為 adaptive 或省略,不能指定 16:9 等具體比例,否則上游會拒絕請求。可以使用寬高比符合預期的圖片,但自適應模式不保證輸出精確比例。

終端機
curl https://api.flyrouter.ai/v1/videos \
  -H "Authorization: Bearer $FLYROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "鏡頭從首幀場景平滑過渡到尾幀場景",
    "seconds": "5",
    "resolution": "720p",
    "size": "adaptive",
    "image_with_roles": [
      {"url": "https://example.com/first.jpg", "role": "first_frame"},
      {"url": "https://example.com/last.jpg", "role": "last_frame"}
    ]
  }'

只需要首幀時,可僅傳 first_frame。不要與 audio_urls 一起使用首尾幀:上游會把首尾幀角色轉為一般參考圖,無法保持首尾幀語義。一般參考圖請使用 image_urls,避免與首尾幀角色混用。

參考圖片和音訊

seedance-2.5 最多支援 30 張參考圖片。參考音訊支援 MP3 和 WAV,最多 10 段,每段 2–30 秒且不超過 15 MB,總時長不超過 30 秒。素材連結應可從網際網路存取。提示詞中可以用 @图片1、@音频1 引用陣列中的素材。

終端機
curl https://api.flyrouter.ai/v1/videos \
  -H "Authorization: Bearer $FLYROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2.5",
    "prompt": "讓@图片1中的角色隨@音频1的節奏跳舞",
    "seconds": "5",
    "resolution": "720p",
    "image_urls": ["https://example.com/reference.jpg"],
    "audio_urls": ["https://example.com/reference.mp3"]
  }'

請使用 image_urls 和 audio_urls,不要使用 reference_image_urls 或 reference_audio_urls。

支援的模型

模型時長(秒)解析度
seedance-2.54–30,預設 5480p / 720p / 1080p,預設 720p
seedance-2.05–15,預設 5480p / 720p / 1080p / 4k,預設 720p
seedance-2.0-fast5–15,預設 5480p / 720p,預設 720p
seedance-2.0-mini5–15,預設 5480p / 720p,預設 720p
seedance-1-5-pro4–12,預設 5480p / 720p / 1080p,預設 720p
seedance-1-0-pro-quality2–12,預設 5480p / 720p / 1080p,預設 1080p
seedance-1-0-pro-fast2–12,預設 5480p / 720p / 1080p,預設 1080p

計費

按生成時長計費,單價隨解析度變化,以 模型價格 頁面為準(影片模型標價單位為 USD / 秒)。提交任務時按所選時長和解析度扣費,生成失敗會自動退回。

常見錯誤

狀態碼原因
400 seconds must be between ...時長超出該模型的範圍
400 模型不支援目前的介面用對話介面呼叫了影片模型,請改用 POST /v1/videos
401API Key 無效,或下載影片時沒帶 API Key
403餘額不足請先 儲值;或 Key 所在分組不包含影片模型,請用預設分組的 Key