Seedance 2.0 - Extend Video는 입력 클립을 이어서 다음 프레임을 생성하고, 가장 자연스럽게 이어지는 지점으로 트리밍하는 ComfyUI 워크플로입니다. LoadVideo와 GetVideoComponents를 사용해 소스를 불러오고 프레임, FPS, 오디오를 추출한 뒤, 후속 텍스트 프롬프트를 Seedance 2.0 생성기(ByteDance2ReferenceNode)에 전달합니다. 프롬프트는 입력의 마지막 프레임 직후에 일어나는 일을 설명하며, 모델은 새 프레임 배치를 예측해 이어붙일 수 있는 연장을 생성합니다. PrimitiveStringMultiline 및 StringConcatenate는 생성기에 보낼 최종 조건화 텍스트를 구성하는 데 사용됩니다.
모델이 생성한 연장은 마지막 실제 프레임과 완전히 일치하지 않을 수 있으므로, 워크플로는 자동 컷 포인트 보조 기능을 포함합니다. Preview Images Difference 노드(f1f7c973-e50b-4ec7-84c5-0ef2eef1fc84)가 각 생성 프레임을 입력의 마지막 프레임과 비교해 색상 차이를 시각화하며, 가장 어두운 미리보기가 가장 가까운 시각적 일치를 뜻합니다. 그 인덱스를 선택해 ImageFromBatch+로 해당 프레임부터 생성 배치를 트리밍한 뒤, BatchImagesNode로 원본 프레임과 트리밍된 연장을 연결합니다. CreateVideo는 소스 FPS로 새 클립을 재구성하고, AudioConcat은 설정에 따라 오디오를 유지하거나 이어붙이며, SaveVideo가 최종 연장 비디오를 저장합니다. PreviewImage 노드는 렌더링을 확정하기 전에 마지막 소스 프레임과 후보 매칭 프레임을 빠르게 확인할 수 있도록 포함되어 있습니다.
API
코드에서 이 워크플로우 사용하기
모든 Comfy 워크플로우는 JSON 그래프입니다. 아래 페이로드는 이 워크플로우 그 자체로, ComfyUI에서 실행되는 것과 동일합니다 — URL에서 가져오거나, 버전 관리에 보관하거나, ComfyUI에서 불러와 노드별로 실행할 수 있습니다.
Comfy SDK로 TypeScript 또는 Python에서 실행하세요. 동일한 코드는 Comfy Cloud 또는 직접 호스팅하는 ComfyUI 모두에 적용됩니다 — 기본 URL만 다릅니다.
// Install (beta)
npm i @comfyorg/sdk
// Run this workflow (TypeScript)
import { Comfy } from "@comfyorg/sdk";
const client = new Comfy({ apiKey: "comfyui-..." });
const wf = await client.workflows.fromFile("workflow_api.json");
const job = await client.run(wf);
await job.getOutputs("<output-node-id>")[0].toFile("output.png");SDK는 API 형식의 워크플로우를 사용합니다: 이 워크플로우를 ComfyUI에서 열고 파일 → 워크플로우 내보내기(API)를 사용하세요.
FAQ














