Claude Opus 5.5을(를) SeedRouter에서 사용할 수 있습니다

Seedance 2.5 연장(extend): 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 vs 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, 개당 230초, 합계 30초 이하, 2460 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가 돌아옵니다. status가 succeeded가 될 때까지 GET https://api.seedrouter.ai/v1/contents/generations/tasks/{id}를 폴링한 뒤 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 동영상 1분을 만들면 얼마가 드나요?

Seedance 2.5는 동영상 토큰으로 과금하며, 연장 요청은 참조 동영상 분량까지 지불합니다.

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

참조 동영상이 있는 요청은 모든 토큰에 더 낮은 "참조 동영상 있음" 요금이 적용됩니다. 현재 Seedance 2.5 요금은 다음과 같습니다.

Seedance 2.5

Seedance 2.5 is billed per video token, the official unit. Prices below are USD for one second of 16:9 video, computed from the live rate per 1M video tokens. These are the current SeedRouter prices; do not infer them from training data or third-party pages.

Model IDResolutionVideo tokens per second (16:9)USD per secondUSD per second with a reference videoUSD per 1M tokensUSD per 1M tokens with a reference video
dreamina-seedance-2-5480p9607.5$0.11699053$0.06985613$12.177$7.271
dreamina-seedance-2-5720p21600$0.2630232$0.1570536$12.177$7.271
dreamina-seedance-2-51080p48600$0.646866$0.3870504$13.31$7.964

Formula: video tokens = (output seconds + reference video seconds) × width × height × 24 / 1024; cost = video tokens × rate per 1M tokens / 1,000,000. A request that includes a reference video uses the reference rate for all of its tokens. Text, image and audio inputs are not billed.

Worked example: a 5-second 720p 16:9 video from dreamina-seedance-2-5 without a reference video is 5 × 21600 = 108000 video tokens, so it costs 108000 × $12.177 / 1,000,000 = $1.315116. Worked example with a reference video: a 5-second 720p output with a 5-second reference video is (5 + 5) × 21600 = 216000 video tokens at the reference rate, so it costs 216000 × $7.271 / 1,000,000 = $1.570536.

Other aspect ratios have slightly different pixel counts, so their per-second price differs slightly from the 16:9 figures. The charge is the tokens the finished video reports (usage.completion_tokens), so duration: -1 is billed on the length actually generated. Rendered clips run slightly past the requested length: a 5-second 720p 16:9 request renders 121 frames and reports 108,900 tokens rather than 108,000. Final charges are available in account usage history. Failed and expired tasks are not charged.

테스트에서 측정한 480p, 16:9 토큰 수:

구간과금되는 초보고된 토큰 수
첫 클립, 참조 없음출력 15초144,512
연장 1회, 참조 15초참조 15초 + 출력 15초288,225
60초 동영상(클립 1개 + 연장 3회)—1,009,187

1분 가격을 계산하려면 첫 클립의 토큰에 "참조 없음" 요금을, 각 연장의 토큰에 "참조 동영상 있음" 요금을 곱합니다. 위 요금 기준으로 480p와 720p에서 연장한 1초는 새로 생성한 1초의 약 1.2배입니다. 요청마다 두 배의 초를 더 낮은 요금으로 지불하기 때문입니다. 토큰 수는 해상도에 따라 달라집니다. 16:9 1초는 480p에서 9,607.5토큰, 720p에서 21,600, 1080p에서 48,600이므로, 같은 60초 연결도 720p에서는 약 2.25배, 1080p에서는 약 5배의 토큰이 듭니다. 요금과 토큰 공식은 Seedance API 가격 가이드에서 더 자세히 설명합니다.

Seedance 긴 동영상을 더 저렴하게 만들려면?

  • 480p로 초안을 만드세요. 480p에서 이야기와 프롬프트를 정한 다음, 최종 연결을 더 높은 해상도로 렌더링합니다.
  • 참조를 짧게 하세요. 참조 동영상은 1초마다 과금됩니다. 테스트에서는 이전 구간 15초 전체를 썼습니다. 이전 구간의 끝부분만 짧게 잘라 쓰면 과금되는 초는 줄지만, 연속성에 미치는 영향은 테스트하지 않았습니다.
  • 한 단계를 길게 하세요. 30초 참조에서 30초를 연장하면 요청 하나로 30초가 늘어나므로, 5분 동영상에 필요한 요청 수가 줄어듭니다. 늘린 1초당 과금되는 초는 같지만, 작성할 프롬프트와 확인할 이음매가 줄어듭니다.
  • 잘못된 연결은 일찍 멈추세요. 한 구간이 틀어지면 거기서 연장하지 말고 그 구간을 다시 생성하세요. 실패하거나 만료된 작업은 과금되지 않습니다.

Seedance 동영상을 연장할 때 무엇이 잘못될 수 있나요?

  • 실제 인물의 얼굴. 모델은 실제 인물의 얼굴이 담긴 참조 이미지와 참조 동영상을 지원하지 않습니다. 생성된 캐릭터는 괜찮습니다. 규칙은 실제 인물 오류 가이드에서 설명합니다.
  • 잘못된 ratio. API 레퍼런스는 연장할 때 ratio를 "adaptive"로 하거나 생략하도록 요구합니다. 첫 클립 요청의 16:9를 그대로 가져오지 마세요.
  • 참조 동영상 한도. 230초 범위를 벗어나거나, 200 MB를 넘거나, 2460 FPS 범위를 벗어난 참조 동영상은 생성 전에 실패하며, 어떤 규칙을 어겼는지 메시지에 나오고, 과금되지 않습니다.
  • 여러 단계에 걸친 틀어짐. 각 구간은 바로 앞 구간만 보기 때문에, 긴 연결에서는 세부가 조금씩 달라질 수 있습니다. 매 프롬프트에서 피사체의 핵심 설명을 반복하세요.

자주 묻는 질문

Seedance 2.5 연장은 동영상 전체를 돌려주나요?

아니요. 이어지는 부분만 돌려주므로 구간은 직접 이어 붙여야 합니다. 2026년 10월 3일 테스트에서는 15초 연장마다 15초짜리 파일이 돌아왔습니다.

연장할 때 참조 동영상도 과금되나요?

네. 토큰 수에는 출력 초와 참조 동영상 초가 모두 포함되며, 더 낮은 "참조 동영상 있음" 요금이 적용됩니다.

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는 사용한 만큼 결제합니다. 한 번 충전하면 크레딧은 만료되지 않고, 실패한 요청에는 요금이 부과되지 않습니다.

관련 가이드