用 Python 开发一个【GIF表情包制作神器】

学习python的正确姿势

共 1433字,需浏览 3分钟

 ·

2021-01-09 16:51



之前小帅b写过这样一篇教程

用python成为了微信斗图届的高手

然后,好多人表示:







虽然存了很多表情包
但似乎还不是很过瘾
因为它不可以自己来定制

我们可不可以根据一些表情素材
然后自己制作专属表情包呢


像这样






本来小帅b想自己实现一个表情包制作器
后来发现已经有人在 GitHub 分享了






主要功能就是

可以在原有的素材里面

自定义自己的字幕

最后生成 GIF 表情







直接把项目源码地址扔给你还是差点意思

有句话怎么说来着
要知其所以然嘛

所以我还是先跟你说下
这是如何使用 Python 实现的吧

看懂之后你就可以完全根据自己
想要的方式去创建 GIF 表情包了






想要将字幕和视频合成
就需要用到 ffmpeg






你可以在这里找到相关文档
https://ffmpeg.org/


比如各种命令的参数使用






我们之前就使用 ffmpeg 
将音频和视频进行合成


用 Python 开发一个【视频营销号】生成器






而要将视频和字幕合成 GIF 
就可以通过这样的命令来合成






其中 -i 就是原始视频的路径



ass 传入的是自定义的字幕文件





最后输出为 haha.gif






这样我们就可以得到自己想要的 GIF 了






所以其实
我们只需要相应的原始视频文件
以及字幕文件模板就可以了


视频可以到网上找到下载
那么字幕模板如何生成呢


可以使用 aegisub 免费软件生成
字幕文件

地址在这
http://www.aegisub.org/

你可以在相应的位置
输入你想说的sao话




编辑完就可以导出字幕
得到相应的 ass 文件



那要替换成别的字幕
只需要改变上面的文字就可以了


可以定义一个模版文件
将字幕内容变成变量
用模板语言标记一下






这里用了列表 sentences 

这样就可以用来接收用户定义的字幕
将每一句话都放在合适的位置







现在你知道怎么生成字幕

也知道如何使用 ffmpeg 合成 GIF


那么想要在 Python 运行 ffmpeg 命令

就可以使用 subprocess




(顺便关注下呗⬆️)



然后像这样执行







这就是实现表情包制作的主要思啦









当然

我们可以直接就在 Python 中创建表情包


不过也可以完善一下

直接做出来给用户使用


这个项目的作者就使用 Flask 

简单写了个 web







让用户写入想要生成的表情包文字内容







获取用户的输入的内容使用 post 请求







后端的 POST 方法主要是去调用

我们刚刚说的方法


然后将得到的 GIF 路径提供给用户下载







是不是挺好玩的

源码地址在这


https://github.com/East196/sorrypy

(完事~)







哈哈谁 TM 买小米啊

哦不是

谁特么敢跟我们斗图啊







有机会的话

小帅b开发个微信表情包制作小程序

给你们玩玩


想要的点在看

多的话我就安排起来



ok

本篇主要给你介绍一下思路

希望对你有帮助


那么我们下回见

peace







使用 Python Kivy 开发 APP 之:创建一个小游戏玩玩

2020-12-21

用 Python 开发一个 【个人计划 todolist】

2020-06-24

用 Python 开发一个 【聊天室】

2020-06-17

使用 Python 开发一个【短链接生成器】

2020-05-19

用 Python 开发一个【视频营销号】生成器

2020-04-21






兄弟,你忍心不点个在看吗?
浏览 24
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报