gif2webp - Convert a GIF image to WebP
gif2webp [options] input_file.gif -o
output_file.webp
This manual page documents the gif2webp command.
gif2webp converts a GIF image to a WebP image.
The basic options are:
- -o string
- Specify the name of the output WebP file. If omitted, gif2webp will
perform conversion but only report statistics. Using "-" as
output name will direct output to 'stdout'.
- -- string
- Explicitly specify the input file. This option is useful if the input file
starts with an '-' for instance. This option must appear last. Any
other options afterward will be ignored. If the input file is
"-", the data will be read from stdin instead of a
file.
- -h, -help
- Usage information.
- -version
- Print the version number (as major.minor.revision) and exit.
- -lossy
- Encode the image using lossy compression.
- -mixed
- Mixed compression mode: optimize compression of the image by picking
either lossy or lossless compression for each frame heuristically.
- -q float
- Specify the compression factor for RGB channels between 0 and 100. The
default is 75.
In case of lossless compression (default), a small factor enables faster
compression speed, but produces a larger file. Maximum compression is
achieved by using a value of 100.
In case of lossy compression (specified by the -lossy option), a small
factor produces a smaller file with lower quality. Best quality is
achieved by using a value of 100.
- -m int
- Specify the compression method to use. This parameter controls the trade
off between encoding speed and the compressed file size and quality.
Possible values range from 0 to 6. Default value is 4. When higher values
are used, the encoder will spend more time inspecting additional encoding
possibilities and decide on the quality gain. Lower value can result is
faster processing time at the expense of larger file size and lower
compression quality.
- -min_size
- Encode image to achieve smallest size. This disables key frame insertion
and picks the dispose method resulting in the smallest output for each
frame. It uses lossless compression by default, but can be combined with
-q, -m, -lossy or -mixed options.
- -kmin
int
- -kmax
int
- Specify the minimum and maximum distance between consecutive key frames
(independently decodable frames) in the output animation. The tool will
insert some key frames into the output animation as needed so that this
criteria is satisfied.
A 'kmax' value of 0 will turn off insertion of key frames. A 'kmax' value of
1 will result in all frames being key frames. 'kmin' value is not taken
into account in both these special cases. Typical values are in the range
3 to 30. Default values are kmin = 9, kmax = 17 for lossless compression
and kmin = 3, kmax = 5 for lossy compression.
These two options are relevant only for animated images with large number of
frames (>50).
When lower values are used, more frames will be converted to key frames.
This may lead to smaller number of frames required to decode a frame on
average, thereby improving the decoding performance. But this may lead to
slightly bigger file sizes. Higher values may lead to worse decoding
performance, but smaller file sizes.
Some restrictions:
(i) kmin < kmax,
(ii) kmin >= kmax / 2 + 1 and
(iii) kmax - kmin <= 30.
If any of these restrictions are not met, they will be enforced
automatically.
- -metadata
string
- A comma separated list of metadata to copy from the input to the output if
present. Valid values: all, none, icc, xmp.
The default is xmp.
- -f int
- For lossy encoding only (specified by the -lossy option). Specify the
strength of the deblocking filter, between 0 (no filtering) and 100
(maximum filtering). A value of 0 will turn off any filtering. Higher
value will increase the strength of the filtering process applied after
decoding the picture. The higher the value the smoother the picture will
appear. Typical values are usually in the range of 20 to 50.
- -mt
- Use multi-threading for encoding, if possible.
- -loop_compatibility
- If enabled, handle the loop information in a compatible fashion for Chrome
version prior to M62 (inclusive) and Firefox.
- -v
- Print extra information.
- -quiet
- Do not print anything.
Please report all bugs to the issue tracker:
https://bugs.chromium.org/p/webp
Patches welcome! See this page to get started:
https://www.webmproject.org/code/contribute/submitting-patches/
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 -q 70 -o picture.webp -- ---picture.gif
cat picture.gif | gif2webp -o - -- - > output.webp
gif2webp is a part of libwebp and was written by the WebP
team.
The latest source tree is available at
https://chromium.googlesource.com/webm/libwebp
This manual page was written by Urvang Joshi
<urvang@google.com>, for the Debian project (and may be used by
others).