#6479 我希望软件使用我给的字幕进行翻译和配音,test/ 0807_no_sub.mp4 _video_out/0807_no_sub-mp4/ zh-cn.srt 但是每次软件会继续自己识别字幕,同时输出的位置是F:\Jiani_too

66.90.**5 Posted at: 20 days ago

我希望软件使用我给的字幕进行翻译和配音,test/
0807_no_sub.mp4
_video_out/

0807_no_sub-mp4/
  zh-cn.srt

但是每次软件会继续自己识别字幕,同时输出的位置是F:\Jiani_tools\win-pyvideotrans-v4.08\0807_no_sub-mp4

33 Replies

#1 DeepSeek reply at 20 days ago

这是因为你点击了「输出到...」自定义输出目录,或勾选了「清理已生成」,导致软件无法在你指定的输出目录中找到已放置的 zh-cn.srt,从而判定没有已有字幕并重新执行语音识别;同时输出位置也被更改为自定义目录。

请按以下步骤修正:

  1. 删除或还原自定义输出目录:不要点击主界面上的「输出到...」按钮,保持输出位置为默认值。默认输出位置是「所选视频同级目录下的 _video_out 文件夹」,不是软件根目录。
  2. 确认视频路径与字幕位置

    • 视频:F:\Jiani_tools\win-pyvideotrans-v4.08\test\0807_no_sub.mp4
    • 字幕文件必须放在:F:\Jiani_tools\win-pyvideotrans-v4.08\test\_video_out\0807_no_sub-mp4\zh-cn.srt
    • 注意子文件夹名必须为 0807_no_sub-mp4(视频名+后缀,后缀为小写mp4)。
  3. 不要勾选「清理已生成」:该选项会清空已有字幕文件,然后重新识别。
  4. 确保主界面的「发音语言」选择为“简体中文”(与 zh-cn.srt 对应)。
  5. 重新选择视频开始任务,软件检测到 _video_out 内的 zh-cn.srt 后,会跳过语音识别和翻译,直接使用该字幕进行配音/合成。

若以上操作后仍无效,请提供软件安装目录下 logs/ 文件夹最新日志的底部约30行报错信息,以便进一步排查。

请查阅相关文档:

#2 66.90.**5 reply at 20 days ago

视频和字幕在,
test
├─ 0807_no_sub.mp4
├─ 0807_no_sub.srt
└─ _video_out
└─ 0807_no_sub-mp4

  └─ zh-cn.srt
#3 DeepSeek reply at 20 days ago

核心原因是:你点击了「输出到..」自定义了输出目录,导致软件不再从视频同级的 _video_out 目录查找已有字幕,而是去你指定的目录找。由于该目录下没有 zh-cn.srt,软件判定没有可用字幕,于是重新执行语音识别。

请按以下步骤操作:

  1. 在主界面找到「输出到..」按钮,点击后选择「恢复默认」或清空自定义路径,确保输出位置保持为默认(视频同级的 _video_out 文件夹)。
  2. 确认你的文件结构完全正确:

    test/
    ├─ 0807_no_sub.mp4
    └─ _video_out/
       └─ 0807_no_sub-mp4/
          └─ zh-cn.srt
  3. 不要勾选「清理已生成」,否则会删除已有字幕。
  4. 将「发音语言」选择为“简体中文”,对应 zh-cn.srt
  5. 重新选择 test/0807_no_sub.mp4 并开始任务,软件检测到已有字幕后会跳过识别和翻译。

另外,test/0807_no_sub.srt 不会被自动使用,请忽略或删除它,确保唯一字幕位于上述 zh-cn.srt 位置。

如果仍无效,请提供 logs/ 目录最新日志底部约30行内容。

请查阅相关文档:

#4 66.90.**5 reply at 20 days ago

我重新打开软件,没有点击了「输出到..」自定义了输出目录,还是:F:\Jiani_tools\win-pyvideotrans-v4.08\0807_no_sub-mp4\zh-cn.srt
生成了字幕;我到底要怎么办才能让他用我的字幕

#5 DeepSeek reply at 20 days ago

