Communitygithub.com

yunjundai/video-editing-skills

使用 Remotion、FFmpeg、Shotcut 與 CPU 語音辨識,在沒有獨立顯示卡或資源有限的電腦剪輯現有影片與照片,製作繁體字幕、片頭、姓名條及轉場,保留可修改專案。適用於學校活動、訪談、紀念影片;需要 DaVinci Resolve 原生專案時使用相應剪輯技能。

video-editing-skills 是什麼?

此技能專為在缺乏獨立顯示卡(如 NVIDIA GPU)或計算資源有限的環境中,進行專業級影片剪輯而設計。它整合了 Remotion(動畫生成與片段組合)、FFmpeg(影音編碼與處理)、Shotcut(精修與最終輸出),以及基於 faster-whisper 的 CPU 端語音辨識(支援 int8 量化)與 OpenCC 繁體轉換。技能預設不依賴 CUDA、NVENC、DaVinci Resolve 或雲端算圖,所有操作皆在本地完成,適合學校活動、訪談、紀念影片等場景。工作流程強調素材盤點、代理檔製作、分段渲染與字幕時間軸校正,並保留完整的 Remotion 專案、SRT 字幕與 Shotcut MLT 檔案,以利後續修改。最終交付前會進行黑畫面/靜音檢查與人工抽驗,確保輸出品質。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/yunjundai/video-editing-skills/tree/HEAD/cpu-video-editing

在你喜歡的 AI 中提問

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

說明文件

無獨顯影片剪輯

在其他 AI agent 使用、安裝或封裝本技能時,先讀 agent-compatibility.md,依目標平台處理技能目錄與本機設定。

以本機 Remotion 製作動畫與組片、FFmpeg 處理影音、Shotcut 精修;字幕採 faster-whisper CPU/int8 與 OpenCC。預設不依賴獨顯、CUDA、NVENC、DaVinci Resolve、雲端算圖或付費效果。沿用使用者指定的風格與交付格式。

環境與資源

首次使用先將 local-environment.example.json 複製成 references/local-environment.json,填入實際工具位置;範例路徑不代表工具已安裝。

  • 先讀 references/local-environment.json,使用其中工具的絕對路徑。執行本技能 scripts/project.py doctor;字幕使用專用 venv 的 Python。doctor 不要求 CUDA 或 Resolve,僅檢查 Shotcut 程式存在,不能代表 GUI 已驗證。
  • 本技能內含腳本、Remotion 模板與依賴鎖檔,可獨立於其他剪輯技能使用;本機工具與模型的位置由設定檔指定。搬到別台電腦時,讀 environment-notes.md,重建所缺依賴、修改路徑,再實測。不要假設另一台已安裝工具。
  • 預設 16:9、1920×1080、30fps;先做半尺寸預覽。Remotion 預設單作業、SwiftShader 軟體圖形後端與 H.264 軟體編碼;不自動切換 CUDA。記憶體充足時可用 --concurrency 2,低記憶體保持 1。
  • 作業依序進行,不同時執行整片渲染、字幕辨識與代理檔轉換。記憶體不足時先降低預覽尺寸、使用代理檔或拆成段落;分段須維持同樣影音規格與正確字幕時間,並檢查接縫。
  • 建議 16GB RAM 起步、32GB 更有餘裕,使用 SSD。這是工作建議,不是所有電腦都能順暢使用的保證;不以核心數或片長推算未測量的輸出速度。

素材與剪輯

  1. 需求不完整時,先依現有素材推定片長、畫幅與敘事,只有影響成品的資訊缺失才詢問。素材位置不明先盤點工作目錄。保留原始檔,派生檔放新工作資料夾。
  2. 讀 media-commands.md,使用 scripts/media.py inventory 建立長度、畫幅、音訊與縮圖清單。看代表畫面、聽人聲、讀逐字稿再選段;不把切鏡候選或推測當成已確認事實。
  3. 4K、高位元率或預覽卡頓時,使用 media.py proxy --width 960 產生 H.264/AAC 預覽檔。記錄原片與代理檔的對應,預覽可使用代理檔;正式輸出前恢復原片並重新檢查裁切範圍與同步。不要把代理檔當成原品質交付。
  4. 讀 project-commands.md,以 scripts/project.py init 建立新 Remotion 專案。將選定素材複製到 public/media/,編輯 public/project.json;資料規格見 motion-template.md。模板支援片頭、章節、照片推近、影片、引言、片尾、字幕與姓名條。
  5. 影片入點與長度先用 ffprobe 核對。優先採淡入淡出、簡單擦拭、照片緩推與短文字動畫;避免預設大量模糊、粒子、3D 或高解析多層效果。品質不足時調整設計,不以過小文字硬塞內容。
  6. 先做小段預覽與靜態畫面,確認風格與可讀性後製作整片。用 project.py render --scale 0.5 預覽,正式交付用完整尺寸。具體命令以本技能參考與腳本 --help 為準,使用絕對路徑及參數陣列處理中文與空白路徑。

繁體字幕與音訊

  • scripts/transcribe.py 明確傳 --device cpu --compute-type int8 --model 本機模型路徑 --local-files-only,使用已下載的 small 模型。辨識失敗先檢查 venv、模型與相容套件,不因速度慢而要求安裝 CUDA。
  • 對剪輯後對白音軌辨識,或將每段字幕依裁切、轉場重疊換算到最終時間軸;不可直接套用原片時間。避免用純配樂產生字幕。
  • OpenCC 只協助轉換繁體字詞;校名、人名、職稱、日期、同音字與臺語需校對。辨識不清保留待確認標記,不編造。
  • captions.json 的 captions 可放入 project.json。逐字高亮須先核對詞時間及整句/詞語文字一致性;只有句時間就顯示整句。
  • 字幕、姓名條保持安全邊界且互不遮擋;配樂降低至人聲清楚,檢查轉場時是否重疊播放兩段對白。保留 SRT 與未混配樂的對白來源方便修正。

Shotcut 精修與交付

  • project.py shotcut 成片.mp4 --output 新版本.mlt 建立 Shotcut 精修起點,含已渲染影片片段,可再調整剪接、配樂與音量。Shotcut 使用一般 CPU 效果與軟體輸出;必要時降低 Preview Scaling 並啟用代理檔。不要要求使用者開啟硬體編碼。
  • Remotion 的文字、字幕與轉場已烘焙於該片段,不是 Shotcut 原生文字層。改字或動畫須回 Remotion 專案重新輸出;不得聲稱 MLT 能逐字修改這些效果。若要求分層或原生文字,另行建立並實際驗證。
  • 用 media.py check 完整解碼檢查黑畫面、靜音與錯誤,再人工抽看片頭、轉場中點、最長字幕、姓名條與片尾,聽查對白/配樂及同步。黑場與靜音可能是設計,需要判讀。
  • 交付 MP4、縮圖、Remotion 專案與素材、project.json、SRT,以及實際建立的 Shotcut MLT 和修改方式。輸出新版本,不無聲覆寫既有成品;不要修改原片或共用 node_modules。
  • MLT 交付前用 Shotcut 或其 MLT 工具實際載入;僅 XML 格式通過時,清楚說明尚未驗證編輯器載入。未測試的功能不得宣稱成功。
  • 一般 H.264 MP4 不保留透明度。要求透明動畫時另建透明 Composition 並實測 RGBA PNG 序列或相容 alpha 編碼。

完成時說明檔案位置、實測的輸出設定、可修改範圍、待校對字幕及尚未驗證項目。工具授權依各軟體條款;AI agent 帳號額度另計。

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

相關技能