「Python|音视频处理|场景案例」如何将视频转换成gif动图

本文主要介绍如何使用python常用的音视频处理第三方库moviepy将视频转换成gif动图。

场景说明

我们可能会有一些情况,希望将视频变成动图来保存和使用,比如看到一个很欢乐的影视片段或者自己的拍摄的生活片段适合拿来做动图表情包,那么就出现把视频变成动图的需求了。

解决方案

python中依旧可以使用moviepy这个库来快速简单地完这个任务。关于这个库的环境安装使用以及其他应用场景,我们在其他博文中也已经介绍过了(可以直接在我的博客目录中搜索"音视频处理"关键词查找)。令人惊喜的是,moviepy直接内置了将视频保存成gif动图的APIwrite_gif,所以我们只要调用这个API即可。

write_gif()moviepy中视频片段对象下的一个方法,所以我们需要先把视频文件读入变成moviepy的视频对象,用的就是我们之前多次用到的VideoClip(),然后就可以调用write_gif()把读入的视频保存成动图输出了。

所以整个过程步骤可以描述如下:

  • 导入moviepyfrom moviepy.editor import *
  • 读入视频:video = VideoFileClip("D:/视频文件名.mp4")
  • 将视频导出为动图:video.write_gif("D:/动图.gif")

另外,需要注意的是,有可能转换出来的gif动图大小会很大,如果我们希望输出的图片大小小一些,可以尝试传入"ffmpeg"write_gif()program参数,如下:
video.write_gif("D:/动图.gif", program='ffmpeg')

除此之外,还可以事先缩小视频的尺寸来缩小视频本身的大小,这样可以缩小图片每一帧的大小,达到减小输出动图文件大小的目的,如下:
video = video.resize(0.2)

这样一来,转换视频成动图的目的就达成了,够不够简单快速?!

源代码

from moviepy.editor import *

video = VideoFileClip("D:/视频文件名.mp4")
video = video.resize(0.2)
video.write_gif("D:/动图.gif", program='ffmpeg')

写文不易,如果对你有帮助的话,来一波点赞、收藏、关注吧~👇

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

明仔的阳光午后

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值