#5704 有一个视频 出现:resegment:ended,语音识别到100条后就卡住不动了

2a14:4900* Posted at: 3 hours ago

有一个视频 出现:resegment:ended,语音识别到100条后就卡住不动了

12 Replies

语音识别完成后卡在“resegment: ended”说明LLM重新断句阶段出现了问题。原因是当启用“LLM重新断句”时,软件会将识别出的字幕分批发送给AI模型(如DeepSeek或OpenAI)进行文本修正和断句,模型未正确返回结果(超时、报错或API限制)导致流程卡死。

快速解决

  1. 取消LLM断句:在语音识别渠道行取消勾选“LLM重新断句”,使用默认断句,任务即可正常继续。
  2. 确认API连接:如果仍需使用该功能,请检查菜单 翻译设置 中对应AI渠道的API Key是否正确、余额充足,并且网络代理(如需)已正确填写。
  3. 降低每批字幕行数:进入 菜单 → 工具 → 高级选项 → 语音识别参数,将“LLM重新断句每批字幕行数”改为 510,避免单次请求过大导致超时。
  4. 查看详细日志:打开软件目录 logs/ 下的最新日志文件(按日期命名),搜索 resegmenterror,可以看到具体失败原因(如连接超时、429限流等)。

请查阅相关文档:

我关闭这LLM断句呢

关闭LLM重新断句后,软件会使用默认的VAD/Whisper分割方式,语音识别完成后会直接进入后续步骤(翻译、配音等),不会再卡在“resegment: ended”。任务会正常继续进行,但字幕不会经过AI修正错别字和重新断句,可能保留原始识别中的一些断句不理想、标点缺失或短句合并等问题。后续如有需要可重新开启并调整每批字幕行数或更换更稳定的AI渠道。

就这一个视频,字幕识别到一半就卡住不动了,别的没事,我用格式工厂转换一下格式,也不行

根据你的描述,只有这一个视频卡住,说明软件和配置本身没有全局性问题。原因通常出在这个视频的音频编码格式、时长或内部音频流结构上,导致语音识别阶段的 VAD 分割或 Whisper 模型长时间卡死。


1. 请先做这个快速排查:

打开软件目录下的 logs/ 文件夹,找到该任务对应时间的日志文件(按日期命名如 20250622.log),滚动到底部查看卡住时最后几行的内容。如果日志中有大量重复的 Processing chunk ...VAD segment ... 字样,说明 VAD 正在无限循环处理某个音频片段;如果最后一行是 Speech recognition started... 但没有后续,说明 Whisper 模型在推理时卡住。

2. 针对疑似音频异常的处理方法:

  • 手动提取音频并转码:用格式工厂或 FFmpeg 命令将该视频的音频单独提取为标准的 PCM 16kHz 16bit mono WAV 格式:

    ffmpeg -i "你的视频.mp4" -vn -ar 16000 -ac 1 -sample_fmt s16 output.wav

    然后将这个 output.wav 作为输入文件导入软件(软件支持 wav 格式),不选视频,仅做语音转录,看能否顺利完成。如果能,说明原视频的音频流有问题。

  • 尝试关闭 VAD 预分割:进入 菜单 → 工具 → 高级选项 → 语音识别参数取消勾选 Whisper预分割音频?。这会绕过 VAD 直接让 Whisper 处理整段音频,某些情况下可以避免 VAD 卡死。
  • 降低模型规模:将 ASR 模型从 large-v3 临时切换为 mediumsmall,减少显存/内存压力,观察是否卡住。
  • 使用快速识别模式:在主界面“设置更多参数”中,不勾选 分离人声背景声降噪,这些选项会显著增加预处理时间,有时会因视频特殊导致死循环。

3. 如果以上都无效:

该视频可能被损坏或采用了极端编码参数。建议使用其他专业工具(如 ShanaEncoder)将该视频重新压制为标准的 H.264 / AAC MP4,然后再导入软件处理。


