None语音识别阶段出错:faster-whisper(本地),翻译字幕阶段出错:Google(免
费),配音阶段出错:Edge-TTS(免费)
Traceback (most recent call last):
File"videotrans(task)only_one.py",line 47,in run
Filevieorastaktraceate.pyine2,inrecogn
File“videotrans)recognition_init_py.line 190,in run
File "vide
#4985 None语音识别阶段出错:faster-whisper(本地),翻译字幕阶段出错:Google(免 费),配音阶段出错:Edge-TTS(免费) Traceback (most recent call last): File"videotr
21 Replies
暂无法确定具体原因。多个阶段(ASR、翻译、配音)同时失败,通常指向网络连接问题(如未配置代理导致模型/API下载失败)或显存不足。
请提供软件安装目录下 logs/ 文件夹中最新的日志文件(复制底部约30行报错信息)以便分析。
Application started at 2026-06-03 16:43:42
[DEBUG] 上次缓存的角色:No,字幕嵌入类型:1,发音语言:en,目标语言:zh-cn,目标语言代码:None,模型:large-v3-turbo,TTS渠道[0]
[DEBUG] NVIDIA_GPU_NUMS=1
[DEBUG] Found 1 GPUs, cost=1s
[DEBUG] process_max_gpu=1,is_multi_gpus=False
[DEBUG] Concurrent task_nums=1, process_max_cpu=0
[DEBUG] start 9 jobs
[DEBUG] 平台: Windows。正在按优先级检测最佳的 'h264' 编码器: ['nvenc', 'qsv', 'amf']
[DEBUG] 正在测试编码器是否可用: h264_nvenc...
[DEBUG] 硬件编码器 'h264_nvenc' 可用。
[DEBUG] 已选择硬件编码器: h264_nvenc
[DEBUG] 最终确定使用的编码器: h264_nvenc
[DEBUG] 平台: Windows。正在按优先级检测最佳的 'hevc' 编码器: ['nvenc', 'qsv', 'amf']
[DEBUG] 正在测试编码器是否可用: hevc_nvenc...
[DEBUG] 硬件编码器 'hevc_nvenc' 可用。
[DEBUG] 已选择硬件编码器: hevc_nvenc
[DEBUG] 最终确定使用的编码器: hevc_nvenc
[WARNING] 无法连接 huggingface.co, 使用镜像替换: hf-mirror.com
HTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: / (Caused by ConnectTimeoutError(, 'Connection to huggingface.co timed out. (connect timeout=3)'))
Logging error
Traceback (most rec
......
imeoutError(, 'Connection to huggingface.co timed out. (connect timeout=3)'))
Logging error
Traceback (most recent call last):
File "urllib3\connection.py", line 198, in _new_conn
File "urllib3\util\connection.py", line 85, in create_connection
File "urllib3\util\connection.py", line 73, in create_connection
TimeoutError: timed out
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "urllib3\connectionpool.py", line 787, in urlopen
File "urllib3\connectionpool.py", line 488, in _make_request
File "urllib3\connectionpool.py", line 464, in _make_request
File "urllib3\connectionpool.py", line 1093, in _validate_conn
File "urllib3\connection.py", line 753, in connect
File "urllib3\connection.py", line 207, in _new_conn
urllib3.exceptions.ConnectTimeoutError: (, 'Connection to huggingface.co timed out. (connect timeout=3)')
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "requests\adapters.py", line 644, in send
File "urllib3\connectionpool.py", line 841, in urlopen
File "urllib3\util\retry.py", line 519, in increment
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: / (Caused by ConnectTimeoutError(, 'Connection to huggingface.co timed out. (connect timeout=3)'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "videotrans\util\help_down.py", line 34, in is_connect_hf
File "requests\api.py", line 100, in head
File "requests\api.py", line 59, in request
File "requests\sessions.py", line 589, in request
File "requests\sessions.py", line 703, in send
File "requests\adapters.py", line 665, in send
requests.exceptions.ConnectTimeout: HTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: / (Caused by ConnectTimeoutError(, 'Connection to huggingface.co timed out. (connect timeout=3)'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "logging\__init__.py", line 1103, in emit
AttributeError: 'NoneType' object has no attribute 'write'
Call stack:
File "videotrans\task\simple_runnable_qt.py", line 14, in run
File "videotrans\util\help_down.py", line 36, in is_connect_hf
File "logging\__init__.py", line 1489, in warning
File "logging\__init__.py", line 1624, in _log
File "logging\__init__.py", line 1634, in handle
File "logging\__init__.py", line 1696, in callHandlers
File "logging\__init__.py", line 968, in handle
File "logging\__init__.py", line 1108, in emit
Message: "无法连接 huggingface.co, 使用镜像替换: hf-mirror.com\nHTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: / (Caused by ConnectTimeoutError(, 'Connection to huggingface.co timed out. (connect timeout=3)'))"
Arguments: ()
这是网络连接问题导致的。中国大陆无法直接访问 huggingface.co(模型下载源)和 Google 翻译服务,连接超时致使所有依赖外网的任务(ASR模型下载、翻译、配音)全部失败。
解决方案:
- 配置网络代理(推荐)
在软件主界面网络代理地址输入框填写可用的代理地址,格式如http://127.0.0.1:7890(根据你的代理客户端设置端口)。否则 Google 翻译无法使用。 换用无需代理的渠道
- 翻译: 改用 微软翻译(免费),国内无需代理即可正常使用。
- ASR模型: 国内无法直连 huggingface.co,请手动从镜像站下载模型放入
models/目录(文件夹命名严格规范,例如models--Systran--faster-whisper-large-v3)。详情查看官网文档。 - 配音: Edge-TTS 国内可直接访问,单独使用一般无问题;若仍报错,可在高级选项中将 Edge-TTS 并发数设为1、请求间隔设为5秒。
- 不配置代理时的备用方案
若你不知道或没有代理,请将所有翻译渠道改为微软翻译,ASR 模型手动下载放入models/目录,并确保软件所在路径不含中文、空格或特殊符号。
请查阅相关文档:
Application started at 2026-06-05 07:58:00
[DEBUG] 上次缓存的角色:wananshuo.wav,字幕嵌入类型:2,发音语言:简体中文,目标语言:简体中文,目标语言代码:zh-cn,模型:large-v3-turbo,TTS渠道[9]
[WARNING] 无法连接 huggingface.co, 使用镜像替换: hf-mirror.com
HTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: / (Caused by ProxyError('Unable to connect to proxy', NewConnectionError(': Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。')))
Logging error
Traceback (most recent call last):
File "urllib3\connection.py", line 198, in _new_conn
File "urllib3\util\connection.py", line 85, in create_connection
File "urllib3\util\connection.py", line 73, in create_connection
ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接。
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "urllib3\connectionpool.py", line 773, in urlopen
File "urllib3\connectionpool.py", line 1042, in _prepare_proxy
File "urllib3\connection.py", line 753, in connect
File "urllib3\connection.py", line 213, in _new_conn
urllib3.exceptions.NewConnectionError: : Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。
The above exception was the direct cause of the following exception:
urllib3.exceptions.ProxyError: ('Unable to connect to proxy', NewConnectionError(': Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。'))
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "requests\adapters.py", line 644, in send
File "urllib3\connectionpool.py", line 841, in urlopen
File "urllib3\util\retry.py", line 519, in increment
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: / (Caused by ProxyError('Unable to connect to proxy', NewConnectionError(': Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。')))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "videotrans\util\help_down.py", line 34, in is_connect_hf
File "requests\api.py", line 100, in head
File "requests\api.py", line 59, in request
File "requests\sessions.py", line 589, in request
File "requests\sessions.py", line 703, in send
File "requests\adapters.py", line 671, in send
requests.exceptions.ProxyError: HTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: / (Caused by ProxyError('Unable to connect to proxy', NewConnectionError(': Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。')))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "logging\__init__.py", line 1103, in emit
AttributeError: 'NoneType' object has no attribute 'write'
Call stack:
File "videotrans\task\simple_runnable_qt.py", line 14, in run
File "videotrans\util\help_down.py", line 36, in is_connect_hf
File "logging\__init__.py", line 1489, in warning
File "logging\__init__.py", line 1624, in _log
File "logging\__init__.py", line 1634, in handle
File "logging\__init__.py", line 1696, in callHandlers
File "logging\__init__.py", line 968, in handle
File "logging\__init__.py", line 1108, in emit
Message: "无法连接 huggingface.co, 使用镜像替换: hf-mirror.com\nHTTPSConnectionPool(host='huggingface.co', port=443): Max retries exceeded with url: / (Caused by ProxyError('Unable to connect to proxy', NewConnectionError(': Failed to establish a new connection: [WinError 10061] 由于目标计算机积极拒绝,无法连接。')))"
Arguments: ()
[DEBUG] NVIDIA_GPU_NUMS=1
[DEBUG] Found 1 GPUs, cost=3s
[DEBUG] process_max_gpu=1,is_multi_gpus=False
[DEBUG] Concurrent task_nums=1, process_max_cpu=4
[DEBUG] start 9 jobs
[DEBUG] 返回缓存的编解码器 Windows-264: h264_nvenc
[DEBUG] 返回缓存的编解码器 Windows-265: hevc_nvenc
进步 QwenttsLocal 1 config.TEMP_DIR='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/29624'
进步 QwenttsLocal 2 config.TEMP_DIR='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/29624'
[DEBUG] 开始语音合成:渠道1
Downloading Model from https://www.modelscope.cn to directory: D:\BaiduNetdisk
\win-pyvideotrans-v4.01-0602\models\models--Qwen--Qwen3-TTS-12Hz-1.7B-Base
2026-06-05 08:00:47,793 - modelscope - INFO - Got 13 files, start to download ...
Processing 13 items: 0%| | 0.00/13.0 [00:00
这是由代理配置错误导致的。你的软件主界面的“网络代理地址”填写了一个代理地址,但该代理服务未启动或端口不可用,导致所有需要联网的服务(如 HuggingFace 模型下载、Google 翻译等)均连接失败。
解决方案:
- 如果你不需要使用代理(例如不使用 Google、Gemini、OpenAI 等外网服务):
请清空软件主界面“网络代理地址”文本框,保持空白。 - 如果你确实需要使用代理(例如访问 Google 翻译):
请确保你的代理客户端(如 Clash、V2Ray)已启动并运行在正确的端口上,然后核对软件中填写的地址(如http://127.0.0.1:7890)是否与实际代理端口一致。 针对当前任务:你的发音语言和目标语言都是简体中文,说明你不需要翻译,只需进行语音识别(ASR)和配音(TTS)。
- 翻译渠道可改为微软翻译(无需代理)或M2M100本地翻译。
- ASR 模型下载:如果需要自动下载模型,请确保网络通畅。你也可以手动将模型下载到
models/目录(格式参考知识库)。 - 配音渠道
Qwen3-TTS(本地内置)目前正在从阿里 modelscope.cn 正常下载模型,无需代理。
- 彻底解决:
若你完全不需要代理网络,请清空代理地址,并避免使用需要代理的渠道(Google翻译、Gemini、OpenAI等)。若需要代理,请先保证代理服务正常运行,然后在软件中正确填写。
参考文档:
None语音识别阶段出错:faster-whisper(本地),翻译字幕阶段出错:Google(免
费),配音阶段出错:Edge-TTS(免费)
Traceback (most recent call last):
Filevideotranstask
Filevieoastask
File“videotrans)recognition_init_py.line 190,in run
File "vide 还是这样的问题呢
问题根源仍然在于网络连接——你的代理设置错误或未正确配置,导致 Google 翻译(需要代理)、HuggingFace 模型下载(需要代理或镜像)全部失败。
请按以下步骤逐一排查:
如果你没有代理服务:
- 立即清空主界面“网络代理地址”输入框,保持空白。
- 将翻译渠道从“Google(免费)”改为微软翻译(免费)(国内可直接访问,无需代理)。
- 语音识别渠道如果使用
faster-whisper(本地)首次运行需要从 HuggingFace 下载模型,国内无法直连,请手动将模型文件放入models/目录(文件夹命名规则如models--Systran--faster-whisper-large-v3),或者将代理留空后,软件会自动尝试镜像hf-mirror.com(从你的日志看已尝试镜像但被代理配置干扰,清空代理后应可用)。 - 配音渠道 Edge-TTS(免费)国内可直接访问,无需代理。
如果你有代理服务:
- 确保代理客户端(如 Clash、V2Ray)已正确启动,并且端口(例如 7890、10809 等)与软件中填写的一致。
- 在软件中填写正确的代理地址,格式如
http://127.0.0.1:7890(注意不要使用 HTTPS,不要遗漏端口号)。 - 如果你不确定代理端口,请打开代理客户端查看“HTTP代理端口”或“混合代理端口”。
验证方法:
- 修改后,重新启动软件,先单独测试一下语音识别(只选一个短视频,关闭翻译和配音),确认不再报错。
- 如果仍失败,请提供新的日志(复制底部约30行)。
参考文档:
None语音识别阶段出错:faster-whisper(本地), 翻译字幕阶段出错: Google(免费), 配音阶段出错:Edge-TTS(免费)
Traceback (most recent call last):
File "videotrans\task\only_one.py", line 47, in run
File "videotrans\task\trans_create.py", line 322, in recogn
File "videotrans\recognition\__init__.py", line 190, in run
File "videotrans\recognition\_base.py", line 91, in run
File "videotrans\recognition\_whisper.py", line 49, in _download
File "videotrans\recognition\_base.py", line 181, in _vad_split
File "videotrans\configure\base.py", line 253, in _new_process
videotrans.configure.excepts.VideoTransError: None
TaskCfgVTT(uuid='796e8e9d5d', name='F:/短剧作品/6月5日kkUcXE.mp4', dirname='F:/短剧作品', noextname='6月5日kkUcXE', basename='6月5日kkUcXE.mp4', ext='mp4', target_dir='F:/短剧作品/6月5日kkUcXE-mp4', cache_folder='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/28244/796e8e9d5d', is_cuda=True, source_language='简体中文', source_language_code='zh-cn', source_sub='F:/短剧作品/6月5日kkUcXE-mp4/zh-cn.srt', source_wav='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/28244/796e8e9d5d/zh-cn.wav', source_wav_output='F:/短剧作品/6月5日kkUcXE-mp4/zh-cn.m4a', target_language='英语', target_language_code='en', target_sub='F:/短剧作品/6月5日kkUcXE-mp4/en.srt', target_wav='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/28244/796e8e9d5d/target.wav', target_wav_output='F:/短剧作品/6月5日kkUcXE-mp4/en.m4a', translate_type=0, tts_type=0, volume='+0%', pitch='+0Hz', voice_rate='+20%', voice_role='Steffan(Male/US)', voice_autorate=True, video_autorate=True, remove_silent_mid=False, align_sub_audio=True, detect_language='zh-cn', 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='F:/短剧作品/6月5日kkUcXE-mp4/6月5日kkUcXE.mp4', novoice_mp4='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/28244/796e8e9d5d/novoice.mp4', is_separate=False, embed_bgm=True, instrument=None, vocal='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/28244/796e8e9d5d/vocal.wav', clear_cache=False, background_music='', subtitle_type=1, only_out_mp4=False, recogn2pass=False, output_srt=0, copysrt_rawvideo=False, loop_backaudio=1, backaudio_volume=0.8)这样是什么问题
错误的核心是模型下载失败和文件路径不规范导致语音识别子进程崩溃,进而影响了后续翻译和配音(因为第一阶段失败导致整个任务终止)。请按以下步骤严格操作:1. 清空代理地址 - 打开软件主界面,确保“网络代理地址”输入框完全空白。如果你没有可用的代理服务,不要填写任何内容。2. 手动放置 ASR 模型 - 由于 faster-whisper large-v3-turbo 需要从 huggingface.co 下载,国内网络无法直连,即使有镜像也可能超时。 - 请手动下载模型(完整模型文件)并放入软件根目录下的 models/ 文件夹。 - 文件夹命名必须严格为:models--Systran--faster-whisper-large-v3-turbo(注意后缀与软件中选择的模型名一致)。 - 下载地址请访问官网文档或镜像站。3. 修改视频文件路径和名称 - 当前视频路径 F:/短剧作品/6月5日kkUcXE.mp4 包含中文和空格,这会导致 ffmpeg 处理时出错(Windows 命令行限制)。 - 解决方案:将视频重命名为纯英文/数字名称(如 video.mp4),并移动到浅层目录且路径不含中文和空格(例如 D:\videos\)。4. 更换翻译渠道(可选但强烈建议) - 如果你不使用代理,请将翻译渠道从“Google(免费)”改为“微软翻译(免费)”(国内无需代理,直接可用)。5. 重新尝试 - 完成上述步骤后,重启软件,再次执行翻译任务。如果仍然报错,请提供 logs/ 文件夹中最新日志的末尾 30 行。总结原因:
- 网络因素:模型无法下载 + Google 翻译被墙。
- 路径因素:中文/空格导致子进程崩溃。
- 代理配置错误(之前填写了无法连接的代理地址)现已清空,但模型仍需手动解决。参考文档:
- 如何配置网络代理
- 常见网络连接错误
- 文件路径问题
- faster-whisper本地模型下载
non-negative timestamp expected:Traceback (most recent call last):
File "videotrans\process\stt_fun.py", line 239, in faster_whisper
File "faster_whisper\transcribe.py", line 460, in transcribe
File "faster_whisper\utils.py", line 123, in format_timestamp
AssertionError: non-negative timestamp expected
语音识别阶段出错:faster-whisper(本地), 翻译字幕阶段出错: Google(免费), 配音阶段出错:Edge-TTS(免费)
Traceback (most recent call last):
File "videotrans\task\only_one.py", line 47, in run
File "videotrans\task\trans_create.py", line 322, in recogn
File "videotrans\recognition\__init__.py", line 190, in run
File "videotrans\recognition\_base.py", line 94, in run
File "videotrans\recognition\_whisper.py", line 36, in _exec
File "videotrans\recognition\_whisper.py", line 109, in _faster
File "videotrans\configure\base.py", line 253, in _new_process
videotrans.configure.excepts.VideoTransError: non-negative timestamp expected:Traceback (most recent call last):
File "videotrans\process\stt_fun.py", line 239, in faster_whisper
File "faster_whisper\transcribe.py", line 460, in transcribe
File "faster_whisper\utils.py", line 123, in format_timestamp
AssertionError: non-negative timestamp expected
TaskCfgVTT(uuid='dede71f714', name='D:/Downloads/6月5日kkUcXE(1).mp4', dirname='D:/Downloads', noextname='6月5日kkUcXE(1)', basename='6月5日kkUcXE(1).mp4', ext='mp4', target_dir='D:/duanju/6月5日kkUcXE(1)-mp4', cache_folder='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/28244/dede71f714', is_cuda=True, source_language='简体中文', source_language_code='zh-cn', source_sub='D:/duanju/6月5日kkUcXE(1)-mp4/zh-cn.srt', source_wav='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/28244/dede71f714/zh-cn.wav', source_wav_output='D:/duanju/6月5日kkUcXE(1)-mp4/zh-cn.m4a', target_language='英语', target_language_code='en', target_sub='D:/duanju/6月5日kkUcXE(1)-mp4/en.srt', target_wav='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/28244/dede71f714/target.wav', target_wav_output='D:/duanju/6月5日kkUcXE(1)-mp4/en.m4a', translate_type=0, tts_type=0, volume='+0%', pitch='+0Hz', voice_rate='+20%', voice_role='Steffan(Male/US)', voice_autorate=True, video_autorate=True, remove_silent_mid=False, align_sub_audio=True, detect_language='zh-cn', 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='D:/duanju/6月5日kkUcXE(1)-mp4/6月5日kkUcXE(1).mp4', novoice_mp4='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/28244/dede71f714/novoice.mp4', is_separate=False, embed_bgm=True, instrument=None, vocal='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/28244/dede71f714/vocal.wav', clear_cache=False, background_music='', subtitle_type=1, only_out_mp4=False, recogn2pass=False, output_srt=0, copysrt_rawvideo=False, loop_backaudio=1, backaudio_volume=0.8) 什么问题??
这个错误 non-negative timestamp expected 表明 faster-whisper 在转录时遇到了无效的负时间戳,通常是因为音频文件时间轴异常,而根源仍然是文件路径包含中文、括号、特殊字符导致 ffmpeg 提取音频时产生了错误。
立即执行以下修正:
彻底规范化视频文件路径
- 将视频
6月5日kkUcXE(1).mp4重命名为纯英文数字,例如video1.mp4,存放在不含中文、空格、括号的目录下(如D:\videos\)。 - 不要将视频放在系统盘或需要管理员权限的目录。
- 将视频
清空代理地址(如果你没有可用的 VPN/代理)
- 主界面“网络代理地址”务必留空。
- 翻译渠道改用 微软翻译(免费)(不要再用 Google)。
点击“清理已生成”
- 在开始执行前勾选“清理已生成”,确保不使用旧缓存。
确认 faster-whisper 模型已正确放置
- 模型文件夹命名必须为
models--Systran--faster-whisper-large-v3-turbo,放在软件根目录的models/文件夹内。
- 模型文件夹命名必须为
解决路径问题后,faster-whisper 即可正常处理;若仍有 Edge-TTS 错误,可将并发数设为 1、请求间隔设为 5 秒(高级选项)。如有需要可查看:
large-v1
small
small.en
medium
色
medium.en
large-v3-turbo
large-v1
large-v2
large-v3
distil-large-v3
distil-large-v3.5 哪个模型好用
根据你的模型列表和任务(简体中文→英语,视频翻译),推荐按以下优先级选择:
- 首选:
large-v3-turbo(你之前已选择)—— 效果与large-v3接近,速度更快,显存占用控制更好,适合 8GB 以上显存。 - 次选:
large-v3—— 准确率最高,但显存需求约 8GB+,速度较慢。 - 如果你显存不足(如 4-6GB):选
medium(质量可接受,显存约 4GB)。 - 不要选
tiny、small、base—— 准确率过低,中文效果差,不推荐。 - 不要选带
.en或distil-开头的—— 仅支持纯英文,不适合中文视频。
建议操作:保持使用 large-v3-turbo,并确保 CUDA 环境已正确配置(日志显示你已勾选 CUDA 加速,且检测到 NVIDIA 显卡)。如果仍出现 non-negative timestamp expected 错误,请先将视频文件名改为纯英文(如 video.mp4),并放到不含中文/空格的简单路径(如 D:\videos\)后重试。
models--mobiuslabsgmbh--faster-whisper-large-v3-turbo
创建日期:2026/6/3 星期三16:46
大小:1.50 GB
文件: config.json,model.bin,preprocessor_config.json,.. 这样可以吗
你这样放置可以,但需要确认软件期望的文件夹名称。软件默认会从 Systran/faster-whisper-large-v3-turbo 这一仓库下载模型,而你的文件夹是 models--mobiuslabsgmbh--faster-whisper-large-v3-turbo,两者组织名不一致,软件可能仍会尝试联网下载。请将模型文件夹重命名为:models--Systran--faster-whisper-large-v3-turbo然后放入软件根目录下的 models/ 文件夹中(保持大写 models 与软件目录结构一致)。完成后重新启动软件,再试一次。
non-negative timestamp expected:Traceback (most recent call last):
File "videotrans\process\stt_fun.py", line 239, in faster_whisper
File "faster_whisper\transcribe.py", line 460, in transcribe
File "faster_whisper\utils.py", line 123, in format_timestamp
AssertionError: non-negative timestamp expected
语音识别阶段出错:faster-whisper(本地), 翻译字幕阶段出错: Google(免费), 配音阶段出错:Edge-TTS(免费)
Traceback (most recent call last):
File "videotrans\task\only_one.py", line 47, in run
File "videotrans\task\trans_create.py", line 322, in recogn
File "videotrans\recognition\__init__.py", line 190, in run
File "videotrans\recognition\_base.py", line 94, in run
File "videotrans\recognition\_whisper.py", line 36, in _exec
File "videotrans\recognition\_whisper.py", line 109, in _faster
File "videotrans\configure\base.py", line 253, in _new_process
videotrans.configure.excepts.VideoTransError: non-negative timestamp expected:Traceback (most recent call last):
File "videotrans\process\stt_fun.py", line 239, in faster_whisper
File "faster_whisper\transcribe.py", line 460, in transcribe
File "faster_whisper\utils.py", line 123, in format_timestamp
AssertionError: non-negative timestamp expected
TaskCfgVTT(uuid='8a32caa6f3', name='D:/Downloads/kkUcXE.mp4', dirname='D:/Downloads', noextname='kkUcXE', basename='kkUcXE.mp4', ext='mp4', target_dir='D:/duanju/kkUcXE-mp4', cache_folder='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/10704/8a32caa6f3', is_cuda=True, source_language='简体中文', source_language_code='zh-cn', source_sub='D:/duanju/kkUcXE-mp4/zh-cn.srt', source_wav='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/10704/8a32caa6f3/zh-cn.wav', source_wav_output='D:/duanju/kkUcXE-mp4/zh-cn.m4a', target_language='英语', target_language_code='en', target_sub='D:/duanju/kkUcXE-mp4/en.srt', target_wav='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/10704/8a32caa6f3/target.wav', target_wav_output='D:/duanju/kkUcXE-mp4/en.m4a', translate_type=0, tts_type=0, volume='+0%', pitch='+0Hz', voice_rate='+20%', voice_role='Steffan(Male/US)', voice_autorate=True, video_autorate=True, remove_silent_mid=False, align_sub_audio=True, detect_language='zh-cn', 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='D:/duanju/kkUcXE-mp4/kkUcXE.mp4', novoice_mp4='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/10704/8a32caa6f3/novoice.mp4', is_separate=False, embed_bgm=True, instrument=None, vocal='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/10704/8a32caa6f3/vocal.wav', clear_cache=False, background_music='', subtitle_type=1, only_out_mp4=False, recogn2pass=False, output_srt=0, copysrt_rawvideo=False, loop_backaudio=1, backaudio_volume=0.8)到底是什么问题啊?
这个错误 non-negative timestamp expected 的根本原因是 faster-whisper 在处理音频时遇到了负时间戳,通常由以下三种情况之一导致:音频文件本身异常(如视频损坏、无声、采样率异常)、VAD 分割参数设置不当、或模型文件不完整。你已经修正了视频文件名,但问题仍然存在,说明不是路径问题。
请按以下顺序逐一排查:
1. 彻底清理缓存并更换识别模型(快速验证)
- 在主界面勾选“清理已生成”,确保不使用旧缓存。
- 将语音识别渠道从
faster-whisper(本地)临时改为Qwen-ASR(本地)(对中文支持好,且不依赖 faster-whisper 模型)。如果能成功,说明问题出在 faster-whisper 模型文件上。 - 如果无法使用 Qwen-ASR(需联网下载),则改为
openai-whisper(本地),模型选large-v3-turbo或base测试。
2. 如果仍然是 faster-whisper 报错,请重命名模型文件夹并检查完整性
你的模型文件夹是 models--mobiuslabsgmbh--faster-whisper-large-v3-turbo,软件默认期望的仓库是 Systran/faster-whisper-large-v3-turbo,虽然软件会尝试匹配,但为了稳妥,请将其重命名为:
models--Systran--faster-whisper-large-v3-turbo放入 D:\BaiduNetdisk\win-pyvideotrans-v4.01-0602\models\ 目录下(注意是 models 文件夹,不是 model)。
确保文件完整:model.bin 大小应为 1.5GB 左右,如果小于 1.4GB 则下载不完整,需重新下载。
3. 调整 VAD 参数(防止时间戳溢出)
在 菜单 → 工具/选项 → 高级选项 → 语音识别参数 中:
- 将
最短语音持续毫秒改为2000(单位毫秒) - 将
静音分割持续毫秒改为500或1000 - 取消勾选
Whisper预分割音频? - 保存后重试
4. 检查视频文件是否正常
- 用本地播放器(如 PotPlayer)播放该视频,确认有声音且能正常播放。
- 如果视频是从网上下载的(尤其来自 YouTube),可能音轨分离或编码异常。建议用格式工厂或 HandBrake 将视频转为标准 H.264 MP4(音频 AAC),转码后的文件重新放入软件处理。
5. 回退到旧版 large-v3 模型(非 turbo)
如果以上都不行,尝试删除 large-v3-turbo 模型,改用 large-v3(更稳定)。软件会自动下载(需网络通畅)或你手动放置对应文件夹 models--Systran--faster-whisper-large-v3。
如果上述步骤仍然报错,请提供改用 openai-whisper 或 base 模型后的新日志(复制末尾约 30 行),以便进一步定位。
Qwen-ASR(本地) 可以使用,但是分句很差,
Qwen-ASR(本地) 分句差是由于其默认的 VAD 切割参数不合适。按以下步骤优化即可:
调整核心断句参数
菜单 → 工具/选项 → 高级选项 → 语音识别参数,设置如下:- 最短语音持续毫秒:1000(合并过短的碎片)
- 最长语音持续秒数:5(强制长句拆分)
- 静音分割持续毫秒:200 ~ 400(越小切分越细,但太碎会变差;可先试 300)
- 勾选 合并过短字幕到邻近
- 启用 LLM 重新断句(推荐)
在相同高级选项 → 通用设置 → LLM 重新断句所用 AI 渠道 选择已配置的 DeepSeek 或 ChatGPT。
这将自动修复错别字并重新断句,分句质量显著提升。
(需在翻译设置中填入有效 API Key) - 可选:开启降噪或分离人声背景声
如果视频背景有噪音,主界面右上角勾选 降噪,或点击“设置更多参数”勾选 分离人声背景声,能减少误断。 仍不满意?改用其他识别渠道
- 字节语音大模型极速版:中文断句优秀(需在线 API,国内可直连)。
- 阿里百炼 Qwen3-ASR:阿里云在线版,断句更好。
- faster-whisper + large-v3:若之前 non-negative timestamp 问题已排除(视频转换标准格式后),仍可尝试。
调整后重新执行,分句会有明显改善。
non-negative timestamp expected:Traceback (most recent call last):
File "videotrans\process\stt_fun.py", line 239, in faster_whisper
File "faster_whisper\transcribe.py", line 460, in transcribe
File "faster_whisper\utils.py", line 123, in format_timestamp
AssertionError: non-negative timestamp expected
语音识别阶段出错:faster-whisper(本地), 翻译字幕阶段出错: Google(免费), 配音阶段出错:Edge-TTS(免费)
Traceback (most recent call last):
File "videotrans\task\only_one.py", line 47, in run
File "videotrans\task\trans_create.py", line 322, in recogn
File "videotrans\recognition\__init__.py", line 190, in run
File "videotrans\recognition\_base.py", line 94, in run
File "videotrans\recognition\_whisper.py", line 36, in _exec
File "videotrans\recognition\_whisper.py", line 109, in _faster
File "videotrans\configure\base.py", line 253, in _new_process
videotrans.configure.excepts.VideoTransError: non-negative timestamp expected:Traceback (most recent call last):
File "videotrans\process\stt_fun.py", line 239, in faster_whisper
File "faster_whisper\transcribe.py", line 460, in transcribe
File "faster_whisper\utils.py", line 123, in format_timestamp
AssertionError: non-negative timestamp expected
TaskCfgVTT(uuid='faee3044f2', name='D:/kkUcXE.mp4', dirname='D:/', noextname='kkUcXE', basename='kkUcXE.mp4', ext='mp4', target_dir='E:/kkUcXE-mp4', cache_folder='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/10704/faee3044f2', is_cuda=True, source_language='简体中文', source_language_code='zh-cn', source_sub='E:/kkUcXE-mp4/zh-cn.srt', source_wav='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/10704/faee3044f2/zh-cn.wav', source_wav_output='E:/kkUcXE-mp4/zh-cn.m4a', target_language='英语', target_language_code='en', target_sub='E:/kkUcXE-mp4/en.srt', target_wav='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/10704/faee3044f2/target.wav', target_wav_output='E:/kkUcXE-mp4/en.m4a', translate_type=0, tts_type=0, volume='+0%', pitch='+0Hz', voice_rate='+20%', voice_role='Steffan(Male/US)', voice_autorate=True, video_autorate=True, remove_silent_mid=False, align_sub_audio=True, detect_language='zh-cn', 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='E:/kkUcXE-mp4/kkUcXE.mp4', novoice_mp4='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/10704/faee3044f2/novoice.mp4', is_separate=False, embed_bgm=True, instrument=None, vocal='D:/BaiduNetdisk
/win-pyvideotrans-v4.01-0602/tmp/10704/faee3044f2/vocal.wav', clear_cache=False, background_music='', subtitle_type=1, only_out_mp4=False, recogn2pass=False, output_srt=0, copysrt_rawvideo=False, loop_backaudio=1, backaudio_volume=0.8) 这个问题一个不能解决呢
这个 non-negative timestamp expected 错误在 faster-whisper 处理某些特定视频时偶发,根本原因是音频 VAD 分割后产生了负的时间戳(可能由于音频片段过短、纯静音或 ffmpeg 解码异常导致)。你已经尝试了更改路径、手动放置模型,但问题仍存在,说明这个视频文件与 faster-whisper 的 VAD 预处理不兼容。请按以下顺序彻底解决:立即执行(推荐方案):改用 Qwen-ASR(本地) —— 既然它已经可用,只是分句差,通过参数优化即可。点击“设置更多参数” → 勾选“分离人声背景声”(可提升识别准确率)。在“菜单→工具/选项→高级选项→语音识别参数”中设置:最短语音持续毫秒:1000最长语音持续秒数:5静音分割持续毫秒:300勾选“合并过短字幕到邻近”在“菜单→工具/选项→通用设置”中,设置“LLM 重新断句所用 AI 渠道”为 DeepSeek 或 ChatGPT(需在翻译设置中先配置好 API Key),这样会自动重新断句,效果远超 faster-whisper 的默认分割。如果你必须使用 faster-whisper:先用其他工具(如格式工厂、HandBrake)将该视频转为标准 H.264 MP4(音频 AAC),转码后重新放入软件。输入文件转码后,清空代理地址,勾选“清理已生成”,选择 faster-whisper + large-v3-turbo,并在高级选项中取消勾选“Whisper预分割音频?”(跳过 VAD 分割),这样 faster-whisper 会自己处理时间轴,通常能避免该错误。总之,不要再死磕 faster-whisper 报这个错误的视频,改用 Qwen-ASR 加 LLM 断句是最高效的解决路径。