foley: 프레임에 맞춘 사운드 이펙트
당신은 소리를 들을 수 없습니다. earshot이 당신의 귀입니다: earshot 숫자 없이 소리가 "어울린다"나 "동기화되었다"고 말하지 마십시오.
SKILL_DIR 아래 = 이 기술의 자체 폴더(기술이 로드될 때 기본 디렉토리로 표시됨). 비디오의 폴더에서 작업하십시오. 생성하는 모든 파일은 비디오 옆의 foley/ 아래에 두십시오.
필요 사항
- PATH에
ffmpeg와ffprobe, Python 3.10+. - PATH에
earshot:uv tool install "earshot[mcp] @ git+https://github.com/Leonxlnx/earshot"그런 다음earshot doctor --fetch(~1.1 GB 모델, CPU만 사용). - Openverse 인터넷 접속 (익명 제한: 분당 약 20회, 하루 200회).
1. 큐 찾기 (보고, 측정하기)
python3 SKILL_DIR/scripts/find_cues.py VIDEO --out foley/cues-candidates.json명령어는 모션 피크(프레임 간 변화)를 출력하고 접촉 시트를foley/sheets/에 작성합니다.- 접촉 시트를 읽으십시오. 소리가 필요한 각 순간(타격, 발걸음, 문, 빠른 회전의 우웅, 충돌, 배경 소음)의 이름을 지정하고 정확한 프레임을 선택하십시오. 모션 피크를 사용하여 범위를 좁히되, 눈에 보이는 것을 신뢰하십시오. 실제로 볼 수 없는 접촉은 건너뛰십시오.
foley/cues.json을 작성하십시오:[{"id": "hit1", "t": 0.625, "kind": "hit", "what": "주먹이 열린 손바닥을 때림"}, ...].
2. CC0 사운드 가져오기
각 종류에 대해 2~4개의 검색어: python3 SKILL_DIR/scripts/fetch_cc0.py "펀치 충격" foley/sounds/hit --limit 8.
source=freesound에서 license=cc0 결과만 유지하고 제목, 제작자, 라이선스 및 소스 페이지를 foley/sounds/sources.json에 기록합니다. CC0은 출처 표시가 필요 없지만, 사용이 상업적인 경우 사용자에게 소스 페이지를 열어보라고 알리십시오: Openverse는 라이선스 정확성을 보장하지 않습니다.
3. earshot으로 선택 및 편집
earshot rank "<그 순간의 소리 설명>" foley/sounds/<kind> --top 3 --out foley/rank-<kind>.json. 그림이 아닌 소리를 설명하십시오("주먹이 열린 손바닥에 닿는 짧고 날카로운 때림").earshot find FILE "<동일한 단어>" --kind event --top 3 --out foley/find-<id>.json(원샷); 배경 소음의 경우--kind texture. 머리 잘림/꼬리 잘림 표시된 트림은 거부하십시오.- 각 트림의 싱크 포인트를 기록하십시오: 타격의 경우 어택(시작 + 약 5ms); 우웅의 경우 시작이 아닌 가장 큰 지점.
4. 배치
foley/plan_v1.json을 작성하고(scripts/mix.py 헤더 참조) python3 SKILL_DIR/scripts/mix.py foley/plan_v1.json을 실행하십시오. 그림은 복사되며, 다시 인코딩되지 않습니다.
5. 다시 듣고 수정하기 (중요한 부분)
earshot timeline OUT.mp4 --cues "t1,t2,..." --out foley/timeline_v1.jsonpython3 SKILL_DIR/scripts/check.py foley/timeline_v1.json id1,id2,... foley/check_v1.json큐는 들린 온셋이 프레임의 40ms 이내이고 배경 소음보다 최소 6dB 높을 때 통과합니다.- 측정된 양만큼 실패한 부분만 수정하십시오:
- 늦음/빠름 → 해당 이벤트를 오프셋만큼 이동 (우웅은 피크가 시작 이후에 오기 때문에 일반적으로 늦음);
- 묻힘(배경 소음보다 6dB 미만) → 볼륨을 높이거나 배경 소음을 낮추십시오;
- 트루 피크가 -1 dBTP 이상이거나 클리핑 → 가장 큰 타격을 낮추십시오 (리미터가 첫 번째 샘플에서 과도를 잡을 수 없음).
plan_v2.json을 작성하고, 렌더링하고, 다시 듣습니다. ALL PASS이고 트루 피크 ≤ -1 dBTP가 될 때까지 반복하십시오.- 음량: 사운드 이펙트 전용 트리는 피크가 높으며 일반적으로 약 -20 LUFS, 트루 피크 ≤ -1 dBTP로 측정됩니다. 이는 예상된 현상입니다. 최종 음량은 나중에 편집 시 음성/음악과 함께 설정하십시오. 여기서 더 크게 밀지 마십시오.
6. 보고
foley/report.md를 작성하십시오: 각 큐(시간, 프레임, 내용), 사용된 파일(제목, 제작자, CC0 소스 페이지), 첫 번째 청취의 오프셋과 레벨, 변경한 사항, 최종 수치. 검사가 earshot 측정값이며 사람의 청취가 아님을 명확히 밝히고, 사용자에게 한 번 들어볼 것을 제안하십시오.
규칙
- 사용자가 달리 요청하지 않는 한 CC0 사운드만 사용하십시오.
sources.json행이 없는 사운드는 절대 사용하지 마십시오. - 볼 수 없는 타격을 만들어내지 마십시오. 소리가 "괜찮다"고 주장하지 말고 earshot 수치를 인용하십시오.
- 원본 비디오는 그대로 두고
<name>-sfx.mp4를 작성하십시오.