#3844 TaskCfgVTT(is_cuda=True, uuid='f2dc289a14', cache_folder='E:/pyvideotrans-v3.98/tmp/14268/f2dc289a14', target_dir='C:/Us

2407:d840* Posted at: 3 hours ago 👁11

语音识别阶段出错 [faster-whisper(本地)] 出错了,可能内存或显存不足
A child process terminated abruptly, the process pool is not usable anymore
Traceback (most recent call last):
File "videotrans\configure\_base.py", line 280, in _new_process
File "videotrans\process\signelobj.py", line 81, in submit_task_gpu
File "concurrent\futures\process.py", line 720, in submit
concurrent.futures.process.BrokenProcessPool: A child process terminated abruptly, the process pool is not usable anymore

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "videotrans\task\job.py", line 105, in run
File "videotrans\task\trans_create.py", line 353, in recogn
File "videotrans\recognition\__init__.py", line 265, in run
File "videotrans\recognition\_base.py", line 143, in run
File "videotrans\recognition\_overall.py", line 33, in _exec
File "videotrans\recognition\_overall.py", line 105, in _faster
File "videotrans\configure\_base.py", line 294, in _new_process
RuntimeError: 出错了,可能内存或显存不足
A child process terminated abruptly, the process pool is not usable anymore
TaskCfgVTT(is_cuda=True, uuid='f2dc289a14', cache_folder='E:/pyvideotrans-v3.98/tmp/14268/f2dc289a14', target_dir='C:/Users/UserName/Desktop/_video_out/重型竞赛栓动步枪-mp4', source_language='英语', source_language_code='en', source_sub='C:/Users/UserName/Desktop/_video_out/重型竞赛栓动步枪-mp4/en.srt', source_wav='E:/pyvideotrans-v3.98/tmp/14268/f2dc289a14/en.wav', source_wav_output='C:/Users/UserName/Desktop/_video_out/重型竞赛栓动步枪-mp4/en.m4a', target_language='简体中文', target_language_code='zh-cn', target_sub='C:/Users/UserName/Desktop/_video_out/重型竞赛栓动步枪-mp4/zh-cn.srt', target_wav='E:/pyvideotrans-v3.98/tmp/14268/f2dc289a14/target.wav', target_wav_output='C:/Users/UserName/Desktop/_video_out/重型竞赛栓动步枪-mp4/zh-cn.m4a', name='C:/Users/UserName/Desktop/111/重型竞赛栓动步枪.mp4', noextname='重型竞赛栓动步枪', basename='重型竞赛栓动步枪.mp4', ext='mp4', dirname='C:/Users/UserName/Desktop/111', shound_del_name=None, translate_type=10, tts_type=0, volume='+0%', pitch='+0Hz', voice_rate='+0%', voice_role='Yunjian(Male/CN)', voice_autorate=True, video_autorate=True, remove_silent_mid=False, align_sub_audio=True, detect_language='en', recogn_type=0, model_name='large-v3-turbo', shibie_audio=None, remove_noise=False, enable_diariz=False, nums_diariz=0, rephrase=0, fix_punc=False, subtitle_language=None, app_mode='biaozhun', subtitles='', targetdir_mp4='C:/Users/UserName/Desktop/_video_out/重型竞赛栓动步枪-mp4/重型竞赛栓动步枪.mp4', novoice_mp4='E:/pyvideotrans-v3.98/tmp/14268/f2dc289a14/novoice.mp4', is_separate=False, instrument=None, vocal=None, back_audio='', clear_cache=False, background_music=None, subtitle_type=1, only_out_mp4=False, recogn2pass=False, output_srt=0, copysrt_rawvideo=False)


=
system:Windows-10-10.0.22621-SP0
version:v3.98
frozen:True
language:zh
root_dir:E:/pyvideotrans-v3.98

3 Replies

这是由于显存或内存不足导致语音识别进程崩溃。错误信息显示子进程意外终止,进程池无法再使用,通常在使用大型模型(如 large-v3-turbo)且显存/内存不足时发生。

解决方案:

  1. 降低模型大小:在语音识别渠道的下拉菜单中,将模型从 large-v3-turbo 更换为更小的模型,例如 mediumsmallbaselarge-v3 系列模型需要至少 10GB 显存。
  2. 调整高级设置以降低显存占用:进入 菜单 -> 工具 -> 高级选项,在“语音识别参数”区域进行以下调整:

    • CUDA数据类型:从 float32 改为 float16int8
    • 识别准确度beam_size:从 5 改为 1
    • 识别准确度best_of:从 5 改为 1
    • 启用上下文感知:确保此项为 未选中 状态。
  3. 检查并关闭二次识别:在主界面右上角,确保 “二次识别” 选项未被勾选。如果同时翻译多个视频,二次识别会占用额外显存。
  4. 确保单任务运行:在 高级选项 -> 通用设置 中,确认 GPU同时任务数[重启生效] 设置为 1(除非单卡显存大于20G)。
  5. 清理缓存并重试:在主界面左上角勾选 “清理已生成”,然后重新处理视频,以排除缓存文件干扰。

如果以上步骤仍无法解决,可能是硬件资源确实无法满足当前任务。请考虑使用在线语音识别API(如OpenAI、阿里百炼Qwen3-ASR)替代本地模型。

请查阅相关文档:

其实原因不是内存问题,因为内存占用了还不到一半,还有多试几次就能成功。只能说软件不太完善。有些BUG

软件在调用GPU进行语音识别时,进程池管理可能存在不稳定性,尤其是在处理长视频或特定系统环境下,即使硬件资源充足也可能偶发进程崩溃。这属于开源软件在复杂硬件和系统环境兼容性方面的已知挑战。

您可以尝试以下步骤来增加任务成功的概率:

  1. 降低并发和优化设置

    • 进入 菜单 -> 工具 -> 高级选项
    • 通用设置 中,将 GPU同时任务数[重启生效] 设置为 1
    • 语音识别参数 中,进行以下调整以降低单次任务负载:

      • CUDA数据类型:改为 float16
      • 识别准确度beam_size识别准确度best_of:均改为 1
      • 确保 启用上下文感知未选中 状态。
    • 保存设置并 重启软件 使部分设置生效。
  2. 调整处理策略

    • 在主界面,确保右上角的 二次识别 选项 未勾选
    • 如果视频较长,可以尝试将视频切割为较短片段分别处理。
    • 在主界面左上角勾选 清理已生成,然后重新开始任务,避免缓存文件干扰。
  3. 作为备选方案

    • 如果反复尝试仍不稳定,可以考虑切换到对资源要求更稳定的 openai-whisper(本地) 渠道(速度较慢),或直接使用在线的语音识别API(如OpenAI、阿里百炼Qwen3-ASR),以规避本地进程池问题。

请注意,pyVideoTrans是一款免费开源软件,依赖社区维护,在极端或特定环境下的稳定性确实可能存在局限。如果上述方法均无效,且问题可稳定复现,建议将完整的日志文件(logs/目录下)提交至项目GitHub的Issues页面,供开发者排查。

请查阅相关文档:

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