返回

文章详情

Claude-真实视频 - 任何 LLM 都可以观看视频

Hacker News2026年7月2日 19:10

让 Claude - 或任何 LLM - 实际观看视频。大多数 AI 工具并不真正“看到”视频。将 YouTube 链接粘贴到 ChatGPT 中,它读取的是文字稿,而不是画面。Claude 完全不接受视频文件。即使是可以原生读取视频的 Gemini,也必须将视频上传到 Google ,并以固定的间隔(默认为每秒 1 帧)采样帧,因此快速切换的画面可能会错过。claude-real-video 的处理方式不同,并且是本地处理:将其指向一个 URL 或文件,它拉取实际重要的帧(每个场景变化,而不是固定配额),丢弃近重复的帧,抄录音频,并将您需要的清晰文件夹交给任何 LLM - 在您自己的机器上,不上传。 crv " https://www.youtube.com/watch?v=... " # → crv-out/frames/*.jpg + crv-out/transcript.txt + crv-out/MANIFEST.txt 然后将帧 + MANIFEST.txt 拖放到 Claude / ChatGPT / Gemini 中,然后提问。为什么不只是采样帧?大多数“让 LLM 观看视频”的脚本(以及 Gemini 自己的管道)以固定间隔抓取帧 - 例如,每秒一帧。这样做在静态屏幕录制时过采样,而在快速剪辑中则欠采样。claude-real-video 更聪明:固定间隔采样,claude-real-video 每 N 秒选择帧,场景变化检测 + 密度阈值 重复镜头(A-B-A 切换)超出每次滑动窗口去重发送每个镜头 静态幻灯片(10 分钟)~600 个几乎相同的帧合并为 1(去重) 快速剪辑漏掉采样之间的帧捕获每次视觉变化 音频常被忽视 Whisper 文本转录及语言检测 视频去向常常上传至云端保持在您的机器上 输入通常仅为本地文件 仅 URL(yt-dlp)或本地文件 您为模型提供更少但更有意义的帧 - 更便宜的上下文,更好的理解。 安装 pip install claude-real-video # 核心(帧 + 去重) pip install " claude-real-video[whisper] " # + 音频转录 系统需求:ffmpeg ffmpeg / ffprobe 用于帧提取和音频,无法通过 pip 安装。只需安装一次:操作系统命令 macOS brew install ffmpeg Linux sudo apt install ffmpeg(或您的发行版的包管理器) Windows winget install Gyan.FFmpeg - 或 choco install ffmpeg - 或下载构建并将其 bin older 添加到您的路径.verify 是否在您的路径上:ffmpeg -version 转录使用 whisper CLI(通过 [whisper] 附加安装,或 pip install openai-whisper )。Whisper 也依赖于 ffmpeg。适用于 macOS、Windows 和 Linux - Python 3.10+。使用# A YouTube / Instagram / TikTok / ... 链接 crv " https://www.instagram.com/reel/XXXX/ " # 本地文件,英文转录,输出到 ./out crv lecture.mp4 -o out --lang en # 仅帧,无转录 crv clip.mp4 --no-transcribe # 受登录限制的视频(您自己的 / 授权使用):传递 Netscape cookie 文件 crv " https://... " --cookies cookies.txt python -m claude_real_video ... 也可以作为 crv 的别名。选项标志 默认值 含义 -o, --out crv-out 输出目录 --scene 0.30 场景变化灵敏度(较低 = 更多帧) --fps-floor 1.0 每 N 秒至少一帧 --max-frames 150 硬上限总帧数 --lang auto Whisper 语言( en , zh , auto , ...) --dedup-threshold 8 % 像素必须变化,框架才能计入新帧;更高 = 更少帧 --dedup-window 4 与最后 N 个保留帧比较 - 模型已经看到的镜头在切换后不再返回(1 = 连续) --report off 保留丢弃帧在 ./dropped + 写入 report.html 可视化每个保留/丢弃决策 --no-transcribe off 跳过音频 --keep-audio off 还保存完整的原声轨(audio.m4a),所以音频模型可以听到它 --cookies - Netscape cookie 文件,用于登录受限来源使用从 Python 中 import process 使用 from claude_real_video import process r = process ( "https://youtu.be/..." , "out" , lang = "en" ) print ( r . frame_count , r . transcript_path ) 它是如何工作的获取 - yt-dlp 处理 URL(可选 cookie),或复制本地文件。提取 - 一个按时间顺序的 ffmpeg 选择操作抓取每个场景变化,加密数量至少每 --fps-floor 秒一个帧,这样快速切换和慢屏幕录制都覆盖到。去重 - 实际像素变化(下缩 RGB,而不是感知哈希 - 哈希在平面颜色和相同亮度色调变化上变得盲目),与最后 --dedup-window 保留的帧的滑动窗口对比,因此 A-B-A 切换不会重新发送模型已经见过的镜头。 --report 写入 report.html 显示每个保留/丢弃决策及其差异 %,以便调整。文本 - 如果视频已经有字幕(在本地文件旁的 sidecar .srt / .vtt,或内嵌字幕轨),则使用这些作为转录 - 比重新转录更快更准确。只有在没有字幕时,才会退回到 Whisper 音频(如果没有音频,则干净跳过)。音频(可选,--keep-audio) - 保存完整的原声轨(audio.m4a:音乐 + 语言 + 音效,尽可能无损复制)。文本转录只包含文字;音频文件让模型能够听到完整的音频。

赞助内容

NordVPN Next-gen Antivirus

本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。

请我喝杯咖啡