Muse Motion 是做什麼的?
版本 1.3 (2026-11-15)。與 1.0 版本的變更記錄於 CHANGELOG.md。
目的與路徑選擇
-
對於任何需要動態圖像、動畫文字、圖形疊加、轉場、字幕、數據動畫或任何格式的全動態主導剪輯的影片剪輯任務,請使用此技能。
-
以 Muse 本身的身分工作,使用本地的 Remotion、ffmpeg 和 Python 程式碼堆疊。除非使用者明確命令使用不同的路徑,否則不需要 Codex、OpenAI 或 After Effects GUI。
-
在建立之前,根據持續時間和格式來路由任務(路由定義在 references/workflow-and-directive.md)。快速片頭:最多 15 秒的標題或倒鉤,通常僅包含圖形。短格式:最多 90 秒的垂直或方形社交影片。長格式:超過 90 秒,以原始鏡頭為主。僅圖形:無攝影機原始鏡頭 - 歌詞影片、標誌動畫、靜態圖片加文字解說;指令來源為類型 "audio" 或類型 "none",並帶有 timeline.duration_s。
-
永遠不要修改原始媒體。將來源檔案複製到專案資料夾中,保持原始檔案不變,並將所有輸出寫入專案編輯資料夾下。
-
在構建時讀取已安裝的 Remotion 版本文檔,當 API 細節很重要時。Remotion v4 變化頻繁,因此不要相信記住的 API 勝過已安裝的套件文檔。
快速專業工作流程
-
從接收開始。使用 ffprobe 探查每個來源,記錄寬度、高度、精確幀率、持續時間、編解碼器、顏色和音訊取樣率,並在簡報範本中列出交付物、平台、長寬比、字幕需求和截止日期。
-
在設計任何內容之前,先進行本地轉錄。使用 ffmpeg 提取 16 kHz 單聲道音訊,使用 faster-whisper 運行單詞時間戳記,快取轉錄 JSON,並標記每個機率低於 0.80 的單詞,以便人工檢查名稱和數字。
-
將單詞分組為完整的語義節拍。使用恰好一個驗證器角色標記來標記每個節拍角色,全部小寫:hook、context、problem、promise、reveal、definition、process、proof、reassurance、transition、cta。
-
在任何圖形之前,先撰寫導演處理意見和編輯指令 JSON。驗證分兩個階段:設計時執行 scripts/validate_directive.py 搭配 --draft(僅架構門控,草稿 PASS 絕非渲染許可),並在渲染前執行時不帶 --draft(渲染就緒門控:approval.status 必須為 approved 且零歧義,來源媒體必須存在並探測到匹配的持續時間,佈局必須在畫布內,受保護區域需進行碰撞檢測(在區域的 10%、佈局的 50% 或任何關鍵區域重疊時失敗;覆蓋需要布林值 true 加上 overlap_reason 並始終報告),角色、處理意見和轉場標記必須來自 references/workflow-and-directive.md 中的固定集合,且 reveal_sync 元素必須在 on_screen_copy 中聲明)。任何 INVALID 結果都會停止渲染。
-
在動畫之前建立風格框架。為標題、典型場景、數據場景、下三分之一和結束卡分別渲染一個完成的靜止畫面,並從這些畫面鎖定字體、顏色、間距、安全區域和動作標記。
-
當時間尚未鎖定時,建立動態分鏡。使用風格框架靜止畫面、最終時間和草稿或最終音訊,以半規模渲染真實構圖,並在完整動畫之前檢查該檔案上的節奏。
-
分階段進行動畫處理。首先封鎖關鍵姿態,其次添加緩動和彈簧,第三添加交錯和跟隨動作,最後在視覺著陸點的一幀範圍內同步聲音打擊點。
-
先在字幕之前合成圖形。最後添加字幕,以便它們保持在頂層並在交付安全區域內。
-
在交付前驗證完成的檔案。遵循此技能中的驗證門控,並且永遠不要僅根據渲染成功訊息進行交付。
編輯規則
-
為每個時間線間隔分配恰好一種主要處理方式,使用驗證器處理標記:CLEAN_PRESENTER、OVERLAY_CARD、FULLSCREEN_MOTION、PRESENTER_INSET、SELECTIVE_TEXT、TRANSITION、KINETIC_TYPE、DATA_SCENE、CALLOUT、LOWER_THIRD、TITLE、END_CARD。
-
保護主講者。保持臉部、眼睛、麥克風和主要手勢通道清晰,並在實際原始鏡頭(而非空白畫布)上檢查保護。
-
讓意義引導動作。僅對承載意義的單詞和元素(例如名詞、動詞、數字和對比)進行動畫處理,並保持填充詞穩定。
-
每個節拍保持一個主要的動畫元素。次要動作可以支持主要動作,但絕不能與之競爭。
-
每個解析後的圖形都要保持足夠長的時間以便閱讀。持續時間短於其進入加上退出時間即為缺陷。
-
僅使用官方品牌標誌。從其各自的新聞資料包或品牌頁面獲取每個命名的品牌標誌,記錄來源,並且永遠不要繪製、描摹、重新著色或用輸入文字或通用圖示替換標誌。
-
保持螢幕上的文字忠實於口頭聲明。必要時進行濃縮,並且永遠不要暗中改寫或發明聲明。
-
在線上影片中,不要在掛鉤之前放置任何標誌過場、問候語或緩慢的開場。將掛鉤作為視覺中斷、口頭承諾和螢幕文字在最初的幾秒鐘內堆疊起來。
動作預設
-
為剪輯匹配來源幀率。為新的網路和社交動態構圖使用 30 fps,僅為電影作品使用 24 fps,僅為遊戲、體育或快速螢幕擷取使用 60 fps。
-
永遠不要對位置或縮放使用線性緩動。為進入使用 ease out,為退出使用 ease in,為停留在螢幕上的移動使用 ease in out,並僅為循環、進度條和時間驅動的值保留線性。
-
使用動作參考中的內部曲線。主力進入曲線是 cubic bezier 0.16, 1, 0.3, 1,Material 標準曲線是 0.2, 0, 0, 1,而 overshoot 曲線是 0.34, 1.56, 0.64, 1,要節制使用。
-
使用彈簧來實現有機的進入和跟隨動作。對於平滑無彈跳的穩定使用 damping 200,對於俏皮的彈跳使用 damping 12 到 15,對於乾脆的彈出使用 damping 20 搭配 stiffness 200 和 mass 0.8。
-
保持標準進入時間在 250 到 500 毫秒之間。保持退出時間約為進入持續時間的 60% 到 75%,保持微移動在 100 到 200 毫秒之間,並保持幾乎沒有介面的移動超過 500 毫秒。
-
添加預期作為一個小的反向移動,約為移動距離的 5% 到 10%,持續 3 到 6 幀(30 fps)。通過在主要元素著陸後交錯次要元素 2 到 4 幀來添加跟隨動作。
-
當圖形必須匹配實拍原始鏡頭時,使用 180 度快門感覺作為運動模糊預設。在必須閱讀的文字和數據值上禁用模糊模擬。
元素手冊
-
遵循分類法手冊參考,了解每個元素的精確規格。它涵蓋了動態排版、標題、下三分之一、字幕、提示框、標誌動畫、轉場、數據視覺化、UI 模擬、社交元素、解說與白板元素、視差、3D、角色動畫基礎、產品宣傳、歌詞影片和結束卡。
-
構建下三分之一時,先放強調元素,其次名字,最後角色。在 30 fps 時使用大約 15 幀作為進入,保持至少 3 秒,並保持總時長在 3 到 5 秒之間。
-
將無障礙字幕和動畫社交字幕視為不同的產品。無障礙字幕保持忠實,沒有裝飾性動畫,而社交字幕在它們所字幕的剪輯相同的 Sequence 內使用單詞級別高亮顯示。
-
真實地為數據製作動畫。從基線開始增長長條圖,按時間順序繪製線條,使用 ease out 將數字計數到精確的最終值,並且永遠不要讓數據值 overshoot。
-
將轉場視為標點符號。預設偏愛硬切,使用溶接表示時間流逝,並且僅在場景之間的關係需要時,才使用擦除、橫搖、縮放、變形和匹配剪接。
-
從分離的深度平面構建視差。前景移動最快,中景較慢,背景最慢,並保持虛擬攝影機角度適中,以免平坦的圖層暴露自己。
代碼生產規則
-
從當前幀推導出每個動畫。為所有動畫使用 useCurrentFrame 和 useVideoConfig,並且永遠不要使用 CSS 過渡、CSS 動畫、計時器或未播種的隨機值。
-
對每個 bounded interpolate 調用兩側進行鉗制。在程式碼中以秒為單位乘以 fps 來書寫時間,並在不可避免使用裸數字時,保留帶有秒數註釋的幀數。
-
偏好使用 inline interpolate 搭配個別的 scale、translate 和 rotate 屬性,而不是組合的 transform 字串。使用 interpolate 進行節拍精確時間和循環,並在需要自然穩定的效果(而非精確幀)時使用彈簧。
-
將每個交付物結構化為一個註冊的 Composition,並通過 calculateMetadata 實現數據驅動的持續時間,其中時間來自字幕或節拍網格。將場景構建為 Sequence 或 Series 區塊,並使用 TransitionSeries 構建轉場。
-
在模組頂層明確載入字體,並使用縮小的字重。使用 Remotion 媒體組件載入媒體,這些組件會阻塞渲染直到資源準備就緒,並使用 delayRender 搭配清晰的繼續路徑。
-
當交付物是疊加層時,在每個環節保留 Alpha 通道。為編輯器渲染 PNG 幀並完成為 ProRes 4444(yuva444p10le),為瀏覽器渲染 VP9 WebM(yuva420p),或使用 PNG 序列作為最便攜的形式,並且永遠不要在 H.264 MP4 中承諾 Alpha。
-
記住來自實際生產的經過驗證的 Alpha 課程。直接的 Remotion 影片渲染可能默默地丟棄 Alpha,因此安全的路線是首先渲染 PNG 序列,然後使用 ffmpeg prores_ks 4444 進行編碼,接著進行像素格式檢查,確認存在 Alpha 平面。
-
有目的地加速渲染。對不透明構圖使用 JPEG 幀,僅對 Alpha 使用 PNG,為時間批准以半規模進行草稿渲染,在本地修復後僅重新渲染固定的幀範圍,並在實際機器上對並發進行基準測試。
音訊、響度與匯出
-
首先混合人聲,在語音下將音樂音量降低,並謹慎地在視覺著陸點放置音效,每個品牌使用一個音效家族。最終混音作為一個整體進行標準化,永遠不要逐個剪輯進行標準化。
-
對 YouTube 和社交媒體交付,使用 -14 LUFS 整合和最多 -1 dBTP 作為工作目標。對口語播客使用 -16 LUFS,對 EBU R 128 廣播使用 -23 LUFS,對 ATSC 廣播使用 -24 LKFS。
-
在報告時說明響度注意事項。YouTube 沒有發布 LUFS 目標,因此 -14 是從播放器標準化數據推斷出的工作預設值,而不是發布的平台規則。
-
對交付物使用雙通道 loudnorm 進行標準化。首先測量,然後使用測量值和線性 true 進行應用,因為單通道 loudnorm 是動態處理的,可能會泵動混音。
-
將長格式導出為 MP4,使用 H.264 High Profile,逐行掃描,4:2:0,VBR 和 AAC LC(48 kHz)。對 1080p(30 fps)使用 8 Mbps,對 60 fps 使用 12 Mbps,對 1440p 使用 16 和 24 Mbps,對 4K(30 fps)使用 35 到 45 Mbps。
-
為 Shorts、Reels 和 TikTok 導出一個 1080x1920、9:16、30 fps、10 到 16 Mbps 的垂直主檔案。當安全區域不同時,從同一個構圖渲染每個平台的變體。
驗證門控
-
在掛鉤、每個場景的英雄時刻、每個進入和退出、每個轉場以及最終幀處檢查幀。將英雄幀與已批准的風格框架進行比較。
-
使用疊加層檢查安全區域。將 16:9 文字保持在 90% 標題安全區域內,並將垂直關鍵內容排除在頂部平台帶、底部字幕帶和右側操作欄之外。
-
通過聽覺和視覺檢查字幕。確認名稱、數字和低置信度單詞,將標準字幕保持在每行不超過 42 個字符且不超過 2 行,並將成人的閱讀速度保持在每秒 20 個字符或以下。在 SRT 上執行 scripts/check_captions.py 以自動化格式檢查(行長度、閱讀速度、提示持續時間、重疊以及指定顏色時的 WCAG 對比度);措辭仍然是人為判斷。對於語音來源,scripts/transcribe.py 會生成帶有單詞時間戳記的本地轉錄(faster-whisper,PCM 路徑),字幕和節拍從中確定時間。
-
在最終編碼檔案上測量響度和真實峰值,而不是在專案上。首先在編碼檔案上執行 scripts/peak_guard.py:AAC 編碼可能會超出 loudnorm 的真實峰值上限(在真實交付中測得 -0.95 和 -0.7 dBTP,而限制為 -1.0),該保護程式會應用最小的足夠增益減少,作為純音訊重新封裝並重新測量。然後在最終檔案上執行 scripts/qc_probe.py,搭配每個交付物的 --spec 檔案,並保存 --report JSON:它會強制執行音訊存在(缺少音訊失敗為 AUDIO_STREAM_MISSING,數位靜音失敗為 AUDIO_SILENT)、響度目標和容差、真實峰值上限、尺寸、幀率(容差 0.01,偵測到 VFR)、編解碼器、像素格式、設定檔、顏色標籤、持續時間、需要時檢查 Alpha(格式 AND 解碼內容 - 恆定不透明 Alpha 失敗),以及 MP4/MOV 的 moov atom 前置;spec 鍵是白名單制的,起始 spec 位於 templates/。使用 scripts/sample_frames.py 提取掛鉤、四分之一、英雄、四分之三和結束幀以及一個聯繫表,用於人工視覺檢查(使用 --directive 它還會對每個節拍開始、揭示和結束進行採樣)。
-
應用無障礙硬性限制。保持普通文字的對比度在 4.5:1 或以上,大字型在 3:1 或以上,並且在任意 1 秒內閃爍不超過 3 次。
-
準確報告哪些內容已驗證,哪些未驗證。將渲染成功、幀檢查、響度測量和設備或平台預覽分為不同的聲明。
-
永遠不要聲稱未經驗證的內容。此技能套件未捆綁完整的 Remotion 範例專案,因此不要聲稱存檔本身經過渲染驗證;僅聲明在當前工作區中實際產生的渲染。自動化門控永遠不能取代人工對敘事真實性、視覺品味、字幕準確性或運動原始鏡頭上面部保護的簽核。
參考
… [為翻譯而截斷]