1、新建一个txt文件,并复制如下代码进入,然后保存。
@echo off & title
cd /d %~dp0
for %%a in (*.mp4) do (
ffmpeg -i "%%~sa" -y -vf select="eq(pict_type\,I)" -frames:v 1 -vsync 2 -s 720*1280 -f image2 "%%~na.jpg"
)
pause
2、把文件后缀修改为bat 。
3、把后缀为bat的文件放到要批量处理的视频文件夹里面。
4、在确保安装了ffmpeg的情况下,双击bat文件执行即可。
5、参数说明:
-i 输入文件,这里指的就是视频文件。
-y 表示无需询问,直接覆盖输出文件(如果有原文件的话)。
-vf 一个命令行,表示过滤图形的描述。选择过滤器select会选择帧进行输出:pict_type和对应
的类型:PICT_TYPE_I 表示是I帧,即关键帧。
-frames:v 1 设置要输出的帧数,这里1个视频就设置输出1帧画面。
-vsync 2 阻止每个关键帧产生多余的拷贝;
-f image2 "%%~na.jpg" 将视频帧写入到图片中,视频文件名称作为图片的文件名,
jpg为图格式。
-s 分辨率。