本文要点
- 从'固定 1fps 抽帧'变成'场景检测+滑动窗口去重',单视频 token 量下降一个数量级
- 从'只能本地文件'变成'yt-dlp URL 输入+可选 cookie',覆盖 YouTube、Instagram、TikTok
- 从'只抽帧'变成'抽帧+字幕+MANIFEST+可选音频+本地 viewer',输出结构化、可直接喂 LLM
阅读辅助
先看数字、证据和来源,再读正文。
claude-real-video 用场景检测+滑动窗口去重把视频压成 5–15 张关键帧+字幕,比固定 1fps 节省 90% 以上 token
2026-07-03 · v0.2.0、v0.3.0、v0.4.0 连续发布,PyPI 三日密集出基础版本(场景检测、转写、URL 输入)
它做了一件什么事
一句话:把视频”翻译”成一个 Claude、ChatGPT 网页版、本地 LLM 都能读的文件夹——里面是几张”真不一样”的关键帧、一份字幕文本、一份 MANIFEST 索引,外加可选的完整音轨。
作者 cortexosmain(真名 Leo / HUANGCHIHHUNGLeo)在 README 里给了一句相当挑衅的副标题——“让 Claude 或任何 LLM 真的”看”视频”。挑衅在于:当下的 LLM 三巨头里,Gemini 系列原生直吃视频(含 Flash Lite),ChatGPT 网页版主要读转写文本,Claude 全系仍然不接视频文件。也就是说,“Claude 看视频”这件事在 2026 年 7 月并不存在——除非你愿意先把视频拆成帧。
crv(claude-real-video 的 CLI 简称)的解法不复杂,单条 ffmpeg select 表达式就能完成核心抽取:
select='gt(scene,0.30)'抓场景变化超过 0.30 的瞬间——画面真的切了,才抽一帧;- 配合一个”密度下限”
fps-floor=1.0兜底——即使整段视频一动不动,也至少每秒留 1 帧; - 接着做滑动窗口去重:把当前帧和最近 4 张已留帧做降采样后的像素差,差异小于 8% 就丢掉。这一步专门对付”A→B→A”这种回切镜头(典型如播客主持人的近景/远景切换);
- 字幕优先用视频里嵌的
.srt/.vtt,没有就 Whisper 转——pip install "claude-real-video[whisper]"多装一个 extra 就行; - 全部跑在本地,输出目录长这样:
crv-out/
frames/001.jpg 002.jpg ...
transcript.txt
audio.m4a # --keep-audio
MANIFEST.txt # 给模型看的"目录"
viewer.html # --viewer 本地预览页
作者在 HN 自述:10 分钟的演示视频从”固定 1fps 的 ~600 帧”压到 5–15 帧,token 节省自报 90%+。仓库 README 里贴了一份更细的演示:58 秒快剪视频,1fps 抽 58 帧,crv 只留 26 帧;一段 10 分钟的静态幻灯片,1fps 抽 ~600 张几乎一模一样的帧,crv 直接压到 1 帧。
为何要做”场景感知”——固定采样踩过哪些坑
这件事之所以有人愿意再做一遍,是因为过去三年开发者试过的方案都不太对:
| 方案 | 抽帧逻辑 | 致命问题 |
|---|---|---|
| 固定 1 fps | 每秒 1 张 | 静态幻灯片出 600 张”白底黑字”几乎一样的图;快剪视频漏掉切镜瞬间 |
| 固定 N 秒 | 每 N 秒 1 张 | 解决不了”密度自适应”——10 分钟幻灯片照样冗余,30 秒快剪照样漏帧 |
| 仅转写 | Whisper 出文本 | 视觉信息全丢;演示文稿、产品 UI、运动画面全部归零 |
ffmpeg select=gt(scene,...) 裸用 | 场景检测 | 漏掉缓慢运动(zoom/pan),也漏掉”重复镜头”——同一个特写来回切会反复保留 |
| Gemini 原生视频 | 云端直吃 | 视频必须出云;Claude/ChatGPT 用户用不上;隐私敏感场景不可接受 |
crv 的差异点在第三和第四格的中间:场景检测 + 滑动窗口去重 + 密度下限三件套,把”变化不够大就不抽”和”密度低于 1fps 强制补抽”两个对立约束同时满足。这一步看起来只是工程细节,但实际效果是 token 量的 10× 差距——这也是 HN 评论区把它和 Gemini 路线放在一起比较时,它还能站得住的根本原因。
关键技术参数(README / PyPI 0.5.2)
| 标志 | 默认 | 含义 |
|---|---|---|
--scene | 0.30 | 场景检测灵敏度,越低抽得越密 |
--fps-floor | 1.0 | 密度下限,最少 N 秒 1 帧 |
--max-frames | 150 | 硬上限,防止超长视频爆炸 |
--dedup-threshold | 8 | 像素差低于 8% 视为重复 |
--dedup-window | 4 | 与最近 4 张已留帧比较 |
--lang | auto | Whisper 语言 |
--why "<prompt>" | – | 把分析焦点写进 MANIFEST,让 LLM 知道重点看什么 |
--kb <dir> | – | 把结果存成日期命名的 Markdown 笔记 |
--cookies <file> | – | Netscape 格式 cookie,给 Instagram/TikTok 这类受限源 |
--viewer | off | 生成本地 HTML 预览页 |
依赖:Python 3.10+ / ffmpeg + ffprobe(系统装,非 pip)/ yt-dlp / 可选 openai-whisper。许可 MIT。
932 颗星背后,HN 评论区在吵什么
Hacker News 首页贴出当日拿到 165 分、56 条评论,对一个小工具来说算现象级。但评论区分裂明显,大致三条主线:
第一条主线:直接用 Gemini 不好吗?
讨论的主导意见由 fzysingularity 拉开——“这其实是种相当贵的’让 Claude 看视频’方式”,并推荐了 vlm-run.github.io/mm(HN 当天 404,评论区已互相补刀)。thisisit 跟进:“Gemini 最擅长这个,把视频链接给它就行。” achatham 给了一组常被引用的数据:Gemini 3.1 Flash Lite 处理 1 小时视频约 $0.24——比绝大多数本地抽帧方案省心且便宜。newswasboring 进一步现身说法,用 Gemini 分析摔跤比赛视频做”动作分镜+观众反应追踪”。
作者在评论区做了限定回应:crv 面向的是不能用 Gemini 的场景——Claude、ChatGPT 网页版、本地模型、隐私敏感或离线场景。这条边界其实相当重要,否则工具定位会被”Gemini 已经能干”直接吞掉。
第二条主线:隐私与”在我机器上”的语义
bonoboTP 直接质疑:“‘在我机器上’的说法有点取巧——你最终不还是把帧发给 Anthropic?” fny 替作者回了一句关键事实:crv 自身只产帧和文本,发不发、发给谁,由调用方决定。这正是 MIT 开源和”商业 SaaS”的分界——同样的输出,可以喂 Claude API,可以喂本地 Ollama,可以喂 Qwen2.5-VL,也可以只喂一个 Notion。
这条线对国内/企业合规场景尤其关键。
第三条主线:keyframes 真的等于视频吗?
octember 提了一个 HN 上被反复引用的根本性疑问:“关键帧不是视频。运动、物体恒存性,这些都不是 Claude 从一组静图能推断的。” gvkhna 报告说把帧拼成联系表喂 Claude 时”细节丢了很多”;noufalibrahim 试过类似思路重建 DOS 游戏过场动画,Claude”15-16 个精灵图只能对上一两个”。Lerc 把这变成一个开放命题——能不能让模型在关键帧之间推断运动,可能本身就是个不错的 benchmark。
dingody 则觉得 2 fps 已经够了;high_byte 戳了 ffmpeg 场景检测本身的稳定性(“flaky”);Frost1x 反向举证说 ChatGPT 通过自己编排的”抽帧 + 图像识别 + 运动插值”成功分析过一段视频——也就是说,crv 解决的问题(自动抽帧+打 manifest)只是工作流的一半,另一半(让模型真”理解”时间维度)仍未解。
命名之争也算一条副线:walrus01 建议改名 llm-real-video(“别拿厂商名命名”),fragmede 打趣叫 Elmerview。作者当天就在 PyPI 加挂了 llm-real-video 同名包——GitHub 仓库名保留原样以维持链接稳定。这种”被 HN 教育一下午就改”的速度,也是为什么这个项目能持续拿到关注。
商业化试探:$19 的 crv Pro 在卖什么
README 和 PyPI 描述里反复提到了一个商用付费版 crv Pro——同站点 leoaido.com/crv-pro/,限时创始人价 $19 一次性。它做的是 README 里没列的几件事:
- 镜头运动分类(静/摇/俯仰/推拉/手持);
- 剪辑节奏与节奏曲线分析;
- 感知时间轴——手势、表情、声音音高、情绪、声学事件的时间对齐;
- 三档报告模式:
--mode watch(观众视角)、--mode creator(创作者视角)、--mode full; - 7 月新增:音乐状态时间轴、独立语音情感分析、互动式 viewer dashboard。
按作者的说法,这部分能力建立在基础版输出的帧之上,再叠一层”理解镜头语言”的分析。对个人创作者做拆片、对运营做竞品视频拆解,确实有付费点。但要注意:Pro 端的所有”情绪/节奏/感知”能力都是作者单方宣称,无独立 benchmark——这也是它在 HN 上没被重点讨论的原因,大家对工具的判断还停留在免费层。
这个分层(MIT 开源抽帧层 + $19 付费分析层)的产品结构,其实正是过去两年”开发者工具变现”的一种典型路径:免费层解决”能用”,付费层解决”好用”。GitHub Star 是免费层的天花板,Stripe 收入才是护城河。
早报观点
判断一:crv 把多模态缺口体感做成了一个 30 行的可执行命令。ffmpeg 场景检测、Whisper 转写、yt-dlp 下载——这些组件每一个都存在了多年。但把它们串成一条对 LLM 友好的输出结构,并且把”为什么我需要这 5 张帧”这件事写进 MANIFEST 让模型读到,这件事过去没人做。这正是开发者工具最难也最有杠杆的一步:从”能拼出来”到”装上就能跑、跑完 LLM 直接能用”。
判断二:和 Gemini 原生视频的关系,分场景并存。HN 评论里把 crv 和 Gemini 当成对立选项是错的——它们服务的是不同子集:
- Gemini 优势:原生时序理解(运动、音画同步、长程依赖)、API 便宜(Flash Lite $0.24/h 量级)、多语言直吃;
- crv 优势:本地/隐私/离线、只调 Claude 或本地模型、控制输出结构(manifest 可编程)、管自己的关键帧选择(“为什么这 5 帧”可解释)。
对一个”我就要 Claude 但视频不能出云”的工程师/合规/法务场景,crv 是当下少数能用的工具。这条赛道的 TAM 不大但稳。
判断三:932 颗星的另一面,是 Claude 长期不直吃视频这件事让开发者社区积累了相当强的”补丁欲”。HN 评论里有人追问”什么时候 Claude 自己能看视频”,这个问题 Anthropic 迟早要正面回答。在那之前,claude-real-video 这类工具会持续有人 star、有人改、有人做付费层——它本质上是用开源社区填补商业模型的能力缝隙。这种”能力缝隙—社区工具—付费层”的三段式,是过去两年 AI 工具生态里反复出现的剧本(Cursor → Continue、Cognition → aider、Anthropic Artifacts → v0)。
反面 caveat:需要承认的几条边界——(1) 关键帧永远不等于视频,运动、时间连续性、声音节奏这些维度静态帧不携带,这事 crv 没解,未来相当长一段时间也解不掉;(2) whisper 转写在嘈杂环境、方言、专业术语下准确率仍不稳定,抽帧再准也救不回来;(3) ffmpeg 场景检测本身有 flakiness(high_byte HN 评),慢速推拉、淡入淡出会被吞掉;(4) 项目由单人维护,节奏受限于作者时间和精力,2026-07-03 到 07-05 三天连发六个版本本身就是冲刺节奏,长期可持续性未知。
接下来看什么
- v0.6 路线:是否会引入”长视频分段摘要 + 时间戳交叉引用”——这是 HN 上
dingody等人提到的”2 fps 仍然不够”的直接回应方向。 - 作者对”运动不可推断”的回应:是否会引入光流编码、运动矢量,或干脆接 SAM2 / Video-LLaVA 类的辅助模型给关键帧补”运动标签”。
- crv Pro 的真实数据:付费版能否留下用户、是否会有第三方独立 benchmark——目前所有”镜头分类/感知时间轴”能力都来自作者单方宣称。
- Gemini / Claude 4 系列原生视频:如果 Claude 在下半年原生直吃视频(已有相关内部信号传闻),crv 这类工具会面临”被模型原生能力吞掉”的压力;差异化只能落在本地/可控/可编程这条更窄的路上。
- 中文场景适配:目前 Whisper 在中文/方言/方言+音乐环境下的表现仍是瓶颈;下一个 fork 可能就是”中文 LLM 友好的本地 Whisper 替代 + 字幕校准”。
- 竞品恢复:vlm-run 的 mm 仓库当日 404 后已恢复,定位相近(云端 keyframe 提取服务),生态分工会如何演化值得跟。
信源限制说明:本文主体信源为 GitHub 仓库(README + 代码 + Release)、Hacker News 首页讨论(56 条评论原始文本)、PyPI 元数据页、作者个人站 leoaido.com/crv-pro/。未做独立运行验证(pip 安装、跑示例视频);“600→5-15 帧”的压缩比来自作者 HN 自述,未做第三方 benchmark 复测;Gemini Flash Lite $0.24/h 的数据来自 HN 评论者 achatham 自报,未引官方 API 定价页原文——若需严谨对比,建议查阅 Google AI Studio 官方定价。