비디오 리뷰
이 도구는 비디오 파일이나 Remotion 프로젝트를 읽을 수 있는 리뷰 팩으로 변환합니다: 프레임 PNG, 오디오 분석 내용, 나레이션 라인, 각 프레임의 OCR 화면 텍스트, 자동 검사 결과, 그리고 마지막 리뷰 이후 변경된 사항이 모두 report.md에 담겨 있습니다. 당신의 역할은 이 도구를 실행한 후, 리뷰 팩을 통해 비디오를 검토하는 것입니다.
1. 도구 실행
다음 정확한 명령어로 실행합니다 (Bash와 PowerShell 도구 모두에서 작동하며, 사용자 경로는 따옴표로 감쌉니다):
powershell -NoProfile -ExecutionPolicy Bypass -File "${CLAUDE_SKILL_DIR}/review-video.ps1" "<비디오 파일 또는 Remotion 프로젝트 폴더>" [옵션]
- 비디오 파일 (MP4, MOV 등): 2초마다, 각 장면 전환 지점과 마지막에 프레임을 추출합니다.
- Remotion 프로젝트 폴더:
npx remotion still로 스틸 이미지를 렌더링하고(전체 렌더링 불필요), 오디오는 별도로 렌더링합니다.-Composition <id>가 지정되지 않으면 첫 번째 컴포지션을 사용하며, 출력에 다른 컴포지션 목록이 표시됩니다. 프로젝트에서npm install이 이미 실행되어 있어야 합니다.
유용한 옵션 (모두 선택 사항):
| 옵션 | 용도 |
|---|---|
-Composition <id> | Remotion: 렌더링할 컴포지션을 지정합니다. |
-Frames 0,90,450 | Remotion: 지정된 프레임 번호만 렌더링합니다. |
-Interval <s> | 정규 프레임 간격(초) (기본값 2). 긴 비디오의 경우 4 이상을 사용하세요. |
-Narration <file> | 자동으로 찾을 수 없는 경우 나레이션 소스를 지정합니다: .srt, .vtt, .csv, .md 녹음 테이블 또는 voiceover.json. |
-Project <folder> | 비디오가 프로젝트 외부에 있을 때 나레이션을 검색할 폴더입니다. |
-OutDir <folder> | 리뷰 팩을 저장할 폴더를 지정합니다. |
-CompareWith <folder> | 이전 리뷰 폴더(예: 이전 파일 이름의 폴더)와 비교합니다. 기본적으로 각 실행은 동일한 비디오의 마지막 실행과 비교합니다. |
-ChangesPdf | 변경된 프레임만 포함하는 PDF도 생성합니다. 사용자가 변경 사항만 원할 때 사용합니다. |
-KeyFramesPdf | 리뷰 폴더에 key-frames.pdf를 생성합니다: 약 15~20개의 프레임, 각 장면당 하나의 완전히 구성된 프레임과 플래그된 프레임이 타임스탬프, 장면 및 발견 사항과 함께 레이블링되며 10MB 미만입니다. 리뷰 폴더에 이미 완전한 리뷰가 있는 경우 해당 프레임을 사용하여 빌드되며 다른 것은 변경되지 않습니다. 그렇지 않으면 리뷰가 먼저 실행됩니다. 전체 연락처 시트를 생략하려면 -NoPdf를 추가하세요. |
-KeyFramesMaxMB <n> | key-frames.pdf의 크기 제한 (기본값 10). |
-WordsPerSecond <n> | 읽기 시간 검사에 사용할 읽기 속도 (기본값 3). |
-NumberWordsFrom <n> | 이 값부터 구어체 숫자 단어가 검사됩니다 (기본값 10). |
-SafeMargins t,r,b,l | 1080x1920 쇼츠의 안전 영역 여백 (기본값 288,192,672,48, Google의 신중한 수치). |
-WordList <file> | 맞춤법 검사에서 허용할 추가 단어가 포함된 파일입니다. |
-SceneThreshold 0.3 | 카메라 영상용 (기본값 0.02는 페이드가 있는 슬라이드에 적합). |
-NoOcr | 화면 텍스트 검사를 건너뜁니다. |
-NoPdf | 사용자가 당신의 리뷰만 원할 때 PDF 생성을 건너뜁니다. |
-NoAudio | Remotion: 오디오 렌더링을 건너뜁니다. |
긴 비디오는 시간이 걸립니다: 8분 비디오의 경우 약 2분, Remotion 스틸 하나당 약 4초입니다. 타임아웃은 10분으로 설정하세요. 출력의 마지막 줄에는 report.md, 프레임 폴더 및 PDF의 경로와 함께 오디오, 텍스트 검사 및 변경 사항에 대한 한 줄 요약이 제공됩니다. 리뷰 팩은 비디오 옆에 <비디오 이름>-review\에 저장되거나, Remotion 프로젝트 내에서는 out\<컴포지션>-review\에 저장됩니다 (-OutDir이 지정되지 않은 경우). 각 실행은 이전 실행을 previous\에 보관합니다.
출력이 FAILED:로 끝나면 중단하고 사용자에게 이유를 알리세요. ffmpeg가 누락된 경우 winget install --id Gyan.FFmpeg -e를 실행한 후 새 터미널을 열면 해결됩니다. WARNING:으로 시작하는 줄은 보고서 상단에도 나타납니다. 이를 전달하세요.
2. 훑어보기 또는 전체 리뷰
도구 실행은 저렴합니다. 프레임을 여는 것이 사용자의 사용량을 소모합니다. 열린 모든 프레임은 읽어야 할 이미지이기 때문입니다. 15분 분량의 비디오를 6개의 Opus 서브에이전트가 모든 프레임을 열어 전체 리뷰하는 경우, 한 번의 사용 세션 전체를 소모한 적이 있습니다. 따라서:
- 기본적으로 훑어보기를 수행합니다. 사용자가 전체 리뷰를 요청하지 않는 한(예: "전체 리뷰", "모든 프레임", "전체 검토"). 훑어보기에서는
report.md를 기반으로 작업합니다: 요약, 검사 결과, 나레이션 타임라인, 각 프레임의 OCR 텍스트 및 플래그. 장면 전환 프레임(end of scene및scene change)은 보고서의 해당 행을 통해 살펴보고, 문제가 있을 것 같은 경우에만 프레임 이미지를 엽니다: 플래그된 검사, 화면 텍스트와 맞지 않는 나레이션 라인, 변경된 프레임, 해당 시점의 오디오 문제, 또는 슬라이드가 있어야 할 곳에 OCR 텍스트가 비어 있거나 왜곡된 경우. 마지막에 훑어보기였음을 밝히고 몇 개의 프레임을 열었는지 알리세요. - 항상 일부 실제 프레임을 엽니다. 훑어보기, 텍스트 전용 리뷰 또는 타임라인 전용 판정에서도 마찬가지입니다: 장면당 하나의 완전히 구축된 슬라이드(
end of scene프레임, 모든 것이 나타난 직후) 또는 명확한 장면이 없는 경우 비디오 전체에 걸쳐 15~20개의 프레임을 엽니다. 이는 텍스트로는 알 수 없는 시각적 스타일(레이아웃, 겹침, 넘치는 상자, 대비, 빈 프레임)을 보여줍니다. 긴 비디오의 경우, 훑어보기를 수행하는 Sonnet 서브에이전트가 이 프레임을 열도록 하세요. 항상 마지막에 열린 프레임 수를 알리세요. - 요청 시에만 전체 리뷰를 수행합니다. 비디오가 5분을 초과하는 경우(
report.md요약의Length및Frames참조), 프레임을 열기 전에 중단하고 사용자에게 총 프레임 수와 열어야 할 프레임 수를 알린 후, 전체 리뷰가 많은 사용량을 소모할 것임을 경고하고 계속 진행할지, 훑어보기를 제안할지, 또는 더 적은 프레임을 위해-Interval을 더 큰 값으로 재실행할지(-Interval 4는 정규 프레임을 절반으로 줄임) 물어보세요. 답변을 기다리세요. - 전체 리뷰를 수행할 때: 한 번에 최대 2개의 서브에이전트를 실행하고 총 100개 이하의 프레임을 엽니다. 사용자가 다른 숫자를 지정하거나 "모든 프레임, 제한 없음"이라고 말한 경우는 예외입니다. 서브에이전트에는 Sonnet을 사용합니다. 사용자가 Opus를 요청하는 경우에만 사용하고, 이 경우 한 번 더 많은 사용량을 소모한다고 언급합니다. 각 서브에이전트에 고유한 프레임 범위와 해당
report.md행을 할당하고, 발견한 문제만 반환하도록 합니다.
대략적인 프레임 수: -Interval 2 (기본값)는 비디오 1분당 30개의 정규 프레임을 생성하고, -Interval 4는 15개, -Interval 10은 6개를 생성하며, 장면 전환당 최대 2개의 추가 프레임이 있습니다.
사용자 요청 처리
| 사용자가 말한 경우 | 수행할 작업 |
|---|---|
| "C:\path\to\video.mp4 리뷰해 줘" | 훑어보기. |
| "C:\path\to\video.mp4 전체 리뷰해 줘" | 전체 리뷰, 최대 100개 프레임 (5분 초과 시 먼저 물어보기). |
| "...전체 리뷰..., 모든 프레임, 제한 없음" | 모든 프레임 전체 리뷰. 5분 초과 시 먼저 물어보고, 전체 사용 세션을 소모할 수 있다고 경고. |
| "...Sonnet 서브에이전트 사용" / "...Opus 사용" | 해당 모델을 서브에이전트에 사용 (Sonnet이 기본값). |
| "Sonnet으로 훑어보고 타임라인 파일을 작성한 다음, 타임라인에서 전반적인 의견을 알려줘" | 도구를 실행한 후, 하나의 Sonnet 서브에이전트가 리뷰 팩을 훑어보고, 핵심 프레임 샘플(장면당 하나의 완전히 구축된 슬라이드)을 열고 리뷰 폴더에 timeline.md를 작성합니다: 장면별 항목(시간 범위, 간략한 나레이션, 간략한 화면 텍스트, 시각적 모양 및 문제점). 당신은 이 파일만 읽고(직접 프레임을 열지 않음) 전반적인 의견을 제공합니다: 구조, 페이싱, 명확성, 시각적 스타일, 슬라이드가 나레이션을 잘 지원하는지 여부. 열린 프레임 수를 알리세요. |
| "채팅에 첨부할 수 있도록 C:\path\to\video.mp4의 리뷰 PDF를 만들어 줘" | 도구를 실행하고 PDF의 전체 경로를 제공하세요. 요청하지 않는 한 리뷰하거나 프레임을 열지 마세요. |
| "채팅에 모두 첨부할 수 있도록 타임라인 파일과 핵심 프레임 PDF를 만들어 줘" | -KeyFramesPdf와 함께 도구를 실행하고(아래 "채팅 AI와 공유" 참조) 위와 같이 타임라인을 작성하세요. |
채팅 AI와 공유
긴 비디오의 경우 전체 연락처 시트 PDF(수백 개의 프레임)를 첨부하지 마세요. 사용자에게 두 가지를 제공하세요: 텍스트 타임라인 파일(timeline.md, 위와 같음) 및 핵심 프레임 PDF (-KeyFramesPdf로 생성, 전체 PDF가 필요하지 않은 경우 -NoPdf 추가, 이미 리뷰가 있는 폴더에서는 프레임을 재사용하여 몇 초 만에 실행됨). 약 15~20개의 프레임을 포함하며, 각 장면당 하나의 완전히 구축된 프레임과 리뷰에서 플래그된 프레임이 타임스탬프, 장면 이름 및 발견 사항과 함께 레이블링되어 10MB 미만이며 리뷰 폴더에 key-frames.pdf로 저장됩니다. 전체 경로를 제공하세요. 도구가 명확한 장면을 찾지 못한 경우(번호가 매겨진 하단 배지 없음), 프레임을 균등하게 분배하고 레이블에 그 내용을 표시합니다. 도구가 시각적 문제를 스스로 발견할 수 없으므로, 문제를 발견한 경우(겹침, 빈 프레임) 전달할 때 확인할 타임스탬프를 알려주세요. 전체 PDF는 쇼츠와 같은 짧은 비디오에 가장 적합하며, -ChangesPdf는 변경된 프레임만 포함합니다.
3. 비디오 리뷰
report.md를 읽습니다. 순서대로: 경고; 마지막 리뷰 이후 변경 사항 (이전 실행이 있었을 때만: 변경된 프레임, 이전 프레임 링크 및 추가/제거된 단어); 요약; 오디오 분석 내용; 나레이션 타임라인 (각 라인의 시작, 종료 및 일치 점수); 화면 텍스트 검사 (맞춤법, 읽기 시간, 숫자, 쇼츠 안전 영역); 그 다음 모든 프레임의 표 (시간, 캡처 이유,frames/내 파일, 해당 시점의 나레이션, OCR 텍스트 및 플래그). "(pause; last line)"은 아무도 말하지 않고 표시된 라인이 방금 말한 라인임을 의미합니다.- 사용자가 무엇이 변경되었는지 묻거나 변경 사항 섹션이 있는 경우, 변경된 프레임부터 시작합니다: 각 프레임을 이전 프레임과 나란히 열고 무엇이 변경되었는지 설명합니다.
- 각 슬라이드를 해당 나레이션 라인과 비교합니다. 훑어보기에서는 보고서의 OCR 텍스트를 통해 이를 수행하고 잘못된 것처럼 보이는 프레임만 엽니다(섹션 2 참조). 전체 리뷰에서는 합의된 한도 내에서 Read 도구로 프레임을 엽니다: 먼저
end of scene으로 표시된 프레임(각각 변경 직전의 완성된 슬라이드)과scene change(각각 정착된 후의 다음 슬라이드), 그 다음 플래그된 모든 프레임, 그 다음 나레이션 라인이 변경되거나 화면에 무언가가 구축되는 정규 프레임을 엽니다. - 자동 검사는 단서로 취급하고 최종 판단은 프레임 이미지에서 확인합니다:
- 맞춤법: OCR은 작고 희미하거나 고정폭 텍스트를 잘못 읽을 수 있으며, 일부 플래그된 단어는 의도적인 것일 수 있습니다(이름, 의도적으로 표시된 잘못 들린 단어). 이미지에서 확인된 것만 보고하세요.
- 읽기 시간: 플래그된 슬라이드는 주어진 초당 단어 수로 시간 내에 맞지 않는 새 단어가 있습니다. 레이블이 많은 나레이션이 포함된 다이어그램은 쉽게 트리거됩니다. 실제로 더 많은 시간이 필요한 슬라이드를 지정하세요.
- 숫자: 화면에서 찾을 수 없는 구어체 숫자는 실제 불일치(슬라이드에 다른 수치가 표시됨)이거나 OCR이 놓친 숫자(종종 큰 헤드라인 숫자)입니다. 프레임을 확인하세요.
- 안전 영역: 세로 비디오에서 YouTube의 오버레이 여백 내 텍스트. 기본 여백은 가장 신중하게 게시된 것이므로, 하단 및 오른쪽 가장자리 근처의 텍스트를 우선시하세요.
- 열어보는 프레임에서 육안으로도 확인하세요: 나레이션과 일치하지 않는 화면 텍스트, 숫자, 이름 또는 레이블; 잘리거나 겹치는 텍스트; 낮은 대비; 빈 프레임 또는 검은 프레임; 자리 표시자 또는 남은 콘텐츠; "not found"로 표시된 나레이션 라인; 보고서의 오디오 문제(클리핑, -1 dBTP 이상의 실제 피크, 클릭 또는 팝, 비디오 중간의 무음, 약 -14 LUFS에서 크게 벗어난 음량).
- 간략하게 보고하세요: 먼저 문제점(각각 프레임 번호 및 타임스탬프 포함, 예:
#14 00:22.00및 무엇이 잘못되었는지), 그 다음 오디오 분석 결과, 그 다음 도구가 확인할 수 없었던 사항. 모든 것이 일치하면 간단히 말하세요. 사용자가 요청하지 않는 한 프로젝트를 변경하지 마세요. 플래그된 단어가 올바른 경우 프로젝트 폴더의review-words.txt에 추가할 것을 제안할 수 있습니다.
PDF 파일
<이름>-review.pdf는 동일한 폴더에 있습니다: 오디오 분석 결과, 검사 및 변경 사항이 있는 표지 페이지, 그 다음 페이지당 6~9개의 프레임, 각 프레임은 타임스탬프, 발견된 문제(빨간색), 나레이션 라인 및 OCR 텍스트(파란색, 맞춤법 오류는 밑줄)로 레이블링됩니다. 20MB 미만으로 유지됩니다. -ChangesPdf를 사용하면 변경된 프레임만 포함하는 <이름>-changes.pdf도 생성됩니다. 사용자가 Claude 채팅에 첨부하거나 누군가에게 보낼 것을 원할 경우 전체 경로를 제공하세요. 더 작은 제한을 위해 -MaxPdfMB <n>을 사용하세요. key-frames.pdf (-KeyFramesPdf 사용)는 긴 비디오에 첨부할 파일입니다.