#2436 UnicodeEncodeError: 'latin-1' codec can't encode characters in position 0-7: ordinal not in range(256)

15.134* Posted at: 2 hours ago 👁5

无效的值或参数:'latin-1' codec can't encode characters in position 0-7: ordinal not in range(256):
Traceback (most recent call last):
File "videotrans\util\ListenVoice.py", line 18, in run
File "videotrans\tts\__init__.py", line 303, in run
File "videotrans\tts\_base.py", line 179, in run
File "videotrans\tts\_base.py", line 208, in _local_mul_thread
File "videotrans\tts\_doubao2.py", line 139, in _item_task
File "requests\sessions.py", line 637, in post
File "requests\sessions.py", line 589, in request
File "requests\sessions.py", line 703, in send
File "requests\adapters.py", line 644, in send
File "urllib3\connectionpool.py", line 787, in urlopen
File "urllib3\connectionpool.py", line 493, in _make_request
File "urllib3\connection.py", line 493, in request
File "urllib3\connection.py", line 407, in putheader
File "http\client.py", line 1255, in putheader
UnicodeEncodeError: 'latin-1' codec can't encode characters in position 0-7: ordinal not in range(256)


=
system:Windows-10-10.0.26200-SP0
version:v3.92
frozen:True
language:zh
root_dir:D:/win-pyvideotrans-v3.92

1 Replies

这个错误是由于在向字节火山语音合成API发送请求时,请求头(Header)中包含了非ASCII字符(很可能是中文字符),而默认的编码方式 latin-1 无法处理这些字符导致的。

核心解决方法:确保您的“配音角色”名称是纯英文的。

请按以下步骤操作:

  1. 检查并修改配音角色

    • 在软件主界面,找到“配音”设置区域。
    • 在“配音角色”下拉列表中,选择一个纯英文的角色名(例如 zh-CN-XiaoxiaoNeuralzh-CN-YunxiNeural 等)。避免选择任何包含中文的角色名。
    • 如果您之前使用的是自定义角色或克隆角色,请暂时切换回标准的英文角色名进行测试。
  2. 检查翻译内容

    • 虽然此错误主要与请求头相关,但确保您要合成的字幕文本本身不包含可能导致编码问题的特殊字符。
  3. 验证网络代理设置

    • 如果您使用了网络代理,请确保代理地址格式正确(如 http://127.0.0.1:7860),并且代理服务器本身不会修改或错误编码请求头。

如果以上步骤仍无法解决问题,请提供您正在使用的具体“配音角色”名称,以便进一步分析。

请查看更多参考文档:

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

Trending Questions