About douyin-transcribe
douyin-transcribe is a Skill for turning Douyin video audio into text. It uses SenseVoice-Small and saves transcripts as Markdown with frontmatter.
Key features
- 01Download audio from Douyin videos
- 02Transcribe with SenseVoice-Small
- 03Create Markdown with frontmatter
- 04Fall back to yt-dlp when needed
Use cases
- 01Save a Douyin video as a transcript
- 02Organize transcriptions in Markdown
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ chubbyguan/ chubbyskills --skill douyin-transcribeAfter installing, type/douyin-transcribein Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
requirements.txtscripts/download_douyin_audio.pytranscribe.pyDetails
From the project README抖音视频转录 Skill
将抖音视频下载音频,用 SenseVoice-Small 转录为文字,存为 Markdown 文件。
环境要求
# Python 3.9+
python -m venv .venv
source .venv/bin/activate
# 依赖
pip install funasr modelscope torch torchaudio
# 系统依赖
# macOS: brew install ffmpeg
# Ubuntu: sudo apt install ffmpeg
使用方法
python scripts/transcribe.py "https://v.douyin.com/xxxxx"
流程(3 步)
Step 1: 从抖音下载音频
使用 iesdouyin.com/share/video/<id> + 移动端 UA 获取 window._ROUTER_DATA,提取 CDN 下载链接。
关键点:
- ✅
iesdouyin.com/share/video/而非douyin.com/video/ - ✅ 移动端 UA 必须用 iPhone
- ✅
playwm→play去水印 - ⚠️ 首选无 cookie 直采;若分享页返回蜘蛛壳(风控),自动回退 yt-dlp +
YTDLP_COOKIES_FROM_BROWSER(浏览器打开过 douyin.com 即可,无需登录)
Step 2: SenseVoice-Small 转录
from funasr import AutoModel
from funasr.utils.postprocess_utils import rich_transcription_postprocess
model = AutoModel(
model="iic/SenseVoiceSmall",
trust_remote_code=True,
vad_model="fsmn-vad",
vad_kwargs={"max_single_segment_time": 30000},
device="cpu",
)
result = model.generate(input=audio_path, language="zh", use_itn=True, batch_size_s=60)
Step 3: 生成 Markdown
自动创建带 frontmatter 的 Markdown 文件。
性能数据
| 视频时长 | 模型加载 | 转录耗时 | 总耗时 |
|---|---|---|---|
| 10 min | ~30s | ~25s | ~1 min |
| 30 min | ~30s | ~75s | ~2 min |
| 1h 22min | ~40s | ~180s | ~4 min |
已知限制
- SenseVoice-Small 模型首次下载约 893MB(从 ModelScope,国内快)
- CPU 推理质量略低于 GPU,但中文仍优于 Whisper-small
- VAD 自动切分可能把长停顿处切成两段
- 不支持说话人分离
- yt-dlp 不可用(需要 cookie),必须走 iesdouyin 路线
参考项目
- FunAudioLLM/SenseVoice - 语音识别模型
- FunASR - 语音识别框架
- vangie/douyin-transcriber - 原始灵感(Go CLI)
⚖️ 合规声明
仅供个人学习与研究使用。请遵守目标平台的服务条款(ToS)与 robots 规则,控制请求频率,不要用于批量抓取、商用爬取或侵犯他人权益的场景。下载内容的版权归原作者所有。
Comments
Markdown supported