B站视频转图文笔记 · 深度调研报告

调研时间:2026-05-30
调研范围:开源项目、商业SaaS、技术方案、市场格局


一、核心结论

要把B站视频转化为”图文并茂”的笔记,需要解决三个核心问题:

层次 问题 解决方案
文字层 视频说了什么? CC字幕提取 → 无字幕则Whisper ASR转写
图像层 视频展示了什么? 关键帧/场景检测截图 → FFmpeg按时间戳截帧
结构层 如何组织成笔记? LLM总结+结构化 → Markdown/思维导图输出

最优方案推荐:

场景 推荐方案 理由
想快速上手、不折腾 BiliNote(云端版 bilinote.app) 免安装、一键生成、6000+ Stars
想本地部署、数据自主 BiliNote(本地部署版) 开源免费、支持自定义LLM
想深度定制、自己开发 参考本文第四节技术方案 完全可控、可嵌入任何工作流
只做视频摘要不需要图 BibiGPT / NoteGPT / BilibiliSummary 轻量Chrome插件,侧重文字总结

二、工具全景对比

2.1 开源项目

⭐ BiliNote(推荐指数:★★★★★)

项目 信息
GitHub https://github.com/JefferyHcool/BiliNote
Stars 6,000+
语言 Python (FastAPI) + TypeScript (React 19)
协议 开源
官网 https://www.bilinote.app

核心功能:

  • 🎙️ 自动转录:Fast-Whisper 音频转带时间戳文字(CUDA加速)
  • 📸 智能截图:基于场景检测自动提取关键帧,FFmpeg截帧插入笔记
  • 🔗 原片跳转:生成指向原视频特定时间点的跳转链接
  • 🧠 AI 总结:GPT工厂模式(OpenAI/DeepSeek/Qwen),风格定制
  • 🗺️ 思维导图:markmap-common 渲染
  • 📝 Markdown输出:代码高亮、数学公式、图片缩放
  • 🎬 多平台支持:B站/YouTube/抖音/快手/本地视频

技术架构:

用户输入视频链接
↓
前端验证 → 后端API创建任务
↓
异步处理流水线:
① 解析下载(策略模式:BilibiliDownloader/YoutubeDownloader/DouyinDownloader)
② FFmpeg提取音频
③ Fast-Whisper转写(CUDA加速,三级缓存)
④ LLM总结(工厂模式:OpenaiGPT/DeepSeekGPT/QwenGPT)
⑤ FFmpeg关键帧截图 → 插入Markdown
⑥ 生成时间戳跳转链接
↓
前端Markdown渲染/导出

前端技术栈:React 19 + TypeScript 5.7 + Vite 6 + Ant Design 5 + Tailwind CSS 4 + Zustand
后端技术栈:FastAPI + SQLite + Celery + Redis + Docker


BilibiliSummary(推荐指数:★★★★)

项目 信息
GitHub https://github.com/jackwener/bilibili-summary
类型 Chrome浏览器扩展
功能 一键获取B站视频摘要,基于ChatGPT

特点:

  • 5秒内智能分析视频字幕
  • 生成精炼易懂的内容摘要
  • Chrome插件,开箱即用
  • 侧重文字摘要,不支持截图/图文

bili2text(推荐指数:★★★)

项目 信息
官网 https://www.bili2text.com
类型 Python开源工具
功能 B站视频自动转文字

特点:

  • 整合Whisper + FFmpeg
  • 支持视频下载、音频提取、智能分割、语音转写
  • 专注文字提取,不生成图文笔记

Video-Transcribe(推荐指数:★★★)

项目 信息
GitHub https://github.com/qkirara/Video-Transcribe
功能 YouTube/Bilibili视频转录
特点 CC字幕提取(快)+ ASR转录 + LLM后纠错

extract-video-ppt(推荐指数:★★★★,仅截图层)

项目 信息
GitHub https://github.com/wudududu/extract-video-ppt
功能 视频中PPT页面智能提取

特点:

  • 计算机视觉算法自动识别幻灯片切换时刻
  • 导出高清PPT截图图片
  • 专注”图像层”提取,可与其他文字工具配合

2.2 商业SaaS工具

BibiGPT(推荐指数:★★★★)

项目 信息
官网 https://bibigpt.co
用户量 100万+
核心功能 视频转文字 + 结构化笔记 + 幻灯片提取

特色功能:

  • B站视频一键转文字稿与结构化笔记
  • 幻灯片提取器:AI看完整段视频,提取幻灯片、关键帧,生成逐场景文字稿
  • 支持 TXT / Markdown / Notion 导出
  • Chrome扩展可用
  • 图文能力:✅ 有幻灯片提取,可生成图文内容

价格:免费体验 + 付费套餐


VideoSeek(推荐指数:★★★★)

