Apply CVE-2023-4863 patch
[platform/upstream/libwebp.git] / man / dwebp.1
1 .\"                                      Hey, EMACS: -*- nroff -*-
2 .TH DWEBP 1 "November 19, 2020"
3 .SH NAME
4 dwebp \- decompress a WebP file to an image file
5 .SH SYNOPSIS
6 .B dwebp
7 .RI [ options ] " input_file.webp
8 .br
9 .SH DESCRIPTION
10 This manual page documents the
11 .B dwebp
12 command.
13 .PP
14 \fBdwebp\fP decompresses WebP files into PNG, PAM, PPM or PGM images.
15 Note: Animated WebP files are not supported.
16 .SH OPTIONS
17 The basic options are:
18 .TP
19 .B \-h
20 Print usage summary.
21 .TP
22 .B \-version
23 Print the version number (as major.minor.revision) and exit.
24 .TP
25 .BI \-o " string
26 Specify the name of the output file (as PNG format by default).
27 Using "-" as output name will direct output to 'stdout'.
28 .TP
29 .BI \-\- " string
30 Explicitly specify the input file. This option is useful if the input
31 file starts with an '\-' for instance. This option must appear \fBlast\fP.
32 Any other options afterward will be ignored. If the input file is "\-",
33 the data will be read from \fIstdin\fP instead of a file.
34 .TP
35 .B \-bmp
36 Change the output format to uncompressed BMP.
37 .TP
38 .B \-tiff
39 Change the output format to uncompressed TIFF.
40 .TP
41 .B \-pam
42 Change the output format to PAM (retains alpha).
43 .TP
44 .B \-ppm
45 Change the output format to PPM (discards alpha).
46 .TP
47 .B \-pgm
48 Change the output format to PGM. The output consists of luma/chroma
49 samples instead of RGB, using the IMC4 layout. This option is mainly
50 for verification and debugging purposes.
51 .TP
52 .B \-yuv
53 Change the output format to raw YUV. The output consists of
54 luma/chroma-U/chroma-V samples instead of RGB, saved sequentially as
55 individual planes. This option is mainly for verification and debugging
56 purposes.
57 .TP
58 .B \-nofancy
59 Don't use the fancy upscaler for YUV420. This may lead to jaggy
60 edges (especially the red ones), but should be faster.
61 .TP
62 .B \-nofilter
63 Don't use the in-loop filtering process even if it is required by
64 the bitstream. This may produce visible blocks on the non-compliant output,
65 but it will make the decoding faster.
66 .TP
67 .BI \-dither " strength
68 Specify a dithering \fBstrength\fP between 0 and 100. Dithering is a
69 post-processing effect applied to chroma components in lossy compression.
70 It helps by smoothing gradients and avoiding banding artifacts.
71 .TP
72 .BI \-alpha_dither
73 If the compressed file contains a transparency plane that was quantized
74 during compression, this flag will allow dithering the reconstructed plane
75 in order to generate smoother transparency gradients.
76 .TP
77 .B \-nodither
78 Disable all dithering (default).
79 .TP
80 .B \-mt
81 Use multi-threading for decoding, if possible.
82 .TP
83 .BI \-crop " x_position y_position width height
84 Crop the decoded picture to a rectangle with top-left corner at coordinates
85 (\fBx_position\fP, \fBy_position\fP) and size \fBwidth\fP x \fBheight\fP.
86 This cropping area must be fully contained within the source rectangle.
87 The top-left corner will be snapped to even coordinates if needed.
88 This option is meant to reduce the memory needed for cropping large images.
89 Note: the cropping is applied \fIbefore\fP any scaling.
90 .TP
91 .B \-flip
92 Flip decoded image vertically (can be useful for OpenGL textures for instance).
93 .TP
94 \fB\-resize\fR, \fB\-scale\fI width height\fR
95 Rescale the decoded picture to dimension \fBwidth\fP x \fBheight\fP. This
96 option is mostly intended to reducing the memory needed to decode large images,
97 when only a small version is needed (thumbnail, preview, etc.). Note: scaling
98 is applied \fIafter\fP cropping.
99 If either (but not both) of the \fBwidth\fP or \fBheight\fP parameters is 0,
100 the value will be calculated preserving the aspect-ratio.
101 .TP
102 .B \-quiet
103 Do not print anything.
104 .TP
105 .B \-v
106 Print extra information (decoding time in particular).
107 .TP
108 .B \-noasm
109 Disable all assembly optimizations.
110
111 .SH BUGS
112 Please report all bugs to the issue tracker:
113 https://bugs.chromium.org/p/webp
114 .br
115 Patches welcome! See this page to get started:
116 http://www.webmproject.org/code/contribute/submitting-patches/
117
118 .SH EXAMPLES
119 dwebp picture.webp \-o output.png
120 .br
121 dwebp picture.webp \-ppm \-o output.ppm
122 .br
123 dwebp \-o output.ppm \-\- \-\-\-picture.webp
124 .br
125 cat picture.webp | dwebp \-o \- \-\- \- > output.ppm
126
127 .SH AUTHORS
128 \fBdwebp\fP is a part of libwebp and was written by the WebP team.
129 .br
130 The latest source tree is available at
131 https://chromium.googlesource.com/webm/libwebp
132 .PP
133 This manual page was written by Pascal Massimino <pascal.massimino@gmail.com>,
134 for the Debian project (and may be used by others).
135
136 .SH SEE ALSO
137 .BR cwebp (1),
138 .BR gif2webp (1),
139 .BR webpmux (1)
140 .br
141 Please refer to http://developers.google.com/speed/webp/ for additional
142 information.
143 .SS Output file format details
144 PAM: http://netpbm.sourceforge.net/doc/pam.html
145 .br
146 PGM: http://netpbm.sourceforge.net/doc/pgm.html
147 .br
148 PPM: http://netpbm.sourceforge.net/doc/ppm.html
149 .br
150 PNG: http://www.libpng.org/pub/png/png-sitemap.html#info