视频逐字稿
将公开视频链接转换为本地视频与逐字稿。下载和转写均在本地完成,不将音视频或文本上传到第三方转写服务。
输入与交付
输入:一个视频网页链接;可选指定输出文件夹、语言与转写精度。
交付目录包含:
source.*:下载的视频源文件。transcript.md:带时间戳、便于阅读和编辑的逐字稿,默认交付此文件。transcript.txt:仅正文的纯文本逐字稿。transcript.srt:可直接导入剪辑软件的字幕文件。transcript.json:包含来源、语言、模型和分段时间轴的结构化结果。
执行流程
- 获取用户提供的视频 URL,并确认输出目录;未指定时使用当前工作区的
video-transcripts。 - 确认内容是公开的,或用户已授权访问。登录后才能看的视频,要求用户提供 Netscape 格式 Cookies 文件,或明确授权读取其本机浏览器 Cookies。
- 使用内置脚本下载并转写。中文或中英混合视频默认使用
small模型;更重视准确率且设备资源允许时使用medium。 - 交付
transcript.md并说明路径。自动转写可能有听辨错误,不要将其宣称为绝对准确的人工逐字稿;需要润色或校订时先征询用户。
运行命令
python <skill-path>/scripts/transcribe_video.py "<视频链接>" --output-dir "<输出目录>" --model small
常用参数:
--language zh:强制按中文识别;不填则自动识别语言。--model base|small|medium|large-v3:按速度与准确率取舍。--device cuda --compute-type float16:有 NVIDIA GPU 时使用,以提升速度。--cookies-from-browser chrome:仅在用户明确授权时,读取 Chrome 的登录 Cookies。
依赖与故障处理
脚本依赖 yt-dlp、faster-whisper 和本地 Whisper 模型。首次使用某个模型时,会下载模型文件并缓存到本机。建议安装 ffmpeg 以兼容更多视频编码;没有时仍会尝试直接读取媒体文件。
下载失败时,先更新 yt-dlp 再用原链接重试。遇到付费墙、DRM、访问限制或平台保护时停止并说明原因,不绕过限制。媒体无法解码时,安装 ffmpeg,或请用户提供本地视频/音频文件。