쇼릴 (HyperFrames)
"The Brief" 쇼릴에서 검증됨. 시청자는 쇼릴을 템포와 스토리로 평가하지, 단순한 연출만으로 평가하지 않습니다. 평범한 장면 몽타주는 "기본"으로 읽힙니다. 스테이크(긴장감)가 있는 스토리를 부여하세요.
1. 스토리 우선 (코드보다 먼저)
각 비트가 하나의 능력을 보여주고 편집 자체가 스토리를 전달하는 5~8비트 스토리를 작성하세요. 효과가 있었던 패턴: 훅(문제 + 시계) → 작업 몽타주(섹션별 하나의 스킬) → 반전/장애물(프리즈 프레임, 고객 피드백) → 결정타 컷 → 페이오프 블리츠 → 전달 → 엔드 카드. 지속적인 HUD(점프컷하는 시계, 스테이지 라벨)는 빠른 컷을 통해 시청자의 방향감각을 유지합니다.
그 다음, 그리드에 큐 시트를 작성합니다: 150BPM = 비트 0.4초, 마디 1.6초 (또는 120BPM = 0.5초). 모든 컷, 슬램, 캡션은 비트 위에 위치하고, 섹션은 마디 경계에서 변경됩니다. 훅 = 처음 1.6~3.2초 동안 비트당 1단어.
2. 템플릿으로 시작하기
cp -R templates/chop-reel videos/<name> && cd videos/<name>
../../.venv/bin/python score.py # assets/audio/score.wav 생성
python3 build.py 169 # index.html (16:9) 생성; build.py 916은 9:16용
npx --yes [email protected] lint && npx --yes [email protected] render -o ../../out/<name>-169.mp4
reel.js 구조 — 다음 순서로 편집:
- Scenes:
function scene(g, l)는 로컬 시간l에 전체 프레임을 그립니다. 상대 단위(W,H,M,PORT)를 사용하여 두 종횡비 모두에서 작동하도록 합니다.fit()는 텍스트를 최대 너비로 축소합니다. - SHOTS:
[t0, t1, scene]— 편집 내용.null= 트랜지션으로 덮임. - FX 목록:
PUNCH(각 컷과 추가 비트에서 0.2초에 걸쳐 감쇠하는 1.06배 줌),FLASH(드롭에서 2프레임 흰색, 섹션 컷에서 반 흰색),SHAKES[시작, 지속시간, 진폭],WHIPS(씬 사이의 모션 블러 푸시, 9개 서브프레임 렌더링 평균). - 비디오 클립(hushu 아트, 캡션-킷 렌더링, AI 샷)은
build.py에서<video class="clip">로 위에 배치되며 GSAP에서 자체 펀치 트윈이 적용됩니다. 캔버스는 아래에 검은색을 그립니다.
3. 무브 라이브러리
명명된 무브를 사용하려면 motion-prompt 스킬을 사용하세요: node ~/.claude/skills/motion-prompt/scripts/motion-prompt.mjs get 001 043는 각 무브의 게시된 사양(곡선, 지속시간, 오버슈트)을 반환합니다. 숫자를 reel.js에 정확히 포팅하고 주석으로 인용하세요 (// #043 휩 팬: …). 사용자는 무브가 "영감을 받은" 것이 아니라 "사용된" 것임을 알아차립니다. 유용한 무브: #001 팝인, #005 마스크 리빌, #007 카운트업, #008 키네틱 타입, #010 오버슈트, #017 마스크, #020 줌 스루, #023 글리치, #024 임팩트 셰이크, #038 스피드 램프, #040 프리즈 프레임, #043 휩 팬, #046 스매시 컷.
4. 사운드
score 스킬을 사용하세요: 전체 길이의 트랩/펑크 스코어를 위해 examples/phonk_150bpm_45s.py를 복사하거나 템플릿의 score.py를 확장하세요. reel.js의 모든 슬램/플래시는 동시에 히트(임팩트, 박수, 드롭으로의 라이저, 프리즈에서의 레코드 스크래치, 스매시 컷 전 침묵)를 얻습니다. VO는 Kokoro를 사용하고, 음악 아래로 덕킹합니다. 캡션은 caption-video를 통해 추가합니다.
5. 확인 및 전달
- 각 섹션을 두 종횡비로 스냅샷을 찍고 확인: 9:16에서 잘리는 것 없음, 텍스트가 짧은 변의 4% 이상.
- 둘 다 렌더링, loudnorm -14 LUFS, 둘 다 보냅니다. 파일 이름을
out/<Title> (16x9).mp4/(9x16).mp4로 지정. - 수정: SHOTS / scene 함수 변경 → 두 종횡비 재빌드 → 렌더링.