Google转换gif为webp的工具gif2webp
下载gif2webp工具包
进入相关工具包下载页面,找到对应的平台下载,mac平台libwebp-1.0.0-mac-10.13.tar.gz
libwebp-1.0.0-mac-10.13.tar.gz下载完成后解压,进入到libwebp-1.0.0-mac-10.13/bin目录下,这里面有gif2webp的命令行工具包。
gif2webp 文档
以下翻译自gif2webp文档
- 名称
gif2webp - 将GIF图像转换为WebP
- 概要
gif2webp [options] input_file.gif -o output_file.webp
- 描述
gif2webp将GIF图像转换为WebP图像。
-
选项
-
基本选项是:
-o string
指定输出WebP文件的名称。如果省略,gif2webp将执行转换但仅报告统计信息。使用“ - ”作为输出名称将输出定向到'stdout'。
-- string
明确指定输入文件。如果输入文件以“ - ”开头,则此选项很有用。此选项必须最后显示。之后的任何其他选项都将被忽略。如果输入文件是“ - ”,则将从“stdin”而不是文件中读取数据。
-h, -help
使用帮助
-verson
打印版本号(作为major.minor.revision)并退出。
-lossy
使用有损压缩对图像进行编码。
-mixed
混合压缩模式:通过启发式地为每个帧选择有损或无损压缩来优化图像压缩。
-q float
指定0到100之间RGB通道的压缩因子。默认值为75.在无损压缩(默认)的情况下,较小的因子可以实现更快的压缩速度,但会生成更大的文件。通过使用值100来实现最大压缩。在有损压缩的情况下(由-lossy选项指定),小因子会产生质量较低的较小文件。使用100的值可以获得最佳质量。
-min_size
尝试通过删除额外的关键帧尽可能地减小输出文件的大小(以在解码过程中可能使用更多资源为代价)。
-m int
指定要使用的压缩方法。此参数控制编码速度与压缩文件大小和质量之间的折衷。可能的值范围为0到6.默认值为4.使用更高的值时,编码器将花费更多时间检查其他编码可能性并确定质量增益。较低的值可以以更大的文件大小和更低的压缩质量为代价导致更快的处理时间。
-kmin int,-kmax int
指定输出动画中连续关键帧(可独立解码的帧)之间的最小和最大距离。该工具将根据需要将一些关键帧插入到输出动画中,以满足此条件。
kmax值为0将关闭关键帧的插入。 kmax值为1将导致所有帧都是关键帧。在这两种特殊情况下都不考虑kmin值。典型值在3到30的范围内。对于无损压缩,默认值是kmin = 9,kmax = 17,对于有损压缩,kmin = 3,kmax = 5。
这两个选项仅适用于具有大量帧(> 50)的动画图像。
使用较低的值时,更多帧将转换为关键帧。这可能导致平均解码帧所需的帧数较少,从而提高了解码性能。但这可能会导致文件大小略大。较高的值可能导致较差的解码性能,但文件较小。
一些限制:
kmin <kmax,
kmin> = kmax / 2 + 1;和
kmax - kmin <= 30。
如果不满足任何这些限制,将自动强制执行。
-metadata string
以逗号分隔的元数据列表,用于从输入复制到输出(如果存在)。有效值:all,none,icc,xmp。默认值为xmp。
-f int
仅适用于有损编码(由-lossy选项指定)。指定解块滤波器的强度,介于0(无滤波)和100(最大滤波)之间。值为0将关闭任何过滤。较高的值将增加解码图像后应用的滤波处理的强度。值越高,图片越平滑。典型值通常在20至50的范围内。
-mt
如果可能,使用多线程进行编码。
-loop_compatibility
如果启用,请以兼容的方式处理M62(含)和Firefox之前的Chrome版本的循环信息。
-v
打印额外信息。
-quiet
不要打印任何东西。
例子
gif2webp picture.gif -o picture.webp
gif2webp -q 70 picture.gif -o picture.webp
gif2webp -lossy -m 3 picture.gif -o picture_lossy.webp
gif2webp -lossy -f 50 picture.gif -o picture.webp
gif2webp -min_size -q 30 -o picture.webp - --- picture.gif
cat picture.gif | gif2webp -o - - - > output.webp