Seedance 2.5 is live — 30-second cinematic video with native audio & real-person references
다중 클립 AI 영상 연속성 유지: 상태원장 활용법
2026/08/27

다중 클립 AI 영상 연속성 유지: 상태원장 활용법

상태원장, 경계프레임, 연속 프롬프트, API 호출, 연속성 검증 및 복구 규칙을 활용하여 AI 영상을 여러 클립으로 확장하면서 연속성을 유지하는 방법을 배웁니다.

AI 영상 연속성은 각 클립의 마지막 장면을 다음 클립으로 전달하는 정확한 핸드오프를 통해 크게 개선됩니다. 마지막 프레임이 그 핸드오프의 일부이지만, 그것만으로는 충분하지 않습니다. 등장인물이 어디에 서 있고, 어느 방향을 보고 있으며, 무엇을 들고 있고, 무엇이 변했으며, 다음 장면에서 무엇을 할 수 있는지를 기록하는 상태원장이 필요합니다.

이 튜토리얼은 한 번의 모델 호출보다 긴 시퀀스를 만듭니다. 예제에서는 ByteDance가 최대 30초 클립과 다중 라운드 확장을 문서화했기 때문에 두 개의 Seedance 2.5 생성을 사용합니다.[1] 상태원장 방법은 더 짧은 모델과 별개 장면 편집에도 적용됩니다.

요약

  • 첫 번째 클립을 생성하기 전에 전체 시퀀스를 계획하세요.
  • 가장 어려운 동작 중간이 아니라 안정적인 시각 상태에서 나누세요.
  • 상태원장에 신원, 위치, 방향, 소품, 환경, 빛, 카메라, 미해결 동작을 기록하세요.
  • 첫 번째 클립의 마지막 프레임을 요청하고 경계 앵커로 사용하세요.
  • 연속 프롬프트를 상속된 상태를 재설명하는 것으로 시작하세요.
  • 프레임별로, 그리고 정상 속도로 조인 부분을 검토하세요.
  • 전체 이야기를 다시 생성하지 말고, 경계 또는 영향을 받은 클립만 복구하세요.

마스터 시퀀스와 상태원장부터 경계프레임, 연속 생성, 조인 검토, 선택적 복구까지 이르는 장편 AI 영상 연속성 워크플로우

마지막 프레임만으로는 연속성이 보장되지 않는 이유

한 프레임은 한 순간의 외관과 위치를 보여줍니다. 하지만 움직임 방향, 등장인물의 의도, 소품 이력, 오디오 타이밍, 또는 다음에 일어나야 할 일을 완전히 설명하지는 않습니다.

자전거를 탄 사람이 프레임의 오른쪽 모서리에 있다고 상상해보세요. 그 이미지는 다음 세대에 자전거 타는 사람이 왼쪽에서 도착했는지, 오른쪽으로 나가려고 하는지, 아니면 멈춰서 방향을 바꾸려고 하는지 알려주지 않습니다. 상태원장이 그 놓친 시간 정보를 제공합니다.

연속성을 8개의 연결된 상태로 생각해보세요.

상태예시
신원같은 라이더, 헬멧, 파란 재킷, 검은 자전거
위치라이더가 오른쪽 3분의 1 지점에, 자전거가 도로와 평행
방향왼쪽에서 오른쪽으로 이동, 반전 없음
자세/동작오른발 땅에 닿음, 양손은 핸들바에, 감속 중
소품빨간 배낭이 라이더에 남음, 물병은 프레임 케이지에
환경젖은 산악도로, 소나무, 아침 안개
왼쪽 위에서의 부드러운 역광
카메라/오디오낮은 트래킹 뷰, 타이어 소음이 컷 아래로 계속됨

안정적인 시퀀스는 이야기가 의도적으로 하나를 바꾸지 않는 한 8가지 모두를 유지합니다.

1단계: 첫 번째 호출 전에 전체 시퀀스를 계획하세요

완전한 동작을 일반 언어로 작성하세요. 그런 다음 자연스러운 핸드오프 상태를 기반으로 클립으로 나누세요.

전체 시퀀스:
자전거 타는 사람이 안개를 통해 내려오다가 쓰러진 가지 앞에서 브레이크를 걸고, 자전거를 들고 주변을 돌아, 다시 타고, 햇빛이 나는 곳으로 향해 계속 간다.

클립 1:
내려오기와 브레이킹. 자전거가 도로의 오른쪽에 멈춰 있고, 앞바퀴가 약간 왼쪽을 향하고 있으며, 라이더의 오른발이 땅에 닿아있는 상태로 끝남.

클립 2:
라이더가 내려, 자전거를 들고 가지 주변을 돌고, 다시 타고, 햇빛이 나는 곳으로 나간다.

