HUANGCHIHHUNGLeo/claude-real-video

Let Claude (or any LLM) actually watch a video — scene-aware, deduplicated frames + transcript, from a URL or local file. Runs locally, MIT.

解决的问题

大多数 LLM 无法原生‘观看’视频,或依赖固定间隔采样(例如每秒一帧),这常常会错过快速剪辑,或在静态场景中浪费 token。claude-real-video 提供一个本地处理管道,基于场景变化检测和去重,仅提取最具意义的帧,降低 token 成本,同时提升 AI 对视频内容的视觉理解能力。

工作原理

该工具使用以下管道在本地处理视频:

  1. 获取与提取:使用 yt-dlp 处理 URL,使用 ffmpeg 在每个场景变化时抓取帧,并确保最低密度下限。
  2. 去重:采用滑动窗口去重系统,包含三个通道(全局像素差、小 UI 变化稳定检测、动作通道),确保仅将唯一镜头发送给 LLM。
  3. 转录:优先使用现有字幕;否则使用 OpenAI Whisper(或 faster-whisper)进行本地语音转文字。
  4. 打包:输出包含关键帧、带时间戳的 JSON 文件和转录文本的文件夹,可上传至 LLM。还支持将帧拼接为联系表(--grid),帮助模型追踪运动。
  5. 集成:可作为 CLI、本地 Web UI(crv-web)或 MCP 服务器运行,可直接与 Claude Desktop 和 Cursor 等代理集成。

适用人群

  • AI 高级用户:希望使用 LLM 分析视频,但不希望将原始文件上传至云服务的用户。
  • 开发者:使用编码代理(Claude Code、Cursor)的用户,希望其代理能通过技能/插件‘观看’视频。
  • 研究人员:需要高质量、去重的关键帧提取器用于视频分析的用户。

亮点

  • 本地处理:所有帧提取和转录均在用户机器上完成;仅最终选定的数据与 LLM 共享。
  • 智能采样:使用场景变化检测而非固定间隔,捕捉快速剪辑并压缩静态幻灯片。
  • 高级去重:即使在切出后(A-B-A 剪辑)也能防止重复帧被发送。
  • 代理集成:以 MCP 服务器和多种代理主机插件形式提供。
  • 灵活输入:支持 YouTube、Instagram、TikTok 和本地文件。
  • 记忆系统:通过 SQLite 本地索引所有观看过的视频,允许用户在整个视频库中搜索(crv-ask)。

相关