目标平台:录咖 (RecCloud) —— 本项目的语音转文字能力由 录咖 RecCloud 的语音转文字 API 提供,使用前需在录咖平台注册并获取 API key(消耗平台算粒)。 仓库地址:https://github.com/hcidfy/AI_tools_Video2Understand
输入一个 B站 / YouTube 视频链接,自动完成:下载视频 → 检测下载完成 → 录咖语音转文字(毫秒级时间戳)→ 按时间戳存储 → 构建 RAG 知识库(JSON)。
视频链接
│
▼ ① 下载(snapwc.com)
Playwright 无头浏览器模拟真实操作:打开下载页 → 粘贴链接 → 提交 →
等待解析(~30s)→ 自动点击下载按钮 → 捕获 B站 CDN 媒体流 →
视频文件保存到 C:\Users\HCQ\Downloads(命名:<标题> - Original.mp4)
│ snapwc 失败时自动回退 yt-dlp
▼ ② 文件检测
监听 Downloads:新媒体文件出现 + 大小连续稳定(忽略 .crdownload/.part 临时文件)
▼ ③ 转写(录咖 RecCloud API)
直接使用捕获的 B站 CDN 媒体 URL(无需重新上传;签名 URL 有效期 ~2h,即时使用)
speaker 模式(type=4 + speaker_recognition=1)→ 返回毫秒级时间戳分段
│ 失败时回退:本地 HTTP + cloudflared 隧道 → uguu 匿名上传
▼ ④ 存储(按时间戳)
storage/<标题>_<BV号>/ : transcript.srt / transcript.txt / segments.json /
reccloud_raw.json / meta.json
▼ ⑤ RAG 知识
knowledge.json — 按说话人合并段落 + ~600 字分片 + 100 字重叠,
每片含 id / 起止时间戳 / 说话人 / 文本 / token 估算
knowledge.md — 人/LLM 可读版
- Windows + Node.js ≥ 24(原生运行 TypeScript,无需构建)
- 首次运行自动安装 Playwright 浏览器(约 170MB);
yt-dlp已装则作为下载兜底 - 录咖 API key:在 reccloud.cn 注册后,于"开发者服务(API)"中获取
双击项目根目录的 Video2Understand.bat:
- 弹出窗口后粘贴视频链接并回车
- 自动完成下载 → 转写 → 知识库构建
- 成功自动关闭窗口;失败时暂停显示错误,按任意键关闭
# 完整流程:输入 B站/YouTube 链接
node src/cli.ts "https://www.bilibili.com/video/BV1HA8K68EVB/"
# 不带参数则交互式输入链接
node src/cli.ts
# 跳过下载,转写 Downloads 里最新的媒体文件
node src/cli.ts --skip-download
# 跳过下载,指定文件
node src/cli.ts --skip-download --file="C:\Users\HCQ\Downloads\xxx.mp4"
# 其他选项
node src/cli.ts <链接> --lang=zh # 指定音频语言
node src/cli.ts <链接> --no-speaker # 关闭说话人/时间戳模式(纯文本)
node src/cli.ts <链接> --uploader=tunnel # 强制指定公网URL回退方式命令行传参时,若链接包含
&(如 B 站的vd_source参数),请务必用双引号包裹整个链接。
API key 绝不写入仓库。按以下优先级读取:
- 环境变量:
RECLOUD_API_KEY - 本地文件
.env.local(已 gitignore,格式:RECLOUD_API_KEY=你的key) config.json(仅占位符,不会生效)
# 首次使用:复制模板并填入 key
copy .env.example .env.local
# 编辑 .env.local,填入你在录咖平台获取的 key其余配置见 config.json(录咖 API 地址、snapwc 下载页、下载/输出目录、轮询参数等)。
| 文件 | 说明 |
|---|---|
transcript.srt |
标准字幕(毫秒时间戳,含说话人) |
transcript.txt |
[mm:ss - mm:ss] (speaker) 文本 |
segments.json |
原始分段(start/end 毫秒 + text + speaker) |
reccloud_raw.json |
录咖接口原始返回(含 use_point 算粒消耗) |
meta.json |
来源、标题、时长、语言等元数据 |
knowledge.json |
RAG 知识库(chunks 含 id/时间范围/说话人/文本/token 估算) |
knowledge.md |
人/LLM 可读版知识文档 |
- 平台:转写依赖 录咖 RecCloud API,消耗其"算粒"额度(单次任务约 12 算粒/5 分钟视频,记录在
reccloud_raw.json的use_point字段)。 - 时效:B 站 CDN 签名 URL 有效期约 2 小时,流水线内即时使用,无需手动处理。
- 版权:请仅下载/转写你有权保存的内容。尊重原作者版权。
- 输出:视频保留在 Downloads 目录;转写与知识输出在
storage/(已 gitignore,可能含受版权保护的内容)。