스토리보드에서
한 편의 애니메이션까지.
Ollama + Qwen3 · ComfyUI + Qwen-Image-2.1 · 네이티브 H3. Windows RTX 4090 및 Apple Silicon Mac 이중 경로. 모델 매개변수, 8가지 워크플로우, 자동 자막, 더빙 믹싱, 30초 자동 편집을 포함한 텍스트, 사진, 비디오는 모두 로컬입니다.
STEP 01 / 15
먼저 머신을 선택하세요. 세 가지 항목은 모두 로컬이며 단계 순서대로 실행됩니다.
에 대한 3D 애니메이션 반바지: Ollama로 대본과 스토리보드를 작성하고 Qwen-Image-2.1로 캐릭터 참조 이미지와 샷별 첫 프레임을 만듭니다. MiniMax H3로 음성이 있는 짧은 영상을 생성한 뒤 로컬에서 편집합니다. 먼저 약 30초, 6개 샷의 단편을 완성하세요.
| 무대 | 정확한 모델 및 매개변수 | 이 기사의 사용법 |
|---|---|---|
| 텍스트 | Qwen3-30B-A3B-Instruct-2507:총 30.5B, 약 3.3B 활성화 | 올라마 태그 qwen3:30b-a3b-instruct-2507-q4_K_M; 약 19GB 다운로드. |
| 그림 | Qwen-Image-2.1:7B 발생기 + 독립 8B 인코더 | Windows용 INT8 ConvRot; 맥용 BF16. 추가 단서 강화 기능을 끄십시오. 추가 9B 모델은 필요하지 않습니다. |
| 비디오 | MiniMax H3:33B 밀도 생성기 + 독립 32B 인코더 | Windows용 잘라낸 양자화 버전; 약 13B AdaLN이 사전 계산/자르기가 가능하며 생성기 추론 부분은 약 20B입니다. 33B는 원래 생성기 매개변수 양입니다. |
Windows 11, RTX 4090 24GB, 64GB 시스템 메모리, NVMe 프리 약 200GB. 24GB 비디오 메모리는 텍스트, 이미지, 비디오를 사용하여 단계별로 로드되며 인코더와 생성기는 ComfyUI에 의해 동적으로 관리됩니다.
Apple Silicon, macOS 15 이상. 완전한 H3 생산 경로는 Max급 칩, 128GB 통합 메모리 및 고성능 SSD를 기반으로 계획되며 약 350GB의 여유 공간이 있습니다. 먼저 확인 파일을 사용하여 로딩을 확인한 다음 기본 768p 품질 파일을 사용하십시오.
- 기기, 디스크 공간, 사용 범위를 확인하고 Windows 또는 Mac 경로를 선택하세요.
STEP 02 / 15
프로젝트 디렉토리를 생성하고 캐릭터, 첫 번째 프레임 및 샷을 별도로 저장합니다.
아래 폴더 구성을 권장합니다. 승인한 캐릭터 참조 이미지는 마스터로 보관하고 샷마다 프롬프트, seed, 워크플로와 출력을 저장하세요. 이후에는 문제가 있는 샷만 다시 생성합니다.
My3DShort/
00_story/ 剧本、分镜、角色设定
01_character/ 阿木定妆主图
02_first_frames/ shot01.png ... shot06.png
03_video/ shot01.mp4 ... shot06.mp4
04_edit/ 剪辑工程、字幕、最终成片
workflows/ 当前使用的JSON워크플로는 이 사이트에서 직접 다운로드됩니다.
JSON을 저장하고 ComfyUI 캔버스로 드래그하거나 메뉴에서 "열기"를 사용하세요. 이러한 파일은 UI 워크플로입니다.API 요청 JSON이 아님. 이미지 노드는 자체 파일을 다시 업로드해야 합니다. 샘플 파일 이름을 유지할 수 없으며 직접 실행을 클릭합니다.
30초 제작 시트: "Late Package"
전체 영화에는 6개의 샷이 있고, 각 샷은 5초 동안 전달된다. 먼저 관객들에게 '따라잡을 수 없다'는 점을 이해시키고, '누군가 기다리고 있었다'는 사실을 밝히고, 마지막으로 선물로 이를 반전시킨다. 사진 왼쪽에서 지는 해가 빛나고, 오른쪽 벤치가 빨간색 리본과 캐릭터의 옷으로 감싸져 있는 현상을 수정하였습니다. 카메라가 전환되면 시선과 소품 위치가 유지됩니다.
| 미러 번호/시간 | 첫 번째 프레임과 주요 동작 | 거울과 소리 |
|---|---|---|
| 01 · 00~05초 | 중간 길이의 샷: Amu는 왼쪽에 있고 양손으로 패키지를 잡고 오른쪽에 있는 빈 플랫폼을 바라보며 어깨가 천천히 내려갑니다. | 조용한 위치 또는 넛지; 멀리서 들리는 기차소리. 랩은 가슴을 보호합니다. |
| 02 · 05~10초 | 소포의 클로즈업 샷: 손의 포즈가 카메라에 연결됩니다. 빨간 리본의 작은 조각이 바람에 부드럽게 들어 올려집니다. | 같은 쪽에서 나오는 빛, 빨간색 띠는 화면 오른쪽을 가리킵니다. 바람소리와 종이소리가 잔잔하게 들려온다. |
| 03 · 10~15초 | 아무중 클로즈업 샷: 손과 패키지를 제자리에 둔 채 눈을 들어 화면 오른쪽을 바라봅니다. | 벤치를 향한 눈; 슬쩍 찌르다. "아직도 나를 기다리고 있나요?"라는 짧은 문구를 사용할 수 있습니다. |
| 04 · 15~20초 | 역방향 미드샷: 백발의 할머니가 베이지색 가디건을 입고 벤치에 앉아 화면 왼쪽으로 가볍게 손을 흔들고 있다. | 할머니는 아무를 바라보셨습니다. "내가 기다리는 건 바로 너야"라는 짧은 문장. 나중에 목소리가 통일됩니다. |
| 05 · 20~25초 | 두 사람의 미드샷: 첫 번째 프레임에서는 핸드오버 포즈를 촬영했습니다. Amu가 꾸러미를 앞으로 건네주고 할머니는 꾸준하게 꾸러미를 받으려고 손을 뻗습니다. | 패키지는 여전히 둘 사이에 있습니다. 간단한 손짓만으로 종이 긁는 소리가 난다. |
| 06 · 25~30초 | 미디엄 클로즈업 샷: 할머니가 손에 작은 스카프를 꺼내고 있고, Amu는 스카프를 바라보며 미소를 짓고 있습니다. | 클립을 빌려서 포장 풀기 과정을 없애세요. 할머니는 “꾸러미를 배달하는 사람에게”라고 말했다. 그녀는 마지막 순간에 이모티콘을 남겼습니다. |
할머니도 고정 캐릭터 참조 이미지를 만드세요. 짧은 회색 머리, 베이지 니트 카디건, 짙은 녹색 긴 치마와 둥근 3D 재질입니다. 두 인물의 첫 프레임에서는 편집 워크플로의 다음 입력에 할머니 참조를 연결하세요: image_3, 프롬프트 단어에 지정됨 <image3> 할머니만 제지하세요. Shot 6에서는 "스카프를 꺼낸" 첫 번째 프레임을 직접 생성하여 포장 풀기 과정을 완료합니다.
로컬 Qwen3을 사용하여 샷별 제작 파일로 확장
다음 제작 지침은 플롯, 캐릭터, 첫 번째 프레임 참조 관계, H3 오디오 및 비디오 필드를 동시에 제한합니다. 생성 후 6개의 미러 프롬프트 단어를 하나씩 저장하고 위의 표에 따라 촬영 축과 패키지 위치를 검토합니다.
로컬 도구로 3D 애니메이션 단편을 제작하는 감독으로서 30초 오리지널 단편 「늦게 도착한 소포」의 실행 가능한 제작표를 작성하세요.
고정 자산: 아무, 짧은 밤색 머리, 갈색 눈, 후드를 내린 주황색 우비, 남색 크로스백, 어두운 부츠. 크라프트지 소포와 빨간 리본. 따뜻한 노을의 작은 마을 기차역 승강장. 빛은 화면 왼쪽에서 들어오며 벤치는 오른쪽입니다.
각 5초의 6개 샷: 승강장에서 낙담한 아무→바람에 소포의 빨간 리본이 들림→리본을 따라 오른쪽 벤치를 바라봄→기다리던 할머니가 벤치에 나타남→아무가 소포를 건넴→할머니가 소포에서 작은 목도리를 꺼내 아무에게 주며 반전을 완성합니다.
먼저 캐릭터와 장면 자산표를 출력하세요. 이어서 샷 번호, 5초 길이, 샷 크기, 첫 프레임 구도, 주요 동작 하나, 카메라 위치와 미세한 움직임, 소품·시선 연결, 환경음, 선택적 짧은 대사, 검수 기준을 담은 6샷 표를 작성하세요.
샷마다 영어 레이아웃 이미지 프롬프트, Qwen 첫 프레임 편집 프롬프트, H3 영상 프롬프트를 출력하세요. 참조 이미지 1은 해당 샷의1344×768 레이아웃이며 이미지 2는 캐릭터 참조입니다. 다인물 샷에는 동일한 할머니 참조도 첨부합니다.
H3는 단일 첫 프레임 I2VA를 사용합니다. 첫 줄은 번역하지 말고 다음 영어 문구와 정확히 일치시켜야 합니다: “For the target video, at 0.00 seconds into the target video, <Picture 1> ([샷 1]에서)은 완전히 참조됩니다."; 빈 줄 뒤에는 세 개의 필드 integrated_multimodal_description, overall_soundscape 및 non_diegetic_music만 사용하세요. 각 독립 파일은 [Shot 1]에서 시작하여 첫 번째 프레임을 고정한 다음 동작, 카메라 움직임 및 결과를 작성합니다. 각 샷마다 하나의 주제 동작만 배열됩니다. 음악 필드의 기본값은 N/A입니다.
대사는 (S1) Amu와 (S2) Grandma를 사용하고, 음색 설명은 레이블 외부에, 대사는 내부에 있습니다.<d>[Chinese]台词。</d>안에 작성하고 각 대사는 중국어 12자 이내로 제한하세요. 환경음 전용 버전에서는 대사를 생략합니다.
캐릭터, 의상, 조명 위치, 시선과 소포 전달 위치를 일관되게 유지하세요. 제작 내용만 출력하세요.- 프로젝트 디렉터리가 생성되었고 해당 플랫폼에 대한 워크플로 파일이 저장되었습니다.
STEP 03 / 15
Windows: Ollama를 설치하고 NVIDIA 버전의 ComfyUI 압축을 풉니다.
이하 균일하게 사용 D:\AI. D 드라이브가 없으면 이 글을 모두 복사하세요. D:\AI 공간이 충분한 디렉토리로 변경하십시오. 먼저 NVIDIA 드라이버를 업데이트한 다음 PowerShell에서 하나씩 실행하세요. 설치 프로그램이 나타나면 인터페이스를 따라 설치를 완료하세요.
New-Item -ItemType Directory -Path 'D:\AI' -Force | Out-Null
Set-Location 'D:\AI'
curl.exe -L --fail --retry 3 -o OllamaSetup.exe https://ollama.com/download/OllamaSetup.exe
.\OllamaSetup.exe
curl.exe -L --fail --retry 3 -o ComfyUI_windows_portable_nvidia.7z https://github.com/Comfy-Org/ComfyUI/releases/download/v0.43.0/ComfyUI_windows_portable_nvidia.7z완전한 감압
7-Zip으로 압축을 풀고 존재하는지 확인하세요.
D:\AI\ComfyUI_windows_portable\ComfyUI\main.py그리고python_embeded\python.exe. 압축된 패키지로 실행하지 마세요.첫 번째 시작
더블클릭
run_nvidia_gpu.bat. 터미널이 나타납니다http://127.0.0.1:8188마지막으로 브라우저에서 이 로컬 주소를 열고 터미널을 열어두세요.작동 장비를 확인하세요
시작 로그는 NVIDIA RTX 4090/CUDA를 식별해야 합니다. CPU만 있는 경우 드라이버 또는 패키지 아키텍처 문제를 먼저 해결하십시오. AMD, ARM 또는 이전 CUDA 호환 패키지를 다운로드하지 마세요.
표준 Portable에는 이미 Python과 그에 맞는 런타임이 포함되어 있습니다. 이 기사에서는 전체 CUDA 툴킷을 설치할 필요가 없습니다. 먼저 다음 명령을 사용하여 Ollama의 클라우드 기능을 끈 다음 트레이를 종료하고 Ollama를 다시 엽니다.
[Environment]::SetEnvironmentVariable('OLLAMA_NO_CLOUD','1','User')- Ollama가 설치되었습니다. ComfyUI 기본 페이지를 열 수 있으며 시작 로그에서 NVIDIA GPU를 식별합니다.
STEP 04 / 15
Ollama: 정확한 태그 가져오기, 캐릭터 설정 및 스토리보드 생성
그냥 입력하지 마세요 qwen3 또는 latest: 본 글의 30.5B 모델과 동일하지 않습니다. 새 PowerShell을 열고 다음을 실행합니다.
ollama pull qwen3:30b-a3b-instruct-2507-q4_K_M
ollama run qwen3:30b-a3b-instruct-2507-q4_K_M대화 진입 후 먼저 입력하세요. /set parameter num_ctx 8192, 다음 생산 프롬프트 단어를 복사합니다. 이 Instruct 태그는 비사고 모드입니다.
로컬 도구로 3D 애니메이션 단편을 제작하는 감독으로서 30초 오리지널 단편 「늦게 도착한 소포」의 실행 가능한 제작표를 작성하세요.
고정 자산: 아무, 짧은 밤색 머리, 갈색 눈, 후드를 내린 주황색 우비, 남색 크로스백, 어두운 부츠. 크라프트지 소포와 빨간 리본. 따뜻한 노을의 작은 마을 기차역 승강장. 빛은 화면 왼쪽에서 들어오며 벤치는 오른쪽입니다.
각 5초의 6개 샷: 승강장에서 낙담한 아무→바람에 소포의 빨간 리본이 들림→리본을 따라 오른쪽 벤치를 바라봄→기다리던 할머니가 벤치에 나타남→아무가 소포를 건넴→할머니가 소포에서 작은 목도리를 꺼내 아무에게 주며 반전을 완성합니다.
먼저 캐릭터와 장면 자산표를 출력하세요. 이어서 샷 번호, 5초 길이, 샷 크기, 첫 프레임 구도, 주요 동작 하나, 카메라 위치와 미세한 움직임, 소품·시선 연결, 환경음, 선택적 짧은 대사, 검수 기준을 담은 6샷 표를 작성하세요.
샷마다 영어 레이아웃 이미지 프롬프트, Qwen 첫 프레임 편집 프롬프트, H3 영상 프롬프트를 출력하세요. 참조 이미지 1은 해당 샷의1344×768 레이아웃이며 이미지 2는 캐릭터 참조입니다. 다인물 샷에는 동일한 할머니 참조도 첨부합니다.
H3는 단일 첫 프레임 I2VA를 사용합니다. 첫 줄은 번역하지 말고 다음 영어 문구와 정확히 일치시켜야 합니다: “For the target video, at 0.00 seconds into the target video, <Picture 1> ([샷 1]에서)은 완전히 참조됩니다."; 빈 줄 뒤에는 세 개의 필드 integrated_multimodal_description, overall_soundscape 및 non_diegetic_music만 사용하세요. 각 독립 파일은 [Shot 1]에서 시작하여 첫 번째 프레임을 고정한 다음 동작, 카메라 움직임 및 결과를 작성합니다. 각 샷마다 하나의 주제 동작만 배열됩니다. 음악 필드의 기본값은 N/A입니다.
대사는 (S1) Amu와 (S2) Grandma를 사용하고, 음색 설명은 레이블 외부에, 대사는 내부에 있습니다.<d>[Chinese]台词。</d>안에 작성하고 각 대사는 중국어 12자 이내로 제한하세요. 환경음 전용 버전에서는 대사를 생략합니다.
캐릭터, 의상, 조명 위치, 시선과 소포 전달 위치를 일관되게 유지하세요. 제작 내용만 출력하세요.로컬 API를 직접 호출할 수 있습니다.
Ollama를 계속 실행하면 다음 요청이 이 시스템으로만 전송됩니다. 127.0.0.1:11434。keep_alive=0 이 답변 후에 모델을 언로드하여 그림 단계를 위한 공간을 확보하십시오.
$storyRequest = @{
model = 'qwen3:30b-a3b-instruct-2507-q4_K_M'
messages = @(@{role='user'; content='为原创3D动画短剧写6个镜头。角色是橙色雨衣、短栗色头发、深蓝斜挎包的阿木;每镜只安排一个主要动作,列出首帧、运镜和环境声。'})
stream = $false
keep_alive = 0
options = @{num_ctx=8192; temperature=0.7}
} | ConvertTo-Json -Depth 8
$storyResult = Invoke-RestMethod -Uri 'http://127.0.0.1:11434/api/chat' -Method Post -ContentType 'application/json; charset=utf-8' -Body ([Text.Encoding]::UTF8.GetBytes($storyRequest))
$storyResult.message.content대화형 대화 종료 입력 /bye. 그리기 전에 텍스트 모델이 더 이상 존재하지 않는지 확인하십시오.
ollama stop qwen3:30b-a3b-instruct-2507-q4_K_M
ollama ps- 스토리보드와 캐릭터 설정이 저장됩니다. 기본 API가 응답하고 Ollama는 이미지가 생성되기 전에 모델을 출시합니다.
STEP 05 / 15
Qwen-Image-2.1: 파일 3개를 다운로드하고 캐릭터 참조 이미지 만들기
대략 3개의 파일이 있습니다. 16.10GiB. 아래 단락 전체를 PowerShell에서 실행하고 Portable의 올바른 모델 범주 디렉터리에 저장하세요. 반복 실행하면 동일한 이름의 파일이 다시 다운로드됩니다. 다운로드에 실패하면 오류가 먼저 처리되고 파일 확장자는 수정되지 않습니다.
$comfyRoot = 'D:\AI\ComfyUI_windows_portable\ComfyUI'
$modelRepo = 'Comfy-Org/Qwen-Image-2.1'
$modelFiles = @(
'diffusion_models/qwen_image_2.1_int8_convrot.safetensors'
'text_encoders/qwen3vl_8b_int8_convrot.safetensors'
'vae/qwen_image_2.1_vae_bf16.safetensors'
)
foreach ($modelFile in $modelFiles) {
$destination = Join-Path (Join-Path $comfyRoot 'models') $modelFile
New-Item -ItemType Directory -Path (Split-Path $destination) -Force | Out-Null
curl.exe -L --fail --retry 3 --output $destination "https://huggingface.co/$modelRepo/resolve/main/$modelFile"
if ($LASTEXITCODE -ne 0) { throw "下载失败,请先处理:$modelFile" }
}다운로드 후 ComfyUI를 다시 시작하고 이 사이트의 Windows 캐릭터 참조 워크플로를 가져오세요. 생성기, 인코더, VAE 드롭다운에 방금 받은 파일이 선택되어 있는지 확인하고 refine_prompt 닫기, 프롬프트 단어 확장기 PE는 필수 모델이 아닙니다.
| 설정 | 최종 캐릭터 참조 이미지 |
|---|---|
| 해상도/배치 | 1024 × 1024 / 1 |
| steps / CFG | 40 / 1(빠른 구도 미리보기를 위한 25단계) |
| sampler / scheduler | euler / simple |
| seed | 연속적인 비교를 용이하게 하기 위해 숫자를 수정하고 저장합니다. |
| 출력 | 이미지 저장 PNG 저장, 하나를 01_character/에 복사 |
긍정적인 신호 단어는 아래에 복사되어 있습니다. CFG=1이면 부정적인 신호 단어는 CFG 안내를 생성하지 않습니다. 아이덴티티, 구성, 소재를 명확하게 기재하는 것을 우선으로 합니다.
Original stylized cinematic 3D animation character, Amu, a young courier boy with short chestnut hair, warm brown eyes, rounded expressive face, orange raincoat with hood down, navy crossbody satchel, dark boots. Full-body three-quarter character portrait, both hands visible, neutral warm-grey studio background, clear silhouette, soft cinematic key light, subtle subsurface skin, tactile woven fabric, physically plausible materials, restrained filmic color. One character, clean studio composition.- 얼굴형, 손, 의상 등을 검사한 캐릭터의 마스터 이미지가 생성되어 저장되었습니다.
STEP 06 / 15
구도를 먼저 만들고 캐릭터 참조로 샷별 첫 프레임 고정하기
첫 프레임에서 캐릭터와 구도를 결정합니다. 같은 화면 비율의 레이아웃 이미지와 캐릭터 참조 이미지를 함께 사용해 샷을 먼저 구성한 뒤 정확한 캐릭터 정체성을 반영하세요.
미러 레이아웃 생성
캐릭터 참조용 텍스트-투-이미지 워크플로를 열고 Resolution Selector를 다음으로 변경하세요: 16:9、0.98MP、multiple=32, 출력을 확인 1344×768. 아래의 레이아웃 프롬프트 단어로 바꾸고 다른 이름으로 저장하세요.
shot01-layout.png. 레이아웃은 장면, 위치, 제스처 및 소품을 담당합니다.참조 지도에 액세스
"첫 번째 프레임 편집"을 가져옵니다.
image_1새로 생성된 1344×768 레이아웃을 업로드합니다.image_2승인된 업로드amu-character.png. 후자는 얼굴, 의복 및 재료를 구체적으로 제한합니다. 캔버스에 있는 두 개의 이미지 로드 노드에서 해당 인터페이스를 연결합니다.레이아웃 프레임 유지
유지하다
resolution=0、custom_size=false, 40단계, CFG=1, 오일러 / 단순,refine_prompt=false, 아래의 편집 팁 단어를 사용하세요. 구성 미리보기를 위한 25단계. 출력 크기는 image_1의 1344×768을 따릅니다.렌즈별 수용 및 보관
순차적으로 저장
shot01.png에shot06.png. 캐릭터 참조와 얼굴형, 머리색, 의상, 가방 끈과 부츠를 비교하세요. 손가락, 소품과의 접촉, 발밑 그림자를 확대 확인하고 시선, 소포 위치와 조명을 점검합니다. 현재 샷의 구도 설명을 수정해도 참조 캐릭터의 정체성 제약은 유지하세요.
Stylized cinematic 3D animation opening frame, quiet small-town train platform at golden hour. A young courier boy with short chestnut hair, orange raincoat with hood down, navy crossbody satchel and dark boots stands on the left third, holding a small kraft-paper parcel with a red ribbon at chest height, looking toward the right. Medium-wide eye-level composition, warm sunlight from screen left, wooden bench in the background to the right, coherent tactile materials, clear hand and parcel silhouettes. Clean composition with open space on the right.Use <image1> as the exact composition, camera, canvas and station layout. Use <image2> as the identity and outfit reference for Amu. Replace only the boy in <image1> with this same Amu: exact face, short chestnut hair, orange raincoat with hood down, navy crossbody satchel and dark boots from <image2>. Keep the parcel with its red ribbon, hand positions, gaze direction, warm light from screen left and the bench on screen right. Match the stylized 3D materials from <image2>. Preserve the width and height of <image1>.검증 영상 역시 너비와 높이가 동일한 첫 번째 프레임의 복사본을 사용합니다. 저해상도 검증의 경우 비례적으로 크기를 조정하고 가장자리를 864×480으로 중앙에 배치합니다. 고품질 파일에는 1344×768 메인 이미지를 직접 사용하십시오. 각 촬영 후에 PNG, 프롬프트 단어, 시드 및 JSON을 저장하세요. 이미지 모델을 출시하기 위해 동영상을 만들기 전에 ComfyUI를 다시 시작하세요.
- 6개 샷 중 첫 번째 프레임의 프레임이 동일하고 캐릭터 참조가 정확하며 신원, 손, 소품 및 샷 연속성이 모두 확인되었습니다.
STEP 07 / 15
H3: 로컬 이미지-투-비디오 모델을 다운로드하고 API 노드는 사용하지 않기
Windows 5종 패키지 39.14GiB. 비디오 VAE와 오디오 VAE가 모두 필요합니다. 템플릿 모델 검사 및 후속 비교를 용이하게 하기 위해 8단계 LoRA가 함께 준비되어 있지만 이 기사에서는 먼저 터보 끄기。
$comfyRoot = 'D:\AI\ComfyUI_windows_portable\ComfyUI'
$modelRepo = 'Comfy-Org/MiniMax-H3'
$modelFiles = @(
'diffusion_models/minimax_h3_fl2va_pruned_int8_convrot.safetensors'
'text_encoders/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors'
'vae/minimax_h3_video_vae_int8_convrot.safetensors'
'vae/minimax_h3_audio_vae_fp32.safetensors'
'loras/minimax_h3_fl2v_turbo_8step_v1.0_comfyui_bf16.safetensors'
)
foreach ($modelFile in $modelFiles) {
$destination = Join-Path (Join-Path $comfyRoot 'models') $modelFile
New-Item -ItemType Directory -Path (Split-Path $destination) -Force | Out-Null
curl.exe -L --fail --retry 3 --output $destination "https://huggingface.co/$modelRepo/resolve/main/$modelFile"
if ($LASTEXITCODE -ne 0) { throw "下载失败,请先处理:$modelFile" }
}ComfyUI를 다시 시작하고 Windows 영상 검증용 워크플로를 가져오세요. Load Image에서 자신의 첫 프레임을 다시 업로드합니다. 이미지-투-비디오 하위 그래프와 Save Video의 연결을 유지하세요. 클라우드 API 키를 요구하면 잘못된 노드를 선택한 것입니다.
- 5개 모델이 올바른 디렉토리에 있고 워크플로에서 이를 인식할 수 있으며 입력은 첫 번째 프레임입니다.
STEP 08 / 15
먼저 확인을 수행한 다음 기본 768p 품질 파일로 업그레이드하세요.
하나의 주요 액션을 원샷으로 배열하고, 우선 5초 정도로 조절합니다. 외층 Resolution Selector 연결선은 하위 사진의 너비와 높이를 덮습니다. 하위 사진 번호만 변경하면 적용되지 않습니다.
| 매개변수 | 검증파일 | 형식적인 품질의 파일 |
|---|---|---|
| 외부 측면 | 16:9 (Widescreen) | 16:9 (Widescreen) |
| megapixels / multiple | 0.4 / 32 | 0.98 / 32 |
| 실제 너비와 높이 | 864 × 480 | 1344 × 768 |
| duration / batch | 5 / 1 | 5 / 1 |
| Turbo / steps | false / 20 | false / 20 |
| 부트스트랩 및 코딩 | 기본 BasicGuider 유지, 24fps | 기본 BasicGuider 유지, 24fps |
바깥 설정을 0.98MP / multiple=32로 유지하면 1344×768로 출력됩니다. 1.0MP는 더 큰 정렬 캔버스를 선택합니다. Turbo=false이면 Base의 20스텝 분기를 실행하며, 사용하지 않는 Turbo 분기의 고정 숫자는 이번 샘플링에 영향을 주지 않습니다.
For the target video, at 0.00 seconds into the target video, <Picture 1> (from [Shot 1]) is fully referenced.
integrated_multimodal_description: [Shot 1] Stylized cinematic 3D animation, the opening medium-wide composition matches <Picture 1>. Amu keeps the same face, short chestnut hair, orange raincoat, navy satchel and dark boots. He holds the red-ribbon parcel steadily at chest height and looks toward the empty platform on screen right; his shoulders slowly settle in disappointment. The camera pushes in with small amplitude at slow speed. Warm sunlight stays on screen left and the wooden bench remains on screen right. The shot follows one continuous restrained movement.
overall_soundscape: A distant train fades into a soft station hum. A light breeze brushes the coat fabric.
non_diegetic_music: N/A프롬프트 단어는 "첫 번째 프레임 → 동작 → 소리"에 따라 구성됩니다.
위의 첫 번째 행은 0초의 첫 번째 프레임에 고정됩니다.integrated_multimodal_description 캐릭터 움직임, 카메라 위치 및 대화를 작성합니다.overall_soundscape 환경 소리와 동작 소리를 작성합니다.non_diegetic_music 사운드트랙을 작성할 때 이 영화가 먼저 채워집니다. N/A. 샷이 생성될 때마다 샷 번호는 다음에서 시작됩니다. [Shot 1] 시작하세요.
세 번째 장면에서 대화를 하려면 먼저 장면의 첫 번째 프레임으로 변경한 다음 아래 예를 사용하세요. 보컬 설명과 (S1) 라벨 바깥쪽에 붙이고 중국어 라인을 넣어주세요 <d>[Chinese]…</d>. 한 장면의 짧은 대화와 마지막 표현.
For the target video, at 0.00 seconds into the target video, <Picture 1> (from [Shot 1]) is fully referenced.
integrated_multimodal_description: [Shot 1] Stylized cinematic 3D animation, the opening medium-wide composition matches <Picture 1>. Amu keeps the same face, short chestnut hair, orange raincoat, navy satchel and dark boots. He holds the red-ribbon parcel steadily at chest height and lifts his eyes toward the bench on screen right. Amu, a young boy with a clear warm mid-high voice and unhurried Mandarin delivery (S1), says: <d>[Chinese] 还在等我?</d> His expression shifts from disappointment to curiosity. The camera pushes in with small amplitude at slow speed. Warm sunlight stays on screen left and the wooden bench remains on screen right. The shot follows one continuous restrained movement.
overall_soundscape: A distant train fades into a soft station hum. A light breeze brushes the coat fabric.
non_diegetic_music: N/A여러 장면에서 음색을 통일해야 할 경우 15단계의 전체 로컬 더빙 트랙을 사용하십시오. 샷 내의 H3 대화는 립싱크 및 리듬 데모에 사용될 수 있습니다. 캐릭터 ID는 프롬프트 단어의 화자 참조를 담당하고 연속 더빙 트랙은 최종 음색을 담당합니다.
먼저 확인해보세요
프레임과 일치하는 첫 번째 프레임을 업로드하고 위의 프롬프트 단어를 입력한 후 실행을 클릭하고 터미널의 진행 상황을 관찰합니다. 첫 번째 실행에서는 인코더, 생성기 및 VAE의 로딩이 순차적으로 완료됩니다. 단말은 스테이지 진행 상황을 지속적으로 표시해야 하며, 비디오 메모리 및 시스템 메모리와 결합하여 실행 상태를 관찰해야 합니다.
출력을 확인하세요
다음 위치에 비디오 저장
ComfyUI/output/video/. 전체 구간에 블랙 프레임, 캐릭터 드리프트, 손 변형, 배경 점프가 있는지, 주변 소리가 정상적인지 확인하세요.품질을 다시 향상시키세요
검증용 워크플로가 통과하면 화질용 워크플로를 가져와 첫 프레임을 다시 선택하고 모델 드롭다운을 확인하세요. OOM이 발생하면 0.4MP, batch=1로 돌아가 다른 GPU 작업을 중지하세요. 처음부터 15초 영상을 생성하지 마세요.
- 검증 파일은 오디오 및 비디오 출력을 완료하고 품질 파일은 프레임별로 캐릭터, 손, 움직임 및 배경 확인을 통과합니다.
STEP 09 / 15
Mac: Apple Silicon, 독립 실행형 Python 환경 및 기본 페이지 준비
Mac 경로 사용 Apple Silicon + macOS 15 이상, 균일하게 설치 ~/AI. Max급 칩과 128GB 통합 메모리를 탑재하여 풀 768p 제작이 계획되어 있습니다. 텍스트, 사진 및 비디오가 순차적으로 실행되고 각 단계가 끝날 때 모델이 출시됩니다. 검증 파일은 먼저 엔진과 경로를 확인합니다.
먼저 터미널에서 개발 도구 설치를 실행하고 시스템 팝업 창을 완료한 후 계속 진행합니다.
xcode-select --installHomebrew가 설치되어 있는 경우 첫 번째 단계를 건너뜁니다. 메시지에 따라 초기 설치를 확인하고 설치 프로그램에서 제공한 PATH 설정을 완료합니다. Apple Silicon은 일반적으로 아래 두 번째 줄을 사용하여 현재 터미널 환경을 로드할 수 있습니다.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
eval "$(/opt/homebrew/bin/brew shellenv)"
brew install python@3.12 ffmpeg ollama
mkdir -p ~/AI
cd ~/AI
git clone --branch v0.43.0 --depth 1 https://github.com/Comfy-Org/ComfyUI.git
cd ComfyUI
python3.12 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
python -m pip install torch torchvision torchaudio
python -m pip install -r requirements.txt
python -c "import torch; print('MPS:', torch.backends.mps.is_available()); print(torch.ones(1, device='mps'))"MPS는 True여야 하며 텐서는 표시되어야 합니다. device='mps:0'. 실패하면 먼저 시스템, Python 아키텍처 및 종속성을 처리하고 CUDA 설치 명령을 사용하지 마십시오. 그런 다음 시작하십시오.
cd ~/AI/ComfyUI
source .venv/bin/activate
python main.py --cpu-vae브라우저가 열립니다 http://127.0.0.1:8188. 이 문서의 Mac 이미지는 CPU VAE 호환 경로를 사용하므로 디코딩 속도가 느려집니다. 발전기는 여전히 MPS를 사용할 수 있습니다. 터미널은 계속 열려있습니다.
- Mac의 MPS 검사가 성공하고 ComfyUI 기본 페이지가 열리고 ffmpeg / ffprobe를 사용할 수 있습니다.
STEP 10 / 15
Mac Ollama: 로컬 서비스, 동일하고 정확한 태그 및 API
이미 Ollama 앱이나 서비스가 실행 중이라면 먼저 설정하세요. launchctl setenv OLLAMA_NO_CLOUD 1을 누른 다음 완전히 종료하고 앱을 다시 엽니다. 로컬 탭을 사용하여 확인하세요. 두 번째 서비스 인스턴스를 반복적으로 시작하지 마십시오. CLI를 처음 사용할 때 터미널에서 실행합니다.
OLLAMA_NO_CLOUD=1 ollama serve서비스 터미널을 열어두고 새 터미널을 열어 모델을 가져와 실행합니다. 대화 입력을 입력하세요 /set parameter num_ctx 8192을 클릭한 다음 4단계에서 전체 스토리보드 프롬프트를 복사합니다.
ollama pull qwen3:30b-a3b-instruct-2507-q4_K_M
ollama run qwen3:30b-a3b-instruct-2507-q4_K_MMac 네이티브 API 요청
curl --fail http://127.0.0.1:11434/api/chat -H 'Content-Type: application/json' -d '{"model":"qwen3:30b-a3b-instruct-2507-q4_K_M","messages":[{"role":"user","content":"为原创3D动画短剧写6镜分镜。主角阿木穿橙色雨衣、背深蓝斜挎包,每镜仅一个主要动作,保持同一角色。"}],"stream":false,"keep_alive":0,"options":{"num_ctx":8192,"temperature":0.7}}'JSON을 반환합니다. message.content 가 생성된 내용입니다. 프로젝트 폴더에 저장하고 이미지나 영상을 만들기 전에 모델이 메모리에서 언로드되었는지 확인하세요:
ollama stop qwen3:30b-a3b-instruct-2507-q4_K_M
ollama ps- Mac의 텍스트 서비스와 API는 로컬 주소를 사용하고 스토리보드가 저장되었으며 모델이 출시되었습니다.
STEP 11 / 15
Mac 이미지는 BF16을 사용하며 Windows CUDA 양자화 패키지를 재사용하지 않습니다.
이미지 생성기는 약 14.23GB, 인코더는 약 17.53GB, VAE는 약 0.68GB입니다. 전체 크기는 대략 32.44GB 다운로드; 실행하려면 추가 메모리가 필요합니다. 별도의 다운로드 도구 환경을 사용하고 다운로드 도구를 ComfyUI에 혼합하지 마십시오.
python3.12 -m venv ~/AI/hf-tools
~/AI/hf-tools/bin/python -m pip install --upgrade huggingface_hub
~/AI/hf-tools/bin/hf download Comfy-Org/Qwen-Image-2.1 diffusion_models/qwen_image_2.1_bf16.safetensors text_encoders/qwen3vl_8b_bf16.safetensors vae/qwen_image_2.1_vae_bf16.safetensors --local-dir ~/AI/ComfyUI/modelsComfyUI를 다시 시작하고 Mac 캐릭터 참조 및 첫 프레임 편집 워크플로를 가져오세요. BF16 파일과 전용 VAE를 선택하고 refine_prompt를 끕니다. Windows의 INT8 ConvRot 또는 H3 NVFP4 패키지를 MPS 구성에 사용하지 마세요.
5·6단계와 같은 캐릭터 참조 프롬프트, 40스텝, CFG=1, 고정 seed로 캐릭터와 첫 프레임을 만드세요. 빠른 구도 미리보기에는 25스텝을 사용합니다. 이미지를 승인한 후 Ollama를 중지하고 Ctrl+C ComfyUI를 닫고 H3 엔진을 구성한 다음 다시 시작하여 통합 메모리에 대한 이미지 모델과 비디오 프로세스 간의 경합을 피하십시오.
- Mac에서 캐릭터와 첫 번째 프레임을 생성했습니다. 영상 시작 전 이미지 모델이 공개되었습니다.
STEP 12 / 15
Mac 비디오: 기본 Metal 엔진 컴파일, FL2VA만 다운로드
맥의 경우 h3.c 네이티브 C/Metal 엔진, 다음 단계에서 동일한 ComfyUI를 받습니다. 이것은 커뮤니티 고급 경로입니다. FL2VA 원래 무게 약. 144.05GB / 134.16GiB, Windows 양자화 패키지와는 다릅니다.
cd ~/AI
git clone https://github.com/antirez/h3.c.git
cd h3.c
git checkout 8974cc055ea9c02fcd14cc27dfda3e1027c05153
make -j8
./h3 --help
ffmpeg -version
ffprobe -version실행 시 동일한 디렉토리에 있어야 하는 전체 h3.c 디렉토리를 유지하십시오. h3_shaders.metal. 이전 단계에서 hf-tools를 계속 다운로드합니다.
~/AI/hf-tools/bin/hf download MiniMaxAI/MiniMax-H3 --revision 42ed227ee7df40d41602854ae760620d6eb651fe --include 'FL2VA/*' 'model_index.json' --local-dir ~/AI/h3.c/MiniMax-H3
cd ~/AI/h3.c
./h3 --info -d ./MiniMax-H3올바른 구조는 다음과 같습니다. MiniMax-H3/FL2VA/transformer、text_encoder、tokenizer、processor、video_vae、audio_vae。--info 모델 디렉토리와 디바이스만 확인한다고 해서 영상이 생성된 것은 아닙니다.
- h3이 컴파일되고, ffmpeg가 사용 가능하며, FL2VA 가중치가 완료되고 --info가 인식됩니다.
STEP 13 / 15
로컬 H3를 ComfyUI에 연결: 노드 3개로 이미지-투-비디오 생성
h3 엔진을 로컬로 시작하고 MiniMax 클라우드 API를 호출하지 않는 Wild H3C 브리지의 수정된 버전을 설치합니다.
cd ~/AI/ComfyUI/custom_nodes
git clone https://github.com/skaiy/wild-h3c-comfyui.git
cd wild-h3c-comfyui
git checkout e08057decfe3083a9270b05cac255c0101a7208e
cat > config.json <<'JSON'
{
"h3_binary": "~/AI/h3.c/h3",
"model_dir": "~/AI/h3.c/MiniMax-H3"
}
JSON
cd ~/AI/ComfyUI
source .venv/bin/activate
python main.py --cpu-vae --offlinemodel_dir FL2VA가 포함된 외부 디렉토리를 가리킵니다. config.json을 수정한 후 ComfyUI를 다시 시작합니다. 이 사이트의 "Mac·Video 확인 파일"을 가져오면 연결은 다음과 같습니다.
first_frame→Save Video
| 설정 | 장치 확인 | 형식적인 품질의 파일 |
|---|---|---|
| width × height | 512 × 512 | 1344 × 768 |
| seconds | 1.0 | 5.0 |
| steps / preset | 20 / precise | 50 / precise |
| seed | 42 / fixed | 42 / fixed |
| token_reduction | false | false |
| ssd_streaming | 기본값은 거짓입니다. 용량 부족은 개별적으로 평가 가능 | 기본 거짓; 기계 상태에 따라 평가 |
비율에 맞는 첫 번째 프레임을 업로드하면 비디오 프롬프트 단어는 8단계와 동일하게 유지됩니다. 확인에 성공한 후 품질 수준을 1344×768, 5초, 50단계로 전환합니다.precise=50개 레이어, reuse=1로 설정해 매번 디노이징을 완전히 실행합니다. token_reduction=false를 유지하고 우선 ssd_streaming을 끄세요. Save Video로 MP4 / H.264를 저장합니다.
ComfyUI 노드가 오류를 보고하면 먼저 별도로 찾아보세요.
로컬 엔진 점검을 수행하려면 터미널에서 다음 명령을 사용하십시오. 첫 번째 프레임 경로를 실제 PNG 절대 경로로 바꾸십시오. 자리 표시자 경로를 그대로 사용하면 명령을 실행할 수 없습니다.
cd ~/AI/h3.c
mkdir -p outputs
cat > shot01-prompt.txt <<'PROMPT'
For the target video, at 0.00 seconds into the target video, <Picture 1> (from [Shot 1]) is fully referenced.
integrated_multimodal_description: [Shot 1] Stylized cinematic 3D animation, the opening medium-wide composition matches <Picture 1>. Amu keeps the same face, short chestnut hair, orange raincoat, navy satchel and dark boots. He holds the red-ribbon parcel steadily at chest height and looks toward the empty platform on screen right; his shoulders slowly settle in disappointment. The camera pushes in with small amplitude at slow speed. Warm sunlight stays on screen left and the wooden bench remains on screen right. The shot follows one continuous restrained movement.
overall_soundscape: A distant train fades into a soft station hum. A light breeze brushes the coat fabric.
non_diegetic_music: N/A
PROMPT
./h3 --profile -d ./MiniMax-H3 --first-frame /absolute/path/shot01.png -p "$(cat shot01-prompt.txt)" --width 1344 --height 768 --seconds 5 --steps 50 --layers 50 --reuse 1 --seed 42 -o outputs/shot01.mp4터미널 엔진이 생성 및 브리지할 수 있지만 실패하는 경우 config.json, 첫 번째 프레임 경로, ffmpeg PATH 및 노드 버전을 확인하세요. 브리지가 명령을 찾을 수 없으면 Homebrew 환경이 로드된 터미널에서 ComfyUI를 실행합니다.
- 로컬 엔진과 ComfyUI 워크플로우에는 각각 재생 가능한 비디오 출력이 있으며 사진과 사운드가 확인됩니다.
STEP 14 / 15
로컬 수락을 완료하려면 세 항목을 각각 한 번씩 연결 해제하고 생성해야 합니다.
먼저 모든 모델, 템플릿 및 종속성을 다운로드한 후 다음 확인을 수행하세요.네이티브 API로 답변이 가능하며, 사진이나 영상을 별도로 증명하지 않고도 로컬에서 할 수 있습니다.클라우드 모델 태그나 프리미엄 API 노드는 사용되지 않습니다.
텍스트
네트워크 연결을 끊은 후 정확한 라벨을 사용하여 127.0.0.1:11434에 새 질문을 게시하고 새 답변이 생성되는지 확인하세요. OLLAMA_NO_CLOUD 설정을 유지하고 -cloud 태그를 사용하지 마십시오.
그림
오프라인 상태로 ComfyUI를 다시 시작하고 캐릭터 참조 워크플로를 로드하세요. 새로운 seed로 새 이미지를 생성해 저장하고 이전 캐시 미리보기가 아닌 새 결과인지 확인합니다.
비디오
텍스트 및 이미지 작업을 중지하고, 기본 H3 워크플로를 로드하고, 새 시드를 사용하여 단편을 생성하고, 저장 및 재생한 후, 실제 출력이 있고 원격 요청 종속성이 없는지 확인하세요.
다운로드 완료 후 오프라인 시작 명령
Windows는 휴대용 루트 디렉터리에서 실행됩니다.
Set-Location 'D:\AI\ComfyUI_windows_portable'
.\python_embeded\python.exe -s ComfyUI\main.py --windows-standalone-build --offline터미널에서 실행 중인 Mac:
cd ~/AI/ComfyUI
source .venv/bin/activate
python main.py --cpu-vae --offline| 현상 | 우선순위 확인 |
|---|---|
| 모델이 드롭다운 목록에 없습니다. | 올바른 모델 카테고리에 배치되었는지 여부 확장명과 전체 다운로드가 올바른지 여부 ComfyUI를 다시 시작하세요. |
| 누락된 노드/알 수 없는 노드 | ComfyUI v0.43.0 확인; Windows는 로컬 핵심 워크플로를 사용하고, Mac 비디오에는 Wild H3C가 필요합니다. 가져오기 로그를 보려면 다시 시작하세요. |
| 4090 CUDA OOM | 먼저 Ollama와 다른 GPU 작업을 중지하고 ComfyUI를 다시 시작해 영상 모델만 로드하세요. batch=1, 0.4MP의 짧은 샷으로 돌아가 64GB 시스템 메모리와 페이지 파일의 여유 공간을 확인하세요. |
| 이전 매개변수는 변경되지 않은 것 같습니다. | 이 기사의 기준은 기본적으로 동적 비디오 메모리 관리이며 --lowvram은 일반적인 수정 사항으로 사용되지 않습니다. 외부 해상도 입력과 현재 실행 분기를 확인합니다. |
| Mac 메모리 부족 또는 대규모 스왑 | 먼저 이미지 모델을 해제하고 축소합니다. SSD 스트리밍은 무게 유지 및 로딩 속도를 일부 변경하고 프로세스 피크에 따라 용량을 재배치합니다. |
| Mac에서 h3 또는 ffmpeg를 찾을 수 없습니다 | 컴파일 결과, config.json 외부 디렉터리 및 Homebrew PATH를 확인하세요. 먼저 터미널 진단 명령을 사용하여 해당 위치를 찾으십시오. |
| 불안정한 얼굴, 손, 옷 | 먼저 첫 번째 프레임과 참조 사이의 관계를 수정하고 단발 동작을 단순화한 다음 비교를 위해 시드를 변경합니다. 단지 더 많은 단계를 쌓지 마십시오. |
- 연결이 끊어진 후 텍스트, 사진, 비디오가 별도로 생성되었으며 새로운 결과와 해당 로그가 저장되었습니다.
STEP 15 / 15
30초짜리 장면 6개: 자동 구성, 자막, 믹싱 및 전달
제작 목록에 따라 적격한 6개의 샷을 선택한 후 샷당 120프레임, 전체 영화에 720프레임을 사용하는 30초짜리 영화로 통합했습니다. 최종 제공 사양: 1344×768, 24fps, H.264, 48kHz 스테레오 AAC.
로컬 자동 편집 체인: 영상부터 전달까지
스토리보드를 사용하여 내러티브를 구성하고 자동화를 사용하여 반복 작업을 완료합니다. 6개 샷의 순차적 조립, 자료 지속 시간 확인, 프레임 크기 및 프레임 속도 통일, 더빙 및 믹싱, 말할 때 배경음 자동 억제, 음악 시작 및 끝 페이드, 중국어 음성 자막 변환, 전체 영화 음량 보정 및 내보내기 사양 확인. 모든 오디오 및 비디오 처리와 음성 인식은 기본적으로 실행됩니다.
얼굴 모양, 손, 소품과의 접촉을 프레임별로 확인하세요. 옷, 가방 끈, 인접한 거울의 조명 위치가 시선에 연결됩니다. 검증 파일을 통과한 후 공식 영상은 기본 768p 품질 파일을 사용하여 재생성됩니다.
각 샷은 정보 포인트를 완성하며 이전과 이후의 작업에는 원인과 결과가 있습니다. 짧은 대화는 명확하고 완전한 시작과 끝을 가지고 있습니다. 사람의 목소리가 주변 소리보다 높고, 컷의 볼륨이 부드럽고, 마지막에 표정이 남습니다.
1. 6개의 렌즈로 FFmpeg 준비
Mac은 9단계에서 설치되었습니다. Windows는 PowerShell 설치 후 터미널을 다시 엽니다.
winget install --id Gyan.FFmpeg --exact --source winget품질 파일의 출력을 동일한 폴더에 복사하고 이름을 지정합니다. shot01.mp4 에 shot06.mp4. 각 세그먼트의 길이는 최소 5초 이상이어야 하며 연속 이미지와 완전한 오디오 트랙이 포함되어야 합니다. ComfyUI의 비디오 저장에서 MP4 / H.264를 선택하고 저장합니다. 이 폴더에 다음 스크립트를 다운로드합니다.
2. 통합 음성: 로컬에서 더빙 녹음
같은 배우가 조용한 방에서 전체 대사를 녹음했습니다. Windows용 녹음기 및 Mac용 QuickTime Player → 파일 → 새 오디오 녹음을 사용하세요. 녹음 후 로컬 편집 소프트웨어에서 6개의 샷을 시간에 맞게 정렬하고 정확히 30초의 스테레오 사운드를 내보냅니다. narration.wav, 대사가 없을 때 침묵을 유지합니다. 이 버전의 H3 샷은 주변 소리 프롬프트 단어를 기반으로 생성되며 최종 대화는 전체 더빙에 의해 구성됩니다. 오프닝 대화 거울은 입 모양을 단계별로 맞춰야 하고 내레이션 거울은 입술을 다물고 있어야 합니다.
녹음을 48kHz WAV로 변환해야 하는 경우:
ffmpeg -i voice-recording.m4a -ar 48000 -ac 2 narration.wav자동 중국어 자막: Whisper large-v3-turbo · 809M
정렬 후 30초 동안 809M 매개변수를 사용한 다국어 음성 인식 모델 narration.wav 타임라인을 사용하여 SRT로 변환합니다. 모델은 약 1.62GB이며 첫 번째 다운로드 후 오프라인으로 실행됩니다. Windows와 Mac 모두 독립 실행형 Python 3.12 환경인 CPU INT8을 사용합니다. ComfyUI의 GPU 환경과 별개입니다.
Windows: 먼저 Python 3.12를 설치한 다음 PowerShell을 다시 열고 전용 환경을 만들고 수정된 버전 모델을 다운로드합니다.
winget install --id Python.Python.3.12 --exact --source winget
py -3.12 -m venv D:\AI\subtitle-tools
& 'D:\AI\subtitle-tools\Scripts\python.exe' -m pip install --upgrade pip
& 'D:\AI\subtitle-tools\Scripts\python.exe' -m pip install 'faster-whisper==1.2.1' 'ctranslate2==4.8.4'
& 'D:\AI\subtitle-tools\Scripts\python.exe' -c "from huggingface_hub import snapshot_download; snapshot_download(repo_id='dropbox-dash/faster-whisper-large-v3-turbo', revision='0a363e9161cbc7ed1431c9597a8ceaf0c4f78fcf', local_dir=r'D:\AI\models\whisper-turbo')"Mac: 이전에 설치된 Python 3.12 사용:
python3.12 -m venv ~/AI/subtitle-tools
~/AI/subtitle-tools/bin/python -m pip install --upgrade pip
~/AI/subtitle-tools/bin/python -m pip install 'faster-whisper==1.2.1' 'ctranslate2==4.8.4'
~/AI/subtitle-tools/bin/python -c "from huggingface_hub import snapshot_download; from pathlib import Path; snapshot_download(repo_id='dropbox-dash/faster-whisper-large-v3-turbo', revision='0a363e9161cbc7ed1431c9597a8ceaf0c4f78fcf', local_dir=str(Path.home()/'AI/models/whisper-turbo'))"자막 스크립트를 샷 디렉토리에 배치하고 해당 디렉토리에서 실행하십시오. 윈도우:
& 'D:\AI\subtitle-tools\Scripts\python.exe' .\h3-subtitles-v2.py .\narration.wav .\captions.srt --model 'D:\AI\models\whisper-turbo'Mac:
~/AI/subtitle-tools/bin/python ./h3-subtitles-v2.py ./narration.wav ./captions.srt --model ~/AI/models/whisper-turbo스크립트는 실제 단어 수준 타임스탬프, 일시 중지 및 구두점을 기준으로 제거하고 UTF-8을 출력합니다. captions.srt 와 captions.asr.json. 이름, 문장 일부, 첫 번째/마지막 단어를 교정하는 시간입니다. H3 기본 대화를 사용하는 경우 먼저 프로덕션 스크립트를 사용하여 내보냅니다. rough.mp4, 파일을 식별한 다음 획득한 자막을 최종 버전에 추가합니다. 자막 시간은 최종 30초 타임라인을 기준으로 합니다. Windows에서 CTranslate2 DLL 로딩 오류가 발생하면 Microsoft Visual C++ 2015–2022 x64 런타임을 설치한 후 터미널을 다시 엽니다.
3. 자동 영화 구성, 믹싱, 자막 및 내보내기
나만의 음악 또는 라이선스가 부여된 지역 음악을 준비하세요. music.wav, 길이는 최소 30초입니다. 음악, 정렬된 더빙, 교정 결합 captions.srt 영상 카탈로그에는 6개의 MP4가 있습니다. Windows에서 PowerShell을 열고 Portable에 내장된 Python을 사용하세요.
D:\AI\ComfyUI_windows_portable\python_embeded\python.exe .\h3-finish-v2.py . --narration .\narration.wav --music .\music.wav --srt .\captions.srt --output final.mp4동일한 렌즈 디렉토리에서 실행되는 Mac:
python3.12 ./h3-finish-v2.py . --narration ./narration.wav --music ./music.wav --srt ./captions.srt --output final.mp4필요에 따라 보관 --narration、--music、--srt; 항목을 생략하면 다음 경로와 함께 삭제됩니다. 스크립트는 먼저 입력을 확인한 다음 프레임별로 크기를 조정/채우고, 24fps로 변환하고, 처음 120개 프레임을 사용하고, 오디오 트랙을 48kHz로 통합합니다. 더빙 시 주변 소리와 음악이 자동으로 억제되고, 음악의 시작과 끝 부분이 0.5초씩 페이드됩니다. 전체 필름은 음량을 위해 두 번 처리되며 목표는 약 -16LUFS이고 최대 피크 목표는 -2dBTP입니다. 전환 가능한 중국어 자막 트랙이 포함된 MP4 출력 및 생성 final.report.json, 실제 프레임 수, 지속 시간, 오디오 트랙 수, 자막 및 측정된 음량을 기록합니다. 원본 자료는 유지되며 기존 출력 파일이 있는 경우 새 이름이 사용됩니다.
4. 로컬 타임라인 및 자막 개선: Shotcut
Windows와 Mac은 동일한 기본 편집 인터페이스를 사용합니다. 윈도우 설치:
winget install --id Meltytech.Shotcut --exact --source winget맥 설치:
brew install --cask shotcut건설 프로젝트
Shotcut을 열고 새 프로젝트를 다음 위치에 저장합니다.
04_edit;마스터 변환final.mp4타임라인으로 드래그하세요. 비디오 모드는 마스터 버전과 일치하는 사용자 정의 1344×768, 24fps로 설정됩니다.정렬 및 검사
타임라인 재생 헤드로 각 샷을 확인하고 음성 클립을 움직여 발화 시작과 끝을 맞추세요. 전체 음성 트랙을 WAV 형식의 narration.wav로 내보내 완성본 스크립트에 전달합니다. 자막은 마스터에서 다듬고 화면당 두 줄 이내로 하여 얼굴과 중요한 소품을 가리지 않도록 하세요.
자막 추가
열다 보기/보기 → 자막/자막, 새 자막 트랙을 만들고, 줄을 추가하고, 시작 및 종료 시간을 설정하세요. SRT가 있는 경우 자막 패널을 통해 가져옵니다. 이름, 오타, 문장 조각화 및 입 패턴을 교정하고 별도의 SRT 파일을 먼저 내보냅니다.
굽고 내보내기
타임라인에서 출력 / 출력 추가하다 Subtitle: Burn In 필터를 적용하고 자막 트랙과 글꼴을 선택합니다. H.264 MP4로 내보내기 전에 자막을 확인하기 위한 미리보기가 표시되며 1344×768, 24fps 및 48kHz 오디오 트랙을 유지합니다. 계속해서 조정할 수 있도록 Shotcut 프로젝트를 저장하세요.
최종 버전을 전체 화면으로 플레이하세요. 얼굴과 손, 모든 대화 줄, 첫 번째와 마지막 검은색 프레임, 전환 및 음성 해설을 살펴보세요. 원본 영상, PNG, 프롬프트, 워크플로, 녹음, SRT 및 편집 세션을 함께 보관하세요.
- 30초 마스터가 내보내졌고, 720프레임/24fps/48kHz 오디오 트랙이 검사를 통과했으며 화면, 대화, 자막 및 렌즈 연속성 승인이 완료되었습니다.
버전 기준: 2026-10-28 · ComfyUI v0.43.0 · Windows CUDA/Mac Metal. 세 가지 지역 미스터리가 6개 장면의 제작 시트를 바탕으로 30초짜리 단편 애니메이션을 완성합니다.
자주 묻는 질문
촬영 시작 전과 촬영 후 몇 가지 질문
영화 같은 느낌의 3D 애니메이션 단편 드라마를 만드는 방법은 무엇일까요?
캐릭터 참조, 장면 레이아웃, 첫 프레임 편집, 샷 생성, 후보 선택, 음성 통일 순서로 제작하세요. 얼굴형과 재질을 먼저 고정하고 조명, 시선과 소품 위치를 맞춘 뒤 편집으로 정보와 감정을 구성합니다. 2단계의 6샷 제작표를 전 과정에 사용하세요.
세 사람이 로컬에서 어떻게 협력하나요?
Qwen3은 127.0.0.1:11434에서 로컬 텍스트 API를 제공합니다. Qwen-Image-2.1은 ComfyUI에서 문자와 첫 번째 프레임을 생성합니다. H3는 동일한 ComfyUI에서 오디오와 비디오를 완성합니다. Windows는 CUDA 코어 노드를 사용하고 Mac은 기본 Metal 엔진 브리지를 사용합니다. 모델을 다운로드한 후 14단계에 따라 연결 해제 수락을 진행하세요.
4090의 비디오 메모리를 할당하는 방법은 무엇입니까?
텍스트, 사진, 동영상이 단계별로 실행됩니다. 텍스트가 완성된 후 ollama stop이 모델을 출시합니다. 첫 번째 프레임이 완료된 후 ComfyUI를 다시 시작한 다음 비디오 워크플로만 로드하세요. 64GB 시스템 메모리와 NVMe가 장착되어 기본 메모리 관리를 사용하여 인코더 및 생성기의 분할된 로딩을 완료합니다.
Mac 품질 파일에는 어떤 매개변수가 사용됩니까?
Max급 Apple Silicon과 128GB 통합 메모리를 기준으로 구성합니다. H3 화질 설정은 1344×768, seconds=5, 50스텝, precise, token_reduction=false입니다. precise는 50개 레이어와 reuse=1에 해당합니다. 먼저 512×512 검증 설정으로 엔진, 경로, 영상 및 음성 출력을 확인하세요.
H3의 33B, 20B, 32B는 무엇입니까?
33B는 원래의 밀도 생성기입니다. AdaLN 부분의 ~13B와 생성기 추론 부분의 ~20B를 미리 계산하고 클리핑할 수 있습니다. 32B는 독립 인코더입니다. 다운로드 및 실행 용량에는 생성기, 인코더, VAE 및 작업 메모리를 고려해야 합니다.
5초 분량의 영상이 120프레임으로 잘리는 이유는 무엇입니까?
모델의 시간 격자는 17k+5프레임입니다. 이 가이드의 seconds=5 설정은 124프레임, 약 5.17초의 영상을 생성합니다. 편집 단계에서 각 샷을 120프레임으로 맞추면 6개 샷은 720프레임, 24fps 기준 30초가 됩니다.
장면 전체에서 캐릭터와 음성의 일관성을 어떻게 유지합니까?
같은 캐릭터 참조 이미지에서 모든 첫 프레임을 편집하고 의상, 재질과 조명을 고정한 뒤 샷별로 확인하세요. 같은 배우의 로컬 음성 트랙 하나로 대사 음색을 통일하고 타임라인에서 영상과 맞춥니다. 고정 seed는 후보 비교용이며 캐릭터 정체성은 참조 이미지와 샷별 검수로 관리합니다.