podcast-transcript-txt-skill 深度研究:任何播客一键变 TXT,本地转录不上传

> GitHub: KingJing1/podcast-transcript-txt-skill

> 作者: @一龙小包子

> License: MIT

> 研究时间: 2026-03-26

🎯 一句话版本

给一个播客链接(YouTube/小宇宙/Apple Podcasts/X 链接/甚至只给标题),自动输出干净的 .txt 文字稿。优先用官方字幕,没有就本地 ASR 转录(faster-whisper),全程不上传音频到第三方。可以作为 Claude Code / OpenClaw 的 Skill 直接调用。

🧠 核心理念

> "Audio locks you in. Text sets you free."

> 音频把你锁住,文字让你自由。

播客是线性的——不能标注、不能快速对比、不能跳到三周前模糊记得的某句话。转成文字后:

🔗 解析链路(智能 Fallback)


输入(URL/标题)
    ↓
① 官方 Transcript? → ✅ 直接用(最高质量)
    ↓ 没有
② YouTube 字幕? → ✅ yt-dlp 提取
    ↓ 没有/质量差
③ 页面结构化文本? → ✅ show notes / 页面正文
    ↓ 没有
④ 音频可获取? → 下载 → faster-whisper 本地 ASR → ✅ draft
    ↓ 全部失败
⑤ 报错 + 详细失败日志

每一步都记录在 .meta.json,可以审计每一次尝试和失败原因。

📥 支持的输入源

输入类型示例首选路径
YouTube URL`youtube.com/watch?v=...`描述中的官方 transcript → 字幕 → 音频 ASR
小宇宙页面链接官方 transcript → 页面文本 → 音频 ASR
Apple Podcasts自动发现标题搜索 → 音频 ASR
X/Twitter`x.com/user/status/...`解析外链 → 转入正常流程
官方 transcript.ttml / .json URL直接解析
音频 URL.mp3 / .m4a直接本地 ASR
**纯标题**"Dario Amodei 访谈"Scripod → YouTube 搜索 → Apple → ASR

纯标题搜索是最聪明的功能——你只记得"那个 Dario Amodei 的播客",它帮你找到并转录。

🎤 ASR 引擎

faster-whisper(本地运行):

模型速度(CPU)质量
**small**(默认)30min 音频 → 8-20min一般,适合草稿
medium30min 音频 → 15-35min较好,人名/术语更准

⚠️ ASR 输出标记为 draft——建议用 LLM 校对一轮:

> "Proofread this draft transcript with minimal edits: fix obvious homophone errors and punctuation, keep meaning unchanged."

📤 输出

每个输入产生两个文件:


/tmp/transcripts/
├── episode-title.txt         # 干净的转录文本
└── episode-title.meta.json   # 执行元数据

meta.json 关键字段

🔧 使用


# 安装
git clone https://github.com/KingJing1/podcast-transcript-txt-skill.git
cd podcast-transcript-txt-skill
pip install -r requirements.txt

# 环境检查
python3 scripts/podcast_transcript_txt.py --doctor

# 单个转录
python3 scripts/podcast_transcript_txt.py \
  --input "https://www.youtube.com/watch?v=n1E9IZfvGMA" \
  --out-dir "/tmp/transcripts"

# 批量转录
python3 scripts/podcast_transcript_txt.py \
  --input "https://youtube.com/..." \
  --input "Dario Amodei 访谈" \
  --out-dir "/tmp/transcripts"

💡 与我们的关联

1. 和 summarize CLI 的对比 ⭐⭐⭐

我们目前用 summarize CLI 处理音视频:

summarizepodcast-transcript-txt
定位转录 + **摘要****纯转录**(干净 TXT)
输出摘要文本完整转录 + meta.json
转录引擎Groq → whisper.cpp → 云端**faster-whisper 本地**
小宇宙支持
纯标题搜索✅(Scripod + Apple)
隐私可能上传到 Groq 云端**全程本地**
元数据✅ meta.json(审计链)

互补关系

2. 深度研究的音频源处理

当 Young 发一个播客链接做深度研究时:

3. OpenClaw Skill 直接兼容

README 明确提到支持 OpenClaw(小龙虾)。可以作为 Skill 安装:


cp -R podcast-transcript-txt-skill ~/.openclaw/skills/podcast-transcript-txt

4. meta.json 的审计链设计

每次运行记录完整 attempt trace——这个 pattern 值得 OpenClaw 工具借鉴:

⚠️ 注意事项

1. ASR 质量有限:中文人名/术语同音字问题,需要 LLM 校对

2. CPU 速度慢:60 分钟音频在 CPU 上可能要 40-70 分钟(GPU 会快很多)

3. yt-dlp 依赖:YouTube 经常更新反爬,yt-dlp 需要保持最新

4. 不绕过付费墙/DRM:付费内容不可用

5. 无说话人分离:输出是时间戳文本,不区分说话人

📊 评分

维度评分(/10)
实用性8.5 — 多源输入 + 智能 fallback + 本地处理
设计质量8.5 — meta.json 审计链 + --doctor 环境检查 + 确定性优先级
隐私保护9.0 — 不上传音频到第三方
与 Agent 集成8.0 — CLI-first,任何能跑 shell 的 Agent 都能用
与我们的关联7.5 — 补充 summarize 的完整转录能力
**综合****8.0**

报告由深度研究助手自动生成 | 2026-03-26

来源: GitHub