#2574 requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: http://127.0.0.1:9880/tts?text=%E4%BD%A0%E5%A5%BD%

35.212* Posted at: 1 day ago 👁13

400 Client Error: Bad Request for url: http://127.0.0.1:9880/tts?text=%E4%BD%A0%E5%A5%BD%E5%95%8A%E6%88%91%E7%9A%84%E6%9C%8B%E5%8F%8B.+&text_lang=zh&ref_audio_path=symx1.mp4_0000050240_0000185600.wav&prompt_text=%E5%A4%A7%E5%A4%89%E7%94%B3%E3%81%97%E8%A8%B3%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%9B%E3%82%93%E3%81%8A%E5%AE%A2%E6%A7%98%E3%81%9D%E3%81%AE%E4%BB%B6%E3%81%AB%E9%96%A2%E2%80%A6&prompt_lang=ja&speed_factor=1.0:
Traceback (most recent call last):
File "/Users/renxu/Downloads/pyvideotransFree/pyvideotrans/videotrans/util/ListenVoice.py", line 18, in run

tts.run(

File "/Users/renxu/Downloads/pyvideotransFree/pyvideotrans/videotrans/tts/__init__.py", line 284, in run

GPTSoVITS(**kwargs).run()

File "/Users/renxu/Downloads/pyvideotransFree/pyvideotrans/videotrans/tts/_base.py", line 179, in run

raise self.error if isinstance(self.error,Exception)  else RuntimeError(str(self.error))

File "/Users/renxu/Downloads/pyvideotransFree/pyvideotrans/videotrans/tts/_base.py", line 208, in _local_mul_thread

self._item_task(item)

File "/Users/renxu/Downloads/pyvideotransFree/pyvideotrans/videotrans/tts/_gptsovits.py", line 98, in _item_task

response.raise_for_status()

File "/Users/renxu/Downloads/pyvideotransFree/pyvideotrans/.venv/lib/python3.10/site-packages/requests/models.py", line 1026, in raise_for_status

raise HTTPError(http_error_msg, response=self)

requests.exceptions.HTTPError: 400 Client Error: Bad Request for url: http://127.0.0.1:9880/tts?text=%E4%BD%A0%E5%A5%BD%E5%95%8A%E6%88%91%E7%9A%84%E6%9C%8B%E5%8F%8B.+&text_lang=zh&ref_audio_path=symx1.mp4_0000050240_0000185600.wav&prompt_text=%E5%A4%A7%E5%A4%89%E7%94%B3%E3%81%97%E8%A8%B3%E3%81%94%E3%81%96%E3%81%84%E3%81%BE%E3%81%9B%E3%82%93%E3%81%8A%E5%AE%A2%E6%A7%98%E3%81%9D%E3%81%AE%E4%BB%B6%E3%81%AB%E9%96%A2%E2%80%A6&prompt_lang=ja&speed_factor=1.0


=
system:macOS-26.2-arm64-arm-64bit
version:v3.91
frozen:False
language:zh
root_dir:/Users/renxu/Downloads/pyvideotransFree/pyvideotrans
Python: 3.10.19 (main, Dec 17 2025, 20:54:19) [Clang 21.1.4 ]

1 Replies

错误信息表明 GPT-SoVITS 语音克隆服务返回了“400 Bad Request”。这通常是由于发送给 GPT-SoVITS 服务的请求参数不正确或服务端无法处理导致的。从 URL 可以看出,问题很可能出在 prompt_text(参考文本)和 prompt_lang(参考文本语言)参数不匹配上。

核心问题分析:
URL 中 prompt_lang=ja(日语),但 prompt_text 的内容是日语和省略号的混合(大変申し訳ございませんお客様その件に関…),这可能是由软件自动从视频中提取的参考音频对应的文本,且识别有误或格式不对。GPT-SoVITS 服务端可能无法处理这种语言代码与内容不匹配或格式异常的请求。

请按以下步骤排查和解决:

  1. 检查 GPT-SoVITS 服务状态:

    • 确保您已正确启动并运行了 GPT-SoVITS 服务(通常通过运行 api.py 启动,监听在 http://127.0.0.1:9880)。
    • 在浏览器中访问 http://127.0.0.1:9880,确认服务是否正常返回页面。
  2. 检查参考音频和文本:

    • 错误中的 ref_audio_path=symx1.mp4_0000050240_0000185600.wav 是用于克隆音色的参考音频片段。
    • prompt_text 应该是这个参考音频片段对应的准确文本。软件可能从视频中自动识别并提取了这段文本,但识别结果(日语混杂)可能不正确。
    • 解决方案: 在 pyVideoTrans 中,当使用 GPT-SoVITS 时,建议手动指定清晰、准确的参考文本,而不是依赖自动识别。

      • 在主界面执行翻译后,会弹出“配音角色/字幕”编辑窗口。
      • 在该窗口中,找到“GPT-SoVITS参考音频”相关区域(通常需要点击“设置”或“高级”)。
      • 确保“参考文本”内容是完全正确的,并且“参考文本语言”与内容实际语言严格一致(例如,如果是纯日语,就选ja;如果是中文,就选zh)。
      • 如果参考音频本身是混合语言或识别质量差,考虑更换一段更清晰、语音单一的音频作为参考。
  3. 简化请求测试:

    • 您可以手动构造一个最简单的请求测试 GPT-SoVITS 服务是否正常。打开终端,使用 curl 命令(Mac 自带):

      curl -X POST "http://127.0.0.1:9880/tts" \
      -H "Content-Type: application/json" \
      -d '{
        "text": "你好,世界。",
        "text_lang": "zh",
        "ref_audio_path": "您的完整参考音频文件路径.wav",
        "prompt_text": "一段清晰的、与参考音频完全对应的中文文本。",
        "prompt_lang": "zh",
        "speed_factor": 1.0
      }'
    • ref_audio_pathprompt_text 替换为您自己准备的正确内容。如果此请求也返回 400 错误,说明 GPT-SoVITS 服务端配置或模型有问题。
  4. 查看 GPT-SoVITS 服务日志:

    • 启动 GPT-SoVITS 服务的终端窗口会输出详细日志。查看当 pyVideoTrans 发送请求时,服务端是否打印了更具体的错误信息(例如,模型加载失败、音频格式不支持、文本编码问题等)。
  5. 确保音频格式兼容:

    • GPT-SoVITS 可能对参考音频的格式(采样率、位深、声道数)有要求。请确保参考音频是常见的格式(如 WAV、MP3),并且是单声道、16kHz 采样率(这是许多语音模型的通用要求)。您可以使用 ffmpeg 转换音频格式。

如果以上步骤无法解决,请提供:

  • GPT-SoVITS 服务端的完整错误日志。
  • 您使用的参考音频片段和您手动输入的参考文本内容。
  • pyVideoTrans 中 GPT-SoVITS 配音设置的具体截图。

请查看更多参考文档:

Post Your Reply
Open source and free maintenance is not easy. If this project is helpful to you, please consider making a small donation to help the project continue to maintain and update.

Donate: https://ko-fi.com/jianchang512

Similar issues already exist

Trending Questions