Communitygithub.com

Uerdong/remotion-explainer-video

使用 Remotion 製作中文科普動畫長片的完整流水線,涵蓋選題拆解、文案壓縮、TTS 配音、SRT 字幕、BGM 節拍分析、畫面吸附重拍、程式碼合成音效、TSX 工程搭建、靜幀自檢、雙版本交付及發布物料產出。

remotion-explainer-video 是什麼?

這是一個高度專業化的 AI 代理技能,專為使用 Remotion 製作橫向、知識型、基於 BGM 節拍卡點的中文解說動畫影片而設計。 此技能將整個影片生產流程標準化為十個嚴格順序的步驟,從選題拆解開始,經歷文案撰寫與壓縮、逐段 TTS 配音生成、SRT 字幕製作、背景音樂(BGM)的真實 BPM 實測與重拍表生成、時間軸重排(確保所有片段邊緣吸附到最近重拍)、音效的程式碼生成與精確釘幀、完整 Remotion TSX 工程搭建、逐鏡頭靜幀品質檢查,到最終的雙版本(含/不含 BGM).mp4 渲染及發布物料(封面、標題、簡介等)的產出。 該技能明確規定了十條硬性規則(如「時長由配音決定」、「所有切點必須吸附重拍」、「禁止隨機性以確保確定性渲染」)和衝突處理決策樹(如文案時長衝突時優先壓縮文案),並強調 Windows 平台的特定約束。 它主要用於 Cursor 和 Claude Code 等代理平台,透過提供詳盡的參考文件(如 references/pipeline.md, references/models.md)來指導使用者完成產出,確保最終影片在技術上精確(節拍同步、確定性渲染)且內容豐富,適合交付給客戶或發布至社群媒體。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Uerdong/remotion-explainer-video/tree/HEAD/remotion-explainer-video

在你喜歡的 AI 中提問

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

說明文件

中文科普動畫(Remotion 全流程)

按順序執行十步。每步的產物都是下一步的輸入,禁止跳步後回補。

十條鐵律

  1. 時長由配音決定,不由文案決定。 參考文案只是意圖,先按實測語速(中文 TTS 約 3.3 字/秒)估算總長;超目標時長就壓字並改口語,再逐段合成、逐段量真實時長。
  2. BPM 必須實測,不採信用戶或參考稿給的數字。 librosa 常把 104 BPM 報成 51.7(劈半),必須用自相關或換 onset 參數獨立複核,取與聽感一致的一檔。
  3. 所有切點吸附重拍。 段落邊界 = 該段配音結束時刻向上吸附到最近重拍;幀號 = round(beat * (60/BPM) * FPS),寫死進程式碼,不運行時計算。
  4. 確定性渲染。 禁 Date.now()、Math.random();一切擺動用 Math.sin(frame) 推導;同一幀任意次渲染必須像素一致。
  5. 時間軸單一事實源。 段落、幀號、配音偏移、SFX 釘幀只存在一個 timeline.ts;改文案字數 → 重跑生成腳本 → 同步 TS,絕不手改兩處。
  6. 字幕斷行按標點裝箱。 先按 ,;:。 切 clause 再裝箱;行寬用固定像素容器(如 width: 1460 + whiteSpace: "pre"),禁止靠 maxWidth 讓內容反推容器。
  7. 音訊三層分離:BGM、人聲、音效各自獨立電平;人聲 0.8、BGM 0.24 起步,渲染後實測峰值,>0.95 即削波風險。
  8. 每鏡頭渲靜幀自檢。 用 npx remotion still 逐幀看構圖,成圖前不看就渲全片等於返工。
  9. Windows 三個硬約束:--props 必須傳檔案(--props=props-nobgm.json),內聯 JSON 會被 shell 剝引號;ffmpeg 9 用 -fps_mode passthrough 而非 -vsync;改 TSX 後樣式不生效先刪 node_modules\.cache。
  10. 先交付,再評價。 已渲染的成片與已生成的圖先原樣交付給使用者,問題只記錄並說清,不擅自重生。

十步流水線

#步驟關鍵動作產物
1選題拆解定知識點鏈條、目標時長、畫幅、受眾語氣一句話選題 + 時長/畫幅約定
2解說文案按"鉤子→模型→推導→結論→啟示"壓縮到目標字數,改口語分段文案(6 段左右,每段 50–70 字)
3配音逐段獨立合成,同一音色同一參數;量每段真實時長與 f0s1..sn.wav + 段落時長表
4字幕由段時長生成 SRT,與畫面切點同源subtitles.srt
5BGM選曲或自合成,實測 BPM 與重拍表;不合適就換bgm.wav + bgm.json(beats_sec)
6重排時間軸段落邊界吸附重拍,算總幀數timeline.json + timeline.ts
7音效關鍵動作逐一對應音色,程式碼合成,釘在重拍sfx/*.wav + 釘幀表
8畫面工程theme / components / timeline + 逐段場景元件Remotion 工程
9自檢渲染逐段靜幀 → 全片 → 實測峰值out/*.mp4、QA 靜幀
10發布物料封面(程式碼渲染或設計工具)、標題、簡介、話題封面圖 + 發布文案.md

衝突處理決策

衝突處理
文案字數與目標時長衝突壓文案,不改時長。壓縮比 > 1.3 時改成口語短句,保留全部知識點
使用者給的 BPM / 時長與實測不符按實測做,並主動告知差異(如"規範寫 110 BPM / 58s,實測 104 BPM / 53.65s"),另給一條"是否按規範重排"的選項
使用者指定曲目風格不匹配先實測該曲的 BPM / 頻譜 / 峰值並給資料,再自合成替代,交付時揭露偏離原因
參考視覺規範與封面或平台風格衝突兩件事分開:正文沿用使用者的視覺規範,封面按封面平台的傳播邏輯做,並說明取捨

交付清單

  • 成片雙版本:帶 BGM / 無 BGM(平台自帶曲庫時用後者),同幀數同時長
  • 字幕 SRT(可外掛,與畫面內嵌一致)
  • 交付說明:成片表、BPM 與節拍口徑、段落邊界表、重拍落點表、文案、音效表、混音電平、工程結構、運行命令
  • 封面(橫版 + 目標平台豎版)、標題多檔、簡介多版、話題標籤

參考檔案

相關技能