분할은 브레이킹 동작이 가라앉은 후에 발생합니다. 앞바퀴가 회전하거나 발이 땅을 향해 움직이는 동안에는 발생하지 않습니다. 안정적인 핸드오프는 연속에 덜 모호함을 만듭니다.

2단계: 마스터 연속성 성경을 만드세요

연속성 성경은 전체 시퀀스에 적용되는 세부 사항을 포함합니다.

{
  "character": {
    "identity": "같은 성인 라이더",
    "wardrobe": "무광 검은색 헬멧, 파란색 레인 재킷, 검은색 바지",
    "fixed_details": "빨간 배낭, 장갑 없음"
  },
  "vehicle": {
    "type": "검은색 하드테일 마운틴 바이크",
    "fixed_details": "다운튜브 케이지의 물병, 리어 서스펜션 없음"
  },
  "world": {
    "location": "소나무 숲을 통한 젖은 산악도로",
    "weather": "약한 안개, 활발한 비 없음",
    "light": "왼쪽 위의 부드러운 아침 역광"
  },
  "camera_language": {
    "height": "낮은 허리 높이 트래킹",
    "lens": "중간 광각 뷰",
    "movement": "작은 자연스러운 진동과 함께 부드러움",
    "screen_direction": "왼쪽에서 오른쪽"
  },
  "audio": {
    "bed": "타이어 소음, 가벼운 바람, 먼 새 소리",
    "music": "없음"
  }
}

이 정보를 모든 클립에서 재사용하세요. 별개의 캐릭터 일관성 가이드는 참조 디자인을 다룹니다. 연속성 성경은 신원을 둘러싼 제작 결정을 기록합니다.

3단계: 클립별 상태원장을 추가하세요

원장은 3개의 열을 가집니다: 상속된 상태, 이 클립 중 변경, 필수 종료 상태.

{
  "clip_id": "01-descent-and-stop",
  "inherits": {
    "rider_position": "왼쪽 3분의 1",
    "direction": "왼쪽에서 오른쪽",
    "speed": "중간 내리막",
    "hands": "양손 핸들바",
    "bike": "세운 상태, 굴러감"
  },
  "changes": [
    "쓰러진 가지가 보임",
    "라이더가 반전 없이 브레이크",
    "자전거가 도로 오른쪽으로 이동",
    "오른발이 땅으로 내려감"
  ],
  "end_state": {
    "rider_position": "오른쪽 3분의 1",
    "direction": "여전히 오른쪽 향함",
    "speed": "멈춤",
    "right_foot": "땅에",
    "left_foot": "페달에",
    "front_wheel": "약간 왼쪽 향함",
    "hands": "양손 핸들바",
    "branch": "2미터 앞",
    "camera": "안정적인 낮은 3/4 뷰",
    "hold": "1초"
  }
}

다음 클립의 inherits 객체가 이 end_state와 일치해야 합니다. 다르면, 생성에 돈을 쓰기 전에 연속성 문제를 찾은 것입니다.

4단계: 의도적인 핸드오프로 첫 번째 클립을 생성하세요

프롬프트는 최종 상태에 충분한 관심을 기울여야 합니다.

같은 라이더가 무광 검은색 헬멧, 파란색 레인 재킷, 검은색 바지, 빨간 배낭을 입고 검은색 하드테일 마운틴 바이크를 탄다. 젖은 숲 도로를 왼쪽에서 오른쪽으로. 낮은 허리 높이 트래킹 카메라, 왼쪽 위의 부드러운 아침 역광.

자전거 타는 사람이 쓰러진 가지를 보고, 반전 없이 천천히 브레이크를 걸고, 도로의 오른쪽으로 이동하고, 멈춘다. 오른발이 땅으로 내려오고 왼발은 페달에 남아있다. 양손은 핸들바에 남아있다. 앞바퀴가 약간 왼쪽을 가리킨다. 가지가 2미터 앞에 있는 안정적인 낮은 3/4 뷰로 끝난다. 정확한 최종 상태를 1초간 유지한다. 컷, 옷 변화, 추가 라이더, 또는 방향 반전 없음.

API 호출에서 마지막 프레임을 요청하세요:

curl https://reapi.ai/api/v1/videos/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "doubao-seedance-2.5-face",
    "prompt": "The cyclist rides left to right, brakes before a fallen branch, and stops on the right side of the road. Right foot on ground, left foot on pedal, both hands on handlebars, front wheel slightly left. Hold the exact final state for one second. Preserve rider, bicycle, wardrobe, road, light, and direction.",
    "image_urls": ["https://example.com/rider-and-bike-reference.jpg"],
    "resolution": "720p",
    "size": "16:9",
    "duration": 12,
    "generate_audio": true,
    "return_last_frame": true
  }'