### 请查阅相关文档:
- [优化语音识别精度和断句效果](https://pyvideotrans.com/youhua)
- [调节VAD更精确控制语音识别结果](https://pyvideotrans.com/vad)

如仍无法解决,请提供日志文件中最后 30 行 的错误信息,我将进一步分析。

[DEBUG] [新进程任务 开始:正在分离人声和背景音,可能耗时较久]
[DEBUG] 任务参数:kwargs={'input_file': 'D:/Program Files/PyVideoTrans/tmp/10564/05907596b8/441000_ac2_raw.wav', 'vocal_file': 'D:/Program Files/PyVideoTrans/tmp/10564/05907596b8/vocal.wav', 'instr_file': 'D:/Program Files/PyVideoTrans/tmp/10564/05907596b8/instrument.wav', 'uvr_models': 'spleeter'}
[DEBUG] RTF: cost33.551 / audio966.101 = 0.035
[DEBUG] 分离背景声和人声成功[spleeter],耗时: 33.551s
[DEBUG] [新进程任务 结束:正在分离人声和背景音,可能耗时较久],耗时37.63528656959534s
[DEBUG] 新进程执行结束结束timeout=37

[DEBUG] 开始语音识别:渠道0
[DEBUG] [新进程任务 开始:STT use large-v3-turbo]
[DEBUG] 任务参数:kwargs={'detect_language': 'en', 'model_name': 'large-v3-turbo', 'logs_file': 'D:/Program Files/PyVideoTrans/tmp/10564/05907596b8/faster-en-1783498131.489234.log', 'is_cuda': True, 'no_speech_threshold': 0.6, 'condition_on_previous_text': False, 'speech_timestamps': None, 'audio_file': 'D:/Program Files/PyVideoTrans/tmp/10564/05907596b8/en.wav', 'local_dir': 'D:/Program Files/PyVideoTrans/models/models--mobiuslabsgmbh--faster-whisper-large-v3-turbo', 'compute_type': 'default', 'jianfan': False, 'audio_duration': 966089, 'hotwords': None, 'prompt': '', 'beam_size': 5, 'best_of': 5, 'temperature': '', 'repetition_penalty': 1.0, 'compression_ratio_threshold': 2.4, 'max_speech_ms': 5000, 'device_index': 0}
[DEBUG] [faster_whisper]加载模型:当前 is_cuda=True,_compute_type='default'
[DEBUG] faster-whisper模式下,对large-v3-turbo模型返回的断句结果重新修正
[DEBUG] 断句结果重新修正完毕
[DEBUG] 返回识别结果

根据你提供的日志,faster-whisper 模型(large-v3-turbo已经成功完成了语音识别并返回了结果(日志末尾显示“返回识别结果”)。这说明语音识别本身没有卡死。

你感觉“字幕识别到一半就卡住不动了”,很可能是界面显示的进度条没有及时刷新,或者识别完成后进入下一个阶段(例如翻译、配音)时因为配置或资源问题而卡住。处理方法如下:

  1. 确认是否开启了“分离人声背景声”
    日志显示你启用了 spleeter 进行人声背景分离,这个步骤计算量较大(耗时33.5秒),且可能在后续合成时再次占用资源。尝试关闭主界面“设置更多参数”中的“分离人声背景声”和“降噪”,直接识别,看能否顺畅完成。
  2. 检查是否开启了“二次识别”
    如果开启了“二次识别”(在配音完成后重新识别配音音频),整个流程会变长,且二次识别期间软件看起来会“卡住”。关闭“二次识别”后重试。
  3. 监控显存占用
    large-v3-turbo 模型在 CUDA 模式下对显存有一定需求(建议 8GB 以上空闲显存)。如果后续步骤(如翻译、配音)同时使用 GPU,可能会因显存不足导致计算停滞。打开任务管理器查看 GPU 占用,若显存占满,尝试降低模型为 mediumsmall
  4. 检查后续阶段日志
    logs/ 目录中找到该任务的完整日志文件,搜索 transdubbingerror 等关键词,看卡住时是否有报错或超时信息。将相关片段粘贴出来可以进一步定位。
  5. 跳过后续步骤只做识别
    如果只想验证识别是否完整,可以选择左侧面板的“批量语音转字幕”功能,只做语音转录,不进行翻译和配音。若此功能能正常跑完,说明后续翻译/配音配置有问题。

请提供日志中卡住时间点之后的最后 30 行内容,我会帮你分析具体是哪个环节阻塞。

时间过去20分钟了,也不行。识别别的视频可以。

明白了。这个视频与其他视频不同,虽然faster-whisper已经返回识别结果(日志末尾有“返回识别结果”),但后续流程(自动翻译、配音、合成)可能因为视频的特殊性(如超长时长、音频编码复杂)卡住了。既然20分钟未完成,按以下顺序逐一排查:1. 只做语音转录,跳过后续步骤 - 使用左侧面板【批量语音转字幕】功能,选择该视频,语言选英语,ASR渠道相同(faster-whisper large-v3-turbo),不勾选“翻译”、“配音”等一切选项。如果这个能快速完成,说明问题出在翻译/配音阶段。若也卡住,则是ASR阶段本身对长音频处理异常。2. 关闭所有额外处理 - 在【翻译视频和音频】主界面,取消勾选设置更多参数里的分离人声背景声降噪,将同步对齐区域的选项清空(不选音频加速/视频慢速),字幕类型选不嵌入字幕。仅保留语音识别和翻译(可暂时不配音)。3. 降低模型规模 - 将ASR模型从large-v3-turbo换为mediumsmall,减少显存压力。4. 查看日志具体卡在哪一步 - 打开logs/下最新日志文件,搜索transdubbingassemb等关键词,找到卡住时的最后一条信息。例如如果最后是[TranslationSRT] start...,说明翻译阶段卡住。5. 强制只输出字幕不配音 - 若目标只是翻译字幕,在翻译视频和音频中配音角色选No(不配音),这样不会进入TTS阶段,可快速完成。请先执行步骤1和3,将结果告诉我,我帮你精确定位。

可能视频较大,显存不足,静默崩溃,是不是小于 4.03的版本

视频不大

此问题很可能是软件版本较旧导致的BUG。开发者已指出“是不是小于4.03的版本”,旧版本在处理特定视频时可能因显存管理缺陷静默崩溃或UI卡死。即使视频不大,某些编码或音频流也可能触发该问题。

  1. 立即升级到最新版v4.05 下载完整包覆盖安装,旧版本的GPU显存回收问题已被修复。
  2. 临时关闭CUDA加速再试 在开始按钮上方取消勾选“CUDA加速”,强制使用CPU处理(速度慢但能验证是否由显卡驱动或显存异常引起)。
  3. 清理缓存并单独转录 在主界面勾选“清理已生成”,然后单独使用左侧【批量语音转字幕】功能处理该视频,不翻译不配音。如果成功,说明后续翻译/配音阶段也有兼容问题。
  4. 检查日志是否出现“SttTimeoutError” 在logs/最新日志中搜索“SttTimeoutError”或“BrokenProcessPool”,如有则确认是显存静默崩溃。
    请先执行升级和关闭CUDA测试,将结果反馈以便进一步排查。
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. Dondate: ko-fi.com/jianchang512

Related resource