#5620 字幕翻译后,文本消失了好几行·显示是空

112.224* Posted at: 2 hours ago

字幕翻译后,文本消失了好几行·显示是空

11 Replies

字幕翻译后出现空行,通常是因为翻译渠道返回了空结果,或字幕行被过滤/截断。

常见原因及解决步骤:

  1. API密钥或余额问题:检查翻译渠道(如DeepSeek、OpenAI)的密钥是否正确、余额是否充足。
  2. 内容触发AI风控:某些敏感词可能导致整条字幕被过滤。可尝试在高级选项中取消“发送完整字幕”,改用逐行翻译模式。
  3. 超出Token限制:如果每批字幕行数过多或字幕文本过长,超出模型上下文窗口。请进入菜单→工具→高级选项→字幕翻译调整,降低AI翻译渠道每批字幕行数(例如设为20),并增大对应AI渠道设置中的max_token
  4. 网络或代理问题:确保网络连接稳定,代理设置正确(国内访问国外API需配置代理)。
  5. 翻译缓存干扰:修改提示词或更换渠道后,缓存仍使用旧结果。可删除tmp/translate_cache/目录下的缓存文件,或勾选主界面“清理已生成”。

如果以上无法解决,请提供软件安装目录下logs/文件夹中最新的日志文件(复制最近30行报错信息),以便进一步定位。

请查阅相关文档:

127
00:19:09,210 --> 00:19:11,390
あーーー

128
00:19:25,200 --> 00:19:26,800
なにこれ?

129
00:19:30,040 --> 00:19:32,020
こんなんで出せるんだ?

130
00:19:38,390 --> 00:19:39,630
人出して!
这四行行翻译回来是空白

这四行日语字幕翻译后成空白,主要有以下几种可能原因,请按顺序排查:

  1. 翻译渠道返回空结果
    某些翻译渠道(如 Google 翻译、DeepSeek 等)对日语特殊字符(如长音 、疑问词等)敏感,可能返回空。
    解决:在“高级选项 - 字幕翻译调整”中,将AI翻译渠道每批字幕行数调低至 10 行以内,并取消“发送完整字幕”,改用逐行翻译模式。
  2. 内容触发风控或被截断
    第 129 行“こんなんで出せるんだ?”包含口语化表达,某些 AI 渠道可能判定为不安全而过滤。
    解决:尝试更换翻译渠道(如从 AI 渠道换为 Microsoft 翻译或 DeepL),观察是否恢复正常。
  3. 翻译缓存冲突
    之前翻译失败的结果被缓存,导致返回空白。
    解决:关闭软件,删除 tmp/translate_cache/ 目录下的所有缓存文件,重新执行。
  4. 字幕格式导致解析失败
    检查这几行字幕是否严格遵守标准 SRT 格式(行号、时间轴、文本、空行)。用户给出的文本似乎缺少空行分隔?实际 SRT 文件应有空行分隔条目。若格式错乱,软件可能跳过这些行。
    解决:使用文本编辑器检查 SRT 文件,确保每段之间有空行。

若以上方法均无效,请提供软件版本号以及 logs/ 目录下最新的日志文件(复制最后 30 行),以便进一步诊断。

94
00:07:01,820 --> 00:07:02,280
うーん...

95
00:07:02,280 --> 00:07:03,020
うーん...

96
00:07:03,020 --> 00:07:03,040
うーん...

97
00:07:03,040 --> 00:07:05,280
うーん...

98
00:07:05,280 --> 00:07:06,540
先生のおっぱい...

99
00:07:06,540 --> 00:07:09,700
一人ちょっとだけ大きいから...

100
00:07:11,850 --> 00:07:13,220
触ったら...

