影片檢查:在任何人發現之前找出渲染片段的問題
這是 video-check 0.2.3。
使用者會拿到一份已經過專業編輯式檢查的影片,以及一份簡短的 REVIEW.md,說明測量了什麼、檢查了什麼、修正了什麼,以及哪些項目尚未被人工審視。
整個流程有三個核心原則:
- 先測量,再目視檢查。 模型在檢視畫面時容易忽略靜態片段或單禎閃爍,但 FFmpeg 不會。務必先在目視前執行
check.py,絕不能因為影片「看起來沒問題」而跳過。 - 製作者是最差的審查員。 你已經知道每個鏡頭的意圖,所以容易看到計畫而非實際畫面。請找一位不熟悉你計畫的人來檢視畫面紙(步驟 3)。
- 你無法「聽」出問題。 腳本會測量響度、峰值與安靜段落。但音樂是否合適、音效是否正確、語音是否清晰,必須由人工聆聽判斷。每次都要明確說明這點。
當輸入條件缺失時
你必須在本機電腦上擁有渲染完成的檔案。如果使用者僅描述影片或提供平台鏈結,請要求對方提供檔案;不要從 TikTok、YouTube 或 Instagram 下載。如果你自己製作了影片,你也知道計畫:尺寸、禎率、長度、響度目標,以及哪些故意保留的靜態片段與閃爍。如果使用者帶來自己的剪輯,請詢問用途(平台、長度),並使用下列預設值處理其餘部分。
工作流程
-
測量。 傳入計畫參數,讓腳本能區分故障與選擇:
python scripts/check.py final.mp4 --out work/check1 --loudness -14當你製作影片或用戶告訴你計畫時,加入對應參數:例如
--expect 1080x1920 --fps 30 --duration 32 --holds 28.5-32 --flashes 12.4。切勿根據平台猜測尺寸、禎率或長度:一個 960x540 的檔案若沒有人要求它必須是 1080p,則尺寸並不構成錯誤,因此當沒有人規劃時,請留空--expect。--holds列出故意保留的靜態片段(例如結尾卡、標題停留畫面);--flashes列出規劃中的單禎閃爍與跳禎;--loop用於循環片段;--audio none用於無聲片段。線上影片通常標準化至約 -14 LUFS;Podcast 使用 -16,廣播使用 -23。腳本輸出結果為P0/P1/P2 t=… code: what -> fix,並寫入check.json、overview_NN.png及findings.png。references/reading-the-checks.md說明了每項檢查的捕捉範圍與遺漏之處。 -
立即修正 P0 錯誤。 尺寸錯誤、禎率錯誤、長度錯誤、應有音訊卻沒有、削波:這些是渲染錯誤,並非品味問題。修正命令、重新渲染,並在任何人檢查之前重新執行步驟 1。對於響度、削波與真實峰值,請在剪輯中修正混音(調低音樂、最大音量)。如果你只有完成後的檔案,請執行
python scripts/fix_sound.py in.mp4 out.mp4 --loudness -14:它會限制峰值、進行雙通道標準化,並保留畫面不動,使結果落在目標 ±0.2 LU 內且低於 -1.5 dBTP。單一通道的loudnorm會錯過其峰值目標,而單純的限制器會讓混音變得安靜;不要手動反覆調整濾波器。 -
以全新視角觀看。 使用 Read 工具開啟每張概覽圖與
findings.png。然後請一位不熟悉你計畫的人進行第二次檢視:- 如果你可以啟動子代理,只提供畫面紙、平台與一句關於影片用途的話。不要提供你的計畫、程式碼或意圖。使用
references/review-guide.md中的簡報。 - 如果你無法這樣做,請自行觀看,但先隱藏計畫:以陌生人的角度描述每張畫面紙(每一影格一句話),然後再判斷它。在
REVIEW.md中寫下「one context」。
每個問題以
t=12.4s · 螢幕上位置 · 問題是什麼 → 精確修改的格式撰寫,並區分 P0(損壞或無法閱讀)、P1(觀眾會注意到)或 P2(潤飾)。不需要給出滿分十分制:分數只會讓人找不到問題。請對照references/review-guide.md中的清單,其中列出了讓剪輯看起來像模板或機器製作的跡象:幻燈片式的進度條與步驟計數器、每一行都使用相同方式進入、文字位於平台按鈕下方、空白的第一個影格、未經授權的數字。 - 如果你可以啟動子代理,只提供畫面紙、平台與一句關於影片用途的話。不要提供你的計畫、程式碼或意圖。使用
-
修正最嚴重的三個問題,然後再次檢查。 取出 P0 與最嚴重的三個 P1。針對每個問題,修改剪輯列表或命令,不要修改渲染完成的檔案。如果修正方法你不知道,請使用
search_techniques搜尋想要的結果(例如「在語音下降低音樂音量」、「在剪接處淡化音訊」),然後使用get_technique取得提示。重新渲染,然後以--before work/check1/check.json --out work/check2參數重新執行步驟 1;它會列出哪些問題已被修正、哪些仍然存在、哪些是新出現的,並繪製before_after.png。檢視你修改過的影格。 -
三次後停止。 如果第三次仍有 P0 或需要大幅修改,請停止並向使用者說明剩下的問題與原因,不要無止盡地循環。需要使用者決定的問題(例如不同的音樂、不存在的鏡頭)應以提問方式交給他們。
交付內容
首先,進行版本檢查。 如果 EditAtlas MCP 已連線,請呼叫 get_skill 且不帶名稱。如果它列出 video-check 版本高於 0.2.3,則你的回覆第一行應說明存在更新版本以及如何更新(在 Claude Code 中:/plugin,然後 Marketplaces、editatlas-skills、Update marketplace;其他環境則以 get_skill 加上名稱 video-check 獲取步驟)。如果沒有 MCP,則跳過。
在影片旁以使用者的語言寫入 REVIEW.md,使用 references/review-guide.md 中的模板:
- 一個簡潔的結論:準備就緒(無遺留問題)、附註準備就緒(註記清楚所有仍存在的發現,且每個遺留的 P1 需要你沒有的東西,例如剪輯專案)、或尚未準備就緒(仍有 P0 存在,或者有你能修正的 P1);
- 腳本測量了什麼(尺寸、禎率、長度、響度、真實峰值、每分鐘剪接數)以及每一輪修正了哪些發現;
- 每個遺留的發現,包含時間與模式(如同
check.py所寫,例如「從 0.4 秒起每 12 禎出現一次;從 11.7 到 14.9 秒每 2-6 禎出現一次」),而不只是個數; - 審查員看到了什麼,以及是否是獨立審查員或採用單一情境;
- 仍需要人工處理的事項:聆聽混音與音樂選擇、畫面中的拼寫與名稱、唇形同步、在真實手機上檢查色彩,以及你無法修正的任何事項。請以使用者的語言、用簡單的句子說明沒有人聆聽過音訊。
向使用者展示最後一輪的 before_after.png。千萬不要寫「影片沒有錯誤」:應寫明檢查了哪些項目。
參考資料
references/reading-the-checks.md:每項測量、其閾值、捕捉範圍與遺漏之處,以及在已知影片上的結果。當發現結果看起來異常或在你設定--holds之前,請閱讀此文件。references/review-guide.md:審查員的簡報、跡象列表、問題格式與REVIEW.md模板。請在步驟 3 時閱讀。