Communitygithub.com

100FOUNTS/brief-to-3d-video-pipeline

在驗收前驗證工作室的輸出(影片、圖片、音訊、3D模型):擷取幀並仔細檢視、使用 ffprobe 檢查格式、測量音量並執行 `make verify`。每次算圖後、修改音訊或調整簡報後皆可使用。

brief-to-3d-video-pipeline 是什麼?

此技能為一個全面的輸出驗證管道,確保工作室產出(影片、圖片、音訊、3D模型)在驗收前經過嚴格的品質檢查。它會擷取多個分散時間點的畫面以生成聯絡表(contact sheet),並強制要求視覺檢查,以防自動測試無法捕捉的瑕疵(如文字重疊、元素超出畫面等)。同時使用 ffprobe 驗證格式規範(解析度、影格率、編碼、音訊規格),並透過 EBU R128 標準測量響度(目標 -16 LUFS)。最後執行 `make verify` 以確認所有檢查通過。此技能支援 Claude Code、Cursor 等 AI 編碼代理,適用於影片算圖後、音訊變更或修改簡報後的驗證環節。它還提醒常見陷阱:確保輸出確定性需使用 `cmp` 或幀雜湊比對,避免小型 Whisper 模型在靜音段產生幻覺,並注意 PNG 與 JPEG 在不同場景下的效能差異。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/100FOUNTS/brief-to-3d-video-pipeline/tree/HEAD/.claude/skills/render-check

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

驗證工作室的輸出

專案黃金法則:在親眼看過結果之前,絕不能說「完成了」。 自動測試只能確認功能正常;唯有親眼看過,才能確認外觀是否正確(在此專案中,hyperframes check 通過時文字已被弧線穿越,而檢視器測試無法偵測到其中任何一個視覺瑕疵)。

步驟

  1. 影片或有 seek(t) 的場景:拍攝 6–8 張分散時間點的幀(不只是第一張)製作聯絡表並用 Read 檢視: node scripts/capture.mjs <scene.html> 1,4,7,10,13,16,19 out/frames/sheet.png 4 對於已算圖完成的 MP4:ffmpeg -i out/x.mp4 -vf "fps=1/3,scale=640:-1,tile=3x3" -frames:v 1 out/frames/sheet.png。 檢查:文字是否被截斷或重疊、元素出框、對比度不足、空白或凍結的幀。
  2. 格式:ffprobe -v error -show_streams -show_format -of json <file> → 1920x1080、30 fps、H.264 yuv420p、預期長度、AAC 48 kHz 音訊軌。
  3. 音訊:ffmpeg -i <file> -vn -af ebur128=peak=true -f null - → 整合響度 −16 LUFS(±1)、真實峰值 ≤ −1 dBFS。 你不能用聽的:請使用頻譜圖(showspectrumpic)、測量值以及 Whisper large-v3 的回推轉錄(audio/verify_voice.py)。 絕對不要使用小型 Whisper:它會在靜音處虛構文字,導致 49–160% 的錯誤率。
  4. 全部一起檢查:make verify(或 audio/.venv/bin/python scripts/verify_output.py)。必須以 ALL CORRECT 結束。
  5. 誠實報告:你檢查了什麼、你測量了什麼、你 無法 判斷的項目(語音的自然度、設計品味),以及即使已修正仍出現的失敗項目。

已知陷阱

  • 「完全相同」的結果必須透過實證(cmp、使用 ffmpeg -f framemd5 計算幀雜湊)來證明,不能僅憑假設。Kokoro 若未指定種子則不具確定性。
  • 低於 0.4 秒時間視窗的響度測量會得到 −65 LUFS(垃圾值):這類測量會被跳過。
  • 在複雜場景中,PNG 的處理速度可能比 JPEG 慢 10 倍(210 秒對比 20 秒),而在平坦場景中則更快。

相關技能