#4280 RuntimeError: {'message': 'tts failed', 'Exception': 'ICT.wav not exists'}

67.209* Posted at: 2 hours ago 👁10

{'message': 'tts failed', 'Exception': 'ICT.wav not exists'}:
Traceback (most recent call last):
File "videotrans\util\ListenVoice.py", line 16, in run
File "videotrans\tts\__init__.py", line 354, in run
File "videotrans\tts\_base.py", line 181, in run
RuntimeError: {'message': 'tts failed', 'Exception': 'ICT.wav not exists'}


=
system:Windows-10-10.0.26200-SP0
version:v3.99
frozen:True
language:zh
root_dir:E:/软件/py_backup

3 Replies

这是由于配音过程中生成的音频文件(ICT.wav)未成功写入磁盘导致的,常见于网络请求失败、并发过高触发限流或临时目录空间不足。请按以下步骤排查:

  1. 降低Edge‑TTS并发并增加等待间隔
    打开 菜单 → 工具/选项 → 高级选项,找到“字幕配音调整”区域,将“EdgeTTS配音渠道配音并发数”改为 1,将“配音后暂停秒”改为 5~10 秒。这可以避免微软的限流措施导致生成静音或失败。
  2. 检查临时目录空间与权限
    确保软件所在磁盘(E:/)有足够剩余空间,并将软件根目录下的 tmp 文件夹清空。临时文件路径中不应含有中文或特殊符号,当前路径 E:/软件/py_backup 包含中文,建议将整个软件包移动到像 E:/pyVideoTrans 这样纯英文的路径后重试。
  3. 尝试更换配音渠道
    若 Edge‑TTS 持续失败,可先切换至其他免费渠道(如 Qwen-TTS(本地)F5-TTS(本地))排除渠道特定的问题。
  4. 查看详细错误日志
    前往 logs/ 文件夹,打开当日最新的日志文件,拖至底部查看在 ICT.wav not exists 之前的实际报错(例如网络错误、API 返回内容等),可帮助进一步定位。

如果以上步骤仍无法解决,请提供日志文件底部约 30 行内容以供分析。


Application started at 2026-04-25 02:24:47

First searching GPU...
NVIDIA_GPU_NUMS=1
Found 1 GPUs, cost=15s
[DEBUG] 返回缓存的编解码器 Windows-264: h264_nvenc
[DEBUG] 返回缓存的编解码器 Windows-265: hevc_nvenc
start workers...
process_max_gpu=1
multi_gpus=False
Concurrent task_nums=1
process_max=1
start 9 jobs
ended workers
等待 uuid_signal 线程退出
正在等待线程 PrepareVideo 结束...
正在等待线程 SpeechToText 结束...
正在等待线程 DiarizSpeaker 结束...
正在等待线程 TranslationSRT 结束...
正在等待线程 DubbingSrt 结束...
正在等待线程 SpeechToText2 结束...
正在等待线程 AlignVieoAudioSrt 结束...
正在等待线程 AssembVideoAudioSrt 结束...
正在等待线程 TaskDone 结束...
Successfully killed ffmpeg processes using taskkill


Application started at 2026-04-25 19:35:37

First searching GPU...
NVIDIA_GPU_NUMS=1
[DEBUG] 返回缓存的编解码器 Windows-264: h264_nvenc
Found 1 GPUs, cost=16s
start workers...
process_max_gpu=1
multi_gpus=False
Concurrent task_nums=1
process_max=1
[DEBUG] 返回缓存的编解码器 Windows-265: hevc_nvenc
start 9 jobs
ended workers
[DEBUG] 最
......
ed', 'Exception': 'ICT.wav not exists'}

[ERROR] GPT-SoVITS ref_wav=''
返回错误:error_data={'message': 'tts failed', 'Exception': 'ICT.wav not exists'}

[DEBUG] [字幕配音]渠道9:共耗时:1s
[DEBUG] GPT-SoVITS 当前需要发送的配音数据:data={'text': '你好啊我的朋友', 'text_lang': 'zh', 'ref_audio_path': 'ICT.wav', 'prompt_text': 'an old high over here.', 'prompt_lang': 'en', 'speed_factor': 1.0, 'text_split_method': 'cut0'}
self.api_url='http://127.0.0.1:9880/tts'
[ERROR] GPT-SoVITS ref_wav=''
返回错误:error_data={'message': 'tts failed', 'Exception': 'ICT.wav not exists'}

[ERROR] GPT-SoVITS ref_wav=''
返回错误:error_data={'message': 'tts failed', 'Exception': 'ICT.wav not exists'}

[DEBUG] [字幕配音]渠道9:共耗时:1s
正在等待线程 PrepareVideo 结束...
正在等待线程 SpeechToText 结束...
正在等待线程 DiarizSpeaker 结束...
正在等待线程 TranslationSRT 结束...
正在等待线程 DubbingSrt 结束...
正在等待线程 SpeechToText2 结束...
正在等待线程 AlignVieoAudioSrt 结束...
正在等待线程 AssembVideoAudioSrt 结束...
正在等待线程 TaskDone 结束...
Successfully killed ffmpeg processes using taskkill