问题核心是:软件没有在视频同级目录下找到你的字幕文件,所以它判定需要重新识别。原因通常是“发音语言”没有设置为“简体中文”,或者视频路径和字幕所在路径不一致。按以下步骤操作:

  1. 将视频和字幕放在同一个干净目录下(不要放在软件安装目录内):

    • 例如 D:\videos\0807_no_sub.mp4
    • 同时创建 D:\videos\_video_out\0807_no_sub-mp4\zh-cn.srt
  2. 在主界面确认

    • 不要点击「输出到..」按钮(保持默认)。
    • 不要勾选「清理已生成」。
    • 「发音语言」必须选择 简体中文zh-cn.srt 是源语言字幕时必选)。
    • 「目标语言」选择你想翻译成的语言。
  3. 重新选择视频:点击「选择视频或音频」,在文件对话框中导航到 D:\videos\0807_no_sub.mp4 并选中,然后开始任务。软件检测到 D:\videos\_video_out\0807_no_sub-mp4\zh-cn.srt 后,会跳过语音识别直接使用该字幕。

如果你坚持使用 test 目录,请确保视频路径是 F:\Jiani_tools\win-pyvideotrans-v4.08\test\0807_no_sub.mp4,并且 _video_out 必须位于 test 目录内。你看到的输出位置 F:\Jiani_tools\win-pyvideotrans-v4.08\0807_no_sub-mp4 说明它处理的视频实际是在软件根目录下,而不是 test 目录下。

如果以上步骤全部正确但软件仍重新识别字幕,请提供 logs/ 目录下最新日志底部约30行报错信息,以及软件左上角版本号,以便进一步排查。

请查阅相关文档:

#6 66.90.**5 reply at 20 days ago

发音语言设置为“简体中文”了。字幕和视频文件是这样
test/
├─ 0807_no_sub.mp4
└─ _video_out/
└─ 0807_no_sub-mp4/

  └─ zh-cn.srt

为什么要确保视频路径是 F:\Jiani_tools\win-pyvideotrans-v4.08\test\0807_no_sub.mp4,并且 _video_out 必须位于 test 目录内?
我不能自定义工作目录吗?

#7 DeepSeek reply at 20 days ago

这是软件识别已有字幕的固定逻辑:默认输出位置必须与视频保持“同级 _video_out/{视频名}-{后缀}”结构,软件只会从这个位置检测并读取你准备好的 zh-cn.srt。

之所以不能自定义工作目录,是因为:

  • 点击「输出到..」后,软件会改为到你指定的目录读取字幕,但那里没有 zh-cn.srt,于是它判定“无已存在字幕”,重新执行语音识别。
  • 如果你不改输出位置,软件会严格按 视频所在目录/_video_out/{视频名}-{后缀}/ 查找字幕。你现在的文件结构完全符合该规则,因此不需要也不能手动改变输出目录。

请保持你的 test 目录结构,并确保:

  1. 主界面“输出到..”为默认状态(未点击该按钮)。
  2. 不勾选“清理已生成”。
  3. 发音语言为“简体中文”。
  4. 重新选择 test/0807_no_sub.mp4 后开始任务。

这样软件会跳过语音识别,直接使用 test/_video_out/0807_no_sub-mp4/zh-cn.srt

如果按此操作仍生成新字幕,请提供 logs/ 目录下最新日志底部约30行内容,以便进一步排查。

#8 66.90.**5 reply at 20 days ago

但是视频所在目录/就不在F:\Jiani_tools\win-pyvideotrans-v4.08;
视频在C:\Users\86181\Desktop\音频\test

#9 DeepSeek reply at 20 days ago

视频路径和字幕路径必须匹配:软件只会在 所选视频同级目录下的 _video_out/{视频名}-{后缀}/ 中查找已有字幕。你现在的视频位于 C:\Users\86181\Desktop\音频\test\0807_no_sub.mp4,因此字幕必须位于:

C:\Users\86181\Desktop\音频\test\_video_out\0807_no_sub-mp4\zh-cn.srt

如果字幕不在这个位置,软件就会判定“无已有字幕”,从而重新执行语音识别。之前输出到 F:\Jiani_tools\win-pyvideotrans-v4.08\0807_no_sub-mp4\,说明你当前选择的视频实际是 F:\Jiani_tools\...\0807_no_sub.mp4,而不是 C 盘的那个文件。请在“选择视频或音频”时,明确导航到 C:\Users\86181\Desktop\音频\test\0807_no_sub.mp4,并确认字幕已按上述路径放置。同时保持:“输出到..”未设置(默认状态);未勾选“清理已生成”;发音语言为“简体中文”。

如果全部正确仍无效,请提供 logs/ 目录最新日志底部约30行内容,以便进一步排查。

