公司动态
Pixelle-Video TTS 语音生成失败?从报错到解决的一次排完
Pixelle-Video TTS 语音生成失败从报错到解决的一次排完【免费下载链接】Pixelle-Video AI 全自动短视频引擎 | AI Fully Automated Short Video Engine项目地址: https://gitcode.com/GitHub_Trending/pi/Pixelle-Video你在 Pixelle-Video 里生成视频时音频环节卡住了控制台抛出TTS generation failed: ...或者 Web 界面在语音合成一步直接失败成片里只剩画面没有声音。别急这类问题九成集中在配置、连接和文本这三类原因上。跟着下面这套顺序走通常十几分钟内就能定位到具体环节。先对号入座按报错缩小排查范围打开日志后先找到 TTS 那一行报错对照下表确认大方向再进入对应分组细查你看到的报错 / 现象最可能的原因No default workflow configured for tts配置里没有设置default_workflow或配置没生效Workflow xxx not found工作流名称拼错或指向了不存在的路径TTS generation failed: ...工作流提交成功但执行失败看:后面的具体信息连接 ComfyUI 超时 / 无响应comfyui_url不可达本机 ComfyUI 没启动RunningHub 报鉴权错误runninghub_api_key缺失或已失效本地模式反复重试后仍失败网络不通、被限流或文本本身有问题任务偶尔成功、偶尔失败并发或请求频率过高配置与参数从 default_workflow 查起核对默认工作流。打开项目根目录的 config.example.yaml 对照你自己的config.yamlcomfyui.tts.default_workflow决定每次不指定工作流时用哪一个。示例值指向selfhost/tts_edge.json它依赖本地 ComfyUI如果你用的是 RunningHub 云端应改成runninghub/tts_edge.json或runninghub/tts_index2.json。确认推理模式。代码里 TTS 支持 localEdge TTS和 comfyui工作流两种模式见 pixelle_video/services/tts_service.py。没配置时默认走 local需要本地网络能访问 Edge TTS 服务。想切到工作流模式调用时显式传inference_modecomfyui。核对 voice 和 speed。本地模式下 voice 要用 Edge TTS 的语音 ID例如zh-CN-YunjianNeural而不是工作流里的音色名speed 是倍数1.0 正常、1.2 偏快越界或格式不对会直接报错。# 本地 Edge TTS 模式的典型调用用于隔离验证 TTS 是否可用 audio_path await pixelle_video.tts( text你好世界, inference_modelocal, voicezh-CN-YunjianNeural, speed1.0, )先用上面这段最小调用把 TTS 单独跑通再回到完整流程能立刻区分是语音本身的问题还是工作流环节的问题。环境与连接让服务端先能被访问到本地 ComfyUI 必须先活着。selfhost 工作流会把任务发到comfyui_url默认http://127.0.0.1:8188。确认 ComfyUI 已启动、端口一致Docker 里跑的 Pixelle-Video 注意容器内要写host.docker.internal:8188或宿主机 IP不能写 127.0.0.1。RunningHub 密钥与并发额度。用 runninghub 工作流时runninghub_api_key必须有效普通会员的并发上限默认是 1runninghub_concurrent_limit额度不够时任务会排队甚至被拒这是偶尔失败的高频原因之一。网络与代理。本地 Edge TTS 需要访问外部服务公司网络或代理环境下容易被掐断。能连上就重试反复失败就在配置里检查代理相关设置或临时换网络验证。文本与请求先怀疑输入再怀疑系统长文本拆短。一次塞入整篇稿子时单个工作流请求过重失败概率明显上升。按分镜句子拆开、逐条生成再拼接是最稳的做法。清理特殊字符。emoji、控制字符、未闭合的引号偶尔会让工作流解析异常。先把文本降到纯中文/纯英文 常规标点能跑通再逐步加回复杂内容。声音克隆要检查参考音频。如果用了ref_audio例如runninghub/tts_index2.json的克隆工作流确认参考音频路径可达、格式被工作流接受参考音频不合格时错误往往就笼统地表现为生成失败。并发与日志最后再动这两处调低并发与频率。批量生成时Edge TTS 侧内置了限速与重试请求间隔 0.5 秒起、并发上限 3、指数退避重试定义在 pixelle_video/utils/tts_util.py。如果你的上层调度还在同时压多个任务把并发压到 1–2 再试观察是否恢复。把日志翻到根因。日志文件在项目根目录api_server.log记录 API 请求全过程。搜索TTS关键字重点看TTS generation failed:后面的完整描述和Retrying重试中的次数——重试多次后仍失败基本可以锁定是服务端或网络问题而不是代码问题。自查清单config.yaml里comfyui.tts.default_workflow已设置且与工作流所在目录selfhost / runninghub匹配推理模式local / comfyui与你的部署方式一致voice 参数格式正确本地 ComfyUI 已启动comfyui_url可达Docker 场景已改主机地址RunningHub 工作流API Key 有效runninghub_concurrent_limit未超过账号额度输入文本已拆短、无异常特殊字符克隆场景参考音频有效批量任务并发已降到 1–2观察是否仍失败已查看api_server.log中 TTS 相关报错拿到完整错误描述以上都确认过还是失败建议把完整报错和当前config.yaml一并提交到项目社区的 Issues或参考 docs/zh/troubleshooting.md 的排障章节对照检查。日志里那行TTS generation failed后面的具体描述就是维护者最需要的线索。【免费下载链接】Pixelle-Video AI 全自动短视频引擎 | AI Fully Automated Short Video Engine项目地址: https://gitcode.com/GitHub_Trending/pi/Pixelle-Video创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考