发布时间:
常用命令 #
关键帧 IPB #
帧率 每秒画面数量 0-30 一搬25帧
I #
表示关键帧,是最完整的帧画面,一般视频封面都选择I帧;
ffmpeg -i 666051400.mp4 -vf "select=eq(pict_type\,I)" -vsync vfr -qscale:v 2 -f image2 ./%08d.jpg
P #
单预测帧,利用之前的I帧或P帧,采用运动预测的方式进行帧间预测编码;
ffmpeg -i 666051400.mp4 -vf "select=eq(pict_type\,P)" -vsync vfr -qscale:v 2 -f image2 ./%08d.jpg
B #
双向预测帧,利用双向帧进行预测编码;
ffmpeg -i 666051400.mp4 -vf "select=eq(pict_type\,B)" -vsync vfr -qscale:v 2 -f image2 ./%08d.jpg
均匀抽帧 #
-r
指定抽取的帧率,即从视频中每秒钟抽取图片的数量。1代表每秒抽取一帧。
ffmpeg -i 666051400.mp4 -r 20 -q:v 2 -f image2 %08d.000000.png
视频拆分帧 #
ffmpeg -i 666051400.mp4 %08d.000000.png
图片合并视频 #
-framerate
指定帧率
ffmpeg -f image2 -framerate 30 -i %08d.000000.jpg test.mp4
提取音频 #
ffmpeg -i 666051400.mp4 -vn -codec copy out.m4a
其他 #
-
指定时间抽帧图片
ffmpeg -ss 00:00:30 -i 666051400.mp4 -vframes 1 0.png
-
视频截取
-ss
5指定从输入视频第1:05秒开始截取,-t 10指明最多截取10秒;ffmpeg -i 666051400.mp4 -ss 1:05 -t 10 output.mp4
-
视频截取
-c:v
和-c:a
分别指定视频和音频的编码格式。-c:v copy
-c:a copy
标示视频与音频的编码不发生改变,而是直接复制,这样会大大提升速度。-ss
1:05放到-i前面,与原来的区别是,这样会先跳转到第1:05秒在开始解码输入视频,而原来的会从开始解码,只是丢弃掉前1:05秒的结果。
ffmpeg -ss 1:05 -i 666051400.mp4 -t 10 -c:v copy -c:a copy output.mp4