#5977 我什么我放了一个6分钟的视频最后出来的成品只有5分钟?

182.89* Posted at: 6 hours ago

我什么我放了一个6分钟的视频最后出来的成品只有5分钟?

5 Replies

这是因为您设置了“配音语速”加快或勾选了“音频加速”,导致配音整体时长缩短,最终视频以配音结束时间裁剪,从而总时长变短。

原因分析

  • 不同语言音节数和语法结构不同,翻译后配音时长会自然变化。如果配音总时长比原视频短,软件默认不处理变短情况,视频会以配音结尾为基准截断,或保留原视频时长但末尾无声。
  • 如果您在“设置更多参数”中填写了配音语速正值(如 +20%),或勾选了音频加速,配音会整体加快,时长显著缩短,最终合成视频时长也会相应缩短。
  • 若仅勾选视频慢速(此选项仅用于配音变长时降速对齐),无法拉长短于原声的配音。

解决方案

  1. 恢复默认语速:在主界面点击“设置更多参数”,将配音语速改为 0,取消勾选音频加速
  2. 保持原视频时长:如果不做任何加速设置,软件会在配音结束后保留原视频剩余画面(无声音),总时长不变。请检查生成的视频文件属性,确认实际时长是否仍为6分钟(可能由于播放器设置或预览器自动跳过静音段导致误判)。
  3. 如需对齐短配音:目前软件不支持自动拉伸短配音以匹配原视频时长,建议通过增大目标语言字符数或调整TTS参数使配音变长。

请查阅相关文档:

我不做任何加速修改了还是只能在5分钟以内

根据您的描述,在不做任何加速/慢速设置的情况下,6分钟原视频最终输出仅5分钟,这不符合软件默认行为(软件对配音变短的情况不做裁剪,视频总时长应保持不变)。
可能的原因包括:

  1. 原视频本身尾部存在大量静音或无人声:ASR可能会在最后一个有效语音结束后停止计时,但最终合成仍应保留原视频所有画面。
  2. 意外勾选了“视频慢速”:如果慢速开启,它会尝试拉伸视频来匹配比原声更长的配音;但若配音实际比原声短,慢速不会缩短时长,反而可能因参数错误导致截断。
  3. 使用了外部字幕或人声文件:如果手动导入了提前准备好的字幕或分离后的人声/伴奏文件,且这些文件时长较短,可能导致合成时按文件时长截断。
  4. FFmpeg编码问题:某些视频编码格式或CRF参数下,FFmpeg可能自动在尾部截断,但概率极低。
  5. 缓存或日志未清理:如果之前处理过相同视频并勾选了“清理已生成”,可能残留旧缓存导致异常。

请检查以下两项:

  • 进入原视频所在文件夹的同级 _video_out 目录,找到这次生成的子文件夹,确认里面是否有完整的 *.mp4(例如 6min.mp4)以及对应的 *.srt*.wav 等文件。如果所有文件都存在但时长仍是5分钟,说明合成阶段确实截断了。
  • 查看 logs/ 目录中最新日志文件(按日期命名的 .log),复制最后30行左右报错信息给我。

暂无法确定具体原因。请提供软件安装目录下的 logs/ 文件夹中最新的日志文件(复制底部约30行报错信息)以便分析。
同时也请告知软件左上角的版本号(例如 v4.06)。

【字幕 13】,获取到视频 start_time=40867,video_duration=1266,当前 audio_all_duration=40305
2026-07-21 17:06:50,498 - INFO - [i=12] 配音OK
2026-07-21 17:06:50,499 - INFO - [i=12] 配音长于视频片段时长1134ms
2026-07-21 17:06:50,499 - INFO -
【字幕 14】,获取到视频 start_time=43366,video_duration=900,当前 audio_all_duration=43267
2026-07-21 17:06:50,500 - INFO - [i=13] 配音OK
2026-07-21 17:06:50,501 - INFO - [i=13] 配音长于视频片段时长1164ms
2026-07-21 17:06:50,501 - INFO -
【字幕 15】,获取到视频 start_time=50699,video_duration=2366,当前 audio_all_duration=45430
2026-07-21 17:06:50,503 - INFO - [i=14] 配音OK
2026-07-21 17:06:50,504 - INFO - [i=14] 配音长于视频片段时长850ms
2026-07-21 17:06:50,504 - INFO -
【字幕 16】,获取到视频 start_time=57831,video_duration=966,当前 audio_all_duration=53915
2026-07-21 17:06:50,505 - INFO - [i=15] 配音OK
2026-07-21 17:06:50,506 - INFO - [i=15] 配音长于视频片段时长882ms
2026-07-21 17:06:50,506 - INFO -
【字幕 17】,获取到视频 start_time=72497,video_duration=4466,当前 audio_all_duration=59679
2026-07-21 17:06:50,507 - INFO - [i=16] 配音OK
20
......
8/temp_concatenated.wav
2026-07-21 17:06:51,979 - INFO - 混合拼接步骤2: 正在将临时WAV转码为最终格式: H:/老骚/win-videotrans-v3.83/tmp16088/25df470468/final_audio.wav
2026-07-21 17:06:52,000 - INFO - 已清理音频拼接临时文件。
2026-07-21 17:06:52,025 - INFO - 开始最终音视频时长对齐检查...
2026-07-21 17:06:52,106 - INFO - 最终检查: 视频物理总长 = 368585ms, 音频物理总长 = 296849ms
2026-07-21 17:06:52,106 - INFO - 时长差异 (视频 - 音频) = 71736ms
2026-07-21 17:06:52,106 - WARNING - 视频比音频长 71736ms,将通过FFmpeg apad滤镜在音频末尾补齐等长静音。
2026-07-21 17:06:52,106 - WARNING - 视频比音频长 71736ms,将通过FFmpeg apad滤镜在音频末尾补齐等长静音。
2026-07-21 17:06:52,106 - INFO - 音频末尾增加 72 秒静音
2026-07-21 17:06:52,106 - INFO - 未找到或未选择硬件编码器,将使用软件编码。
2026-07-21 17:06:52,240 - INFO - 音频补齐静音并重新导出完成。
2026-07-21 17:06:52,262 - INFO - 最终音频文件已成功交付到: H:/老骚/win-videotrans-v3.83/tmp16088/25df470468/target.wav
2026-07-21 17:06:52,262 - INFO - 所有处理完成,音视频已成功生成。
2026-07-21 17:06:52,346 - INFO -


