核心组件解读:claude-video的watch.py入口点全解

发布时间:2026/8/30 10:41:49

核心组件解读:claude-video的watch.py入口点全解
核心组件解读claude-video的watch.py入口点全解【免费下载链接】claude-videoGive Claude the ability to watch any video. /watch downloads, extracts frames, transcribes, hands it all to Claude.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-videoclaude-video是一个让 Claude 学会看视频的技能插件输入/watch加一个链接或本地文件路径Claude 就会自动下载视频、抽取帧画面、生成带时间戳的逐字稿最终基于亲眼看到 亲耳听到的内容回答你的问题。整条流水线的大脑就是入口脚本 scripts/watch.py——本文带你逐段读懂它。1️⃣ claude-video 能做什么先花 30 秒建立整体印象。你只需要在 Claude Code 里这样用/watch https://youtu.be/xxxx 视频第 30 秒发生了什么 /watch ~/Movies/录屏.mp4 界面在哪里开始报错背后发生的事可以概括成一条流水线下载视频 → 抽取帧画面 → 提取字幕/音频转写 → 输出 Markdown 报告 → Claude 逐帧阅读并作答其中大脑就是watch.py其余环节由四个小模块分工完成。2️⃣ 全局鸟瞰一个总指挥与四个执行者打开 scripts/watch.py你会发现它自身不实现任何具体功能而是在文件头部一次性引入四个搭档watch.py 第 18-21 行模块文件一句话职责依赖的外部工具scripts/download.py下载视频并顺带抓字幕yt-dlpscripts/frames.py探测元数据、按自动帧率抽帧ffmpeg/ffprobescripts/transcribe.py解析字幕文件VTT并去重无scripts/whisper.py无字幕时调用 Groq/OpenAI 语音转写仅 Python 标准库watch.py的全部业务逻辑集中在一个main()函数里watch.py 第 24-226 行按固定顺序调度上面四个模块最后把结果汇总成一份 Markdown 报告打印到标准输出——这份报告就是 Claude 的观看笔记。3️⃣ 入口点逐步拆解一次 /watch 的完整旅程第一步命令行参数解析菜单main()用argparse定义了一个精简的菜单watch.py 第 25-47 行新手最常打交道的就这几项参数作用新手建议source必填视频 URL 或本地文件路径直接粘贴--start/--end只分析某一段支持SS、MM:SS、HH:MM:SS长视频强烈建议用--max-frames帧数上限默认 80硬顶 100想省 token 就调低--resolution帧宽度默认 512px要看屏幕上的文字再调 1024--no-whisper完全禁用语音转写只出画面无 API Key 时可用这里有一个值得注意的小细节用户传的--max-frames会被强制压到 100 以内watch.py 第 49 行因为每一帧都是一张图帧数直接决定 token 开销——这是贯穿全脚本的成本意识。第二步准备工作目录脚本优先使用--out-dir指定的目录否则用tempfile.mkdtemp自动生成一个watch-前缀的临时目录watch.py 第 51-56 行。下载的视频、抽出的帧、转写的音频全部放在这里用完即弃不污染你的文件。第三步判断来源——下载还是直接读download.py里的 is_url() 只做一个判断是不是http/https链接是链接→ 交给yt-dlp下载同时尝试抓取英文 VTT 字幕手动字幕优先自动字幕兜底见 download.py 第 69-85 行。它还贴心地处理了字幕下载失败但视频成功的边界情况——以视频文件存在为成功标准。是本地文件→ 跳过下载校验扩展名.mp4/.mov/.mkv等后原地使用。第四步自动帧率——新手最该理解的省钱魔法抽帧前脚本先用ffprobe探测视频时长、分辨率、编码frames.py 第 58-91 行再调用 auto_fps() 计算该用多快的帧率。核心思路是按帧数预算而不是固定帧率视频时长默认帧预算体感≤ 30 秒约 30 帧密集几乎不遗漏30 秒 - 1 分钟约 40 帧依然密集1 - 3 分钟约 60 帧舒适3 - 10 分钟约 80 帧略稀疏 10 分钟100 帧会打印稀疏扫描警告如果你指定了--start/--end脚本自动切换到聚焦模式预算 auto_fps_focus()——同样的帧数花在你最关心的片段上画面密度更高。无论哪种模式帧率都被硬性限制在 MAX_FPS 2.0。第五步双通道字幕策略——免费优先付费兜底逐字稿是听的能力来源watch.py按优先级尝试两条通道原生字幕免费、即时如果下载时顺带拿到了 VTT 字幕就交给 parse_vtt() 解析成带起止时间的片段。它专门处理了 YouTube 自动字幕滚动重复的怪癖通过 _dedupe() 折叠重复行再用 filter_range() 把字幕裁剪到--start/--end指定的区间。Whisper 兜底需 API Key没有字幕时才触发。脚本先用ffmpeg提取一段单声道 16kHz 的小体积 mp3每分钟仅约 0.5MB再上传到 Groq优先便宜又快或 OpenAI 的 Whisper 接口全程只用 Python 标准库实现见 whisper.py 第 264-304 行。内置指数退避重试遇到限流会自动等待再试。两条通道都失败时脚本不会崩溃而是提示你运行 scripts/setup.py 配置环境然后继续以纯画面模式出报告——优雅降级这是它对新手最友好的设计。第六步输出 Markdown 报告交棒给 Claude一切就绪后main()打印一份结构固定的报告watch.py 第 148-224 行头部信息标题、UP 主、时长、分辨率、帧数、字幕来源captions还是whisper (groq)Frames 清单每张帧的绝对路径 tMM:SS时间戳按时间排序并附一句指令——请用 Read 工具逐张读取Transcript 全文带[MM:SS]时间戳可与画面逐句对齐长视频警告超过 10 分钟且未指定区间时主动建议用--start/--end重跑聚焦段落。报告末尾还会打印工作目录路径方便 Claude 在追问结束后清理。到这里watch.py的活干完了——接下来 Claude 会把所有帧并行读成图片结合字幕作答。4️⃣ 三个值得新手学习的工程设计薄入口 厚模块watch.py只负责编排下载、抽帧、字幕、转写各自独立成文件甚至可以单独运行调试每个模块末尾都自带__main__入口。想改帧策略只动frames.py想换转写服务商只动whisper.py。处处有预算意识100 帧硬顶、2fps 硬顶、512px 默认宽度、长视频主动警告——因为图像 token 是大头成本意识直接写进了默认值。失败不致命缺依赖会提示安装命令缺 Key 会提示配置路径字幕解析失败会降级到 WhisperWhisper 失败则退回纯画面。新手遇到任何报错脚本本身就会告诉你下一步做什么。5️⃣ 上手实操三种典型用法场景命令示例要点概括长视频/watch 长视频链接 summarize this超 10 分钟会提示稀疏可加区间重跑追问具体时刻/watch 链接 --start 2:15 --end 2:45 发生了什么聚焦模式帧更密、更省钱分析本地录屏/watch 录屏.mp4 哪里报错了本地文件免下载无字幕时可配 Whisper首次运行时Claude 会先跑一次环境自检 scripts/setup.pymacOS 上自动安装ffmpeg和yt-dlpLinux/Windows 会打印精确的安装命令之后每次调用都只剩不到 100ms 的静默检查不影响速度。6️⃣ 相关文件速查入口脚本scripts/watch.py下载封装scripts/download.py抽帧与帧率策略scripts/frames.py字幕解析scripts/transcribe.pyWhisper 客户端scripts/whisper.py环境自检与安装scripts/setup.py技能契约Claude 如何调用脚本SKILL.md命令定义commands/watch.md会话启动状态钩子hooks/hooks.json7️⃣ 总结watch.py用最少的代码完成了一次漂亮的编排200 行入口 四个各司其职的模块把下载 → 抽帧 → 转写 → 汇报串成一条对 token 成本精打细算、对缺失依赖层层降级的流水线。读懂它你不仅理解了 claude-video 的运转原理也能学到一套写AI 技能脚本的实用范式——让 AI 看视频先给它一份结构清晰的观看笔记。【免费下载链接】claude-videoGive Claude the ability to watch any video. /watch downloads, extracts frames, transcribes, hands it all to Claude.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-video创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