#10 66.90.**5 reply at 20 days ago

C:\Users\86181\Desktop\音频\test\0807_no_sub.mp4,因此字幕必须位于:

C:\Users\86181\Desktop\音频\test\_video_out\0807_no_sub-mp4\zh-cn.srt
这些我满足要求了;
是不是因为路径有中文?还是其他原因

#11 DeepSeek reply at 20 days ago

这是由中文路径导致的。软件底层调用 FFmpeg 等工具时对中文、空格及特殊符号兼容性较差,路径中的“音频”可能导致无法正确读取你已放置的字幕文件,从而判定为无字幕并重新执行语音识别。请将整个视频目录移动到纯英文路径后重试,例如:D:\videos\test\0807_no_sub.mp4字幕文件对应移动到:D:\videos\test\_video_out\0807_no_sub-mp4\zh-cn.srt然后在软件中选择 D:\videos\test\0807_no_sub.mp4,并保持:不点击「输出到..」;不勾选「清理已生成」;发音语言为“简体中文”。开始任务后,软件应能读取已有字幕。如果仍无效,请提供 logs/ 目录最新日志底部约30行内容,以便进一步排查。请查阅相关文档:- 导入本地已有的字幕或人声

#12 66.90.**5 reply at 20 days ago

总结我的问题,不要包含你的推测

#13 DeepSeek reply at 20 days ago

你的问题总结如下:

  • 视频路径:C:\Users\86181\Desktop\音频\test\0807_no_sub.mp4(包含中文“音频”)
  • 字幕文件已按要求放置:C:\Users\86181\Desktop\音频\test\_video_out\0807_no_sub-mp4\zh-cn.srt
  • 发音语言已设为“简体中文”
  • 未点击「输出到..」自定义输出目录
  • 未勾选「清理已生成」
  • 软件仍然自动执行语音识别,并在 F:\Jiani_tools\win-pyvideotrans-v4.08\0807_no_sub-mp4\ 下生成了字幕,而不是使用你准备好的 zh-cn.srt

目前的问题是:已满足官方文档中“导入已有字幕”的目录结构与界面设置要求,但软件仍未按预期使用你提供的字幕,而是重新识别并输出到了其他位置。

#14 66.90.**5 reply at 20 days ago

正确的原始设计应该是程序每次根据当前视频动态计算:
视频目录 = F:\A_tset\test
输出目录 = F:\A_tset\test\_video_out\0807_no_sub-mp4
字幕路径 = F:\A_tset\test\_video_out\0807_no_sub-mp4\zh-cn.srt
但当前 v4.08 的实际行为是:
读取全局 output_dir
输出到 F:\Jiani_tools\win-pyvideotrans-v4.08\0807_no_sub-mp4
所以它没有执行“视频同级 _video_out”这段逻辑,导致已有字幕也无法命中。params.json 里的 output_dir 只是一个全局固定目录,不能修复这个动态路径问题。

为什么?

#15 DeepSeek reply at 20 days ago

默认设计确实是动态计算:软件会根据当前视频路径自动在视频同级的 _video_out/{视频名}-{后缀} 中查找已有字幕。你现在看到它跑到全局固定目录,是因为「输出到..」这一项曾经被设置过自定义目录,并且该配置被保存到了 params.jsonoutput_dir 字段中。这直接覆盖了默认的动态逻辑——软件从此只在你指定的全局目录里读取/输出字幕,不再按视频所在目录动态查找。

解决办法:

  1. 在主界面点击「输出到..」按钮,在弹出的对话框中把路径清除或选择“恢复默认”(不同版本按钮文字可能略有差异)。
  2. 确认该按钮旁不再显示任何路径。
  3. 重启软件。
  4. 重新选择视频时不要再次点击「输出到..」。

如果已经清空并重启后仍然输出到 F:\Jiani_tools\win-pyvideotrans-v4.08\0807_no_sub-mp4,则可能是 v4.08 早期版本的已知 Bug——该版本存在“无法正确读取已存在的 SRT 字幕”的问题,官方已在 v4.08-0802 补丁中修复。请将软件升级到 v4.08-0802(软件左上角版本号仍显示 v4.08,但更新日期必须是 2026-08-02)后再试。

若以上均无效,请提供 logs/ 目录下最新日志底部约30行内容,以便进一步排查。

#16 66.90.**5 reply at 20 days ago

弹出的对话框中没有路径清除或选择“恢复默认”的选项;image

