今天分享一个我制作表情包的技巧。现在视频编辑的门槛已经非常低了,只要装个剪映稍微学一下,很容易就能把你想要的内容剪出来,真的是有手就行。但是视频剪出来的视频是无法直接用做表情包的,只有gif格式的动图才是真正可以用的表情包。另外一点,在微信、企微等通讯软件中,gif动图的大小也是有严格限制的,比如微信和企微里最大是5MB,超过这个大小就会被当成文件传输,且无法被别人收藏转发,也就失去了表情包的意义。我这里分享一些用ffmpeg来生成gif动图的命令行示例,助力大家生产出更多有趣的表情包。

  首先就是将一个视频直接转成gif动图,基本命令格式如下:

ffmpeg -i 你的视频文件.mp4 生成的文件名.gif

例如:

ffmpeg -i vid20221028.mp4 out.fig

  是不是相当简单。那么,如果说原始视频太长,你只想截取其中的一段视频生成gif,你可以增加-ss和-t两个参数,-ss代表的是start time,也就是开始时间,你可以指定开始的具体秒数,也可以用时:分:秒.毫秒的格式,比如00:12:14.500。-t是要截取的时长,单位是秒。假设我们想从input.mp4里的第73.5秒开始,截取12秒的视频内容生成动图,命令行你可以写成如下的方式:

ffmpeg -i input.mp4 -ss 73.5 -t 12 out.gif
ffmpeg -i input.mp4 -ss 00:01:13.500 -t 12 out.gif

  但是,当gif生成后,你会发现gif的大小非常大,这是因为你没有指定目标帧率和分辨率,ffmpeg会延用原始视频的相关参数,这时候可以考虑以下几种方式来降低生成gif动态的大小。

降低动图的帧率

  用-r参数来降低征率,比如原始的input.mp4是30帧的,可以用-r 15来降低成15帧。具体效果也是很明显的,生成的文件大小从原来的86MB下降到56MB,具体命令行如下:

ffmpeg -i input.mp4 -ss 00:01:13.500 -t 12 -r 15 out1.gif

  关于ffmpeg的-r参数,有个很小坑,-r参数一定要放到-i参数后面,它在前在后的作用是不一样的。

调整画面分辨率

  比如原始视频是1080p的,我们可以将其减低到480p,从而显著降低最终的gif文件大小,这里可以使用-s参数,后面跟具体的分辨率大小比如480x272 具体命令如下:

ffmpeg -i input.mp4 -ss 00:01:13.500 -t 12 -s 480x272 out2.gif

  有些时候,我们不知道原始的视频分辨率,如果贸然指定目标分辨率的话,可能会导致画面被拉伸,观感下降,这时候可以使用一个更高级的参数-vf,-vf其实就比较复杂了,这里我们只看如何用-vf参数实现宽高等比例缩放吧,具体命令如下:

#scale后面可以指定具体的分辨率宽:高,作用同-s,也可以只指定宽或者高,
#另一者用-d代替,ffmpeg就会自动缩放,保持原比例
ffmpeg -i input.mp4 -ss 00:01:13.500 -t 12 -vf "scale=480:-1" out3.gif

  从原来的1080p降低到了480p后,文件大小变化更加明显,从原来的86MB降低到了6MB。看来还是将分辨率的效果比较明显,但是6MB作为表情包还是太大了,这时候我们可以将上面两种方式结合到一起,降分辨率的同时降帧率,命令行如下:

ffmpeg -i input.mp4 -ss 00:01:13.500 -t 12 -vf "scale=480:-1" -r 15 out4.gif

   最后生成的文件只有4MB了。这里我再分享一个我做表情包的小技巧,就是提前用剪映剪好你想要的片段,也可以用剪映直接做好画面,导出时选择低分辨率和低码率,这样用最开始的命令直接生成的gif大小也是会在5MB内的,就省了调整各参数的时间了。