用 Mermaid 30 分钟搞定网络架构图与时序图:从拓扑到升级计划

用 Mermaid 30 分钟搞定网络架构图与时序图:从拓扑到升级计划

2026/8/30 10:41:49

用 Mermaid 30 分钟搞定网络架构图与时序图:从拓扑到升级计划 【免费下载链接】mermaid Generation of diagrams like flowcharts or sequence diagrams from text in a similar manner as markdown 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid …

嵌入式系统的日常巡检

嵌入式系统的日常巡检

2026/8/30 10:31:48

嵌入式系统的日常巡检嵌入式系统一旦进入长期运行阶段,问题往往不是突然出现的。存储空间慢慢减少、设备温度在某些时段升高、网络偶尔断开、传感器偶发读数异常、服务重启次数增加,这些都可能先以很小的迹象出现。日常巡检的意义,就是把这些…

Mac 上 3 步跑通 GPT-SoVITS:1 分钟语音数据做零样本声音克隆

Mac 上 3 步跑通 GPT-SoVITS:1 分钟语音数据做零样本声音克隆

2026/8/30 10:31:48

Mac 上 3 步跑通 GPT-SoVITS:1 分钟语音数据做零样本声音克隆 【免费下载链接】GPT-SoVITS 1 min voice data can also be used to train a good TTS model! (few shot voice cloning) 项目地址: https://gitcode.com/GitHub_Trending/gp/GPT-SoVITS GPT-SoV…

