Communitygithub.com

OxMediaEcomm/video-editing

AI 輔助的影片編輯工作流程,涵蓋剪輯、結構化與增強真實素材。適用於原始拍攝到最終完成的完整流程,並整合 FFmpeg、Remotion、ElevenLabs、fal.ai 以及 Descript 或 CapCut 等工具。當使用者想要編輯影片、剪輯素材、製作 Vlog 或建立影片內容時使用。

video-editing 是什麼?

這個技能定義了一個完整的 AI 輔助影片編輯管線,專注於處理真實拍攝的影片素材,而非從提示詞產生影片。其核心價值在於「壓縮」:透過結構化的工作流程,將冗長的原始錄影快速轉化為精煉、有層次的內容。技能詳細說明了從原始素材捕捉(如 Screen Studio 或直接攝影)開始,經由 Claude Code 或 Codex 進行組織與規劃(產生轉寫稿、標籤、剪輯決策列表),再到使用 FFmpeg 進行確定性的批次剪輯與預處理,並利用 Remotion 框架以程式化方式覆蓋動態圖形、標題和浮水印。最後,透過 ElevenLabs 和 fal.ai 選擇性地產生語音旁白、音樂與視覺資產,並在 Descript 或 CapCut 中進行最終的人工潤飾與匯出。技能也涵蓋了社交媒體平台的重新構圖、場景偵測、自動剪輯與高光片段提取等進階功能。支援的主要平台包括 FFmpeg、Remotion、ElevenLabs、fal.ai、VideoDB 以及傳統編輯軟體 Descript 與 CapCut。

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

在你喜歡的 AI 中提問

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

預覽

來自技能 README

說明文件

影片編輯

AI 輔助的真實素材編輯。不是從提示詞生成。而是快速編輯現有影片。

何時啟用

  • 使用者想要編輯、剪輯或結構化影片素材
  • 將長時間錄影轉換為短片內容
  • 從原始錄製素材建立 Vlog、教學或產品展示影片
  • 為現有影片添加疊加層、字幕、音樂或旁白
  • 為不同平台(YouTube、TikTok、Instagram)重新調整畫面
  • 使用者說「編輯影片」、「剪輯這段素材」、「製作 Vlog」或「影片工作流程」

核心論點

AI 影片編輯的價值在於,當你不再要求它創造整部影片,而是用它來壓縮、結構化和增強真實素材時才體現出來。價值不在於生成。價值在於壓縮。

管線

Screen Studio / 原始素材
  → Claude / Codex
  → FFmpeg
  → Remotion
  → ElevenLabs / fal.ai
  → Descript 或 CapCut

每一層都有其特定的任務。不要跳過任何一層。不要試圖讓一個工具完成所有工作。

第一層:捕捉 (Screen Studio / 原始素材)

收集來源素材:

  • Screen Studio:為應用程式展示、編碼過程、瀏覽器工作流程提供 polished 螢幕錄影
  • 原始攝影機素材:Vlog 素材、訪談、活動錄影
  • 透過 VideoDB 的桌面捕捉:具有即時上下文的會話錄製(參見 videodb 技能)

輸出:準備好進行組織的原始檔案。

第二層:組織 (Claude / Codex)

使用 Claude Code 或 Codex 進行:

  • 轉寫和標記:產生逐字稿,識別主題和話題
  • 規劃結構:決定保留什麼、剪掉什麼、順序如何安排
  • 識別無效片段:找出停頓、離題、重複的鏡次
  • 產生剪輯決策列表:剪輯的時間戳記、要保留的片段
  • 建立 FFmpeg 和 Remotion 程式碼:產生指令和合成
範例提示詞:
「這裡有一份 4 小時錄影的逐字稿。找出 8 個最強的片段,
用來製作一個 24 分鐘的 Vlog。為每個片段提供 FFmpeg 剪輯指令。」

這一層關乎結構,而非最終的創意品味。

第三層:確定性剪輯 (FFmpeg)