Application started at 2026-04-25 22:29:56

First searching GPU...
[DEBUG] 返回缓存的编解码器 Windows-264: h264_nvenc
[DEBUG] 返回缓存的编解码器 Windows-265: hevc_nvenc
NVIDIA_GPU_NUMS=1
Found 1 GPUs, cost=3s
start workers...
process_max_gpu=1
multi_gpus=False
Concurrent task_nums=1
process_max=1
start 9 jobs
ended workers
[DEBUG] GPT-SoVITS 当前需要发送的配音数据:data={'text': '你好啊我的朋友', 'text_lang': 'zh', 'ref_audio_path': 'ICT.wav', 'prompt_text': 'an old high over here.', 'prompt_lang': 'en', 'speed_factor': 1.0, 'text_split_method': 'cut0'}
self.api_url='http://127.0.0.1:9880/tts'
[ERROR] GPT-SoVITS ref_wav=''
返回错误:error_data={'message': 'tts failed', 'Exception': 'ICT.wav not exists'}

[ERROR] GPT-SoVITS ref_wav=''
返回错误:error_data={'message': 'tts failed', 'Exception': 'ICT.wav not exists'}

[DEBUG] [字幕配音]渠道9:共耗时:5s
等待 uuid_signal 线程退出
正在等待线程 PrepareVideo 结束...
正在等待线程 SpeechToText 结束...
正在等待线程 DiarizSpeaker 结束...
正在等待线程 TranslationSRT 结束...
正在等待线程 DubbingSrt 结束...
正在等待线程 SpeechToText2 结束...
正在等待线程 AlignVieoAudioSrt 结束...
正在等待线程 AssembVideoAudioSrt 结束...
正在等待线程 TaskDone 结束...
Successfully killed ffmpeg processes using taskkill


Application started at 2026-04-25 22:30:16

First searching GPU...
[DEBUG] 返回缓存的编解码器 Windows-264: h264_nvenc
[DEBUG] 返回缓存的编解码器 Windows-265: hevc_nvenc
NVIDIA_GPU_NUMS=1
Found 1 GPUs, cost=2s
start workers...
process_max_gpu=1
multi_gpus=False
Concurrent task_nums=1
process_max=1
start 9 jobs
ended workers
[DEBUG] GPT-SoVITS 当前需要发送的配音数据:data={'text': '你好啊我的朋友', 'text_lang': 'zh', 'ref_audio_path': 'ICT.wav', 'prompt_text': 'an old high over here.', 'prompt_lang': 'en', 'speed_factor': 1.0, 'text_split_method': 'cut0'}
self.api_url='http://127.0.0.1:9880/tts'
[ERROR] GPT-SoVITS ref_wav=''
返回错误:error_data={'message': 'tts failed', 'Exception': 'ICT.wav not exists'}

[ERROR] GPT-SoVITS ref_wav=''
返回错误:error_data={'message': 'tts failed', 'Exception': 'ICT.wav not exists'}

[DEBUG] [字幕配音]渠道9:共耗时:5s
什么情况

根本原因是 GPT-SoVITS 未能找到调用时所需的参考音频文件(ICT.wav),导致配音失败。

  1. 检查 GPT-SoVITS API 服务状态
    确保 GPT-SoVITS 的 API 服务已启动且可正常访问(默认 http://127.0.0.1:9880)。若服务未运行,软件无法完成配音。
  2. 配置参考音频
    如果配音角色列表中选择了“clone”或带“克隆”字样的角色,GPT-SoVITS 必须提供一段 3~10 秒的参考音频 才能合成新语音。

    • 打开菜单 → TTS 设置GPT-SoVITS 设置
    • 在“参考音频路径”字段中指定一个存在的 .wav 文件(建议放在软件目录下的 f5-tts 文件夹内)。
    • 如果没有合适的参考音频,可先在角色列表中选择 非 clone 角色(如“默认音色”)临时测试。
  3. 确认语音识别时的字幕时长
    使用 clone 角色时,pyVideoTrans 会自动用原视频中对应的语音片段作为参考音频。如果这些片段的时长不在 3~10 秒之间,也可能导致传递的路径无效。

    • 进入 菜单 → 工具/选项 → 高级选项 → 语音识别参数
    • 将“最短语音持续毫秒”设为 3000,“最长语音持续秒数”设为 10
    • 勾选“合并过短字幕到邻近”和“Whisper预分割音频”,然后重新识别。
  4. 检查文件路径
    当前软件安装路径 E:/软件/py_backup 包含中文,建议将整个软件包移动到纯英文路径(如 E:/pyVideoTrans)后再次运行,避免因编码问题导致文件读取失败。

请查阅相关文档:

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.

Related resource