ffmpeg 多张图片转视频,视频转gif,截取视频,截取视频里的帧

ffmpeg 是一个强大的处理视频命令库。

百度百科:FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。

总之我们可以使用ffmpeg来很方便的处理各种格式的视频或者图片。

我在工作中用到过以下命令:

1、多张图片合成mp4格式的视频

ffmpeg -f image2 -r 1 -i /storage/emulated/0/DCIM/dateme/vframe/yiba_frame_%02d.png -vcodec mpeg4 /storage/emulated/0/DCIM/dateme/video/yiba_v_1497949606343.mp4

注意:
1、-r 1必须放在-i 前面不然生成的视频时长会有问题。-r 1表示每秒1帧,这样我的6张图片生成的视频时间长度就是6s。
2、%02d表示我的文件名是01、02、03这样由两位整数组成的数字。具体每一个文件名就是yiba_frame_01.png,yiba_frame_02.png,yiba_frame_03.png。。。。。。
3、-vcodec mpeg4 表示使用mpeg4编码标准,因为我要输出mp4格式的文件,如果不加这个参数也会出错。(亲测)

以上命令亲测可用。

2、每隔一秒钟截取一帧图片

命令:

ffmpeg -i /storage/emulated/0/DCIM/dateme/video/yiba_v_1497949588158.mp4 -ss 00:00 -t 10 -r 1 -f image2 -vf fps=fps=1 /storage/emulated/0/DCIM/dateme/vframe/yiba_frame_%02d.png 

提示:
1、-i 后面跟输入文件路径
2、-ss 后面跟开始截图的时间 -t 表示截取的视频长度为10s
3、-vf fps=fps=1 表示截图频率为每秒1帧(和-r 1的作用是一样的,所以可以去掉r 1)
4、-f image2表示输入或输出文件的格式是image2格式,f是format格式的意思

3、截取视频前3秒 并转化为gif

ffmpeg -ss 00:00:01 -t 3 -i /storage/emulated/0/DCIM/dateme/video/yiba_v_1497949777519.mp4 -vf crop=iw:ih*2/3 -s 320x240 -r 7 /storage/emulated/0/DCIM/dateme/gif/yiba_gif_1497949820078.gif

提示:

1、-ss 00:00:01表示从视频第一秒开始截取
2、- t 表示截图3秒钟的视频
3、-vf crop=iw:ih*2/3 表示截取视频的部分区域,其中宽为视频宽度,高为原视频的2/3
4、-r 7 表示每秒帧率为7帧
5、最后直接加上要生成的gif的路径就会把截取好的视频输出为gif了。

特别提示:

由于我对ffmpeg不了解,以上命令都是我在工作中摸索出来的,在我的项目里使用是没有问题的,大家可以作为参考,如果有说的不对的地方请留言告诉我哦,(^__^)

附上ffmpeg的一个文档,内容为英文。可以用来参考:

ffmpeg Documentation
https://ffmpeg.org/ffmpeg.html#Video-and-Audio-file-format-conversion

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值