Communitygithub.com

z1fex/12-사운드 디자인 및 믹스

3D 애니메이션 영화의 사운드 디자인을 수행합니다. 원본 음악, 모든 보이는 액션에 대한 미세한 폴리(Foley) 사운드, 스토리 비트 강조, 음성 대비 측정된 레벨, 가장 큰 타격 전 멈춤 효과를 엔진의 24가지 합성 효과로 구현하고, -14 LUFS로 마스터링합니다. 컷 편집이 완료된 후에 사용하세요.

12-사운드 디자인 및 믹스란 무엇인가요?

이 스킬은 3D 애니메이션 영화의 전체 사운드 트랙을 설계하고 믹싱합니다. 원본 배경 음악, 모든 보이는 동작에 맞춘 폴리 사운드, 스토리 비트 강조 효과, 그리고 음성 레벨에 맞춰 측정된 음량을 제공합니다. 24가지 합성 사운드 효과(whoosh, swish, pop, tick 등)를 사용하며, 별도의 샘플링 없이 순수 합성으로 생성합니다. 최종 출력은 보이스, 음악, SFX 스템(stem)과 마스터링된 믹스를 포함하며, 음량 기준은 ITU-R BS.1770-4 표준(-14 LUFS 통합, -1.5 dBTP 트루 피크)을 따릅니다. 이 스킬은 Claude Code, Cursor, Codex 등 주요 AI 에이전트 플랫폼과 호환되며, `sound.py` 스크립트를 통해 총 24가지 효과를 자동 생성하고 `film.mjs` 큐 시트를 기반으로 정확한 타이밍에 배치합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/z1fex/3D-Cartoon-Style-Animation-Claude-Skill/tree/HEAD/skills/12-sound-design-and-mix

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

12 · 사운드 디자인 및 믹스

감독 지시 (1차): "모든 액션에 약간의 효과음을 넣어 주세요." 효과 디자인은 earshot의 문서화된 모션 디자인 관행(github.com/Leonxlnx/earshot, MIT; docs/motion-sfx-techniques.md, docs/SFX.md)을 따릅니다. recipe/tools/sound.py 코드는 자체 작성된 코드이며 샘플을 사용하지 않습니다.

레이어

레이어레벨참고
보이스−16 LUFS (음성 기준 ≈ −19 dBFS, 400 ms RMS)런타임의 93–98% 차지
배경 음악보이스 아래 18 LU, 덕킹 없음C 장조 (C–Am–F–G, 100 BPM): 마림바, 플럭 베이스, 패드, 킥, 셰이커. 재도입부에서는 패드만 남김 (musicDrop: [start, end])
폴리보이스 아래 약 15 dB (틱 약 21, 새 약 22)모든 보이는 액션에 사운드
액센트보이스 아래 약 9 dB스토리 비트에만 사용, 분당 최대 약 20개, 가장 큰 타격 0.35초 전에 7 dB 음악 딥 (stop: true)
마스터−14 LUFS 통합, 트루 피크 −1.5 dBTP2패스 선형 라우드니스 노멀라이제이션

효과 (24개, sound.py)

