我把「3小时播客变成可搜索文本」做成了 Claude Code 的一条命令
文章目录
前言
你有没有过这种时刻——
关注了一年的技术播客终于更新了,点开一看 2 小时 47 分钟。你很想听,但实在抽不出整块时间。想搜里面的某个观点?对不起,没有字幕。想让 AI 帮你总结?对不起,没有文本。
于是我做了一个叫 shut-up-and-scribe 的 Claude Code Skill(欢迎star)
项目地址:shut-up-and-scribe
把这件事压缩成一句话:
/shut-up-and-scribe https://youtu.be/ZDXIUO7CRzo
一个命令,YouTube / B站 / 本地音视频全文转录,带说话人分离,输出可以直接读的对话文本。

它做了什么?
完整流水线,一键跑完:
- 下载音频 — YouTube / B站视频自动抓取,本地文件直接处理
- WhisperX 转录 — large-v3 模型,识别语言 + 转文字
- 说话人分离 — 自动区分「这是谁在说话」,打上【说话人1】【说话人2】标签
- 合并整理 — 同人说的话合并成段落,输出干净的
.txt
输出长这样:
==================== 语音转录文本 — 共2位说话人 ===================
来源:https://youtu.be/abc
处理时间:2026-05-04
【说话人1】今天我们聊一聊 AI 的未来。
【说话人2】对,这个话题很有意思。
【说话人1】那我们先从大模型开始说起吧。
指定名字更直观:
/shut-up-and-scribe https://youtu.be/xxx --names "张总,李工"
【张总】Today let's talk about the future of AI.
【李工】Yes, I think this topic is really interesting.
怎么用?
如果你用的是 Claude Code,直接把 skill 文件放进 .claude/skills/,然后:
/shut-up-and-scribe https://www.bilibili.com/video/BVxxxx
剩下的,交给 AI。 ☕
遇到问题先查 README,里面每一个坑都是我亲手踩出来的。
花了一整天才跑通的环境
说「一键」是骗你的。真实情况是:光把环境跑通我就花了一整天。
下面是我真实踩过的坑,一字不差地记录在这里,让你不用再踩一遍。
第一关:ffmpeg
Windows 用户别去官网瞎下载。我从 GyanD/codexffmpeg releases 下了 版本 7 的 shared,解压后把 bin/ 加进 PATH。
目前还有 torchcodec 的 warning 没解决,不过不影响运行,先放着。
第二关:HuggingFace Token
说话人分离依赖 pyannote 系列模型,你需要:
- 去 huggingface.co 注册,进 Settings → Access Tokens 建一个
write权限的 token - 手动点三个「Accept Conditions」——这是最容易被忽略的一步,不点程序直接下载模型失败:
- 设置环境变量
HF_TOKEN。Windows PowerShell 推荐:[System.Environment]::SetEnvironmentVariable('HF_TOKEN', 'hf_你的token', 'User')💡 设完要重启终端、IDE 或 VS Code 才生效
第三关:Python 与 numpy 地狱
我用的 Anaconda3-2025.12-2-Windows-x86_64,装完手动把这三行塞进系统环境变量:
D:\<anaconda dir>
D:\<anaconda dir>\Scripts
D:\<anaconda dir>\Library\bin
然后才是真正的深渊——依赖版本。
# torch 版本必须精确匹配,注意最好用GPU版本
pip install torch==2.6.0 torchvision==0.21.0 torchaudio==2.6.0 # cuda 版本看你机器
# 然后装业务包
pip install yt-dlp whisperx
重点来了。 如果你用 Anaconda,装完会发现 import transformers 直接崩溃。原因是 numpy 版本冲突——需要这样救:
pip uninstall numpy
pip install "numpy<2.4"
测试一下 transformers 能不能活下来:
$env:PYTHONFAULTHANDLER = "1"
python -c "import faulthandler; faulthandler.enable(); import transformers"
还有一坑:Library/bin/libiomp5md.dll 会和 torch 的 OpenMP 冲突,直接删掉这个 dll。
一句话总结:依赖版本请和我保持一致,不然需要花较多时间处理问题。这是血泪教训。
第四关:Anaconda 的 PATH 陷阱
很多人(包括我)以为装了 Anaconda 就万事大吉,结果跑起来发现各种找不到模块。原因很简单——Anaconda 没加入 PATH。
除了主目录,还要把 Scripts 和 Library\bin 都加进去,三个路径缺一不可。
几个好用的参数
| 参数 | 作用 | 示例 |
|---|---|---|
--names "A,B" |
自定义说话人名称 | --names "主持人,嘉宾" |
--language zh |
指定语言(会弹出选择) | --language zh |
--punctuate |
transformers 恢复标点 | xxx --punctuate |
--proofread |
LLM 校对标点错别字 | xxx --proofread |
--cleanup |
跑完删临时文件 | xxx --cleanup |
它适合干什么?
- 长播客整理 — 2 小时节目,10 分钟出稿,搜索关键词秒定位
- 访谈记录 — 给说话人起名字,直接当文字稿用
- B站视频归档 — 收藏的视频终于可以 Ctrl+F 了
- 个人学习 — 听课录音、会议录音,转文字后喂给 AI 总结
几个注意事项
- 首次运行会下载 ~3GB 模型,耐心等一下
- 说话人识别不是 100% 准确,可以用
--names手动校准 - HF Token 是敏感信息,别提交到公开仓库
- 仅用于个人学习/研究,请遵守版权规定
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)