【发布时间】:2018-06-06 11:07:16
【问题描述】:
我想使用 ffmpeg 从视频中获取每个指定的帧。 从现在开始我有这个代码:
"-i example.mp4 -vf fps=30,select='between(t,2,3)' -vsync 0 image%d.bmp"
它在指定的秒数之间生成帧,但我想按帧数获取帧,例如:每 3 帧或每 10 帧。
有什么办法吗?
【问题讨论】:
我想使用 ffmpeg 从视频中获取每个指定的帧。 从现在开始我有这个代码:
"-i example.mp4 -vf fps=30,select='between(t,2,3)' -vsync 0 image%d.bmp"
它在指定的秒数之间生成帧,但我想按帧数获取帧,例如:每 3 帧或每 10 帧。
有什么办法吗?
【问题讨论】:
使用
"-i example.mp4 -vf select='not(mod(n,5))' -vsync 0 image%d.bmp"
这将产生每 5 帧 (0,5,10,15...)
(删除了 fps 过滤器 .. 从源复制或丢弃帧)。
【讨论】:
-c:v bmp out.avi,您可以节省 ~25%。