SD Video
用 SD Video 生成 5–15 秒、對白與音效同步的影片片段:支援文字轉影片、圖片轉影片和參考素材轉影片,480p 或 768p,以任務形式交付。
SD Video 是 SeedRouter 的影片生成模型,基於 MiniMax H3 打造。一次請求就能把整個場景連同畫面和聲音一起生成:一段 5–15 秒的片段,自帶對白、環境音和音效。送出請求,保存回傳的任務 ID,再從該任務讀取生成完成的影片。首影格和參考素材以 URL 形式傳入。
模型 ID
| 模型 ID | 模式 | 解析度 | 時長 |
|---|---|---|---|
sd-video | text_to_video、image_to_video、reference_to_video | 480p、768p | 5–15 秒 |
目前價格請見模型頁。
快速範例
curl https://api.seedrouter.ai/v1/videos/generations \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "sd-video",
"mode": "text_to_video",
"prompt": "A lighthouse keeper in a wool coat stands on a wet stone pier at dawn and says, \"The fog lifts at seven.\" Locked-off shot, waves slapping the stones, no music.",
"duration": 5,
"resolution": "768p",
"aspect_ratio": "16:9"
}'端點
POST https://api.seedrouter.ai/v1/videos/generations| 標頭 | 值 |
|---|---|
| Authorization | Bearer YOUR_API_KEY |
| Content-Type | application/json |
回應是一個任務({"id": "task_...", "status": "processing"}),而不是生成完成的影片。請輪詢 GET /v1/tasks/{task_id} 取得結果。請把 API 金鑰保存在伺服器端程式碼中。
參數
| 欄位 | 型別 | 預設值 | 說明 |
|---|---|---|---|
model | string | 必填 | sd-video |
mode | enum | reference_to_video | text_to_video、image_to_video、reference_to_video。也接受簡寫 t2v、i2v 和 ref2va。 |
prompt | string | 必填 | 1 到 32,000 個字元。描述畫面和聲音。 |
duration | integer | 5 | 5 到 15 秒之間的任意整數。 |
resolution | enum | 768p | 480p 或 768p。 |
aspect_ratio | enum | 依模式而定 | 21:9、16:9、4:3、1:1、3:4、9:16,reference_to_video 下另有 adaptive。image_to_video 跟隨首影格。 |
prompt_enhancement | enum | turbo | turbo、quality 或 disabled。 |
seed | integer | 隨機 | 32 位元無號整數。設定後可重現同一個鏡頭。 |
image | reference | 僅限 image_to_video,且在該模式下必填。即首影格。 | |
reference_images | array | [] | 僅限 reference_to_video。最多 9 個。 |
reference_videos | array | [] | 僅限 reference_to_video。最多 3 個。 |
reference_audio | array | [] | 僅限 reference_to_video。最多 3 個。 |
請求結構採嚴格驗證:未知欄位會被拒絕,而不是被忽略。不支援 callback_url 和 callback_id;請改為輪詢任務。
模式
mode 決定模型以什麼為條件生成。每種模式有各自的欄位;屬於其他模式的欄位只要帶了值就會回傳 400(空清單或 null 可以通過)。
| 模式 | 必要 | 接受 |
|---|---|---|
text_to_video | prompt | 共用欄位 |
image_to_video | prompt 和 image | image 作為首影格 |
reference_to_video(預設) | prompt,以及至少一張參考圖片或一段參考影片 | reference_images、reference_videos、reference_audio |
image_to_video 把圖片當作字面意義上的首影格,因此片段開頭會和那張靜態圖完全一樣。如果要把產品或人物放進你自己設定的場景,請使用 reference_to_video 並描述它周圍的場景。
參考素材與提示詞標籤
在 reference_to_video 中,清單順序就是你在提示詞裡使用的標籤。reference_images 的第一項是 <Picture 1>,第二項是 <Picture 2>;reference_videos 的第一項是 <Video 1>,依此類推。圖片、影片和音訊各自獨立編號。提示詞增強可能改寫提示詞的其他部分,但不會改動這些標籤;如果要保留原文,請把 prompt_enhancement 設為 disabled。
{
"model": "sd-video",
"mode": "reference_to_video",
"prompt": "A supervisor wearing the harness in <Picture 1> stands still and speaks to camera.",
"reference_images": [{ "type": "url", "url": "https://example.com/harness.jpg" }],
"duration": 10
}媒體輸入
每個參考素材以及 image_to_video 的首影格,都是一個帶有公開 HTTP(S) URL 的物件:
{ "type": "url", "url": "https://example.com/photo.jpg" }| 輸入 | 檔案大小上限 |
|---|---|
| 圖片 | 16 MB |
| 影片或音訊 | 32 MB |
最多 9 張圖片、3 段影片和 3 段音訊,參考素材合計 12 個。不接受 Base64 資料和素材 ID:請把檔案上傳到你自己的儲存空間,再傳入它的 URL。URL 必須不經重新導向就能存取。
計費維度
目前費率請查看模型定價部分。SD Video 按影片秒數計費,費率由模式和輸出解析度決定:
billed seconds = duration (text_to_video, image_to_video)
billed seconds = duration + ceil(Σ min(each reference video's seconds, 5)) (reference_to_video)
cost = billed seconds × rate per second每段參考影片按其時長計入,上限 5 秒;更長的片段也只計 5 秒。參考圖片和參考音訊不計費。參考影片在請求被受理時測量時長,因此預扣金額就是實際扣費金額。最終扣費請在帳戶的用量記錄中查看。失敗的任務不計費。
輸出結構
送出後回傳任務:
{"id": "task_...", "model": "sd-video", "status": "processing", "created_at": 1789689600}查詢任務
GET https://api.seedrouter.ai/v1/tasks/{task_id}每 10–20 秒輪詢一次,直到 status 變為 completed 或 failed。輪詢過程中出現網路逾時,並不代表生成失敗:請保留任務 ID 並繼續查詢。不要為了查看進度而再建立一個任務。
完成的任務
{
"id": "task_...",
"model": "sd-video",
"status": "completed",
"created_at": 1789689600,
"finished_at": 1789689720,
"output": {
"video_url": "https://static.seedrouter.ai/media/tasks/task_example/0.mp4",
"duration": 5,
"width": 1344,
"height": 768,
"aspect_ratio": "16:9",
"seed": 42
}
}影片為 MP4(H.264),24 fps,搭配 32 kHz 立體聲 AAC 音訊。明確指定 aspect_ratio 時,尺寸是固定的:
aspect_ratio | 768p | 480p |
|---|---|---|
21:9 | 1536 × 672 | 960 × 416 |
16:9 | 1344 × 768 | 832 × 480 |
4:3 | 1024 × 768 | 640 × 480 |
1:1 | 768 × 768 | 480 × 480 |
3:4 | 768 × 1024 | 480 × 640 |
9:16 | 768 × 1344 | 480 × 832 |
text_to_video 預設 16:9。reference_to_video 預設 adaptive:採用第一張參考圖片的畫幅,沒有圖片時採用第一段參考影片的畫幅。image_to_video 一律跟隨首影格,包括其 EXIF 方向;要改變畫幅,請先裁切圖片。adaptive 片段會保留來源素材的畫幅,依解析度的短邊縮放,每條邊取整到 32 的倍數,並把 aspect_ratio 回報為約分後的像素比例,例如 23:15。
完成的任務會回報它使用的 seed。同樣的提示詞和種子會回傳同樣的片段;不傳 seed 時,每次請求都會選一個新的種子。
錯誤
在任務建立之前就被拒絕的請求,會回傳 HTTP 錯誤狀態碼和一個 error 物件,且不計費。受理之後才失敗的任務,查詢時會回傳 HTTP 200,並帶有 status: "failed" 和一個 error 物件。
錯誤碼、HTTP 狀態碼和重試建議請參見共用錯誤目錄。
{
"id": "task_...",
"model": "sd-video",
"status": "failed",
"error": {
"code": 60001,
"message": "The request was rejected by the content policy. Please revise the prompt or input images."
}
}如果提交本身逾時,請先檢查你的任務清單再重新提交:第一次請求有可能已經被受理。
實用建議
- 提示詞要寫長。幾百個字元或更多效果更好;細節寫得多不會有任何壞處。
- 寫明相機,而不是氛圍:機身、鏡頭和光圈會改變畫面,「電影感」幾乎沒有作用。
- 描述聲音:環境底噪、音效以及它們的遠近。不想要背景音樂時寫上
no music。對白大約每秒 2.5 個單字。 - 加上
no logos, brand names, printed words or badges anywhere in frame,避免出現憑空編造的標記。 - 畫面文字要短,並逐字寫出,同時說明這是畫面中唯一的文字。
- 盡量保持靜止:一個主體、一個地點、固定鏡頭。手部特寫動作,以及頭髮或紙張這類柔軟物體的動態,是最弱的部分。
- 固定
seed,一次只改一個子句,逐步打磨一個鏡頭。