这几行日语字幕翻译后出现空白,核心原因是内容被翻译渠道过滤或无法处理。具体问题:

  • 第98行 先生のおっぱい...(老师的胸部...) – 许多 AI 翻译渠道(如 Google、DeepSeek、OpenAI)会因涉及身体部位而触发风控,直接返回空结果。
  • 第94-97行 うーん...(嗯...) – 纯语气词,某些翻译模型会返回空字符串或原样保留,导致看起来“消失”。
  • 短时间轴(如 0.02秒) – 某些渠道对极短字幕可能跳过或返回空。

解决步骤

  1. 更换翻译渠道为 Microsoft 翻译DeepL(免费传统翻译,不过滤内容)——在翻译渠道下拉框中选择。
  2. 若仍空白,清除翻译缓存:关闭软件,删除 tmp/translate_cache/ 目录下的全部文件,重新执行。
  3. 在高级选项中 取消勾选“发送完整字幕”,改为逐行翻译,避免上下文触发风控。
  4. 如果使用 AI 渠道,尝试将 AI翻译渠道每批字幕行数 调低至 10,并在对应渠道设置中增大 max_token

如果以上操作后依然空白,请提供软件左上角的版本号,以及 logs/ 目录下的最新日志文件(复制最后30行),以便进一步排查。

使用微软翻译还是这样

微软翻译通常不会因内容过于敏感而直接返回空白,仍出现空白多为缓存或格式问题。请按以下步骤排查:

  1. 清除翻译缓存
    关闭软件,删除 tmp/translate_cache/ 目录下的所有文件,重新执行翻译。
  2. 检查源字幕文件格式
    打开原始 SRT 文件,确认这些空行的源文本是否确实存在(非空白行),且时间轴格式正确(毫秒为三位数,如 00:07:02,280)。
  3. 确认目标语言选择正确
    确保「Target Lang」已设置为对应的目标语言(如 zh-cn),而非 auto 或其他。
  4. 尝试缩小批次并增加暂停

    • 进入 菜单→工具→高级选项→字幕翻译调整,将传统翻译渠道每批字幕行数设为 5。
    • 翻译后暂停秒设为 1 秒,避免限流。
  5. 换用 DeepL 或 Google 翻译
    若仍异常,临时切换渠道以定位问题(Google 翻译需要代理,DeepL 需申请密钥)。