==准备要嵌入的字幕:self.cfg.subtitle_type=2
=
2026-07-21 17:06:52,348 - INFO - 最终确定字幕嵌入类型:2 ,目标字幕语言:chi, 字幕文件:H:/老骚/win-videotrans-v3.83/tmp16088/25df470468/zh-cn.srt

2026-07-21 17:06:52,494 - INFO - 合并背景音 beishu=2,atime=367.760544,vtime=368.848753
2026-07-21 17:06:52,495 - INFO - concat_txt='H:/老骚/win-videotrans-v3.83/tmp16088/25df470468/1784624812.4940686.txt',filelist[0]='H:/老骚/win-videotrans-v3.83/tmp16088/25df470468/instrument.wav'
2026-07-21 17:06:52,496 - INFO - 未找到或未选择硬件编码器,将使用软件编码。
2026-07-21 17:06:52,875 - INFO - 未找到或未选择硬件编码器,将使用软件编码。
2026-07-21 17:06:53,145 - INFO -
最终确定的音视频字幕合并命令为:cmd=['-y', '-progress', 'H:/老骚/win-videotrans-v3.83/tmp16088/compose1784624813.113651.txt', '-i', 'H:/老骚/win-videotrans-v3.83/tmp16088/25df470468/novoice.mp4', '-i', 'H:/老骚/win-videotrans-v3.83/tmp16088/25df470468/target.wav', '-i', 'zh-cn.srt', '-c:v', 'copy', '-c:a', 'aac', '-c:s', 'mov_text', '-metadata:s:s:0', 'language=chi', '-b:a', '128k', '-movflags', '+faststart', '-crf', '22', '-preset', 'fast', '-shortest', 'H:/老骚/_video_out/The 10-Second Time Machine/The 10-Second Time Machine.mp4']

根据日志文件,问题根源清晰可见:最终合并命令中包含了 -shortest 参数

该参数指示 FFmpeg 在所有输入流(视频、音频、字幕)中,以时长最短的那个流为基准进行裁剪输出。

日志显示:

  • 视频物理总长 = 368585ms(约6分钟)
  • 音频物理总长 = 296849ms(约5分钟)

软件虽已自动为音频补齐了 72 秒静音,但因 -shortest 的存在,FFmpeg 在合并时仍然以原始音频的 296849ms 为截止点,丢弃了视频末尾约 72 秒的画面,导致最终输出时长变短。


解决方案

方法一(最推荐):在高级选项中移除 -shortest 行为

  1. 点击软件主界面顶部 菜单 → 工具/选项 → 高级选项 → 视频输出控制
  2. 自定义ffmpeg命令参数 文本框中填入:

    -copyts

    此参数会强制 FFmpeg 保留原始时间戳,避免以最短流裁剪。

  3. 保存后重新执行视频翻译任务。

方法二:取消勾选“仅输出mp4”并保留其他文件

如果您勾选了主界面的 仅输出mp4,取消勾选。这样最终输出目录中除了视频外,还会保留完整的配音音频(target.wav)和字幕文件。您可以手动用其他工具(如剪辑软件)将保留72秒静音的音频与原视频合并。


额外说明

  • 您使用的软件版本是 v3.83(从日志中 win-videotrans-v3.83 可见),此版本相对陈旧。建议升级到 v4.06 最新版,该版本在处理音频短于视频时的默认行为已优化,不再强制使用 -shortest
  • 升级方法:下载最新完整版压缩包(约2.6GB)覆盖安装,或下载补丁包(约260MB)覆盖到旧版目录。

请查阅相关文档:

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 via ko-fi.com

Dondate via PayPal

Related resource