使用FFMPEG把GIF动图转换为MP4

最近工作的单位的系统里出现个问题,按业务要求,生产人员需要把制作的货件的效果图做一个前后对比,发给客户确认

但是这个做效果对比的软件,导出的是一张巨大的GIF图片,发送到订单中,在客户的手机上打开时,也许是我们的APP不太兼容,导出有问题

我跟那生产人员说让那软件导出MP4再发,结果那个软件是没有导出MP4功能的,然后他自行地找了个录屏软件,在他电脑上把GIF图片打开,用录屏软件录下来再发

到这一步,其实我并不知道他是怎么实现的,我以为是软件导出的MP4直接发送,实际效果发现,这个MP4发出去后,浏览器上打不开,APP中也打不开,但是下载到电脑上,又是可以打开了

我查看了下文件的视频编码,发现是 mpeg4 ,而不是常见的 h.264 ,大概就是知道怎么回事了,兼容性问题,等我去找到他想看看导出软件的设置的时候,才发现,他是用录屏的方式。。

这确实是有点吐血,单量大的话,这样的效率是不行的,所以我跟他说 ,还是用导出GIF的方式,但是我会给他找一个快速的转换软件,所以就有了本文章说的事情


总体其实很简单,就是用FFMPEG把GIF转为MP4即可,命令行的使用方法如下:

ffmpeg -i 1.gif -movflags faststart -pix_fmt yuv420p -vf "scale=trunc(iw/2)*2:trunc(ih/2)*2" -filter:v "setpts=1.5*PTS" 1.mp4

把上面这行写到bat批处理文件里,比如保存为:转换.bat,再把 FFMPEG.EXE 和bat文件放在一起,导出的时候把东西导出为 1.gif ,放在程序文件夹里,双击 转换.bat,等待几秒钟,完事

然后就在 1.gif 旁边得到了一个 1.mp4 ,速度又快又方便,这个同事也解放了不少麻烦事


发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

桂ICP备19000498号-3