#7970 Incomplete audio duration: 38732ms, expected 98952msTraceback (most recent call last):

117.183**0 Posted at: 1 hour ago

Incomplete audio duration: 38732ms, expected 98952ms
Traceback (most recent call last):
File "I:\dy\pyvideotrans\videotrans\task\only_one.py", line 140, in run

trk.align()

File "I:\dy\pyvideotrans\videotrans\task\_stage_align.py", line 44, in align

self.queue_tts = rate_inst.run()

File "I:\dy\pyvideotrans\videotrans\task\_rate.py", line 360, in run

self._concat_audio_aligned()

File "I:\dy\pyvideotrans\videotrans\task\_rate.py", line 715, in _concat_audio_aligned

self._exec_concat_audio(audio_list)

File "I:\dy\pyvideotrans\videotrans\task\_rate.py", line 816, in _exec_concat_audio

raise FFmpegError(f'Incomplete audio duration: {_last_len}ms, expected {expected_ms}ms')

videotrans.configure.excepts.FFmpegError: Incomplete audio duration: 38732ms, expected 98952ms

trk=[TransCreate]: uuid='933b4b801a', proxy_str=None, cfg=[TaskCfgVTT]当前工作模式: 翻译视频 单视频模式
原始输入文件名: D:/电影/10.6/法律与秩序/shot_match_20261012_112730/matched_source.mp4,
输出结果保存到文件夹: D:/电影/10.6/法律与秩序/matched_source-mp4,
临时文件夹: I:/dy/pyvideotrans/tmp/9928/933b4b801a
已选 清理已存在
已启用CUDA加速
未选 降噪
语音识别:faster-whisper(内置), tiny, 发音语言: 英语,
翻译渠道:Google(免费),原始语言:英语,目标语言:葡萄牙语(巴西), 已选 发送完整字幕
配音渠道:Edge-TTS(免费), 角色:Antonio(Male/BR), 配音语言:葡萄牙语(巴西), 未选 二次语音识别
音量:+0%, 语速:+30%, 未选 音频加速, 已选 视频慢速
已选 移除每条字幕配音开头和结尾静音缓冲
静音移除力度: default
字幕: 嵌入硬字幕
已选 分离人声与背景声,存在分离后的纯净人声文件,存在分离后的背景声音文件, precent=15, hasend=False, should_recogn=True, should_trans=True, should_dubbing=True, should_hebing=True, is_copy_video=True, video_codec_num=264, ignore_align=False, is_audio_trans=False, clone_ref='I:/dy/pyvideotrans/tmp/9928/933b4b801a/vocal.wav', should_recogn2=False, do_diarize=True
trk.cfg=[TaskCfgVTT]当前工作模式: 翻译视频 单视频模式
原始输入文件名: D:/电影/10.6/法律与秩序/shot_match_20261012_112730/matched_source.mp4,
输出结果保存到文件夹: D:/电影/10.6/法律与秩序/matched_source-mp4,
临时文件夹: I:/dy/pyvideotrans/tmp/9928/933b4b801a
已选 清理已存在
已启用CUDA加速
未选 降噪
语音识别:faster-whisper(内置), tiny, 发音语言: 英语,
翻译渠道:Google(免费),原始语言:英语,目标语言:葡萄牙语(巴西), 已选 发送完整字幕
配音渠道:Edge-TTS(免费), 角色:Antonio(Male/BR), 配音语言:葡萄牙语(巴西), 未选 二次语音识别
音量:+0%, 语速:+30%, 未选 音频加速, 已选 视频慢速
已选 移除每条字幕配音开头和结尾静音缓冲
静音移除力度: default
字幕: 嵌入硬字幕
已选 分离人声与背景声,存在分离后的纯净人声文件,存在分离后的背景声音文件
video_duration_ms=104312


=
system:Windows-10-10.0.19041-SP0
version:v4.15
frozen:False
language:zh_CN
root_dir:I:/dy/pyvideotrans
Python: 3.10.19 (main, Feb 12 2026, 00:37:08) [MSC v.1944 64 bit (AMD64)]

1 Replies

#1 DeepSeek reply at 1 hour ago

该报错发生在音画对齐阶段(_rate.py 的音频拼接环节):它把每行字幕生成的配音片段按时间轴串接后,实际得到的总时长只有 38732ms,而按字幕时间轴预期应有 98952ms,缺口超过一半,说明大量字幕行的配音片段缺失、为空或未参与拼接。

常见成因(按可能性排序):

  1. Edge-TTS 被限流导致部分配音失败/返回空音频
    你的配置使用了 Edge-TTS(免费),该免费接口在高频突发请求下会被微软临时 403 拦截,部分行会静默失败,生成的片段为空或极短,最终拼接总时长严重不足。
  2. 静音移除过度,片段被判定为无效丢弃
    你勾选了 移除每条字幕配音开头和结尾静音缓冲,且对齐引擎会丢弃 低于 40ms 的片段、忽略小于 1024 字节的文件。若某些字幕本身很短(例如单词、语气词),削静音后可能被整体丢弃。
  3. 未选「音频加速」+ 已选「视频慢速」
    该组合下音频不做加速,若大量片段本身生成失败,缺口无法被补偿,最终直接触发时长校验。

排查与处理步骤:

  1. 打开 菜单 → 工具 → 高级选项 → 字幕配音调整:

    • EdgeTTS配音渠道配音并发数(同时配音线程数)设为 1
    • 配音后暂停秒 设为 5~10
    • 勾选 保留每条字幕的配音文件
  2. 再去 高级选项 → 字幕配音调整,把 静音移除力度 由 default 改为 low,或在下次重跑时先取消 移除每条字幕配音开头和结尾静音缓冲,排除削静音导致的片段丢失。
  3. 回到主界面,勾选 清理已生成(你会清掉已生成的字幕/配音缓存),重新执行一次任务。
  4. 任务再次失败后,进入输出目录(D:/电影/10.6/法律与秩序/matched_source-mp4/)查看保留下来的逐行配音文件:若大量文件体积为 0KB 或极小,即确认是配音环节失败;若文件正常但总时长仍不足,则为对齐/拼接逻辑问题。

如按上述操作后仍报同一错误,请提供软件安装目录 I:/dy/pyvideotrans/logs/ 下最新日志文件末尾约 30 行,以及该视频对应的配音片段目录截图。

请查阅相关文档:

Thinking...
Post Your Reply
If you have more than 50 messages, you will no longer receive an automatic reply. Please ask a new question!
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 via ko-fi.com

Related resource