若以上均无效,请提供:

  • 软件左上角的版本号(如 v4.03-0626
  • logs/ 目录下最新日志文件末尾约 30 行内容(包含 ERRORWARNING 的部分)

4.03
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: HTTPConnectionPool(host='127.0.0.1', port=1188): Max retries exceeded with url: /translate (Caused by 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\task\job.py", line 35, in run
File "videotrans\task\job.py", line 135, in process_task
File "videotrans\task\translate_srt.py", line 47, in trans
File "videotrans\translator\__init__.py", line 860, in run
File "videotrans\translator\_base.py", line 65, in run
File "videotrans\translator\_base.py", line 95, in _run_text
File "tenacity\__ini
......
[Mircosoft]返回:response=
[DEBUG] 行数不匹配,原始:10, 结果:7
it=['ふふふふ', 'なんで出さないの?', '飲ませるとでも思った?', '人出して...もっと...', '好き?', '私も好き...ね?', '私優しかった?', '猫かぶってただけだよ...', '気が付かなかったんだね...', 'ゴムつけないでしてみる...']
sep_res=['呵呵呵。', '你为什么不熄灭它?', '你以为你会给他喝一杯吗?', '派人出去,更多,你喜欢吗?', '我也喜欢,右?', '我算善良吗?', '我只是戴着猫面具,你没注意到,尝试不戴套,']
[INFO] Starting call to 'videotrans.translator._microsoft.Microsoft._item_task', this is the 1st time calling it.
[DEBUG] [Mircosoft]返回:response=
[DEBUG] 行数不匹配,原始:10, 结果:6
it=['なんでいつもゴムつけてたの?', '断ったよね?前...', '束縛しそうだった?', 'めんどくさそうな女に見えた?', 'ゴムしないでセックスして...', '赤ちゃん作ろうよ...', 'そしたら浮気できないでしょ?', 'どうする?', '本当にできちゃうかも...', 'はぁ...']
sep_res=['你为什么总是戴安全套?', '你拒绝了,是吧? 上一页,她是不是在占有欲强?', '她看起来像个麻烦的女人吗?', '不戴套做爱,我们生个孩子吧,那你就不能作弊,对吧?', '我们该怎么办?', '这可能真的会发生,唉,']
[INFO] Starting call to 'videotrans.translator._microsoft.Microsoft._item_task', this is the 1st time calling it.
[DEBUG] [Mircosoft]返回:response=
[DEBUG] 行数不匹配,原始:10, 结果:1
it=['止めないんだ...', '入っちゃうよ...', 'はぁ...', 'すぐ入っちゃった...', '私ってダメな女だね...', '悲しいのにさ...', 'すぐ入っちゃうだもん...', 'なんで濡れちゃうんだろうね...', 'ふふふ...', 'ふぅふ...']
sep_res=['你能不能别这样,它会进去,唉,它立刻进去了,我真是个无可救药的女人,虽然很难过,马上就进去,我想知道为什么会湿,呵呵呵,呵呵,']
[INFO] Starting call to 'videotrans.translator._microsoft.Microsoft._item_task', this is the 1st time calling it.
[DEBUG] [Mircosoft]返回:response=
[DEBUG] 行数不匹配,原始:10, 结果:7
it=['ねえ、なんで?', '奥がいい?', '手前がいい?', 'なんで奥?', 'あっ...', '奥入れたら出したら困っちゃうでしょ?', '子供つく時なかったけど...', '欲しくなってきちゃった...', '欲しくないの?', '今作んなかったらまた浮気しちゃうよ...']
sep_res=['嘿,为什么?', '内心深处?', '前面更好?', '为什么是背面?', '啊,如果你装进去再拔出来,那会有问题,对吧?', '我从未有过孩子,我开始想要,你不想要吗?', '如果现在不行,我又要作弊,']
[INFO] Starting call to 'videotrans.translator._microsoft.Microsoft._item_task', this is the 1st time calling it.
[DEBUG] [Mircosoft]返回:response=
[DEBUG] 行数不匹配,原始:10, 结果:5
it=['お?', '気持ちいい...', 'うっ...', '浮気するぐらいだったら別れてくれたらよかったのに...', 'はぁ...', 'なんで別れなかったの?', 'ん?', 'あの女と...', '私の思う子どっちが気持ちいい?', '今言って...']
sep_res=['哦?', '感觉真好,呃,如果只是出轨,我真希望她分手了,唉,你们为什么不分手?', '嗯?', '和那个女人,我觉得哪个女孩感觉更好?', '刚才,说出来,']
[INFO] Starting call to 'videotrans.translator._microsoft.Microsoft._item_task', this is the 1st time calling it.
[DEBUG] [Mircosoft]返回:response=
[DEBUG] 行数不匹配,原始:10, 结果:2
it=['言って...', 'どっちが好き?', 'ねえ、好き...', '好き...', 'あはははっ...', 'うふふふ...', 'あっつくなっちゃうね...', 'ふぅ...', 'おっ...', 'ふぅ...']
sep_res=['说出来,你更喜欢哪一个?', '嘿,我喜欢你,我喜欢,哈哈哈哈,呵呵呵,真让人满足,呼,哦,呼,']
[INFO] Starting call to 'videotrans.translator._microsoft.Microsoft._item_task', this is the 1st time calling it.
[DEBUG] [Mircosoft]返回:response=
[DEBUG] 行数不匹配,原始:10, 结果:9
it=['さっきなんでリクってなったの?', 'はあ...', 'どこに興奮したの?', '私のことMだって思ってたんでしょ?', 'あんたがやってきたこと、私が仕返ししてあげる。', '苦しい?', '息できない?', 'うーん、だめ。', '出すの?', '赤ちゃんできちゃうよ。']
sep_res=['你刚才为什么被叫来?', '唉,是什么让你兴奋的?', '你以为我是个M,对吧?', '我会报复你做的事。', '难吗?', '呼吸困难?', '嗯,不可能。', '你打算寄出去吗?', '你可以有个孩子。']
[INFO] Starting call to 'videotrans.translator._microsoft.Microsoft._item_task', this is the 1st time calling it.
[DEBUG] [Mircosoft]返回:response=
[DEBUG] 原始行数:209,翻译后行数:209
[DEBUG] 原始语言字幕和目标语言字幕行数一致,均为 source_len=209

从日志来看,问题定位在两点:

  1. 连接错误
    HTTPConnectionPool(host='127.0.0.1', port=1188)
    说明你把 DeepLX 翻译渠道勾选了,但本地 DeepLX 服务未启动(或未正确配置),导致软件连接失败。
  2. 微软翻译依然返回行数不匹配
    日志显示 行数不匹配,原始:10, 结果:7,微软翻译把某些短句(如语气词“うーん…”“ふふふ”)合并或过滤了,导致最终翻译结果少于原始字幕行数,那些缺失的行就变成了空白。

解决步骤:

第一步:关闭 DeepLX 翻译服务

  • 在软件主界面 第 3 行(Trans Channel),确认当前选中的是 微软翻译(Microsoft Translate),而非 DeepLX 或其它本地 API。
  • 如果看不到选项,先点击下拉框更换为 Microsoft Translate

第二步:解决微软翻译行数不匹配问题

微软翻译对短语气词(如“うーん”“ふふふ”)容易合并或忽略,推荐换用 Google 翻译或 DeepL 来处理这类日语内容。

  • Google 翻译(需要科学上网)
    在翻译渠道下拉框中选择 Google 翻译
  • DeepL 翻译(免费需申请密钥)
    选择 DeepL,并到 菜单→翻译设置→DeepL 中填写 API Key。

如果坚持使用微软翻译,请进入 菜单→工具→高级选项→字幕翻译调整,将 传统翻译渠道每批字幕行数 设为 1,同时 取消勾选"发送完整字幕",强制逐行翻译。

第三步:清除翻译缓存

关闭软件,删除 软件目录/tmp/translate_cache/ 下的所有文件,重启后重新执行。


补充说明:
第98~99行包含“先生のおっぱい”(老师的胸部)等身体词汇,微软翻译有较高概率直接过滤。再次建议更换为 Google 或 DeepL 翻译渠道。

如果换渠道后仍然空白,请提供更换后新日志的最后 30 行内容。

还有别的办法没,4g显存有什么合适的翻译大模型吗

知识库中没有针对 4GB 显存可以稳定运行的本地翻译大模型的具体推荐。现有的本地翻译渠道(M2M100)需求较模糊,通常需要 6GB+ 显存才能流畅运行 large 版本,4GB 显存极易爆显存。

建议以下更可靠的方案:

  1. 换用在线翻译渠道(完全避免本地显存占用)

    • 免费:Microsoft 翻译(无需代理)、Google 翻译(需代理)
    • 收费但便宜:DeepL、百度翻译、腾讯翻译、DeepSeek API(价格极低)
  2. 如果一定要本地,尝试降低量化等级

    • 在“高级选项 → 语音识别参数”中将“计算数据类型”设为 int8,但 M2M100 不直接支持此选项。
    • 改用 兼容AI/本地模型 渠道部署量化版小模型(如 Qwen 7B Q4),但需自行部署且 4GB 显存仍较紧张。

综上所述,在 4GB 显存下运行本地翻译大模型不现实且易出错,强烈建议使用在线翻译渠道。

如果需要继续试本地,请提供具体选择的本地模型名称和日志,以便进一步分析。

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