字幕提取失败时可按照以下流程诊断:
基础检查(解决80%常见问题):确认视频是否存在CC字幕标识(前端显示需开启)、检查网络代理设置(部分区域需要特定配置)、验证API密钥有效期(如有配置)。
技术诊断:
- 通过
DEBUG=ytt-mcp* npm start
开启详细日志模式,观察错误代码:- ERR_YT_NO_CAPTIONS表示字幕未开启
- ERR_YT_AGE_RESTRICTED需处理年龄验证
- ERR_NETWORK_TIMEOUT检查防火墙设置
- 对于部分自动生成字幕,可尝试在URL后添加
&t=10
时间戳参数强制刷新
备选方案:当官方字幕不可用时,可启用实验性语音识别模块(需在配置中设置"enableASR": true
),该功能基于Whisper模型实现,准确率约75-85%。同时建议在GitHub提交issue时附上videoId和错误日志,开发团队通常会在48小时内响应。
本答案来源于文章《ytt-mcp:获取和处理YouTube视频字幕的服务器工具》