C++全排列算法(STL)

C++全排列算法(STL)

2026/8/30 11:51:52

文章目录1.next_permutation2.prev_permutationSTL提供了两个用来计算排列组合关系的算法&#xff0c;分别是next_permutation和prev_permutation。1.next_permutation //获得之后的字典序 #include<iostream> #include<algorithm> using namespace std; int a[3]…

英伟达算力生态全解析:从云端API调用到NIM自部署实战

英伟达算力生态全解析:从云端API调用到NIM自部署实战

2026/8/30 11:51:52

最近科技圈除了各家大模型版本更新之外&#xff0c;还有一条商业消息值得关注&#xff1a;消息称英伟达暂停了与多家 AI 公司的收益分成协议&#xff0c;目的是规避反垄断审查。很多开发者看到这类新闻&#xff0c;第一反应是“这是商业资本层面的事&#xff0c;跟我有什么关系…

荣耀最新的手机adb无法连接的问题

荣耀最新的手机adb无法连接的问题

2026/8/30 11:51:52

当选择文件传输时&#xff0c;无法adb连接&#xff0c;当选择Midi设备时可以连接。 在linux下用使用lsusb观察,当接入"选择Midi设备"时其vid为0e8d 当接入"文件传输"时其vid为339b lsusb 里的格式是&#xff1a; ID VID:PID 所以这条&#xff1a; ID 1…

字节跳动客户端实习笔试全解析:考点、编程题与代码习惯

字节跳动客户端实习笔试全解析:考点、编程题与代码习惯

2026/8/30 11:51:52

字节跳动2017客户端工程师实习生笔试题&#xff0c;我当年是真刀真枪考过的。那会儿今日头条已经火到不行&#xff0c;身边投客户端实习岗位的同学一大片&#xff0c;笔试链接发过来的时候我还挺紧张。整场考试90分钟&#xff0c;Web编辑器&#xff0c;没有IDE提示&#xff0c;…

Echo Dot 2改造:树莓派+本地LLM打造离线语音终端

