我有以下命令行:
ffmpeg -hide_banner -ss 5 -i test.mp4 -y -vf “选择= '当量(pict_type \,PICT_TYPE_I)', mpdecimate,showinfo,scale = 320:240,tile = 12x25“-vsync 2 out %% 03d.png
如您所见,我为每个输出图像制作了12x25(= 300)个拼贴。但我想将输出限制为单个图像。
有没有办法让ffmpeg在找到300帧之后停止处理视频?
此外,当抓取I帧时,有没有办法保持1 / x例如
在玩了不同的选项之后,我找不到任何方法来做到这一点。
答案 0 :(得分:1)
使用
ffmpeg -hide_banner -ss 5 -skip_frame nokey -i test.mp4 -y -vf "framestep=7,mpdecimate,showinfo,scale=320:240,tile=12x25" -vsync 0 -vframes 1 out.png
framestep值设置1/x
中的x。如果您正在跳过x-1
个关键帧,则可能不需要mpdecimate。我添加了-skip_frame nokey
以避免使用选择过滤器。这种方法要快得多。