项目 信息
官网 https://www.videoseek.ai
定位 AI音视频转录与总结工作台

核心功能:

  • 支持 YouTube / Bilibili / 抖音 / 小红书
  • 视频转文章:一键提取字幕 + 智能摘要 + FAQs + 思维导图
  • 可插入视频截图、多语言、多风格
  • 每日登录送10积分
  • Edge浏览器扩展可用

图文能力:✅ 视频截图插入文章、思维导图、可编辑


HoverNotes(推荐指数:★★★★★,网课场景最强)

项目 信息
官网 https://hovernotes.io
形态 Chrome扩展
定位 AI视频笔记(专为学习/网课设计)

核心功能:

  • AI同步观看视频画面,识别代码、公式、PPT、图表
  • 把视觉内容整理成Markdown笔记(不只是文字转录!)
  • 支持 Obsidian 集成,纯本地存储
  • 覆盖 YouTube / Udemy / Coursera / LinkedIn Learning / B站
  • 图文能力:✅✅ 最强——能识别代码块、数学公式、图表,这是其他工具做不到的

独特优势:其他工具只处理”音频→文字”,HoverNotes 同时处理”画面→图文”,对编程教程、数学课程、PPT演示类视频效果最佳


NoteGPT(推荐指数:★★★)

项目 信息
官网 https://notegpt.io
功能 B站视频总结、转录

特点:侧重文字摘要,Chrome扩展,有免费额度


通义听悟(推荐指数:★★★)

项目 信息
官网 https://tingwu.aliyun.com
出品 阿里云

特点:音视频转写、发言人分离、自动摘要和章节、PPT提取;但对B站需要手动上传视频文件


听脑AI(推荐指数:★★★)

项目 信息
官网 https://itingnao.com
价格 年费199元

特点:自动转文字+总结+时间轴标记+关键词提取,准确率声称98%


2.3 综合对比表

工具 图文能力 B站支持 开源 截图/PPT 公式/代码 价格 离线
BiliNote ★★★★ ✅ ✅ ✅场景检测截帧 ❌ 免费 ✅本地部署
HoverNotes ★★★★★ ✅ ❌ ✅AI视觉识别 ✅代码+公式 付费 ✅本地存储
BibiGPT ★★★★ ✅ ❌ ✅幻灯片提取 ❌ 免费+付费 ❌
VideoSeek ★★★★ ✅ ❌ ✅视频截图 ❌ 积分制 ❌
BilibiliSummary ★★ ✅ ✅ ❌ ❌ 免费 ❌
通义听悟 ★★★ 需上传 ❌ ✅PPT提取 ❌ 免费+付费 ❌
extract-video-ppt ★★★ 需下载 ✅ ✅✅最强截图 ❌ 免费 ✅
bili2text ★★ ✅ ✅ ❌ ❌ 免费 ✅

三、技术方案详解:如何从零实现

3.1 整体架构

┌─────────────────────────────────────────────────────┐
│ B站视频转图文笔记系统 │
├─────────────┬─────────────┬─────────────────────────┤
│ 文字层 │ 图像层 │ 结构层 │
│ │ │ │
│ ①CC字幕API │ ④FFmpeg │ ⑦LLM结构化总结 │
│ ②Whisper │ 关键帧截取 │ ⑧Markdown生成 │
│ ASR转写 │ ⑤场景检测 │ ⑨思维导图生成 │
│ ③LLM后纠错 │ ⑥OCR/PPT检测 │ ⑩多格式导出 │
└─────────────┴─────────────┴─────────────────────────┘

3.2 文字层:视频语音→文字

方案A:B站CC字幕API(最快,但有覆盖限制)

步骤:

  1. 获取视频CID:GET https://api.bilibili.com/x/player/pagelist?bvid={bvid}
  2. 获取字幕URL:GET https://api.bilibili.com/x/player/v2?bvid={bvid}&cid={cid}
  3. 请求字幕JSON:从 data.subtitle.subtitles[0].subtitle_url 获取
  4. 注意:需要Cookie,部分视频无CC字幕
# 关键代码
def get_bilibili_subtitle(bvid, cookie):
# 获取cid
cid_resp = requests.get(f'https://api.bilibili.com/x/player/pagelist?bvid={bvid}')
cid = cid_resp.json()['data'][0]['cid']

# 获取字幕URL(需要Cookie)
sub_resp = requests.get(
f'https://api.bilibili.com/x/player/v2?bvid={bvid}&cid={cid}',
cookies=cookie
)
subtitles = sub_resp.json()['data']['subtitle']['subtitles']

if subtitles:
sub_url = 'https:' + subtitles[0]['subtitle_url']
sub_content = requests.get(sub_url).json()['body']
# 每条包含 from, to, content 字段
return sub_content
return None

局限:约30-40%的B站视频有CC字幕(UP主上传或AI自动生成)

