agentsclimarketplace

Youtube transcribe

Skill chubbyguan/chubbyskills/youtube-transcribe

YouTube 视频 → 下载 → 转录 → 翻译 → 存为 Markdown。 支持中英文,英文内容自动翻译成中文,输出中英对照。From its SKILL.md

Install
npx -y skills add chubbyguan/chubbyskills --skill youtube-transcribe

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • reads credentialsReads from 1 credential source: `DEEPSEEK_API_KEY`.
  • runs commandsInstructs the agent to run 3 commands, including `python scripts/transcribe.py "https://www.youtube.com/watch?v=xxxxx"` and 2 more.

SKILL.md

3.8 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it

YouTube 视频转录 + 翻译 Skill

字幕优先:先抓官方/自动字幕(秒级、免 GPU),抓不到再下载音频用 SenseVoice-Small 转录;英文内容自动翻译成中文,输出中英对照 Markdown。加 --no-subtitle 可强制走音频转录。

为什么需要这个

YouTube 有大量优质英文内容,但很多人没时间看完或语言不通。这个 skill:

  • 转录视频为文字(支持中英文)
  • 英文内容自动翻译成高质量中文
  • 输出中英对照,方便学习

环境要求

# Python 3.9+
python -m venv .venv
source .venv/bin/activate

# 依赖
pip install funasr modelscope torch torchaudio

# 系统依赖
# macOS: brew install ffmpeg yt-dlp
# Ubuntu: sudo apt install ffmpeg && pip install yt-dlp

# 翻译功能(可选,英文视频需要)
export DEEPSEEK_API_KEY="your-api-key"

使用方法

python scripts/transcribe.py "https://www.youtube.com/watch?v=xxxxx"
python scripts/transcribe.py "https://www.youtube.com/watch?v=xxxxx" --output ./output
python scripts/transcribe.py "https://www.youtube.com/watch?v=xxxxx" --no-translate  # 不翻译
python scripts/transcribe.py "https://www.youtube.com/watch?v=xxxxx" --no-subtitle  # 强制音频转录
python scripts/batch_transcribe.py ../../examples/youtube-urls.txt -o ./output --no-translate

流程

Step 1: yt-dlp 下载音频

yt-dlp --extract-audio --audio-format mp3 --audio-quality 128K \
  "https://www.youtube.com/watch?v=xxxxx"

Step 2: SenseVoice-Small 转录

from funasr import AutoModel
model = AutoModel(model="iic/SenseVoiceSmall", ...)
result = model.generate(input=audio_path, language="auto", use_itn=True)

Step 3: 语言检测 + 翻译

  • 中文内容 → 直接输出
  • 英文内容 → LLM 翻译成中文,输出中英对照

Step 4: 生成 Markdown

---
title: 视频标题
type: note
tags: [YouTube]
language: en
translated: true
---

# 视频标题

> 转录引擎:SenseVoice-Small | 翻译:DeepSeek

## 中文翻译

翻译内容...

---

## English Original

原文内容...

批量模式

scripts/batch_transcribe.py 支持 URL 列表批处理,默认单条失败后继续处理下一条;需要严格模式时加 --stop-on-error

翻译配置

默认使用 DeepSeek API 翻译。需要设置环境变量:

export DEEPSEEK_API_KEY="your-api-key"

支持的 LLM:

  • DeepSeek(推荐,性价比高)
  • OpenAI
  • 任何兼容 OpenAI API 格式的服务

性能数据

视频时长下载转录翻译总耗时
5 min~10s~5s~10s~30s
10 min~15s~10s~20s~50s
30 min~30s~30s~60s~2min

已知限制

  • SenseVoice-Small 对英文转录准确率不如中文
  • 翻译质量取决于 LLM 能力
  • 长视频翻译可能需要较长时间
  • 部分 YouTube 视频有地区限制

参考项目

⚖️ 合规声明

仅供个人学习与研究使用。请遵守目标平台的服务条款(ToS)与 robots 规则,控制请求频率,不要用于批量抓取、商用爬取或侵犯他人权益的场景。下载内容的版权归原作者所有。

What ships with it: 3 files

13.3 KB alongside SKILL.md, 2 of them executable

scripts/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.