H3 Continuity Studio로 MiniMax H3 장면을 컷마다 일관되게 유지하기

ComfyUI Wikinews

H3 Continuity Studio는 MiniMax H3 샷을 타임라인에 배치하고 5프레임 시각 메모리를 다음 클립으로 전달하는 ComfyUI 노드 팩입니다. 덕분에 컷이 나뉘어도 공간과 의상이 유지됩니다.

H3 Continuity Studio는 시도할 때마다 프롬프트 하나를 쓰는 대신 영화를 MiniMax H3 클립 목록으로 촬영하기 위한 ComfyUI 노드 팩입니다. 각 클립은 이전 클립을 이어가거나, 새 각도로 컷하거나, 새 장면을 시작하거나, 생성된 브리지로 연결될 수 있으며, 이후 클립에는 이전 푸티지의 5프레임 창을 보여줄 수 있어 방, 코트, 집이 컷을 넘어 유지됩니다.
H3 Workflow 뷰어 옆의 H3 Continuity Studio 타임라인

Studio는 타임라인, 뷰어, 클립 인스펙터를 일반 H3 워크플로 위의 한 패널에 모아 놓습니다.

H3는 한 번에 약 5초를 생성하므로, 그보다 긴 영상은 연결의 연쇄입니다. 대부분의 체인은 수작업으로 만듭니다. 마지막 프레임을 재사용하고, 이를 첫 프레임으로 다시 넣고, 색상과 레이아웃이 유지되기를 바라는 방식입니다. 실패 유형은 Banodoco에서 잘 알려져 있습니다. 세 번째나 네 번째 연결에서 드리프트가 생기고, 해결책은 더 이전 지점에서 다시 렌더링하는 것입니다.

이 팩은 그 기록 관리를 캔버스로 옮깁니다. 클립은 자체 프롬프트, 이미지, 참조 슬롯, 설정과 함께 타임라인에 놓입니다. 편집기는 클립을 하나씩 또는 순서대로 렌더링하며, 두 클립 사이의 연결은 마지막 프레임이 어떻게 연결되었는지에 따른 우연이 아니라 명시적인 선택입니다.

네 가지 연결 방식

타임라인은 연속된 클립 사이의 네 가지 관계를 구분합니다.

  • 이어가기(Continue) 는 이전 클립의 컨텍스트를 전달해 새 클립이 동작 중간에서 시작하게 합니다.
  • 컷(Cut) 은 새 프롬프트로 새로운 대상을 시작하며, 보통 여기서 드리프트가 발생합니다.
  • 새 장면(New scene) 은 영화의 시각적 이력을 유지하면서 새 장면을 시작하므로, 새 프롬프트가 배경을 정의합니다.
  • 브리지(Bridge) 는 두 샷 사이에 짧은 생성 전환을 렌더링하며, 두 샷 모두 다시 렌더링하지 않습니다.

클립당 여러 테이크는 덮어쓰지 않고 후보로 보관되며, 이후 클립이 기억하는 클립을 다시 렌더링하면 종속 클립이 렌더링 필요로 표시되고 툴팁에 그 이유가 나타납니다.

두 샷 사이에서 생성된 브리지 클립

생성된 브리지가 두 클립 사이에 놓이므로, 연결부를 숨기기 위해 어느 샷도 다시 렌더링할 필요가 없습니다.

시각 메모리: 다섯 프레임, 원본 잠재 데이터에서 읽기

흥미로운 부분은 컷에서 벌어지는 일입니다. H3는 보통 새 프롬프트만 보기 때문에 방, 코트, 집이 조용히 바뀔 수 있습니다. 시각 메모리는 영화의 이전 순간들을 네이티브 비디오 참조로 H3에 보여주며, 프롬프트에 <Video N>으로 기록됩니다.

기억되는 각 순간은 5프레임 창입니다. 저장된 클립의 원본 비디오 잠재 데이터에서 읽어 잠재 데이터 수준에서 디퓨전 모델에 전달하므로 디코드, 재인코딩, 픽셀 왕복이 없습니다. 디코드된 표현은 텍스트 인코더만 봅니다. 추가 모델, 의존성, 패치가 필요하지 않습니다. H3는 각 순간을 읽기 전에 17프레임 경계에 맞추므로, 창이 선택한 타임스탬프보다 약간 앞에서 시작할 수 있습니다. 컷에서는 활성화된 모든 모드가 이전 클립 전체의 원본 잠재 데이터도 제공하며, 이것이 다음 샷이 새로운 대상에서 시작하는 동안 레이아웃과 오브젝트 모양을 전달합니다.

두 순간을 고른 시각 메모리 패널

한 클립 설정에서 선택한 두 순간으로, 각각 소스 클립과 시간이 함께 표시됩니다.

클립마다 네 가지 모드가 제공됩니다.