方案B:Whisper ASR(覆盖率高,但需GPU加速)

from faster_whisper import WhisperModel

model = WhisperModel("large-v3", device="cuda", compute_type="float16")
segments, info = model.transcribe("audio.mp3", language="zh")

transcript = []
for segment in segments:
transcript.append({
"from": segment.start,
"to": segment.end,
"content": segment.text
})

性能:large-v3模型中文准确率95%+,1小时视频约3-5分钟处理(GPU)

方案C:混合方案(BiliNote采用)

1. 先尝试CC字幕API → 有则直接用
2. 无CC字幕 → 下载音频 → Whisper转写
3. LLM后纠错(修正错别字、专业术语)

3.3 图像层:视频画面→截图

方案A:按时间戳均匀截帧

# 每30秒截一帧
ffmpeg -i video.mp4 -vf "fps=1/30" output_%04d.png

缺点:截图多且大量冗余

方案B:场景检测截帧(推荐)

# 检测场景变化,只在新场景出现时截图
ffmpeg -i video.mp4 -vf "select=gt(scene\,0.3)" -vsync vfr output_%04d.png

参数:0.3是场景变化阈值,可调(0.2更敏感,0.4更严格)

方案C:基于字幕时间戳精准截帧(BiliNote方案)

import subprocess

def screenshot_at_time(video_path, timestamp, output_path):
"""在指定时间戳截取视频帧"""
cmd = [
'ffmpeg', '-ss', str(timestamp),
'-i', video_path,
'-frames:v', '1',
'-q:v', '2',
output_path
]
subprocess.run(cmd, capture_output=True)

# 对每个字幕段落,在其开始时间截帧
for item in transcript:
ts = item['from']
screenshot_at_time('video.mp4', ts, f'screenshot_{int(ts)}.png')

方案D:PPT/幻灯片专用检测(extract-video-ppt方案)

  • 使用OpenCV计算相邻帧的SSIM/直方图差异
  • 当差异超过阈值时,判定为PPT翻页
  • 只保留翻页后的第一帧,去重后输出
import cv2

def detect_ppt_changes(video_path, threshold=0.85):
cap = cv2.VideoCapture(video_path)
prev_frame = None
ppt_frames = []

while cap.isOpened():
ret, frame = cap.read()
if not ret:
break

gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

if prev_frame is not None:
# 计算SSIM相似度
similarity = compute_ssim(prev_frame, gray)
if similarity < threshold: # 画面显著变化
ppt_frames.append(frame)

prev_frame = gray

return ppt_frames

3.4 结构层:LLM生成图文笔记

Prompt工程

你是一名专业的视频笔记整理师。请根据以下视频字幕和截图信息,生成一份图文并茂的Markdown格式笔记。

要求:
1. 每个章节标题使用 ## 二级标题
2. 每个章节配合一张关键截图,使用 ![描述](截图路径) 插入
3. 用简洁的语言总结每个章节的要点
4. 在关键概念处加粗
5. 在笔记末尾生成思维导图大纲
6. 每个章节标题旁附时间戳跳转链接

字幕内容:
{transcript_with_timestamps}

截图时间点:
{screenshot_timestamps}

LLM选择建议

模型 中文笔记质量 成本 推荐场景
DeepSeek-V3 ★★★★★ 极低 性价比最优
Qwen2.5-72B ★★★★★ 低 中文最佳
GPT-4o ★★★★ 高 多模态(文字+截图一起分析)
Claude 3.5 ★★★★ 高 长文本、结构化输出

3.5 完整流水线代码框架

class VideoToNote:
"""B站视频转图文笔记完整流水线"""

def __init__(self, llm_provider="deepseek"):
self.transcriber = BilibiliTranscriber() # CC字幕 + Whisper兜底
self.screenshotter = SceneDetector() # 场景检测截图
self.summarizer = LLMSummarizer(provider=llm_provider)

async def process(self, bvid: str) -> str:
# 1. 获取视频信息
video_info = await self.get_video_info(bvid)

# 2. 下载视频/音频
audio_path, video_path = await self.download(bvid)

# 3. 文字转录
transcript = await self.transcriber.transcribe(bvid, audio_path)

# 4. 智能截图
screenshots = await self.screenshotter.detect_and_capture(video_path)

# 5. LLM生成图文笔记
note = await self.summarizer.generate_note(
transcript=transcript,
screenshots=screenshots,
video_info=video_info
)

# 6. 输出Markdown
return self.render_markdown(note, screenshots)

# 使用
pipeline = VideoToNote(llm_provider="deepseek")
note_markdown = await pipeline.process("BV1xx411c7mD")

四、各工具的”图文并茂”能力评估

这是本次调研的核心关注点——不是只转文字,而是要图文并茂。

4.1 图文能力分级

