Motion Inspo:參考資料的尋找、拆解與測量
優秀的動態圖形並非來自文字描述,而是源自具體的參考範例。此技能負責尋找參考影片、下載以供研究、將其拆解為單幀圖像並進行測量。你可以使用相同的測量方式,在後續檢查自己的渲染成果。
版權聲明: 參考片段之版權歸原創作者所有。僅限於本地研究,不得重新上傳,不得納入版本控制倉庫(refs/clips/ 應加入 .gitignore)。可借鑑的是語法(節奏、轉場、運鏡),而非內容。
所有腳本均位於本技能的 scripts/ 目錄下。它們會將輸出寫入當前工作目錄下的 refs/ 資料夾(或 $MOTION_REFS_ROOT 指定的路徑)。前置需求:python3、ffmpeg、uv(用於管理有相依套件的腳本)。
資料來源
references/referenzfilme.md:50 部經過評分的參考影片,依風格分類(乾淨 SaaS、高階產品、動態字體、3D 物件、解說影片、編輯/拼貼、暗黑電影),並包含反例參考。- whatships.com(約 2,500 部來自 X 的產品發布影片)與 flowjam.com/library(55 部精心策劃的產品發布影片),可透過
refs.py search搜尋。 - 其他網站與資料集:請參閱倉庫根目錄的
RESOURCES.md。
指令
python3 scripts/refs.py search product launch 3d keyboard --n 15 # 搜尋 whatships + flowjam
python3 scripts/refs.py get <x.com-status | whatships | youtube | vimeo-url> --name <slug> # 下載至 refs/clips/
python3 scripts/refs.py study <slug> --every 0.5 # 拆解為單幀、分析弧線、剪接、節奏 → refs/study/<slug>/
python3 scripts/sheet.py <video.mp4> <out-prefix> --every 0.25 # 建立附時間戳的聯繫表(4 幀/秒)
uv run scripts/ref_metrics.py <ref.mp4> --no-ocr # 測量目標參考
uv run scripts/ref_metrics.py render.mp4 --ref <ref.mp4> --out check/metrics # 將自己的渲染與參考比較
uv run scripts/motion_check.py render.mp4 [--script sprechtext.txt] # 檢查幻燈片/劣質模式
uv run scripts/beats.py track.mp3 --fps 30 --out beats.json # 從音樂提取節拍網格
搜尋關鍵詞應使用英文,並著重於動態而非產業:例如「camera dives into ui」、「kinetic type scale jump」、「object becomes logo」、「paper collage top down」。
測量數據的意義
ref_metrics.py 測量:每 10 秒的剪接數與新鏡頭數、鏡頭長度、鏡頭靜止比例、每幀畫面變化量、空白片段、文字佔比、亮度/對比/飽和度,以及開場(前 2 秒)。由此訂定目標:密度 ≥ 參考的 80%,鏡頭靜止比例 ≤ 參考 + 15 個百分點,開場的動態程度 ≥ 參考的 80%。
從測量中學到最重要的一課:所謂的「每過一秒就換畫面」的密集感,通常來自快速的鏡頭移動與材質變化,而非大量的剪接。某個被測量的 3D 產品影片每 10 秒僅有 4.3 次剪接,但鏡頭靜止時間僅佔 14%。
motion_check.py 可偵測常見的劣質(slop)模式:左上角標題加下方圖片(幻燈片)、靜止不動的句子、重複旁白的文字(回聲)、畫面凍結、過長的鏡頭、文字牆、方塊網格。所謂「通過」僅表示「未發現任何已知的劣質模式」。作品是否優秀,仍需透過肉眼觀察畫面來判斷。各風格的門檻值定義於 motion-director/references/rules.md。文字檢查依賴 macOS 的 OCR 功能(ocrmac);在其他系統上,僅能執行影像與時間相關的檢查。
拆解(每個參考不超過 10 行)
流程與模板請參考 motion-director/references/inspiration.md。簡而言之:以 4 幀/秒的速率檢視聯繫表,針對每個鏡頭記錄時間、景別、運鏡、發生的事件、材質/燈光、轉場方式。最後決定「採用」或「不採用」。