用ffmpeg将视频转成gif动图相关推荐

  1. html视频怎么转换成图片,如何将小视频转换成GIF动图或将GIF动图转换成视频

    现在GIF动图是越来越流行了.在过去,它是我们在Web上唯一能展示动画图片的技术.这种技术非常的有用,因为,相对于Real Video Player, Windows Media等技术,都需要特殊的浏 ...

  2. 视频转换成gif动图如何操作?教你三步完成视频转gif

    现在网络上流行的gif动图最常见的就是从用电影.电视剧等短视频中截取出来的画面做成gif动画.大家看到这些gif动图一定觉得使用视频转gif(https://www.gif.cn/)制作非常的复杂麻烦 ...

  3. 教你怎么把视频转换成gif动图

    教你怎么把视频转换成gif动图!作为一名互联网行业的运营人员,平时少不了使用gif动图,因为gif动图具有更强的穿透性,能够让用户从图片中接受到更多的信息,并且在脑袋里产生更深的影响力,例如产品介绍的 ...

  4. 如何把视频转换成gif动图

    如何把视频转换成gif动图?在平时的生活或者工作中,我们会接触到很多形形色色的视频,尤其是在短视频非常流行的当下,大家可能会看到很有趣或者对你非常重要的视频,有的小伙伴会将这些视频下载保存下来,还有些 ...

  5. mp4转gif在线转换,视频转换成gif动图怎么做?

    转换视频成gif图像是一种既有趣又实用的技巧.如今许多人喜欢在社交媒体上分享gif图像,因为它们可以很好地表达情感或者概念. 如果你有一个视频,想要将其转换成gif图像,那么使用软件来完成这个任务是非 ...

  6. 视频转换成gif动图的方法步骤

    视频转换成gif动图的方法!不知道大家平时在工作中会不会使用到gif图片,反正小编经常使用到,因为gif动图具有更强的视觉效果,能够传递出更多有价值的信息,所以我经常将软件使用教程做成gif动图格式, ...

  7. 怎么把视频转换成gif动图,教你一个简单的方法

    视频转换成gif动图,GIF的全称是Graphics Interchange Format,它是一种公用的图像文件格式标准.用这种方法可以制作表情包,把喜欢的视频制作成gif图片,gif图片抓住了每段 ...

  8. 怎么把视频转换成gif动图,5个超强工具分享

    在我们平时的聊天中,会经常遇到需要将视频转换成gif动图的情况.这样一来,我们可以轻松将视频中的经典片段转换成gif动图,方便分享和娱乐.同时,这种方式不仅能够传播视频内容,还能带来很多趣味. 然而, ...

  9. 把视频转换成gif动图的最简单方法

    今天要为大家分享把视频转换成gif动图的最简单方法.gif动图是我们网络聊天中常用的一种表情分享方式,是一种可以按照一定规律播放的动态图,往往由图片或者视频转换而来,经过图片或视频转换过来的gif动图 ...

最新文章

  1. 【原创】linux命令bc使用详解
  2. C++中#error/assert/static_assert的区别及使用
  3. 请与计算机管理员联系,电脑的限制被取消,请与管理员联系 解决方案
  4. 基于三维向量对的乱序堆叠物体的位姿识别
  5. css sprite技巧详解
  6. GIS 缓冲区应用及算法实现
  7. 和ISP合作需要了解什么?—Vecloud微云
  8. mysql 链接慢_mysql连接非常慢的觖决办法及其它常见问题解决办法
  9. 北漂的程序员们,这寒冬你是否“有枝可依”?
  10. 2020计算机二级取消vb,2020年计算机二级VB模拟试题及答案
  11. 关于一些Silverlight中常用的尺寸,慢慢记录
  12. 空间中常见曲面图形的绘制(matlab)
  13. 八个步骤实现一个Web项目(在线聊天室)
  14. xp服务器文件写保护怎么删除,winxp系统复制文件提示“请去掉写保护或使用另一张磁盘”的解决...
  15. Ninja构建系统入门--GN与Ninja构建过程
  16. 数字化技术成为门店的重要推手?
  17. 开发android怎么开发ios app,怎么开发ios android 都能使用的app
  18. 拼多多数据分析面试题大合集(20个)
  19. SQL Server修改表结构,添加约束
  20. vi /etc/sysconfig/network

热门文章

  1. 国外免费公共DNS解析服务器
  2. Pytorch 的repeat函数
  3. SpringBoot2.0学习笔记 使用Actualor监控项目运行状态
  4. 入职转正后被领导谈话
  5. 第二讲 单片机C语言之12864液晶显示
  6. 《敏捷开发一千另一夜》 读后感1
  7. 二维码如何转为链接,看了这篇文章才知道多好用!
  8. Python关于生日悖论分析
  9. window下怎么启动redis服务
  10. 百度谷歌搜索引擎常用搜索技巧