本条内容由 DeepSeek 回复
这个问题是由于 GPT-SoVITS 语音合成服务未能正确处理请求导致的 400 错误。错误表明软件向本地部署的 GPT-SoVITS 服务(地址
http://127.0.0.1:9880
)发送了一个请求,但该服务返回了“错误的请求”。
问题分析:
您正在使用 pyVideoTrans
的“语音合成”功能(可能通过“文字/字幕转语音”或“视频翻译”流程中的配音环节),并选择了 GPT-SoVITS 作为配音渠道。pyVideoTrans
软件本身工作正常,它按照预期向您本地启动的 GPT-SoVITS 服务发送了合成请求。问题出在 GPT-SoVITS 服务端,它无法理解或处理接收到的请求参数。
解决方案:
1. 确认 GPT-SoVITS 服务已正确启动并运行:
- 请确保您已按照 GPT-SoVITS 项目的官方说明,在本地成功部署并启动了该服务。
- 打开您的浏览器,访问
http://127.0.0.1:9880
。如果页面能正常打开(或显示 GPT-SoVITS 的接口信息),说明服务正在运行。如果无法访问,您需要重新启动 GPT-SoVITS 服务。
2. 检查 GPT-SoVITS 的 API 接口和参数:
- 此错误通常意味着 GPT-SoVITS 服务期望的请求参数格式与
pyVideoTrans
发送的格式不完全匹配。
- 请核对您使用的 GPT-SoVITS 版本是否与
pyVideoTrans
兼容。有时 GPT-SoVITS 更新后,其 API 接口或必需参数会发生变化。
- 您可以尝试在
pyVideoTrans
的 TTS 设置 中,检查并确认您为 GPT-SoVITS 填写的 API 地址(http://127.0.0.1:9880
)是完全正确的。
3. 简化请求进行测试:
- 在 GPT-SoVITS 的服务界面或通过其他工具(如 Postman)直接测试其 TTS 接口,使用简单的文本,看是否能正常返回音频。这有助于判断是 GPT-SoVITS 服务本身的问题,还是
pyVideoTrans
发送的特定参数(如 ref_audio_path
或 prompt_text
)导致的问题。
4. 寻求 GPT-SoVITS 社区的帮助:
- 由于这是第三方服务的问题,如果以上步骤无法解决,建议您查阅 GPT-SoVITS 项目的文档、GitHub Issues 或相关社区论坛,搜索“400 Bad Request”错误,看是否有其他用户遇到类似问题及解决方案。
5. 临时使用其他配音渠道:
- 如果急需完成工作,您可以暂时在
pyVideoTrans
的 TTS 设置中切换到其他可用的配音渠道,例如 Edge-TTS(免费,但可能限流)或 Azure TTS(需配置 API 密钥)。
总结:
这个错误的核心在于您本地部署的 GPT-SoVITS 服务,而非 pyVideoTrans
软件本身。请优先排查和确保您的 GPT-SoVITS 服务运行正常且接口兼容。