Echo Dot 2改造:树莓派+本地LLM打造离线语音终端

2026/8/30 11:51:52

手上有一台吃灰多年的 Echo Dot 2&#xff0c;原以为它只能当个语音闹钟&#xff0c;或者连上蓝牙放点背景音乐。最近看了不少国外开发者把老智能音箱改造成离线语音助手的案例&#xff0c;决定自己也试一把&#xff1a;把 Echo Dot 2 的麦克风、扬声器和外壳利用起来&#xff…

Remotion 视频检索:10分钟给视频装上全文搜索

Remotion 视频检索:10分钟给视频装上全文搜索

2026/8/30 11:41:51

Remotion 视频检索&#xff1a;10分钟给视频装上全文搜索 【免费下载链接】remotion &#x1f3a5; Make videos programmatically with React 项目地址: https://gitcode.com/GitHub_Trending/re/remotion 昨晚整理一场 90 分钟的分享录像&#xff0c;我需要找到提到「…

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

2026/8/30 0:01:07

每年校招季我都会接触不少准备数据库方向笔试的同学&#xff0c;看到最多的状态就是&#xff1a;简历上写着“熟悉 MySQL”“了解索引优化”&#xff0c;一碰到数据库管理工程师的笔试卷&#xff0c;却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

2026/8/30 0:01:07

1. 这不是“背公式”的事&#xff1a;时间参数到底在约束什么你翻过数字电路教材&#xff0c;一定见过这两个词&#xff1a;建立时间&#xff08;Setup Time&#xff09;和保持时间&#xff08;Hold Time&#xff09;。它们常被并列写在触发器&#xff08;Flip-Flop&#xff09…

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

2026/8/30 0:01:07

1. 项目缘起&#xff1a;从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目&#xff0c;我至今记忆犹新。它没有直接给出一个花哨的名字&#xff0c;而是用“超声波测距机”这个朴实无华的功能描述&#xff0c;精准地勾勒出了考核的核心。对于当时备赛的我而言…

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

备战数据库管理工程师校招:索引、事务、备份恢复核心考点解析

2026/8/30 0:01:07

每年校招季我都会接触不少准备数据库方向笔试的同学&#xff0c;看到最多的状态就是&#xff1a;简历上写着“熟悉 MySQL”“了解索引优化”&#xff0c;一碰到数据库管理工程师的笔试卷&#xff0c;却在索引、事务、锁、备份恢复这些题目上翻车。网易这套 2018 校园招聘数据库…

数字电路时序基石:深入理解建立时间与保持时间

数字电路时序基石:深入理解建立时间与保持时间

2026/8/30 0:01:07

1. 这不是“背公式”的事&#xff1a;时间参数到底在约束什么你翻过数字电路教材&#xff0c;一定见过这两个词&#xff1a;建立时间&#xff08;Setup Time&#xff09;和保持时间&#xff08;Hold Time&#xff09;。它们常被并列写在触发器&#xff08;Flip-Flop&#xff09…

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

蓝桥杯国赛超声波测距机:从单片机原理到嵌入式系统实战

2026/8/30 0:01:07

1. 项目缘起&#xff1a;从赛题到超声波测距机的诞生第八届蓝桥杯单片机设计与开发国赛的题目&#xff0c;我至今记忆犹新。它没有直接给出一个花哨的名字&#xff0c;而是用“超声波测距机”这个朴实无华的功能描述&#xff0c;精准地勾勒出了考核的核心。对于当时备赛的我而言…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/28 7:35:26

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具&#xff0c;覆盖选题构思、文献整理、内容生成、格式排版等核心场景&#xff0c;真正帮你高效搞定论文难题。 一、全流程王者&#xff1a;一站式搞定论文全链路&#xff08;一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/28 7:34:51

2026年真正好用的AI论文工具&#xff0c;核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测&#xff0c;千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队&#xff0c;覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/28 7:34:35

告别游戏崩溃&#xff1a;XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…