【ffmpeg命令】制作一个属于你自己的动图表情包
@TOC
前言
在数字时代,动图表情包已经成为我们日常交流的重要组成部分。它们富有表现力,能够传达出我们无法用语言表述的情感和信息。然而,市面上的表情包并不能满足我们所有的需求。有时候,我们可能想要创建一些个性化的、独一无二的表情包。这就是我们今天要讨论的主题:如何使用FFmpeg命令制作属于你自己的动图表情包。
如何制作一个动态表情包
- 我们需要先下载你需要制作的视频
- 把它转换为低分辨率的视频,如:360P,以减少内存消耗
- 把它的帧率转换到更低,以减少内存消耗
- 截取视频中你需要的内容
- 把它转换为gif格式
制作动图表情包
下载我这里就不演示了
转换分辨率
转换分辨率可以使用简单滤波即可,我们使用scale=x:y
即可改变
如果要变成360P则是宽为360像素,则y写360,x填写-1
时,宽度会自动调整
ffmpeg -i test2.mp4 -vf "yadif,scale=-1:360" out.mp4
可以看到占用内存大幅减少:
减少帧率
我们可以把他减少到10~15FPS,这样就可以减少内存占用了
ffmpeg -i out.mp4 -r 10 out2.mp4
这样操作完就只有2MB了,但这还是太大了
截取主要内容
我们可以使用-ss
表示开始的时间,-t
表示介绍的时间,格式为:xx:xx:xx
然后因为我们还是转换为mp4,所以可以使用复制流
比如我截取前10s的内容:
ffmpeg -i out2.mp4 -ss 00:00:00 -t 00:00:10 -c copy out3.mp4
这下它的内存就非常小了:
转换为gif动图
非常简单,直接转换就行了:
ffmpeg -i out3.mp4 result.gif
最后我们的动图就出来了:
我们可以发现它变成大了
这是因为普通的视频格式它是会压缩的,但是gif没有压缩,就只是一堆图片而已,所以它会比普通的视频大(在所有情况相同下)
我们还可以再缩小它,缩小成360P的一半:
ffmpeg -i result.gif -vf "scale=320:180" result2.gif
可以看到它的大小再次缩减
去除水印
如果你要求更高,你还可以去除水印,使用的也是过滤:
使用delogo=x=...:y=xxx:w=...:h=...
进行去除水印
ffmpeg -i result2.gif -vf "delogo=x=10:y=10:w=100:h=20" result3.gif
最终结果
总结
通过本文,我们学习了如何使用FFmpeg命令制作动图表情包。这个过程虽然涉及到一些技术细节,但只要掌握了基本的命令和步骤,就可以轻松制作出属于自己的表情包。无论你是想要为你的社交媒体增添一些个性化的元素,还是想要在朋友间分享一些有趣的内容,自制的动图表情包都是一个不错的选择。希望你能在这个过程中找到乐趣,也期待看到你制作的精彩表情包!
- 点赞
- 收藏
- 关注作者
评论(0)