Claude Opus 5.5 已在 SeedRouter 上線

Seedance 2.5 延長影片:用 API 製作 1–5 分鐘長影片

如何把多次 Seedance 2.5 延長(extend)呼叫串成 1 到 5 分鐘的長影片:請求寫法、參考影片 30 秒上限、接縫效果與每分鐘成本。

以 Markdown 閱讀

Seedance 2.5 每個請求最多算繪 30 秒,所以 1 到 5 分鐘的影片要分段製作:先產生第一個片段,再把它當作參考影片傳回去,並設定 omni_reference_task_type: "extend",模型會從它的最後一格畫面接著往下產生。每次延長呼叫只回傳新增的部分,所以你需要把各段首尾接起來。2026 年 10 月 3 日的一次實測,把一個 15 秒片段和三次各 15 秒的延長串在一起,在 480p 下得到一段 60 秒的影片;接縫幾乎看不出來,每一段也都依照各自的提示詞發展。要注意的是成本:延長請求除了依產生的秒數計費,參考影片的秒數也要計費。

請求相關的事實來自 Seedance 2.5 API 參考。價格來自下文的即時價格表,查證於 2026 年 10 月 3 日。

實測得到的 60 秒影片:一個 15 秒片段加上三次各 15 秒的延長,480p,用 ffmpeg 首尾接合。

Seedance 2.5 能一次產生 1 分鐘的影片嗎?

不能。duration 接受 4 到 30 秒(或 -1,由模型決定),所以單一請求最長 30 秒。更長的影片都是多個請求串起來的。Seedance 2.5 把 Seedance 2.0 的片段長度加倍,並新增了編輯和延長你提供的影片的能力;其他差異見 Seedance 2.5 與 2.0 比較。Seedance 2.0 不能延長影片,所以這個方法只適用於 Seedance 2.5。

Seedance 2.5 的延長功能是怎麼運作的?

你傳送一段文字提示詞和一支參考影片,並把 omni_reference_task_type 設為 extend。模型會從參考影片的最後一格畫面之後繼續產生,並依提示詞決定接下來發生什麼。API 參考中有三條規則:

  • ratio 必須是 adaptive 或不傳。輸出沿用參考影片的畫幅。
  • 參考影片放在 content 中,作為 role 為 reference_video 的 video_url 項目,只能透過 URL 傳入。
  • 參考影片必須是 MP4 或 MOV,每段 2 到 30 秒、合計不超過 30 秒,24 到 60 FPS,不超過 200 MB。

實測得到的輸出情況:

問題2026 年 10 月 3 日的結果
結果裡包含參考影片嗎?不包含。每次延長只回傳新增的 15 秒。
新片段的第一格和舊片段的最後一格接得上嗎?大致接得上。每個接縫前後,紙船、光線和構圖都非常接近。
每一段都依自己的提示詞發展嗎?是的。畫面依每段提示詞的要求,從森林溪流到草地河流,穿過石橋,最後駛入夕陽下的湖面。
上一段的輸出能直接當下一段的參考影片嗎?能。輸出 URL 直接放進下一個請求,不用重新上傳。

每一段都會產生自己的音軌。接縫處的音訊沒有逐一試聽,發布前請自己聽一遍剪接點。

延長請求長什麼樣子?

第一個片段是一般的文字轉影片請求:

{
  "model": "dreamina-seedance-2-5",
  "content": [{"type": "text", "text": "A small red paper boat drifts down a winding forest stream at golden hour, slow tracking shot from behind"}],
  "resolution": "480p",
  "ratio": "16:9",
  "duration": 15
}

之後每一段都把上一段的結果當作參考影片傳回去:

{
  "model": "dreamina-seedance-2-5",
  "content": [
    {"type": "text", "text": "Continue the shot: the paper boat drifts out of the forest into a wide meadow river, the camera keeps tracking from behind"},
    {"type": "video_url", "video_url": {"url": "https://your-storage.example/segment-1.mp4"}, "role": "reference_video"}
  ],
  "omni_reference_task_type": "extend",
  "resolution": "480p",
  "ratio": "adaptive",
  "duration": 15
}

兩種請求都送到 POST https://api.seedrouter.ai/v1/contents/generations/tasks,它會回傳一個任務 ID。輪詢 GET https://api.seedrouter.ai/v1/contents/generations/tasks/{id},直到 status 為 succeeded,再讀取 content.video_url。把下一段的提示詞寫成「Continue the shot: …」並重複同樣的運鏡,能讓接縫前後的動作保持一致。

怎樣把多次延長串成一支長影片?

先產生,再從最新的一段繼續延長,重複幾次,最後把檔案接起來。下面這個 Python 腳本用 requests 函式庫和 ffmpeg 完成整個流程:

import os, subprocess, time
import requests

API = "https://api.seedrouter.ai/v1/contents/generations/tasks"
HEADERS = {"Authorization": f"Bearer {os.environ['SEEDROUTER_API_KEY']}"}

def run(body):
    task_id = requests.post(API, json=body, headers=HEADERS).json()["id"]
    while True:
        time.sleep(15)
        task = requests.get(f"{API}/{task_id}", headers=HEADERS).json()
        if task["status"] == "succeeded":
            return task["content"]["video_url"]
        if task["status"] in ("failed", "expired"):
            raise RuntimeError(task)

prompts = [
    "A small red paper boat drifts down a winding forest stream at golden hour, slow tracking shot from behind",
    "Continue the shot: the paper boat drifts out of the forest into a wide meadow river, the camera keeps tracking from behind",
    "Continue the shot: the paper boat floats under an old stone bridge covered in ivy, warm sunset light",
    "Continue the shot: the paper boat drifts onto a calm lake at sunset, the camera slowly rises and pulls back",
]