#17 DeepSeek reply at 20 days ago

你看到的是仅用于选择目录的对话框,没有恢复默认按钮是正常的。要恢复默认输出目录,需要手动清除已保存的全局 output_dir 配置。

核心原因是:params.json 中残留了全局 output_dir 设置,软件会优先使用它,不再按视频同级目录动态计算,导致已有的 zh-cn.srt 无法命中。

解决方法:

  1. 关闭软件。
  2. 打开 F:\Jiani_tools\win-pyvideotrans-v4.08\videotrans\params.json
  3. 查找 "output_dir" 字段,将其值改为空字符串 "",或直接删除该字段。
  4. 保存文件并重启软件。
  5. 重新选择视频,确认输出位置恢复为视频同级的 _video_out/{视频名}-{后缀},然后再开始任务。

如果 params.json 中不存在 output_dir 字段,可先备份整个 params.json 后将其删除,让软件重新生成默认配置(注意:API 密钥等也会被清除,需要重新填写)。

若以上步骤执行后问题依旧,请提供软件左上角版本号,以及 logs/ 目录最新日志底部约30行内容,以便进一步判断是否需要升级到 v4.08-0802 修复已知的 SRT 读取问题。

#18 66.90.**5 reply at 20 days ago

1.问题一:视频有电影原声,经过翻译处理后演员说话声音消失了,是否是选项:分离人声背景声的原因造成的??

#19 DeepSeek reply at 20 days ago

这不是“分离人声背景声”这个选项本身造成的,而是分离后相关配套设置或配音阶段异常导致的。勾选“分离人声背景声”后,软件会把原始音轨拆成“人声”和“背景声”,原人声被用于识别和翻译,最终由新生成的配音替代;背景声需要再重新嵌入。如果你没有勾选“嵌入背景”,背景声会被丢失,但说话声应被新配音替代;如果配音角色选择为“不配音”,或配音阶段失败,最终音频中就可能没有演员说话声。请依次检查:1. 若勾选了“分离人声背景声”,必须同时勾选“嵌入背景”,否则背景伴奏也会丢失。2. 确认“配音渠道”和“配音角色”已正确选择,且配音文件生成成功。3. 查看软件安装目录下 logs/ 最新日志,确认是否存在“配音失败”“识别失败”等错误。4. 如果以上都正常,尝试取消勾选“分离人声背景声”重新执行,以判断是否该环节导致问题。

#20 66.90.**5 reply at 20 days ago

1.问题一:视频有电影原声,经过翻译处理后演员说话声音消失了,是否是选项:分离人声背景声的原因造成的??
补充:我是使用自己的字幕进行配音的,演员说话原声并没有字幕,也就是说分离截断被剥离为人声了,但是配音使用的我的字幕,所以演员也没有声音吗?
2.问题2:如果是上面说的那样,我并不需要给原声配音,我只想给自己生成字幕的内容配音,无字幕的部分我想保留原声?关闭选项:分离人声背景声,是否能解决

#21 DeepSeek reply at 20 days ago

问题1:是的。勾选“分离人声背景声”后,原声会被拆成人声和背景声,最终合成时默认用新配音替换人声,且背景声不会自动嵌入,导致无字幕部分也丢失原声(包括演员说话声)。问题2:关闭“分离人声背景声”不能解决问题。关闭后,软件会直接用整段配音替换原始音轨,无字幕部分同样没有原声。当前软件不支持“按字幕时间段替换,无字幕保留原声”的混合模式。若你只想给指定字幕内容配音,并保留视频其他部分原声,不建议走“视频翻译”流程,建议:1. 用“文字配音”功能给字幕生成配音音频;2. 在视频编辑软件(如剪映、Premiere)中手动将配音对齐到对应时间段,其他时间段保留原音轨。请查阅相关文档:- 语音合成功能

#22 66.90.**5 reply at 20 days ago

整段配音替换原始音轨,是指连背景声都会丢失吗

#23 DeepSeek reply at 20 days ago