작업이 완료되면, reAPI는 생성된 비디오 URL을 반환하고, 요청 시 output.last_frame_url를 반환합니다.[2]

5단계: 계속하기 전에 경계를 감사하세요

마지막 프레임을 자동으로 전달하지 마세요. 작성된 종료 상태를 나타내는지 확인하세요.

{
  "identity": "통과",
  "screen_direction": "통과",
  "right_foot_grounded": "통과",
  "left_foot_on_pedal": "수리",
  "both_hands_on_handlebars": "통과",
  "front_wheel_direction": "통과",
  "branch_distance": "통과",
  "stable_hold": "통과"
}

어려운 연속성 조건이 실패하면, 클립 1을 수리하거나 더 이른 유효 프레임을 선택하세요. 나쁜 경계를 전달하면 다음 세대가 오류를 상속합니다.

6단계: 연속 요청을 만드세요

두 번째 프롬프트를 상속된 상태를 재설명하는 것으로 시작한 다음, 새로운 변경만 설명하세요.

정확히 이미지 1에서 시작. 같은 자전거 타는 사람이 젖은 도로의 오른쪽에 멈춰 있고, 오른쪽을 향하고 있다. 오른발은 땅에, 왼발은 페달에, 양손은 핸들바를 잡고 있고, 앞바퀴는 약간 왼쪽을 가리키고 있으며, 쓰러진 가지는 2미터 앞에 있다. 같은 라이더, 헬멧, 파란색 재킷, 빨간 배낭, 검은색 자전거, 물병, 안개, 빛 방향을 유지한다.

라이더가 자전거를 돌리지 않고 왼쪽으로 내려, 자전거를 틀로 들고, 가지의 근처 끝 주변을 걸어 다니고, 양쪽 바퀴를 다시 도로에 놓고, 오른쪽을 향하게 한 다음, 더 밝은 곳을 향해 타고 난다. 왼쪽에서 오른쪽 화면 방향을 유지한다. 라이더가 프레임 오른쪽에서 나가며 끝난다. 새로운 소품, 옷 변화, 날씨 변화, 또는 컷 없음.

반환된 이미지를 명시적 첫 프레임으로 사용하세요:

curl https://reapi.ai/api/v1/videos/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "doubao-seedance-2.5-face",
    "prompt": "Begin exactly from Image 1. Preserve rider, wardrobe, bicycle, prop placement, fog, light, and left-to-right direction. The rider dismounts, carries the bicycle around the branch without reversing it, remounts, and exits frame right. No cuts or new objects.",
    "image_with_roles": [
      {
        "url": "LAST_FRAME_URL_FROM_CLIP_1",
        "role": "first_frame"
      }
    ],
    "resolution": "720p",
    "size": "adaptive",
    "duration": 14,
    "generate_audio": true,
    "return_last_frame": true
  }'

현재 reAPI 경로에서 첫 프레임 역할은 image_with_roles를 사용하고, 적응형 크기를 필요로 하며, 같은 요청에서 image_urls, video_urls, 또는 audio_urls과 혼합할 수 없습니다. 이것은 제출 후에 발견하지 않고 요청 검증에서 처리해야 하는 게이트웨이 규칙입니다.[2]

한 개의 하드 첫 프레임 역할 대신 여러 신원 참조가 필요한 경우, 참조 이미지 워크플로우를 사용하고 이전 최종 프레임을 순서가 있는 입력 중 하나로 설명하세요. 이것은 더 많은 신원 증거를 제공하지만 더 부드러운 경계를 제공합니다. 올바른 선택은 어느 실패가 더 비싼지에 달려 있습니다.

7단계: 3가지 속도에서 조인을 검토하세요

클립들을 편집기에서 나란히 놓으세요.

프레임별

클립 1의 최종 프레임과 클립 2의 첫 프레임을 신체 모양, 옷, 손 위치, 소품 위치, 자전거 기하학, 빛, 카메라 높이를 비교하세요.

절반 속도

동작이 부자연스럽게 다시 시작되는지, 바퀴가 점프하는지, 팔다리가 지원을 바꾸는지, 또는 카메라가 컷에서 가속되는지 확인하세요.

정상 속도

시청자가 조인을 알아차리는지 판단하세요. 작은 질감 차이는 동작에서 보이지 않을 수 있지만, 방향 반전은 그렇지 않을 것입니다.

경계 보고서를 사용하세요:

{
  "visual_match": "통과",
  "screen_direction": "통과",
  "action_continuation": "수리",
  "camera_velocity": "통과",
  "audio_bed": "편집에서 수리",
  "note": "클립 2는 손이 프레임으로 이동하기 전에 왼발을 든다"
}

8단계: 가장 작은 연속성 문제를 복구하세요

모든 불일치가 재생성을 필요로 하지는 않습니다.