urls = [run({"model": "dreamina-seedance-2-5", "content": [{"type": "text", "text": prompts[0]}],
             "resolution": "480p", "ratio": "16:9", "duration": 15})]
for prompt in prompts[1:]:
    urls.append(run({"model": "dreamina-seedance-2-5",
                     "content": [{"type": "text", "text": prompt},
                                 {"type": "video_url", "video_url": {"url": urls[-1]}, "role": "reference_video"}],
                     "omni_reference_task_type": "extend",
                     "resolution": "480p", "ratio": "adaptive", "duration": 15}))

with open("list.txt", "w") as f:
    for i, url in enumerate(urls):
        name = f"part{i}.mp4"
        with open(name, "wb") as out:
            out.write(requests.get(url).content)
        f.write(f"file '{name}'\n")
subprocess.run(["ffmpeg", "-f", "concat", "-safe", "0", "-i", "list.txt", "-c", "copy", "long.mp4"], check=True)

各段的編碼、解析度和影格率都相同,所以 ffmpeg 不用重新編碼就能接合。如果每步 15 秒、要做 5 分鐘,就把提示詞加到 20 條;做法不變。這次實測只涵蓋到 60 秒,所以更長的串接每隔幾段就要檢查主體或色調有沒有漂移,再繼續往下做。

用延長功能做一分鐘 Seedance 2.5 影片要花多少錢?

Seedance 2.5 依影片 token 計費,延長請求還要為參考影片付費:

video tokens = (output seconds + reference video seconds) × width × height × 24 / 1024

帶參考影片的請求,全部 token 都依較低的「有參考影片」費率計費。以下是 Seedance 2.5 目前的費率:

Seedance 2.5

Current rates are temporarily unavailable. No price estimate is provided; unavailable rates must not be interpreted as free usage.

實測中,480p、16:9 下的 token 數:

片段計費秒數實際 token 數
第一個片段,無參考影片15 秒輸出144,512
每次延長,參考影片 15 秒15 秒參考 + 15 秒輸出288,225
60 秒影片(1 個片段 + 3 次延長)—1,009,187

要算一分鐘的價格,就把第一個片段的 token 乘以「無參考影片」費率,把每次延長的 token 乘以「有參考影片」費率。依上表的費率,在 480p 和 720p 下,延長出來的一秒大約是新產生一秒的 1.2 倍,因為每個請求要為兩倍的秒數付費,只是費率較低。token 數隨解析度變化:16:9 下一秒在 480p 是 9,607.5 個 token、720p 是 21,600 個、1080p 是 48,600 個,所以同樣一條 60 秒的串接,在 720p 下 token 約為 2.25 倍,1080p 下約為 5 倍。Seedance API 價格指南對費率和 token 公式有更詳細的說明。

怎樣讓 Seedance 長影片更省錢?

  • 先用 480p 打樣。 在 480p 下把劇情和提示詞定下來,再用更高的解析度算繪最終的串接。
  • 縮短參考影片。 參考影片的每一秒都要計費。實測用的是上一段完整的 15 秒;只擷取上一段結尾較短的一部分,計費秒數會更少,但這樣做對連貫性的影響沒有測試過。
  • 拉長每一步。 用 30 秒的參考影片做一次 30 秒的延長,每個請求能增加 30 秒,做 5 分鐘所需的請求就更少。每增加一秒的計費秒數不變,但要寫的提示詞和要檢查的接縫都少了。
  • 及早止損。 如果某一段跑偏了,就重新產生這一段,不要從它繼續延長。失敗和過期的任務不收費。

延長 Seedance 影片時可能出什麼問題?

  • 真人臉孔。 模型不支援包含真人臉孔的參考圖片和參考影片。產生出來的角色沒問題;規則見 真人錯誤指南。
  • 長寬比寫錯。 API 參考要求延長時 ratio 為 "adaptive" 或不傳;不要把第一段請求裡的 16:9 沿用過來。
  • 參考影片限制。 參考影片不在 2–30 秒範圍內、超過 200 MB 或不在 24–60 FPS 範圍內,會在產生前失敗,錯誤訊息會寫明是哪條規則,而且不收費。
  • 多步之後的漂移。 每一段只能看到上一段,所以長串接中細節可能會慢慢走樣。在每段提示詞中重複主體的關鍵描述。

常見問題

Seedance 2.5 延長會回傳整支影片嗎?

不會。它只回傳續寫的部分,需要你自己把各段接起來。在 2026 年 10 月 3 日的實測中,每次 15 秒的延長都回傳一個 15 秒的檔案。

延長時參考影片要計費嗎?

要。token 數同時包含輸出的秒數和參考影片的秒數,依較低的「有參考影片」費率計費。

能延長不是 Seedance 產生的影片嗎?

能。任何符合參考影片限制的 MP4 或 MOV 都可以被延長。把它放在公開 URL 上,作為 reference_video 傳送即可。

用延長功能,Seedance 2.5 影片最長能做多長?

每次延長都是一個獨立的請求,最多增加 30 秒,所以總長取決於你串了多少次。這次實測做到 60 秒;更長的串接步驟相同,只是出現漂移的機會更多。

Seedance 2.0 能延長影片嗎?

不能。編輯和延長你提供的影片是 Seedance 2.5 的功能。Seedance 2.0 只能產生新片段。

做出你的第一支長影片

用一組 SeedRouter 金鑰在 Seedance 2.5 上執行這條串接。Seedance 2.5 API 參考列出了所有參數,Seedance API 指南說明了金鑰和輪詢,Seedance 2.5 提示詞指南能幫你寫好每一段的提示詞。SeedRouter 依用量付費:一次儲值,額度永不過期,失敗的請求不收費。

相關指南