是的,整段替换原始音轨意味着背景声也会一起丢失。具体说明如下:1. 如果不勾选“分离人声背景声”:软件会把整段原始音轨(人声+背景声)直接替换为配音后的音轨,背景声和所有原声人声都会丢失。2. 如果勾选“分离人声背景声”并同时勾选“嵌入背景”:软件会将原始音轨分离为人声和背景声,用新配音替换人声,再嵌入背景声。此时背景声会保留,但无字幕部分的人声也会被移除,因为分离阶段把所有人声都提取出来了。3. 当前软件不支持“只替换字幕时间段的声音、其他时间段保留原声”的混合处理。如果你需要“字幕部分用配音,其他部分保留原声”,建议:先用“文字配音”功能为字幕生成配音音频,然后在视频编辑软件(剪映、Premiere 等)中,将配音对齐到对应时间段,其他时间段保留原视频音轨。请查阅相关文档:- 语音合成功能

#24 66.90.**5 reply at 20 days ago

那分离出来的人声文件在哪?我想找个办法把那一小块原声放回去

#25 DeepSeek reply at 20 days ago

分离出来的人声和背景声是本次任务产生的临时文件,通常位于软件根目录下的 tmp/{任务PID}/ 文件夹内,文件名一般为 vocal.wav(人声)和 instrument.wav(背景声)。但是:1. 如果任务已经正常结束,tmp/ 目录中的临时文件可能已被自动清空;2. 如果你勾选了「仅输出mp4」或「清理已生成」,这些文件也会被删除。如果文件已不存在,无法从软件中找回。若你只是想“给无字幕的部分保留原声,有字幕部分用配音”,建议改用视频剪辑软件:把原视频音轨保留,将你生成的配音音频对齐到对应时间段即可。如果你找到了 vocal.wav,也可以用第三方剪辑工具将对应片段手动放回原视频时间轴。请查阅相关文档:- 语音合成功能

#26 66.90.**5 reply at 20 days ago

我能否提取临时文件中的原始 vocal.wav(人声),在合成阶段和生成的配音放在一块,然后合并的时候就不会出问题

#27 DeepSeek reply at 20 days ago

不能。软件在合成阶段会整段替换原始音轨(或替换人声后重新嵌入背景),不会根据字幕时间段自动混合配音与原人声。即使你将 vocal.wav 手动放回临时目录或在输出目录放入人声文件,软件也不会在无字幕部分保留原声,因为合成逻辑不是按时间段混合,而是整体替换。若你想保留无字幕部分原声,唯一的可行办法是:1. 在视频编辑软件(剪映、Premiere 等)中导入原视频;2. 将你生成的配音音频对齐到有字幕的时间段;3. 其他时间段保留原视频音轨。另外,临时目录中的 vocal.wav 在任务结束后可能已被清理,若文件已不存在则无法找回。

#28 66.90.**5 reply at 20 days ago

替换人声后重新嵌入背景:那我使用原 vocal.wav(人声)替换不就完了,在哪个阶段替换?

#29 DeepSeek reply at 20 days ago

软件内部没有提供“手动替换人声”的阶段或界面,整个流程(分离→用配音替换vocal→与instrument合并)是自动完成的。你无法在合成阶段把原始 vocal.wav 插回去,软件也不会因为你放入某个文件就改变其自动逻辑。

如果你的目的是“完全不使用配音,保留原始人声”,那么不需要勾选“分离人声背景声”,也不需要选择任何配音角色,直接生成字幕即可,最终视频会保留完整原音轨。

如果你的目的是“有字幕的部分用配音,无字幕部分保留原声”,则软件当前不支持这种按时间段混合的处理,必须使用外部视频编辑软件手动完成。

请查阅相关文档:

#30 66.90.**5 reply at 20 days ago

你就告诉我是哪个阶段,能否暂停,替换的逻辑我自己想

#31 DeepSeek reply at 20 days ago

人声分离发生在预处理阶段(prepare),最终替换人声并嵌入背景发生在最终合成阶段(assembling)。软件全程自动执行,不提供暂停或在合成阶段手动替换原始 vocal.wav 的界面或配置项。如果你需要自定义替换逻辑,只能通过修改源码或使用外部视频编辑工具完成,软件本身不支持。

#32 66.90.**5 reply at 20 days ago

你说说,最终替换人声并嵌入背景发生在最终合成阶段(assembling),那么涉及到哪些文档,怎么进行的,如果我想写脚本干预应该考虑哪些
;那他的前一个阶段一定有能暂停的;我可以用外部脚本工具完成;

#33 66.90.**5 reply at 20 days ago

你说说,最终替换人声并嵌入背景发生在最终合成阶段(assembling),那么涉及到哪些文档,怎么进行的,如果我想写脚本干预应该考虑哪些
;那他的前一个阶段一定有能暂停的;我可以用外部脚本工具完成;

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