FFmpeg 處理繁瑣但至關重要的工作:分割、修剪、串接和預處理。

依時間戳記提取片段

ffmpeg -i raw.mp4 -ss 00:12:30 -to 00:15:45 -c copy segment_01.mp4

從剪輯決策列表進行批次剪輯

#!/bin/bash
# cuts.txt: start,end,label
while IFS=, read -r start end label; do
  ffmpeg -i raw.mp4 -ss "$start" -to "$end" -c copy "segments/${label}.mp4"
done < cuts.txt

串接片段

# 建立檔案列表
for f in segments/*.mp4; do echo "file '$f'"; done > concat.txt
ffmpeg -f concat -safe 0 -i concat.txt -c copy assembled.mp4

建立代理檔案以加快編輯速度

ffmpeg -i raw.mp4 -vf "scale=960:-2" -c:v libx264 -preset ultrafast -crf 28 proxy.mp4

提取音訊以進行轉寫

ffmpeg -i raw.mp4 -vn -acodec pcm_s16le -ar 16000 audio.wav

標準化音量

ffmpeg -i segment.mp4 -af loudnorm=I=-16:TP=-1.5:LRA=11 -c:v copy normalized.mp4

第四層:可程式化合成 (Remotion)

Remotion 將編輯問題轉化為可組合的程式碼。用它來處理傳統編輯器令人痛苦的事情:

何時使用 Remotion

  • 疊加層:文字、圖片、品牌標誌、下三分之一
  • 資料視覺化:圖表、統計資料、動畫數字
  • 動態圖形:轉場、解說動畫
  • 可組合場景:跨影片可重複使用的範本
  • 產品展示:附註解的螢幕截圖、UI 高亮

基本 Remotion 合成

import { AbsoluteFill, Sequence, Video, useCurrentFrame } from "remotion";

export const VlogComposition: React.FC = () => {
  const frame = useCurrentFrame();

  return (
    <AbsoluteFill>
      {/* 主要素材 */}
      <Sequence from={0} durationInFrames={300}>
        <Video src="/segments/intro.mp4" />
      </Sequence>

      {/* 標題疊加層 */}
      <Sequence from={30} durationInFrames={90}>
        <AbsoluteFill style={{
          justifyContent: "center",
          alignItems: "center",
        }}>
          <h1 style={{
            fontSize: 72,
            color: "white",
            textShadow: "2px 2px 8px rgba(0,0,0,0.8)",
          }}>
            AI 編輯堆疊
          </h1>
        </AbsoluteFill>
      </Sequence>

      {/* 下一個片段 */}
      <Sequence from={300} durationInFrames={450}>
        <Video src="/segments/demo.mp4" />
      </Sequence>
    </AbsoluteFill>
  );
};

渲染輸出

npx remotion render src/index.ts VlogComposition output.mp4

請參閱 Remotion 文件 以獲取詳細的模式和 API 參考。

第五層:產生的資產 (ElevenLabs / fal.ai)

只產生你需要的。不要產生整部影片。

使用 ElevenLabs 產生旁白

import os
import requests

resp = requests.post(
    f"https://api.elevenlabs.io/v1/text-to-speech/{voice_id}",
    headers={
        "xi-api-key": os.environ["ELEVENLABS_API_KEY"],
        "Content-Type": "application/json"
    },
    json={
        "text": "你的旁白文字在此",
        "model_id": "eleven_turbo_v2_5",
        "voice_settings": {"stability": 0.5, "similarity_boost": 0.75}
    }
)
with open("voiceover.mp3", "wb") as f:
    f.write(resp.content)

使用 fal.ai 產生音樂和音效

使用 fal-ai-media 技能來:

  • 生成背景音樂
  • 生成音效(ThinkSound 模型,可實現影片轉音訊)
  • 生成轉場音效

使用 fal.ai 產生視覺素材

用於插入鏡頭、縮圖或不存在的 B-roll:

generate(app_id: "fal-ai/nano-banana-pro", input_data: {
  "prompt": "專業的科技 vlog 縮圖,深色背景,螢幕上有程式碼",
  "image_size": "landscape_16_9"
})

VideoDB 生成式音訊

如果已配置 VideoDB:

voiceover = coll.generate_voice(text="旁白文字", voice="alloy")
music = coll.generate_music(prompt="編程 vlog 的背景 lo-fi 音樂", duration=120)
sfx = coll.generate_sound_effect(prompt="輕柔的咻聲轉場")

第六層:最終潤飾 (Descript / CapCut)

最後一層是人工的。使用傳統編輯器來處理:

  • 節奏:調整感覺太快或太慢的剪輯
  • 字幕:自動生成,然後手動清理
  • 調色:基本的色彩校正與營造氛圍
  • 最終音訊混音:平衡語音、音樂和 SFX 的音量
  • 匯出:特定平台的格式和品質設定

這是品味所在。AI 清理重複性的工作。你做出最終的決定。

社交媒體重新構圖

不同平台需要不同的長寬比:

平台長寬比解析度
YouTube16:91920x1080
TikTok / Reels9:161080x1920
Instagram 貼文1:11080x1080
X / Twitter16:9 或 1:11280x720 或 720x720

使用 FFmpeg 重新構圖

# 16:9 轉 9:16(中心裁切)
ffmpeg -i input.mp4 -vf "crop=ih*9/16:ih,scale=1080:1920" vertical.mp4

# 16:9 轉 1:1(中心裁切)
ffmpeg -i input.mp4 -vf "crop=ih:ih,scale=1080:1080" square.mp4

使用 VideoDB 重新構圖

from videodb import ReframeMode

# 智慧重新構圖(AI 引導的主體追蹤)
reframed = video.reframe(start=0, end=60, target="vertical", mode=ReframeMode.smart)

場景偵測與自動剪輯

FFmpeg 場景偵測

# 偵測場景變化(threshold 0.3 = 中等靈敏度)
ffmpeg -i input.mp4 -vf "select='gt(scene,0.3)',showinfo" -vsync vfr -f null - 2>&1 | grep showinfo

靜音偵測以進行自動剪輯

# 找出靜音片段(用於剪掉空檔)
ffmpeg -i input.mp4 -af silencedetect=noise=-30dB:d=2 -f null - 2>&1 | grep silence

高光片段提取

使用 Claude 分析逐字稿和場景時間戳記:

「根據這份含有時間戳記的逐字稿和這些場景切換點,
找出 5 個最具吸引力的 30 秒片段,適合在社交媒體上發布。」

每個工具的最佳用途

工具優點弱點
Claude / Codex組織、規劃、程式碼生成非創意品味層
FFmpeg確定性剪輯、批次處理、格式轉換沒有視覺編輯介面
Remotion可程式化疊加層、可組合場景、可重複使用範本非開發人員學習曲線較高
Screen Studio立即獲得 polished 螢幕錄影僅限螢幕捕捉
ElevenLabs語音、旁白、音樂、音效非工作流程核心
Descript / CapCut最終節奏、字幕、潤飾手動,無法自動化

關鍵原則

  1. 編輯,不是生成。 這個工作流程是為了剪輯真實素材,而不是從提示詞創建。
  2. 先結構,後風格。 在觸碰任何視覺元素之前,先在第二層把故事理清楚。
  3. FFmpeg 是骨幹。 無聊但至關重要。是長素材變得可管理的地方。
  4. Remotion 用於重複性。 如果你會做超過一次,就把它做成 Remotion 元件。
  5. 選擇性地生成。 AI 生成只用於不存在的資產,而不是用於一切。
  6. 品味是最後一層。 AI 清理重複性工作。由你做出最終的創意決定。

相關技能

  • fal-ai-media — AI 圖片、影片和音訊生成
  • videodb — 伺服器端影片處理、索引和串流
  • content-engine — 平台原生的內容發布

相關技能