모드이후 클립에 표시되는 내용
같은 장면(Same scene)장면의 설정 뷰와 이전 클립의 중간 지점. 컷 지점 자체의 프레임은 전달하지 않음
선택한 순간(Selected moments)장면을 넘나들며 이전 클립에서 최대 세 개까지 직접 고른 뷰. 각각 유지할 내용에 대한 설명 포함
캐스트(Cast)타임라인이 스토리 바이블(Story bible)로 구동될 때, 현재 모습 그대로의 예정된 각 캐릭터와 장소
끔(Off)메모리 없음. 클립이 일반 H3 생성처럼 동작

선택한 순간은 수동 방식입니다. 이전 클립과 전달된 푸티지의 시간을 고르고, 중요한 것(red brick house, blue door, three upstairs windows)을 설명한 다음, 소스 클립을 먼저 렌더링합니다. 소스가 누락되었거나 오래된 클립은 미묘하게 잘못된 결과를 생성하는 대신 "소스 먼저 렌더링" 메시지와 함께 중단됩니다.

두 번째 카메라 각도에서 본 같은 방

왼쪽: 첫 클립이 설정한 방. 오른쪽: 다른 각도의 이후 클립으로, 첫 클립에서 선택한 순간들을 사용해 렌더링했습니다.

데모, 그리고 데모가 증명하지 않는 것

저장소에는 examples/memory_demo.json이 포함되어 있습니다. 브리지 하나를 가진 6클립 영화로, 거실, 야외로의 컷, 현관 뷰로의 브리지, 첫 클립의 순간들을 재사용하는 실내로의 컷, 같은 방의 코너 뷰, 그리고 이어가기가 이미 이전 클립을 전달하므로 메모리가 꺼진 연속 독서 샷으로 구성됩니다. 1024 x 576, 24 fps, 39개의 전달된 프레임으로 렌더링되었으며, 재현하는 데 업로드된 참조나 자격 증명이 필요하지 않습니다.

프로젝트의 콘테스트 컷: 완성된 영화와 짧은 설명 구간을 합쳐 2분 이내입니다.

작성자는 한계를 분명히 밝힙니다. 회귀 검사는 잠재 데이터 재사용, 전달 시간 오프셋, 컷 간 회상, 소스 무효화, 편집기를 다루지만, 렌더러는 모든 메모리 모드에 대해 시각적으로 벤치마크되지 않았습니다. 제안된 공정한 테스트는 동일한 시드를 세 가지 방식(메모리 끔, 자동 장면 메모리, 직접 고른 뷰)으로 렌더링하고 세부 정보 유지, 연결부의 모션, 실행 시간, VRAM을 비교하는 것입니다. 이 예시는 유지된 세부 정보의 시연이며, 환경 전반에서 동일한 지오메트리를 보장하는 것은 아닙니다.

설치

저장소를 ComfyUI/custom_nodes/ComfyUI-H3-Continuity-Studio에 클론하고 ComfyUI와 동일한 Python 환경에서 pip install -r requirements.txt를 실행하거나, Windows에서는 포터블 빌드의 python_embeded/python.exe를 사용하세요. 재시작한 뒤 examples/h3_story_studio.json을 로드하고, 모델 로더가 자신의 H3 디퓨전 모델, 텍스트 인코더, 비디오 VAE, 오디오 VAE, 선택적 LoRA를 가리키도록 설정하세요. 예시에는 원래 작성자의 파일 이름이 기록되어 있을 뿐 아무것도 다운로드하지 않습니다.

Context Windows는 코어 MiniMax H3 컨텍스트 윈도우 노드가 이미 포함된 ComfyUI 빌드가 필요하며, 선택적 스토리 작성기(Story writer)는 별도로 구성된 OpenAI 호환 엔드포인트(로컬 또는 클라우드)가 필요합니다. 이 엔드포인트는 스토리 텍스트와, 활성화된 경우 참조 이미지를 받습니다. 생성에는 여전히 GPU와 H3 가중치가 필요합니다. 선택적 MiniMax 프롬프트 가이드 텍스트는 함께 제공되지 않습니다. 팩은 그것 없이도 실행되며 누락된 가이드를 보고합니다.

이 프로젝트는 빠르게 릴리스되고 있습니다. 11월 2일과 11월 3일 사이에 다섯 개의 태그가 있었고, 최신 버전은 크기 조절 가능한 Studio 패널과 타임라인 줌을 추가했으며, 그 이전 버전들은 가이드에서 분할, 구성된 워크플로의 자유 종횡비, 프레임 가이드를 유지하는 저장된 스토리를 제공했습니다.

댓글

GitHub로 로그인하고 토론에 참여하세요.

댓글을 불러오는 중…
H3 Continuity Studio로 MiniMax H3 장면을 컷마다 일관되게 유지하기 | ComfyUI Wiki