我希望从视频的5个点捕捉五个缩略图,彼此相同的距离,如1,25%,50%,75%,100%
答案 0 :(得分:0)
首先,你需要获得视频duraiton。
ffmpeg -i file.flv 2>&1 | grep "Duration"
以上命令的结果是这样的 持续时间:00:12:43.08,开始:0.040000,比特率:386 kb / s
然后你应该计算1%,25%,50%,75%,100%的视频时长并将它们转换为00:00:00.000
最后你可以运行这样的缩略图命令。
ffmpeg -i input.flv -ss 00:00:11.435 -vframes 1 out.png
实施例: 如果你的视频持续时间是00:10:00.000,那就意味着它是600秒
600 * 1 / 100 = 6 => 00:00:06.000
600 * 25 / 100 = 150 => 00:02:30.000
600 * 50 / 100 = 300 => 00:05:00.000
600 * 75 / 100 => 450 => 00:07:30.000
600 * 100 / 100 => 600 => 00:10:00.000
最后,您可以通过以下命令获取缩略图
ffmpeg -i input.flv -ss 00:00:06.000 -vframes 1 out1.png
ffmpeg -i input.flv -ss 00:02:30.000 -vframes 1 out2.png
ffmpeg -i input.flv -ss 00:05:00.000 -vframes 1 out3.png
ffmpeg -i input.flv -ss 00:07:30.000 -vframes 1 out4.png
ffmpeg -i input.flv -ss 00:10:00.000 -vframes 1 out5.png