视频转录与字幕下载:基于 yt-dlp 的转录稿与媒体抓取工具

前言

做内容处理时经常遇到这几件事:拿到某个在线视频的完整口播文字稿、下载视频或音频文件、抓取原始字幕并清洗成可读段落。自己动手通常意味着手写 yt-dlp 命令、拼参数、再写脚本清理字幕里的换行和时间戳标记,成本不低。

下面介绍的 Skill 把这些动作封装成统一的命令行工具,底层仍是 yt-dlp 与 ffmpeg,省去重复造轮子的部分。

这是什么

Video Transcript Downloader,坐标 @clawhub_steipete/video-transcript-downloader,版本 1.0.0,由 steipete 发布在 ClawHub,许可证 MIT-0。分类为 design-media,ClawHub 上游元数据显示评分 100000、下载 23166、安装 438。

它解决的是:从 YouTube 及任何 yt-dlp 支持的站点,拉取视频、音频、字幕,并把转录稿整理成干净段落输出。

核心功能

1、转录稿输出。默认把整段口播压成一个干净段落,不保留时间戳;需要时间戳时加 --timestamps。

2、括号标记处理。默认去除 [Music]、[Applause] 这类方括号标记,需要保留时加 --keep-brackets。

3、媒体下载。支持视频、音频、字幕三类,可指定输出目录。

4、格式选择。列出可用格式(含 format id、分辨率、容器、纯音频等),再按 format id 下载,或指定 remux 容器。

5、转录来源。YouTube 优先走 youtube-transcript-plus,拿不到时回退到 yt-dlp 拉字幕再清洗成段落。

安装与启用

先通过 ClawHub 安装 Skill:

openclaw skills install @steipete/video-transcript-downloader

然后进入 skill 目录安装脚本依赖:

cd ~/Projects/agent-scripts/skills/video-transcript-downloader && npm ci

运行前确认 yt-dlp 和 ffmpeg 在 PATH 中,缺失时用 Homebrew 安装:

brew install yt-dlp ffmpeg

验证版本:

yt-dlp --version
ffmpeg -version | head -n 1

SkillHub 上的分发地址为 https://api.skillhub.cn/org-b6kzcl68/video-transcript-downloader ,上游仓库为 https://clawhub.ai/steipete/video-transcript-downloader 。官方资料未给出 Cursor、Codex CLI、Claude Code 各自的安装差异,这里不展开。

典型用法

下面命令都在 skill 目录下执行,./scripts/vtd.js 是入口脚本。

转录稿

默认输出干净段落:

./scripts/vtd.js transcript --url 'https://…'

指定语言、保留时间戳、保留括号标记:

./scripts/vtd.js transcript --url 'https://…' --lang en
./scripts/vtd.js transcript --url 'https://…' --timestamps
./scripts/vtd.js transcript --url 'https://…' --keep-brackets

下载

下载视频、音频、字幕:

./scripts/vtd.js download --url 'https://…' --output-dir ~/Downloads
./scripts/vtd.js audio --url 'https://…' --output-dir ~/Downloads
./scripts/vtd.js subs --url 'https://…' --output-dir ~/Downloads --lang en

格式选择

先列出可用格式:

./scripts/vtd.js formats --url 'https://…'

按 format id 下载(示例为 137+140,即视频流加音频流组合):

./scripts/vtd.js download --url 'https://…' --output-dir ~/Downloads -- --format 137+140

优先 MP4 容器且尽量不重编码(remux):

./scripts/vtd.js download --url 'https://…' --output-dir ~/Downloads -- --remux-video mp4

额外 yt-dlp 参数

转录回退、下载、音频、字幕、格式这几类命令,都可以在 -- 之后追加 yt-dlp 原生参数。例如给 formats 加详细日志:

./scripts/vtd.js formats --url 'https://…' -- -v

适用场景与注意

适合这几类情况:需要某个在线视频的完整口播文字稿;需要下载视频、音频或字幕文件;需要排查 yt-dlp/ffmpeg 与格式、播放列表相关的问题。

使用时注意几点。默认转录稿是单段输出,只有用户明确要时间戳时才加 --timestamps。方括号标记默认去除,需要保留时才加 --keep-brackets。额外 yt-dlp 参数统一放在 -- 之后,不要混进前面的选项。运行环境需要 yt-dlp 和 ffmpeg 可用,否则脚本无法工作。

小结

这个 Skill 的价值在于把「拉转录稿、下媒体、选格式」这几件高频但琐碎的事,收敛成几个语义清晰的子命令,底层仍然是成熟的 yt-dlp 与 ffmpeg,没有引入额外黑盒。适合需要批量处理在线视频素材的开发者。

官方地址:https://clawhub.ai/steipete/video-transcript-downloader

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye