讓 Claude 等 LLM 真正"看懂"影片的本地工具
HUANGCHIHHUNGLeo/claude-real-video
場景感知關鍵幀提取 + 去重 + 轉錄,讓任何 LLM 能理解影片內容而非盲目取樣,支援 URL 和本地檔案,全程本地處理
成熟度:維護活躍,最近提交 1 天前,0 個未解決問題,持續迭代中
项目体检
技术 · Python 3.10+ + ffmpeg/ffprobe(系统依赖) + yt-dlp(下载) + Pillow(图像) + Whisper(可选转录)
许可 · MIT 协议,可自由商用、修改和分发
活跃 · 最新版本 v0.7.15 发布于 1 天前,6 位贡献者,活跃维护中
解決什麼
當前 LLM 處理影片的方式存在明顯缺陷:Claude 根本不接受影片檔案,ChatGPT 只讀取字幕文本,Gemini 雖支援影片但按固定 1fps 取樣——靜態幻燈片會產生數百張重複幀,快速剪輯則會漏掉關鍵畫面。claude-real-video 通過場景檢測演算法智慧提取真正有變化的幀,用滑動視窗去重演算法過濾 A-B-A 式切換鏡頭,配合 Whisper 音訊轉錄,將影片轉化為 LLM 可理解的幀序列 + 文本組合。所有處理在本地完成,使用者自主決定向 LLM 提交哪些內容,避免隱私洩露。
為何火
在 Hacker News 獲得 167 點贊和 62 條討論,核心原因是擊中了 AI 影片分析的真實痛點。作者在討論中透露開發動機:"沒有 LLM 真正'看'影片",而該工具用場景變化檢測替代盲目取樣,一個 58 秒影片從固定取樣的 58 幀壓縮到實際有效的 26 幀。HN 社群認可其技術路線,有開發者表示"我也做了類似工具,會深入研究你的程式碼並貢獻",另有人將其用於交通罰單影片分析、充電速度測量等實際場景。專案提供 Web 介面(支援繁簡中文)和 CLI 兩種使用方式,並可通過 npx skills add 一鍵整合到 Claude Code、Cursor 等 50+ 種 AI 程式設計助手。
核心功能
智慧幀提取:基於場景變化檢測而非固定間隔,配合密度下限保證覆蓋度。--adaptive 模式針對緩慢變化內容(動畫教程、漸變效果)採用滾動鄰域對比,捕捉單幀差異不明顯的漸變過程。
去重演算法:滑動視窗畫素差異檢測,訪談類 A-B-A 切鏡只發送一次相同畫面,大幅減少冗餘幀。
音訊轉錄:整合 Whisper(需安裝 [whisper] 擴充套件),自動語言檢測。--speakers 模式啟用本地說話人分離(45MB 模型,無需賬號),為每句話標註說話人 ID。
字幕錨定:針對文字密集內容(講座、螢幕錄製),--text-anchors 在字幕時間戳處強制提取幀,確保每段語音都有對應畫面,需 .srt/.vtt 檔案或內嵌字幕軌。
輸入靈活性:支援 YouTube/Reels 等 URL(通過 yt-dlp)和本地檔案,--viewer 生成本地 HTML 預覽頁(影片 + 關鍵幀網格 + 轉錄文本),無需網路即可檢視。
目標導向分析:0.3.0 版新增 --why 引數指定分析目的(如"找定價策略"),--kb 將結果儲存到筆記目錄而非臨時輸出資料夾。
安裝
# 推薦:完整功能(幀提取 + 去重 + 轉錄)
pip install "claude-real-video[whisper]"
# 核心功能(僅幀提取和去重)
pip install claude-real-video
# 說話人分離
pip install "claude-real-video[speakers]"
# 系統依賴:需預裝 ffmpeg 和 ffprobe
安裝後可用 crv 命令列或 crv-web 啟動 Web 介面。整合到 AI 程式設計助手:npx skills add HUANGCHIHHUNGLeo/claude-real-video。
適合誰
AI 應用開發者:需要讓 LLM 理解影片內容(內容稽核、影片問答、自動摘要)的團隊,可作為預處理管道。
研究人員:分析影片資料集、提取關鍵幀用於標註或訓練,場景檢測演算法比固定取樣更高效。
內容創作者:快速瀏覽長影片找特定片段,或讓 AI 生成影片指令碼/字幕校對。
隱私敏感使用者:所有處理在本地完成,源影片不上傳,只有使用者主動貼上的幀和文本才傳送給 LLM。
不適合:需要即時影片流分析的場景(工具面向離線處理);完全不懂命令列且不想用 Web 介面的使用者。
社群評價
HN 討論熱度高(167 點),技術路線獲廣泛認可。正面觀點集中在"解決真實痛點"——有使用者用它分析交通罰單影片,另有人設想用於監控電池充電過程的電壓/溫度變化。作者在討論中表示程式碼庫足夠小可"一次讀完",歡迎貢獻轉錄後端和網格打包最佳化。
爭議點在於命名:有評論認為"claude-real-video"暗示 Claude 原生不支援影片,建議改名"llm-video-preprocessor"更準確。另有人質疑"Claude 明明能處理影片"(指 Claude Code 的逐幀分析),作者澄清是指 Claude 本身不接受影片檔案輸入,需預處理。
技術討論中,有開發者分享將幀拼成網格圖讓 LLM 一次看全部幀的實驗,效果尚可但漏細節;也有人提出對於運動設計類影片,直白描述動畫和時序比讓 LLM 推斷更有效。
批評聲音:"我們正在放棄基本問題解決能力,轉而用大量 GPU 堆砌"——針對用 LLM 讀取儀表盤數值的場景,有人指出傳統計算機視覺庫即可搞定,無需 LLM。反駁觀點引用 xkcd 漫畫:幾年前影像識別還被認為不可能,技術進步改變了工具選擇。
選型對比
vs Gemini 原生影片輸入:Gemini 需上傳影片到 Google 伺服器,固定 1fps 取樣;claude-real-video 本地處理,場景感知取樣更精準,但需手動提取後貼上到 LLM。
vs 固定間隔取樣指令碼:通用指令碼(如每秒截一幀)簡單但低效,10 分鐘靜態幻燈片產生 600 張重複幀;本工具通過去重和場景檢測,同樣內容可能只需 1-2 幀,token 成本大幅降低。
vs 付費影片分析 API(如 Google Video Intelligence):雲 API 功能更全(物件追蹤、情感分析),但按呼叫計費且資料上傳;本工具免費開源,隱私可控,但僅提供幀和轉錄,高階理解需依賴 LLM。
crv Pro 付費版($19-29 一次性):在免費版基礎上增加剪輯節奏分析(鏡頭切換、運鏡)、時間軸標註(手勢、表情、音高變化、聲音事件),適合需要深度影片理解的專業場景。
已知坑
系統依賴:必須預裝 ffmpeg 和 ffprobe,Windows 使用者需手動配置環境變數,macOS 可通過 Homebrew 安裝,Linux 一般自帶。
YouTube 下載:中國大陸使用者處理 YouTube 連結需配置代理,yt-dlp 會讀取系統代理設定或通過 --proxy 引數指定。
轉錄語言:Whisper 自動檢測語言,但方言或混雜語言可能識別不準,可通過 --language 引數強制指定(如 zh 中文、en 英文)。
記憶體佔用:長影片(1 小時以上)提取大量幀時記憶體峰值較高,建議 8GB+ 記憶體;--grid 模式將幀打包成接觸表可減少檔案數但增加單張圖片尺寸。
字幕錨定侷限:燒錄在畫面中的字幕無法被 --text-anchors 識別,只支援獨立字幕檔案或內嵌字幕軌。
LLM 上下文限制:即使最佳化後,超長影片仍可能產生數百幀,需注意目標 LLM 的上下文視窗(如 Claude 3.5 Sonnet 為 200K tokens,約可容納 1500-2000 張圖)。README 建議先用 --viewer 預覽幀數,必要時調整 --threshold 引數提高場景變化閾值以減少幀數。
安装方式:pip