django Asked: 2025-03-29 22:17:51 +0800 CST2025-03-29 22:17:51 +0800 CST 2025-03-29 22:17:51 +0800 CST 使用 ffmpeg 时获得极长的视频输出 772 我使用 ffmpeg 压缩和缩放一组带有图片字幕的视频,并获得了非常长的视频输出。输入视频的时长不到一小时,但输出却超过 1100 小时! video 1 个回答 Voted Best Answer karel 2025-03-30T06:26:54+08:002025-03-30T06:26:54+08:00 您需要-fix_sub_duration在指定输入文件之前包含: ffmpeg -fix_sub_duration -i input.mkv #...等等,等等 这似乎导致 ffmpeg 采取使用基于图片的字幕指定字幕持续时间的松散方法,并以此避免不必要地延长视频,可能长达数百小时。 参见ffmpeg官方文档。 5.10 高级字幕选项 -fix_sub_duration 修复字幕时长。对于每个字幕,等待下一个数据包 同一流并调整第一个流的持续时间以避免重叠。这是 对于某些字幕编解码器来说,特别是 DVB 字幕,这是必需的,因为 原始数据包中的持续时间只是一个粗略的估计,结尾是 实际上是用一个空的字幕框标记的。如果在以下情况下无法使用此选项 必要的可能会导致夸大的持续时间或多路复用失败,因为 非单调的时间戳。 请注意,此选项将延迟所有数据的输出,直到下一个 字幕包解码:它可能会增加内存消耗和延迟 很多。
您需要
-fix_sub_duration
在指定输入文件之前包含:这似乎导致 ffmpeg 采取使用基于图片的字幕指定字幕持续时间的松散方法,并以此避免不必要地延长视频,可能长达数百小时。
参见ffmpeg官方文档。