Video Forge
편집 가능한 프로젝트와 완성된 비디오를 만듭니다. 도구 상자를 함께 사용하세요: HTML/GSAP, React, FFmpeg, 녹화, SVG, 스프라이트, 푸티지, 오디오 및 3D. 장면별로 도구를 선택하고 기존 프로젝트의 엔진을 유지하세요. 시각적 요소는 코드로 작성하거나 기존 미디어에서 가져옵니다. 생성형 비디오/이미지 또는 토킹 헤드 모델을 대체하지 마세요. 내레이션 합성 및 음성 전사는 허용되는 오디오 도구입니다.
경로는 설치된 이 디렉토리를 기준으로 상대적입니다. 이 스킬에는 개인 MCP, 특정 에이전트/모델, 저자의 홈 디렉토리 또는 유료 서비스가 필요하지 않습니다.
골든 패스 — 완전한 비디오를 위해 정확히 이렇게 하세요
코드를 탐색하거나, 에셋을 수동으로 작성하거나, 픽셀을 수동으로 조정하지 마세요. 모든 레이아웃, 글꼴 맞춤 및 내레이션 타이밍 계산은 코드가 소유합니다. 하나의 작은 JSON 파일에서 텍스트와 매개변수만 편집합니다. 다음 네 단계를 순서대로 실행하세요:
# 1. 로컬 환경을 한 번 준비합니다 (프로젝트 로컬 Python + 오디오 모델)
python3 <skill-dir>/scripts/setup_environment.py --out .video-forge-tools --audio
# 2. 제공된 스토리보드를 복사하고 텍스트/초/색상/컴포넌트만 편집합니다.
# 파일 전체를 Write로 다시 작성하세요. 정확히 일치/세부 편집을 하지 마세요.
cp <skill-dir>/assets/storyboard-production.json ./storyboard.json
# 3. 검증 후 MP4로 렌더링합니다. run.py가 진입점입니다: 준비된 인터프리터와
# 모델 경로를 선택하여 음성→캡션→장면→사운드→렌더→검증을 실행합니다.
python3 <skill-dir>/scripts/build_project.py ./storyboard.json --check
python3 <skill-dir>/scripts/run.py ./storyboard.json --out ./film
# run.py는 MP4가 완료될 때까지 블록됩니다. 중단되면 --resume으로 동일한 명령을 재개합니다
# (처음부터 다시 시작하지 마세요). bash 호출이 시간 초과되면 --background를 추가하고
# 대신 production_job.py status로 폴링하세요.
# 4. 실제 파일을 확인합니다
python3 <skill-dir>/scripts/verify_video.py ./film/out/final.mp4 --require-audio
약한 모델을 위한 규칙: 스토리보드 JSON만 편집합니다. 전체 비디오에 대해 produce.py/build_project.py를
시스템 python3로 호출하지 마세요. 항상 run.py를 통해 진행하세요. 크기, 레이아웃 또는 텍스트를
변경하기 위해 .tsx/.py 소스 파일을 편집하지 마세요. 대신 스토리보드 매개변수로 전달하세요.
제목이나 카드가 잘못 보이면 코드가 아닌 JSON 값을 변경하세요. 레이아웃 계산은 결정적이며
이미 프레임에 맞춰져 있습니다.
가장 작은 유용한 컨텍스트로 시작하세요
워크플로우를 읽으세요. 브리핑과 제공된 브랜드/참조에서 기본값을
추론하세요. 결정이 부족한 자료에 대해서만 질문하세요. 새 프로젝트의 경우 DESIGN.md와 STORYBOARD.md를
저장하세요: 장면당 목적, 지속 시간, 렌더러, 에셋, 카메라 이동 및 오디오 큐. 렌더러를 혼합하기 전에
치수/fps를 일치시키세요.
완전한 프로모션/튜토리얼의 경우 기본값은 위의 프로덕션 레시피이며, 예전의 무음 네 가지
스모크 테스트가 아닙니다. 프로덕션 방향을 읽고
assets/storyboard-production.json에서 시작하세요. scripts/run.py는 음성, 단어 캡션, 일관된 장면,
사운드, 렌더 및 내보내기 검사를 통해 계획을 실행합니다 (준비된 인터프리터를 사용하여 produce.py를
호출합니다). 로컬 오디오 종속성이 없으면 scripts/setup_environment.py --out .video-forge-tools --audio가
프로젝트 로컬 Python을 준비하고 모델 경로를 보고합니다. 이 설정은 코딩 하네스에서 재사용 가능하며
저자의 개인 환경이 필요하지 않습니다. production-direction.md를 참조하세요.
이 경로에서는 브리핑과 프로덕션 예제로 시작하고, 모든 구현을 둘러보거나 모든 종속성을 미리 확인하는 대신 검증기와 프로듀서를 실행하세요. 프로듀서는 누락된 도구와 구체적인 수정 조치를 보고합니다. 관찰된 오류를 진단해야 할 때만 소스를 읽으세요.
주도 모델은 메시지와 장면 매개변수를 선택하며, 검증된 코드는 장인 정신과 정확성을 제공합니다. "JSON을 채웠다"고 해서 종단 간 프로덕션 테스트라고 부르지 마세요.
재사용 우선 모드가 기본값입니다: 카탈로그를 검색하고, 입증된 컴포넌트를 선택하고, 선언된 props를 채우고, 짧은 증명을 렌더링한 다음 구성하세요. 에이전트가 어려움을 겪거나 평가를 구축할 때 모델 메모를 읽으세요. 카탈로그가 진정으로 맞지 않을 때만 사용자 정의 코드가 적절합니다.
모션을 발명하기 전에 실제 코드를 검색하세요
python3 <skill-dir>/scripts/catalog.py 'character'
python3 <skill-dir>/scripts/catalog.py 'caption'
python3 <skill-dir>/scripts/catalog.py 'terminal'
시작 템플릿의 제목/캐릭터/화면/3D 어휘에 맞는 브리핑의 경우, 모델이 assets/storyboard.example.json을
assets/storyboard.schema.json을 사용하여 채우게 하세요:
python3 <skill-dir>/scripts/build_project.py ./storyboard.json --check
python3 <skill-dir>/scripts/build_project.py ./storyboard.json --out ./my-video
컴파일러는 프로젝트와 선택한 장면에 필요한 종속성만 작성합니다.
스키마를 발명하지 말고 실제 기본값을 사용하세요. 완전한 비디오의 경우 이 빈 무음 스캐폴드에서
멈추지 말고 골든 패스 (run.py)를 사용하세요.
실제 음성을 준비하고, 스크립트를 측정된 ASR 범위에 맞추고, 캡션 시간을 렌더에 전달하고,
사운드트랙을 마스터링하고 접촉 시트를 내보냅니다.
라이브러리 카탈로그를 참조하세요. 번들 소스, 상류 라이선스 포함:
library/vendor/rendercomp/: 50개의 코드 그리기 장면, 타이포그래피, 전환, 차트 및 SVG 캐릭터. 각 컴포넌트는 기본값, FPS 및 지속 시간을 내보냅니다.library/vendor/curvable/: 14개의 매개변수화된 런치 비디오 장면; 컴포넌트를 사용하기 전에 옵션인 셰이더/글꼴/WASM 종속성을 검사하세요.library/vendor/onda/: 컴포넌트, Zod 스키마, 전환 및 구성 헬퍼. 스키마를 통해 기본값을 파싱하고 상대 가져오기를 유지하며 테마/글꼴을 로드하세요.library/vendor/ffmpeg/: 실행 가능한 로컬 Python 편집 헬퍼: 컷, 조인, 확대/재구성, 픽셀화/블러, 애니메이션 캡션, 등급, 믹스, 무음, 내보내기 및 QA.library/vendor/blender/: 실행 가능한 헤드리스 Blender 헬퍼: 검사, 장면 조립, 변환, 최적화, 베이킹 및 렌더. Blender가 필요합니다.
모든 라이브러리를 한 번에 읽지 마세요. UPSTREAM.json은 출처를 기록하고 LICENSE는 상류
조건을 유지합니다. 번들되었다고 해서 코드가 자동으로 테스트되는 것은 아닙니다.
작업별로 경로를 지정하세요
| 작업 | 읽기 / 사용 |
|---|---|
| HTML 모션, GSAP, 레지스트리 블록 | HyperFrames |
| React 구성 / 데이터 배치 | Remotion, 매개변수 |
| 푸티지 편집, 등급, 속도, 오디오, 최종 조립 | FFmpeg |
| 브라우저/데스크톱 캡처, 커서 카메라, 확대/축소, 검열 | 화면 녹화 |
| 캐릭터, 일러스트레이션, 3D 에셋 | 캐릭터, 에셋 소싱 |
| 절차적 지오메트리, 카메라, 조명, 재질, 리깅 | 3D |
| 내레이션, 단어 타이밍, 모션 캡션, 사운드 | 오디오 및 캡션, 사운드 디자인 |
| 도구 비교 및 혼합 엔진 계획 | 라우팅 |
다운로드한 클립/스톡의 경우 미디어 파이프라인을 사용하세요.
모션 결정의 경우 모션 원칙을 사용하세요.
연구된 스킬/라이브러리와 그 적합성에 대해서는 연구를 확인하세요.
라이선스 심사를 거친 라우팅 맵은 외부 라이브러리 (및 research/libraries-catalog.json)를
참조하세요: 각 작업 유형에 대해 번들하거나 인용해도 안전한 것. HyperFrames 레지스트리는 또 다른
재사용 소스입니다. 효과를 구축하기 전에 쿼리하세요. 설치된 --help를 사용하세요. 그 계약은
오늘날의 상류 스킬과 다를 수 있습니다.
검증은 프로덕션의 일부입니다
애니메이션을 적용하기 전에 히어로 프레임을 빌드하세요. 모든 프레임은 임의 순서로 검색 가능해야 합니다: 벽시계, 시드 없는 난수, 실시간 네트워크 종속성 또는 자율 애니메이션 루프가 없어야 합니다. HyperFrames는 등록된 일시 정지 타임라인을 사용합니다; Remotion은 프레임을 사용합니다. 대표 프레임을 렌더링하고 확인하세요; 시작, 유지, 컷 경계, 캡션 변경 및 끝을 검사하세요. 클리핑, 읽을 수 없는 텍스트, 데드 에어 및 오디오 싱크를 수정하세요.
비디오를 요청받으면 완전한 파일을 내보내세요. 스틸 이미지는 완료가 아닙니다.
python3 <skill-dir>/library/vendor/ffmpeg/scripts/probe.py final.mp4 --json
python3 <skill-dir>/scripts/verify_video.py final.mp4 --require-audio
python3 <skill-dir>/library/vendor/ffmpeg/scripts/look.py final.mp4 --tiles 3x2
최종 내보내기를 프로브하고 디코드하세요. 계획된 지속 시간, 치수/fps 및 오디오를 확인하세요. 실제로 접촉 시트를 검사하세요. 재생이 가능할 때 오디오를 청취하고, 기술적 오디오 검사만 가능했을 때는 그렇게 명시하세요. 검열은 카메라 변환 후 모든 관련 구간을 확인하고, 비밀이 포함된 경우 오디오를 검열해야 합니다.
재생 가능한 비디오, 편집 가능한 프로젝트, 실제 검사 결과 및 실제 종속성 제한 사항을 전달하세요. 원본을 보존하세요. 요청자가 승인하지 않는 한 게시/업로드, 크레딧 소비 또는 시스템 소프트웨어 설치를 하지 마세요. 기존 승인은 유효합니다.
모델 및 증거 규율
구조화된 계획, 작은 후보 목록, 스키마 기본값 및 실행 가능한 헬퍼를 사용하여 약한 모델이 발명해야 하는 결정을 줄이세요. 구체적인 오류를 모델에 반환하고 가장 작은 실패 부분을 변경하세요. 짝을 이룬 강한/약한 모델 테스트에 대해 평가를 읽으세요. 측정하지 않고 강한 모델과 동등하다고 주장하지 마세요. 복구 상태는 방대한 프롬프트가 아닌 프로젝트에 속합니다.
자체 코드는 MIT입니다. 엔진/에셋/음성은 각자의 라이선스를 유지합니다. 선택적 도구는 필요할 때만 설치됩니다. Katana 참조 워크플로우를 연구하되, Higgsfield의 호스팅된 모델이 로컬 코드 렌더러이거나 데스크톱 Katana에 CLI가 있다고 가정하지 마세요.