데모 비디오 스튜디오은(는) 무엇을 하나요?
실행 중인 웹 앱을 정교한 데모 영상으로 변환합니다: 실제 녹화된 상호작용(슬라이드쇼나 모의 데이터 아님) + 로컬 TTS 내레이션 + 단어 동기 자막 + 조용한 배경 음악, HyperFrames로 결정론적으로 합성합니다.
사용 시기
웹 앱의 데모/워크스루/제품/런칭/해커톤 비디오를 만들 때, 특히 실제 제품이 실행되는 모습을 내레이션과 자막과 함께 보여주어야 할 때 사용합니다. 배포된 URL이나 로컬 개발 서버를 녹화합니다.
파이프라인
① 녹화 세 가지 엔진 중 하나 (아래 참조) → out/*.mp4|webm
② 내레이션 장면별 음성 대본 작성 → Kokoro TTS (로컬) → narration/*.wav
③ 전사 Whisper 단어 수준 타임스탬프 → *.transcript.json
④ 자막 구로 그룹화 + 브랜드 오인 수정 → captions.js
⑤ 음악 ffmpeg 배경 음악 (음성 아래 낮은 볼륨으로 믹스) → music/bed.wav
⑥ 합성 HyperFrames HTML 단일 타임라인: 클립+음성+자막+음악 → MP4
① 세 가지 엔진 — 대상에 따라 선택 (참고자료/screen-studio-look.md):
| 대상 | 엔진 | 스타일 |
|---|---|---|
| 웹/데스크탑 앱, macOS | Cap CLI — scripts/record-cap.mjs | Screen Studio 네이티브: 실제 클릭에서 자동 줌, 스프링 커서 + 모션 블러, 배경화면/모서리 둥글림/그림자, GPU 렌더링 |
| CLI 도구 | VHS 테이프 → mp4 | 스타일링된 터미널 (패딩, 여백 채움, 테두리 반경, 윈도우 바), 결정론적 |
| 헤드리스 / CI / Linux | Playwright — scripts/record.mjs | 합성 커서 + 리플; <scene>.events.json 기록 (타임스탬프 + 좌표) — 추후 줌 합성용 |
어떤 엔진으로 녹화하든, 출력은 단지 ②~⑥ 단계에 공급될 클립입니다. 녹화와 합성은 독립적이므로, 한 장면을 다시 녹화하거나 내레이션을 다시 실행해도 다른 단계에 영향을 주지 않습니다. 코드로 생성된 GIF 트랙 (HTML 장면을 녹화 없이 MP4로 직접 렌더링)은 문서 페이지용 선택적 부가 경로입니다.
워크플로우
- 사용자와 함께 엔진을 선택하세요 — 절대 혼자 결정하지 마세요. 실제 프로젝트(웹 앱? CLI? 데스크탑? 이 머신에 GUI 세션이 있나요? CI에서 실행해야 하나요?)를 살펴본 후, 이 특정 프로젝트에 대한 장단점과 함께 엔진 옵션을 제시하고 사용자가 선택하게 하세요. 예: Mac의 웹 앱이라면 "Cap CLI는 Screen Studio 스타일을 네이티브로 제공하지만 화면 녹화 권한과 첫 실행 캘리브레이션이 필요합니다. Playwright는 어디서나 실행 가능하고 단일 장면을 빠르게 재녹화할 수 있지만 자동 줌이 없습니다. VHS는 여기 해당되지 않습니다." 엔진 세부 정보: 참고자료/screen-studio-look.md.
- 먼저 제품을 이해하세요. README / 데모 문서를 읽으세요. 도구를 다루기 전에 데모 플로우를 작성하세요: 문제 → 제품 워크스루 → 증거 → 결론. 권장 클릭 경로와 각 장면이 보여줄 가시적 결과를 결정하세요. 참고자료/templates.md 참조.
- 녹화하세요.
scripts/record.mjs를 복사하고APP과SIZE를 설정한 후,scenes를 나만의 동작(글라이드 → 멈춤 → 액션 → 대기)으로 교체하세요. 1:1 디바이스 스케일로 녹화하세요.node scripts/record.mjs [scene]. 엔진 + 작업 예제: 참고자료/recording.md. - 내레이션 → 자막. 장면별로
assets/narration/NN-*.txt파일을 음성 대본 스타일로 작성하세요 (시청자에게 말하는 것이지 README를 읽는 것이 아닙니다 — 이는 마케팅 카피와 다른 기술입니다; 마케팅 스킬이 주제/훅/스토리보드를 제공하고, 이 스킬이 말로 할 내용을 작성합니다). 그런 다음:bash scripts/tts.sh && bash scripts/transcribe.sh && node scripts/build-captions.mjs를 실행하세요. 브랜드 이름에 맞게build-captions.mjs의PHRASE_FIX를 편집하세요. 음성은 계약에 따라 교체 가능합니다: 내레이션은 장면별로 하나의 wav 파일 (narration/NN-*.wav)입니다 — 어떤 wav든 사람 목소리, 剪映 더빙, 다른 TTS로 교체한 후 전사+자막을 재실행하고 재합성하면 됩니다; 다른 것은 바뀌지 않습니다. Kokoro (로컬, Apache-2.0)가 기본이며 중국어 음성을 지원합니다; edge-tts는 무료 온라인 대안입니다. 가이드: 참고자료/narration-and-captions.md. - 합성 및 렌더링. 참고자료/composition-skeleton.html (하나의 클립 + 자막 트랙 + 오디오)에서 시작해 타임라인을 확장한 후
npx hyperframes render . --resolution landscape --fps 30 --crf 17 --quality high를 실행하세요. 1:1로 렌더링하세요 (1080p 제작 → 1080p 출력) — 절대 4K로 업스케일하지 마세요. UI가 흐려집니다. 참고자료/composition.md. - 배포 전 QC. ffprobe로 길이/오디오 확인, 1~2프레임 샘플링 (검정색이나 빈 프레임 없음), 자막이 프레임 내에 있는지, 내레이션이 잘리지 않았는지, 핵심 결과 페이지가 실제로 보이는지 확인하세요. 흐름/타이밍을 수정한 후 재렌더링하세요.
빠른 시작
# 시스템 종속성
brew install node ffmpeg
npx playwright install chromium
# 로컬 TTS + 전사를 위한 Python 가상환경 (한 번만)
python3 -m venv .ttsvenv && .ttsvenv/bin/pip install kokoro-onnx soundfile
export PATH="$(pwd)/.ttsvenv/bin:$PATH"
# 1) 녹화 2) 내레이션 3) 자막 4) 합성+렌더링
node scripts/record.mjs
bash scripts/tts.sh && bash scripts/transcribe.sh && node scripts/build-captions.mjs
npx hyperframes render . --resolution landscape --fps 30 --crf 17 --quality high --output out/demo.mp4
첫 TTS는 ~340 MB (Kokoro), 첫 전사는 ~466 MB (Whisper small.en)를 다운로드합니다; 둘 다 ~/.cache/hyperframes/에 캐시됩니다.
중요한 규칙
- 실제 상호작용이 슬라이드보다 낫다 — 실제로 실행되는 제품을 녹화하세요.
- 1:1, 절대 2× 업스케일 금지 — 2× DPR로 녹화하고 4K로 렌더링하면 모든 UI 클립이 흐려집니다. 1080p로 제작하고 렌더링하세요.
- 결정론적 합성 — HTML에
Date.now(),Math.random()또는 네트워크를 사용하지 마세요. HyperFrames는 프레임을 찾아 이동하므로 모션이 재현 가능해야 합니다. - 가시적 커서 + 결과물에서 대기 — 의도적으로 글라이드하고, 결과물에서 멈추세요.
- 음성 대본, 문서가 아님 — 내레이션은 화면을 따라갑니다. README를 그대로 읽는 것이 아닙니다.
- 동영상이 내레이션보다 길어야 함 — 클립 시간을 여유 있게 확보하여 시각이 음성보다 먼저 끝나지 않도록 하세요.
종속성
Node 22+, FFmpeg, Playwright (Chromium), HyperFrames CLI (npx hyperframes, 스킬 설치는 npx skills add heygen-com/hyperframes). 로컬 TTS/Whisper는 Python + kokoro-onnx가 필요합니다. 엔진별 (선택 사항): Cap 경로는 cap (curl -fsSL https://cap.so/install-cli.sh | sh) + cliclick (brew install cliclick) + 화면 녹화 권한이 필요합니다; 터미널 경로는 vhs (brew install vhs)가 필요합니다. 모두 무료입니다 — 라이선스 표는 참고자료/screen-studio-look.md를 참조하세요. HyperFrames 설정은 참고자료/composition.md를 참조하세요.
참고자료
- 참고자료/pipeline.md — 여섯 단계와 데이터 흐름
- 참고자료/screen-studio-look.md — 세 가지 녹화 엔진; Cap CLI 수명주기, 줌 클러스터링, VHS 테이프, 구축하지 말아야 할 것
- 참고자료/recording.md — Director 엔진 + 작업 예제 + 녹화 함정
- 참고자료/narration-and-captions.md — 음성 대본 작성, TTS, Whisper, 자막 수정
- 참고자료/composition.md — HyperFrames 타임라인, 크로스페이드, 1080p, 렌더링
- 참고자료/composition-skeleton.html — index.html로 복사할 최소 렌더링 가능 컴포지션
- 참고자료/templates.md — 해커톤 + 제품 데모 구조와 음성 대본 스켈레톤
- 참고자료/troubleshooting.md — 자막, 흰 화면, 오디오, 폰트 문제 해결