在 ffmpeg 命令中设置最小 ts 持续时间

Set minimal ts duration in ffmpeg command

我们正在使用 ffmpeg 将 mp4 视频文件转换为 hls。 视频转换时,有时会出现最后一个 ts chunk 大约为 0.03s。玩家在这个块上停顿了一会儿。 ffmpeg 中是否有特殊命令来设置最小 ts 持续时间?或其他避免此类 ts 块的方法? 在我们设置 ts 持续时间的命令中,我们使用:-segment_time 5

一种解决方案是连接块。如果最后一个 ts 块持续时间为 0.03 秒或更短,我们可以将它与前一个连接起来。这将有助于避免持续时间很短的最后一个块。 要连接块,可以使用此 ffmpeg 命令: ffmpeg -i "concat:input1.mpg|input2.mpg|input3.mpg" -c copy output.mpg

更多信息here