문제가장 작은 실용적 수리
1~2개의 나쁜 경계 프레임더 깨끗한 지점으로 자르기
오디오 분위기 변화편집에서 하나의 연속 사운드 베드로 교체
조인에서 카메라 일시 중지짧은 오버랩 추가 또는 안정적인 컷 선택
소품이 손을 바꿈영향받은 연속 비트 재생성
캐릭터 또는 차량 변경경계/참조 워크플로우를 강화하고 클립 2 재생성
화면 방향이 반전됨상속된 방향을 다시 작성하고 클립 2 재생성
조명이 약간 변함신원과 기하학이 통과하면 사후에 등급 지정

연속성은 픽셀 신원이 아닙니다. 목표는 이야기, 공간, 동작이 읽을 수 있는 상태로 남아있는 믿을 수 있는 핸드오프입니다.

9단계: 더 많은 클립으로 원장을 확장하세요

더 긴 프로젝트의 경우, 하나의 마스터 성경과 클립당 하나의 원장을 저장하세요.

/sequence
  master-continuity.json
  clip-01-ledger.json
  clip-02-ledger.json
  clip-03-ledger.json
  /references
  /boundary-frames
  /generated
  /approved

클립 3을 생성하기 전에 다음을 비교하세요:

clip-02.end_state == clip-03.inherits

에이전트는 이 일관성 검사를 자동으로 수행할 수 있습니다. 인간은 여전히 신원, 민감한 유사성, 서사 의도, 최종 컷을 승인해야 합니다.

일반적인 초보자 실수

빠른 동작 중에 분할

멈춤, 유지, 접촉, 또는 완료된 제스처를 선택하세요. 중간 동작 경계는 다음 세대가 한 이미지에서 운동량을 추론하도록 강제합니다.

변경되는 것만 설명

연속은 또한 상속된 사실이 필요합니다. 새로운 동작 전에 방향, 소품, 위치, 빛, 카메라 조건을 재설명하세요.

유효하지 않은 마지막 프레임 전달

먼저 검토하세요. 왜곡된 손이나 누락된 소품은 다음 클립의 시작 증거가 됩니다.

오디오를 무시하면서 시각적 연속성 해결

분리 생성이 음성 또는 볼륨 변화를 생성하면 조인 전체에 하나의 분위기 베드를 사용하세요.

늦은 실패 후 모든 클립 재생성

승인된 클립을 고정하세요. 경계 또는 첫 실패한 연속을 복구하세요.

FAQ

AI 영상을 계속 진행하려면 마지막 프레임만으로 충분합니까?

외관과 위치에는 도움이 되지만, 방향, 의도, 소품 이력, 또는 향후 동작에는 도움이 되지 않습니다. 상태원장과 연속 프롬프트와 쌍을 이루세요.

긴 시퀀스를 어디에서 나누어야 합니까?

동작이 가라앉은 후에 나누세요: 멈춤, 착지, 배치된 물체, 닫힌 문, 유지된 자세, 또는 안정적인 카메라 프레임.

상태원장에 얼마나 많은 세부 사항이 속합니까?

설명되지 않은 변경이 시청자를 산만하게 하거나 다음 동작을 중단시킬 모든 것을 기록하세요. 안전하게 변할 수 있는 장식적 세부 사항은 무시하세요.

첫 프레임 역할을 다른 참조와 결합할 수 있습니까?

현재 reAPI Seedance 2.5 요청 표면에서는 아닙니다. image_with_roles는 다른 미디어 참조 필드와 결합할 수 없으므로, 하드 프레임 경계와 더 넓은 참조 세트 중 하나를 선택하세요.

모든 클립이 최대 기간을 사용해야 합니까?

아니요. 자연스러운 동작과 핸드오프 주변의 기간을 선택하세요. 더 짧은 완전한 비트가 한계까지 채워진 긴 클립보다 제어하기 쉽습니다.

결론

AI 영상 연속성은 핸드오프 규율입니다. 전체 시퀀스를 계획하고, 각 클립을 안정적인 상태에서 끝내고, 경계 프레임을 검증하며, 새로운 동작을 도입하기 전에 다음 프롬프트가 작성된 원장을 상속하도록 하세요. 이것이 변이를 제거하지는 않지만, "계속되게 하세요"를 검사하고 복구하고 자동화할 수 있는 제작 프로세스로 바꿉니다.

References

  1. ByteDance Seed. One-take Creation, Flexible Referencing: Introducing Seedance 2.5. July 31, 2026. seed.bytedance.com
  2. reAPI. Seedance 2.5 API — Parameters, Modes & Billing. Retrieved August 27, 2026. reapi.ai
  3. ByteDance Seed. Seedance 2.0 Official Launch. February 12, 2026. seed.bytedance.com