DWEBP(1) General Commands Manual DWEBP(1)

# [NAME](#NAME)

dwebp - decompress a WebP file to an image file

# [SYNOPSIS](#SYNOPSIS)

**dwebp** \[*options*] *input\_file.webp*

# [DESCRIPTION](#DESCRIPTION)

This manual page documents the **dwebp** command.

**dwebp** decompresses WebP files into PNG, PAM, PPM or PGM images. Note: Animated WebP files are not supported.

# [OPTIONS](#OPTIONS)

The basic options are:

[**-h**](#h)

Print usage summary.

[**-version**](#version)

Print the version number (as major.minor.revision) and exit.

[**-o string**](#o)

Specify the name of the output file (as PNG format by default). 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.

[**-bmp**](#bmp)

Change the output format to uncompressed BMP.

[**-tiff**](#tiff)

Change the output format to uncompressed TIFF.

[**-pam**](#pam)

Change the output format to PAM (retains alpha).

[**-ppm**](#ppm)

Change the output format to PPM (discards alpha).

[**-pgm**](#pgm)

Change the output format to PGM. The output consists of luma/chroma samples instead of RGB, using the IMC4 layout. This option is mainly for verification and debugging purposes.

[**-yuv**](#yuv)

Change the output format to raw YUV. The output consists of luma/chroma-U/chroma-V samples instead of RGB, saved sequentially as individual planes. This option is mainly for verification and debugging purposes.

[**-nofancy**](#nofancy)

Don't use the fancy upscaler for YUV420. This may lead to jaggy edges (especially the red ones), but should be faster.

[**-nofilter**](#nofilter)

Don't use the in-loop filtering process even if it is required by the bitstream. This may produce visible blocks on the non-compliant output, but it will make the decoding faster.

[**-dither strength**](#dither)

Specify a dithering **strength** between 0 and 100. Dithering is a post-processing effect applied to chroma components in lossy compression. It helps by smoothing gradients and avoiding banding artifacts.

[**-alpha\_dither**](#alpha_dither)

If the compressed file contains a transparency plane that was quantized during compression, this flag will allow dithering the reconstructed plane in order to generate smoother transparency gradients.

[**-nodither**](#nodither)

Disable all dithering (default).

[**-mt**](#mt)

Use multi-threading for decoding, if possible.

[**-crop x\_position y\_position width height**](#crop)

Crop the decoded picture to a rectangle with top-left corner at coordinates (**x\_position**, **y\_position**) and size **width** x **height**. This cropping area must be fully contained within the source rectangle. The top-left corner will be snapped to even coordinates if needed. This option is meant to reduce the memory needed for cropping large images. Note: the cropping is applied *before* any scaling.

[**-flip**](#flip)

Flip decoded image vertically (can be useful for OpenGL textures for instance).

[**-resize**, **-scale width height**](#resize)

Rescale the decoded picture to dimension **width** x **height**. This option is mostly intended to reducing the memory needed to decode large images, when only a small version is needed (thumbnail, preview, etc.). Note: scaling is applied *after* cropping. If either (but not both) of the **width** or **height** parameters is 0, the value will be calculated preserving the aspect-ratio.

[**-quiet**](#quiet)

Do not print anything.

[**-v**](#v)

Print extra information (decoding time in particular).

[**-noasm**](#noasm)

Disable all assembly optimizations.

# [EXIT STATUS](#EXIT_STATUS)

If there were no problems during execution, **dwebp** exits with the value of the C constant **EXIT\_SUCCESS**. This is usually zero.

If an error occurs, **dwebp** exits with the value of the C constant **EXIT\_FAILURE**. This is usually one.

# [EXAMPLES](#EXAMPLES)

dwebp picture.webp -o output.png  
dwebp picture.webp -ppm -o output.ppm  
dwebp -o output.ppm -- ---picture.webp  
cat picture.webp | dwebp -o - -- - &gt; output.ppm

# [AUTHORS](#AUTHORS)

**dwebp** 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 Pascal Massimino &lt;pascal.massimino@gmail.com&gt;, for the Debian project (and may be used by others).

# [REPORTING BUGS](#REPORTING_BUGS)

Please report all bugs to the issue tracker: https://issues.webmproject.org  
Patches welcome! See this page to get started: https://www.webmproject.org/code/contribute/submitting-patches/

# [SEE ALSO](#SEE_ALSO)

[**cwebp**(1)](/man/os/libwebp/cwebp.1), [**gif2webp**(1)](/man/os/libwebp/gif2webp.1), [**webpmux**(1)](/man/os/libwebp/webpmux.1)  
Please refer to https://developers.google.com/speed/webp/ for additional information.

## [Output file format details](#Output_file_format_details)

PAM: http://netpbm.sourceforge.net/doc/pam.html  
PGM: http://netpbm.sourceforge.net/doc/pgm.html  
PPM: http://netpbm.sourceforge.net/doc/ppm.html  
PNG: http://www.libpng.org/pub/png/png-sitemap.html#info

July 18, 2024

---

Document: dwebp(1) from libwebp 1.6.0-r7 (Chainguard OS)
Source: https://github.com/webmproject/libwebp