级别 描述 代表工具
L0 纯文字摘要,无图 BilibiliSummary、bili2text
L1 文字 + 手动选时间点截图 大多数工具的基本模式
L2 文字 + 自动场景检测截图 BiliNote、VideoSeek
L3 文字 + PPT/幻灯片提取 BibiGPT、通义听悟、extract-video-ppt
L4 文字 + 代码/公式/图表识别 HoverNotes(唯一)

4.2 真正做到”图文并茂”的方案

方案一:BiliNote(最完整的开源方案)

  • 自动场景检测截图 → 插入Markdown
  • 时间戳跳转链接
  • 思维导图
  • 最适合:通用视频学习笔记

方案二:HoverNotes(最强视觉识别)

  • AI视觉识别代码块、数学公式、图表
  • 直接保存为Obsidian笔记
  • 最适合:编程/数学/技术课程

方案三:BiliNote + extract-video-ppt 组合

  • extract-video-ppt 提取PPT帧
  • BiliNote 处理文字+组织结构
  • 最适合:PPT演示类视频(讲座、课程)

方案四:BibiGPT + 手动截图

  • BibiGPT 做文字摘要 + 幻灯片提取
  • 手动补充关键截图
  • 最适合:快速出稿、内容创作者

五、市场格局与机会

5.1 市场规模估算

维度 数据
B站月活用户 3.4亿+
B站学习类视频占比 约40%(知识区+科技区+课堂)
视频笔记需求用户 学生+职场人 ≈ 1亿+
现有工具付费转化率 约3-5%
客单价 100-300元/年

TAM(总可触达市场):约10-30亿元/年(中国视频笔记工具市场)
SAM(可服务市场):约3-5亿元/年
SOM(短期可获取):约1000-3000万元/年

5.2 竞争格局

                高 ← 功能完整度 → 低
│
BiliNote ───────┤──── HoverNotes
(开源全能) │ (视觉最强)
│
BibiGPT ────────┤──── VideoSeek
(用户最多) │ (SaaS最全)
│
听脑AI ─────────┤──── 通义听悟
(价格最低) │ (阿里背书)
│
↓
低 ← 开放/可定制 → 高

5.3 空白机会

  1. B站原生集成:目前没有工具做成B站内置功能/官方小程序
  2. 多人协作笔记:现有工具都是单用户,缺少”学习小组”场景
  3. AI视觉+文字联合理解:除HoverNotes外,无人做到”看视频画面理解代码/公式”
  4. 知识图谱:多个视频的笔记之间自动关联、去重、构建知识网络
  5. 笔记→视频反向定位:从笔记某段文字一键跳回视频对应位置(BiliNote部分支持)

六、自研方案推荐

如果你要自己开发,推荐的最小可行架构:

6.1 MVP方案(1-2周可完成)

技术栈:Python + FastAPI + Whisper + FFmpeg + DeepSeek API

核心流程:
1. 输入BV号 → B站API获取视频信息
2. 尝试CC字幕 → 无则yt-dlp下载音频 → Whisper转写
3. FFmpeg场景检测截图(select=gt(scene,0.3))
4. DeepSeek API生成结构化Markdown笔记
5. 截图插入Markdown对应位置
6. 输出.md文件

预估成本:DeepSeek API约0.5元/小时视频

6.2 增强方案(1个月)

在MVP基础上增加:

  • 多模态LLM(GPT-4o)理解截图内容,精准配图
  • PPT检测算法(extract-video-ppt方案)
  • 思维导图生成(markmap)
  • Notion/Obsidian导出
  • Web前端界面

6.3 Chrome扩展方案

如果要做浏览器内使用的体验:

  • 参考 BilibiliSummary 的Chrome扩展模式
  • 注入B站视频页面,侧边栏显示笔记
  • 利用B站内置播放器API获取当前时间戳
  • 配合HoverNotes的视觉识别思路

七、推荐阅读与资源

资源 链接
BiliNote GitHub https://github.com/JefferyHcool/BiliNote
BiliNote 官网 https://www.bilinote.app
BiliNote 文档 https://docs.bilinote.app
BiliNote 技术架构详解 https://blog.csdn.net/kingdom_java/article/details/148397312
HoverNotes 官网 https://hovernotes.io
BibiGPT 幻灯片提取 https://bibigpt.co/zh/features/bilibili-slide-extractor
VideoSeek 官网 https://www.videoseek.ai
extract-video-ppt https://github.com/wudududu/extract-video-ppt
B站字幕API实战教程 https://sspai.com/post/78618
BilibiliSummary https://github.com/jackwener/bilibili-summary
Video-Transcribe https://github.com/qkirara/Video-Transcribe
通义听悟 https://tingwu.aliyun.com

本报告基于2026年5月30日的公开信息调研,工具功能和价格可能随时变化,请以官方最新信息为准。