gif 转 webm 方法

众所周知,gif是一种文件体积巨大的动态图格式,最多支持256色,十分的落后,而webm就是取代gif的另一种新的动态图格式,现在各大网站也逐步采用这格式了,毕竟色彩多,空间小,又免费。

好了,开始吧
一、添加ffmpeg
我们需要ffmpeg软件来转码,下载地址https://www.gyan.dev/ffmpeg/builds/

下载完成后,在软件目录新建文件夹,然后解压放进去

打开到bin目录,然后复制地址

接着win+r,输入sysdm.cpl,回车

高级>环境变量>path>新建,粘贴刚才的地址,确定。

Win+r,cmd,回车,
输入ffmpeg,回车,如果报错,说明前面的操作出错了。


二、转制
打开到文件目录,按住shift,右键,从此处打开powershell

输入ffmpeg -i a.gif -q 75 a.webm,回车,然后等就完事了。
这里选择文件时,可以按tab切换
-q是质量控制,越大画面质量越好,q75是画面既好又不会太大体积的值,建议q75

webm是封装格式,封装的编码不一定是vp9的,甚至可以封装AV1编码(只是我在AV1编码用webm封装,效果不是很理想,在文章底部作补充)

三、批量转制
Get-ChildItem *.gif|ForEach-Object{ ffmpeg -hide_banner -i $_.FullName -q 75 $_.name.replace($_.extension, ".webm")}


四、使用AV1编码【其实意义不大】
ffmpeg -i a.gif -c libsvtAV1 -crf 38 -preset 10 AV1.webm
ffmpeg -i a.gif -c libsvtAV1 -qp 38 -preset 10 AV1.webm
-c指编码器,svtAV1是目前AV1性能最好的开源编码器,
-qp质量控制,越高画面越差体积越小,
-crf质量控制,越高画面越差体积越小,视觉上比qp好,理论清晰上比qp差
-preset努力程度,越高速度越快画面越差,

测下来就会发现,转动态图时,AV1在画面和体积上并不如vp9,至少我测下来感觉是这样的。
虽然动态图不符合预期,但AV1拿来做视频是完爆vp9的.
体积对比


批量?
不了,这个不建议批量,vp9成熟些。
这里加AV1进去,只是说明,能这么做,而不是推荐

播放动态图使用的是vlc等视频播放器,而如果用图片软件来看可能会掉帧
v1.0.0 2022.6.12
v1.0.1 2023.10.9

私货:其实这篇专栏,完全没有写的必要,毕竟没人会上传webm,要传也是传gif。
gif耗死了一堆后来者,b站搜索webm,也只会搜索到怎么转回gif,即使webm是免费的,还是没人用。。。
私货2:播放时记得降低音量,webm可以当作视频的
私货3:如果要投币,建议别投;如果要点赞,建议别点;
转发、收藏,才可能赚到钱。
私货4:然而,目前我的激励计划只在视频区,专栏还没到额度,开不了文章激励,
所以就算转发、收藏了,我也赚不到钱(╯‵□′)╯︵┻━┻。
私货5:建议白嫖,白嫖不会亏,亏的只有叔叔。