유형계층사용처디자인
whoosh (long: true 큰 움직임에)폴리새로운 장소 진입, 큰 카메라 움직임속도를 따라 이동하는 세 개의 대역(1 : 1.6 : 2.5)을 통과하는 핑크 노이즈; 팬 스윕; 피크가 큐에 도달
swish폴리팔, 책, 제스처, 던지기얇고 밝은 짧은 사운드, 0.2초
pop폴리타이틀 등장, 물체의 얼굴 교체, 작은 도착키로 상승하는 톤 블립, 틱, 딸림 링
tick폴리카운터의 모든 단계작고 밝은 노크음에 다양한 핑(라운드 로빈)
tap폴리작은 물체 착지, 카운터 안정화감쇠된 나무 블록
flip폴리달력 페이지종이 휙 소리와 안정화
slap폴리공지나 종이 강타광대역 찰싹 소리와 퍼덕임
creak (dur)폴리문과 경첩나무 공명을 통한 미끄럼-멈춤 펄스
click폴리스위치, 표지판 켜짐35ms 간격의 누름과 잠금
light폴리표지판 조명부드러운 허밍과 작은 짤랑 소리 (조성 내)
chirp폴리야외 생물 (드물게)두 개의 작은 새 휘파람
rattle폴리나뭇잎, 떨림떨림 속도로 걸러진 노이즈 버스트
slide폴리밀기 또는 옆으로 미끄러짐부드러운 삐걱임이 미끄러짐
stretch (dur)폴리고무, 끈 조임, 표면 휨상승하는 거친 삐걱임
whir (dur)폴리테이프 끝남, 기계 회전퍼덕임 위의 래칫 클릭
chalk (dur)폴리칠판 쓰기, 지우기긋기 동작에 의해 잘린 거친 대역
roll (dur)폴리무언가 굴러감굴림 속도의 낮은 웅웅거림과 표면 틱
thunk액센트부드러운 물체 착지 (풀 위의 사과)둔탁한 낙하체와 저역 통과 과도음
thud액센트무거운 물체 안정화서브 90 → 42 Hz, 몸체와 과도음
slam액센트문 닫힘나무 몸체, 크랙, 걸쇠와 석조 아치형 공간 잔향
snip액센트자르기두 번의 칼날 클릭과 금속성 씽
boing액센트스프링, 트램펄린떨리는 하강음
twang액센트팽팽한 줄 뜯기피치 떨림이 있는 하모닉 부분음
ding액센트숫자 착지, 보상비조화 부분음을 가진 C6 종소리

효과를 추가하려면: 단위 피크의 모노 또는 스테레오 배열을 반환하는 fx_<이름>(rng, ...) 함수를 작성하고 (함께 피크를 이루는 레이어, 서로 충돌하지 않도록 대역 제한, 움직이는 물체에 이동 필터, C 장조의 음색 부분, 선행 무음 없음, 끝에 짧은 페이드 아웃), FX, REL 및 ACCENT 또는 폴리 세트에 추가하고, dur를 받으면 SUSTAINED에도 추가하세요.

큐 (film.mjs)

{ t: W(17) - LEAD, type: 'slam', gain: 1, stop: true }            // 음악 딥이 있는 액센트
{ t: W(53) - 0.05, type: 'whir', gain: 0.8, dur: 1.4 }              // 지속적인 폴리 사운드
...changes(a, b, value, 0.06).map(t => ({ t, type: 'tick', gain: 0.7 }))   // 카운터 변경마다 틱
  • t는 사운드의 어택이 도달하는 시간 (whoosh: 피크가 도달하는 시간); 믹서가 10ms 앞서 리드하며, 화면보다 늦지 않습니다.
  • gain은 해당 유형의 레벨 내에서 조정합니다 (0.5 ≈ −6 dB). 각 큐는 ±1.2 dB의 무작위 변동과 자체 노이즈 시드를 가지므로 반복해도 동일하게 들리지 않습니다.
  • 스토리보드의 사운드 컬럼에서 샷별로 큐를 작성합니다. 보이는 모든 액션에 하나씩, 모든 액센트는 스토리 비트 위에 배치합니다.

레벨은 측정되며, 추측하지 않습니다

sound.py는 보이스를 −16 LUFS로 레벨링하고, 음성 기준(말하는 동안의 중간 400ms RMS)을 측정하여 각 효과의 가장 큰 400ms가 REL[type] dB만큼 기준에서 떨어지도록 설정합니다. 1차 v3에서 액센트의 중간값은 −9 dB, 폴리는 −15 dB였습니다. 모든 믹스는 다음 명령으로 확인하세요: python -I recipe/tools/sfx-levels.py <outDir> <outDir>/cue-sheet.txt

출력

stem-voice.wav, stem-music.wav, stem-sfx.wav, mix.wav (마스터링됨), cue-sheet.txt (배치된 모든 효과와 계층 및 레벨), 최종 MP4 (H.264는 무음 렌더에서 복사, AAC 192 kb/s).

라이선스

모든 것은 합성됩니다. 소유자가 음악 트랙을 제공하는 경우 라이선스를 보유해야 하며, 덕킹 없이 −34 LUFS로 배경 음악으로 설정하고 효과는 그대로 유지하세요.

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

관련 스킬