실수 및 반복 제거 (파이프라인 에이전트 2)
cut-silences 이후에 실행되는 자동 편집의 두 번째 단계입니다. 사람 편집자가 두 번째 패스에서 제거하는 것들(stutter("the the", "I- I-"), 즉시 반복된 단어, false starts(버려진 구절 재시작), retakes(재녹음된 라인—깨끗한 테이크 유지, 망친 테이크 제거))을 삭제합니다.
무엇을 실수로 간주할지는 공식이 아닌 판단에 달려 있습니다—의도적인 강조("never, never")와 수사적 중복("the first piece is, is this…")은 기계적으로 stutter와 동일하게 보입니다. 따라서 이 에이전트는 기본적으로 검토 게이트(gate) 방식입니다: 전체 맥락과 함께 후보를 제시하고, 에이전트(및 사용자)가 결정하며, 승인된 컷만 렌더링됩니다.
사용 시점
- "실수 잘라내기", "더듬음/반복 제거", "말실수 정리", "최고 테이크 유지", "잘못된 시작 제거"
- 마스터 편집 워크플로의 두 번째 단계로서, cut-silences의 출력물에 대해 실행합니다.
세 부분으로 구성된 흐름
1. 후보 찾기 (기계적)
node .agents/skills/cut-mistakes/scripts/find-cut-candidates.mjs \
<silence-transcript.json> --out-dir video-projects/<slug>/assets
입력은 일반적으로 Agent 1의 <stem>.silence-transcript.json이므로, 컷은 이미 침묵 제거된 타임라인에 적용됩니다. 다음을 생성합니다:
<stem>.cut-candidates.json— 구조화된 후보(유형, 신뢰도, 제안된cut범위,removes/keeps텍스트, 맥락, 권장 사항)<stem>.cut-candidates.md— 읽기 쉬운 제안서
후보 유형: stutter(즉시 단어 반복), retake(Jaccard 유사도를 통한 중복/근접 중복 구간), false_start(재시작되는 짧은 버려진 구절).
2. 검토 (게이트 — 필수)
각 후보를 맥락 안에서 읽고 keep-or-cut을 결정합니다. 기계적 탐지기는 의도적인 강조/수사와 실제 실수를 구분할 수 없으므로, recommend를 맹신하지 말고 removes + context를 읽으십시오. 일반적인 오탐지: 의도적 강조("it's never, never hands-off"), 연결동사-의문문("the piece is, is this…"), 목록 나열.
후보를 사용자에게 항목별 권장 사항과 함께 제시하고 승인을 수집합니다. 승인된 컷을 파일에 기록합니다:
{ "cuts": [ { "start": 100.93, "end": 101.06, "reason": "I- false start" }, ... ] }
(start/end는 입력 트랜스크립트/비디오 타임라인의 초 단위입니다. 후보의 범위를 넓힐 수 있습니다—예를 들어 retake의 경우, 망친 테이크의 시작부터 깨끗한 재시작까지 자릅니다.)
3. 승인된 컷 적용
node .agents/skills/cut-mistakes/scripts/apply-cuts.mjs \
<silence-transcript.json> --cuts approved-cuts.json \
--video video-projects/<slug>/assets/edited-silenced.mp4 \
--output video-projects/<slug>/assets/edited-clean.mp4 --apply
EDL, 재타이밍된 <stem>.mistakes-transcript.json(모션 그래픽 에이전트 + validate-beat-sync.mjs에 제공), 결정 로그를 기록하며, --apply를 사용하면 컷된 비디오(ffmpeg trim+concat, A/V 동기화)를 생성합니다. --apply를 빼면 드라이 런(dry run)이 됩니다.
결과 검토
공유 검토 도구를 사용하여 컷을 눈으로 확인하고 경계를 점검합니다:
node scripts/build-edl-review.mjs <stem>.mistakes-edl.json \
--original video-projects/<slug>/assets/edited-silenced.mp4 \
--edited video-projects/<slug>/assets/edited-clean.mp4 \
--output video-projects/<slug>/assets/mistakes-review.html
npx serve . -p 8080 -n
참고 사항
- 매우 깔끔한 전달에서는 실제 컷이 거의 없거나 전혀 없을 수 있습니다—이는 정상적인 결과입니다; 할당량을 채우기 위해 자연스러운 말을 자르지 마십시오.
- 두 단어 사이의 컷은 하드 조인(hard join)입니다. stutter/false start에는 일반적으로 깨끗하지만, 더 타이트한 오디오가 필요하면 나중에 20-30ms 페이드를 추가할 수 있습니다.
mistakes-transcript.json+ 정리된 비디오를 **Agent 3(모션 그래픽 / 계층형 카드)**에 전달합니다.