diff options
Diffstat (limited to '')
-rw-r--r-- | libraries/irrlicht-1.8/source/Irrlicht/jpeglib/jpegtran.1 | 570 |
1 files changed, 285 insertions, 285 deletions
diff --git a/libraries/irrlicht-1.8/source/Irrlicht/jpeglib/jpegtran.1 b/libraries/irrlicht-1.8/source/Irrlicht/jpeglib/jpegtran.1 index c377053..0ad1bbc 100644 --- a/libraries/irrlicht-1.8/source/Irrlicht/jpeglib/jpegtran.1 +++ b/libraries/irrlicht-1.8/source/Irrlicht/jpeglib/jpegtran.1 | |||
@@ -1,285 +1,285 @@ | |||
1 | .TH JPEGTRAN 1 "28 December 2009" | 1 | .TH JPEGTRAN 1 "28 December 2009" |
2 | .SH NAME | 2 | .SH NAME |
3 | jpegtran \- lossless transformation of JPEG files | 3 | jpegtran \- lossless transformation of JPEG files |
4 | .SH SYNOPSIS | 4 | .SH SYNOPSIS |
5 | .B jpegtran | 5 | .B jpegtran |
6 | [ | 6 | [ |
7 | .I options | 7 | .I options |
8 | ] | 8 | ] |
9 | [ | 9 | [ |
10 | .I filename | 10 | .I filename |
11 | ] | 11 | ] |
12 | .LP | 12 | .LP |
13 | .SH DESCRIPTION | 13 | .SH DESCRIPTION |
14 | .LP | 14 | .LP |
15 | .B jpegtran | 15 | .B jpegtran |
16 | performs various useful transformations of JPEG files. | 16 | performs various useful transformations of JPEG files. |
17 | It can translate the coded representation from one variant of JPEG to another, | 17 | It can translate the coded representation from one variant of JPEG to another, |
18 | for example from baseline JPEG to progressive JPEG or vice versa. It can also | 18 | for example from baseline JPEG to progressive JPEG or vice versa. It can also |
19 | perform some rearrangements of the image data, for example turning an image | 19 | perform some rearrangements of the image data, for example turning an image |
20 | from landscape to portrait format by rotation. | 20 | from landscape to portrait format by rotation. |
21 | .PP | 21 | .PP |
22 | .B jpegtran | 22 | .B jpegtran |
23 | works by rearranging the compressed data (DCT coefficients), without | 23 | works by rearranging the compressed data (DCT coefficients), without |
24 | ever fully decoding the image. Therefore, its transformations are lossless: | 24 | ever fully decoding the image. Therefore, its transformations are lossless: |
25 | there is no image degradation at all, which would not be true if you used | 25 | there is no image degradation at all, which would not be true if you used |
26 | .B djpeg | 26 | .B djpeg |
27 | followed by | 27 | followed by |
28 | .B cjpeg | 28 | .B cjpeg |
29 | to accomplish the same conversion. But by the same token, | 29 | to accomplish the same conversion. But by the same token, |
30 | .B jpegtran | 30 | .B jpegtran |
31 | cannot perform lossy operations such as changing the image quality. | 31 | cannot perform lossy operations such as changing the image quality. |
32 | .PP | 32 | .PP |
33 | .B jpegtran | 33 | .B jpegtran |
34 | reads the named JPEG/JFIF file, or the standard input if no file is | 34 | reads the named JPEG/JFIF file, or the standard input if no file is |
35 | named, and produces a JPEG/JFIF file on the standard output. | 35 | named, and produces a JPEG/JFIF file on the standard output. |
36 | .SH OPTIONS | 36 | .SH OPTIONS |
37 | All switch names may be abbreviated; for example, | 37 | All switch names may be abbreviated; for example, |
38 | .B \-optimize | 38 | .B \-optimize |
39 | may be written | 39 | may be written |
40 | .B \-opt | 40 | .B \-opt |
41 | or | 41 | or |
42 | .BR \-o . | 42 | .BR \-o . |
43 | Upper and lower case are equivalent. | 43 | Upper and lower case are equivalent. |
44 | British spellings are also accepted (e.g., | 44 | British spellings are also accepted (e.g., |
45 | .BR \-optimise ), | 45 | .BR \-optimise ), |
46 | though for brevity these are not mentioned below. | 46 | though for brevity these are not mentioned below. |
47 | .PP | 47 | .PP |
48 | To specify the coded JPEG representation used in the output file, | 48 | To specify the coded JPEG representation used in the output file, |
49 | .B jpegtran | 49 | .B jpegtran |
50 | accepts a subset of the switches recognized by | 50 | accepts a subset of the switches recognized by |
51 | .BR cjpeg : | 51 | .BR cjpeg : |
52 | .TP | 52 | .TP |
53 | .B \-optimize | 53 | .B \-optimize |
54 | Perform optimization of entropy encoding parameters. | 54 | Perform optimization of entropy encoding parameters. |
55 | .TP | 55 | .TP |
56 | .B \-progressive | 56 | .B \-progressive |
57 | Create progressive JPEG file. | 57 | Create progressive JPEG file. |
58 | .TP | 58 | .TP |
59 | .BI \-restart " N" | 59 | .BI \-restart " N" |
60 | Emit a JPEG restart marker every N MCU rows, or every N MCU blocks if "B" is | 60 | Emit a JPEG restart marker every N MCU rows, or every N MCU blocks if "B" is |
61 | attached to the number. | 61 | attached to the number. |
62 | .TP | 62 | .TP |
63 | .B \-arithmetic | 63 | .B \-arithmetic |
64 | Use arithmetic coding. | 64 | Use arithmetic coding. |
65 | .TP | 65 | .TP |
66 | .BI \-scans " file" | 66 | .BI \-scans " file" |
67 | Use the scan script given in the specified text file. | 67 | Use the scan script given in the specified text file. |
68 | .PP | 68 | .PP |
69 | See | 69 | See |
70 | .BR cjpeg (1) | 70 | .BR cjpeg (1) |
71 | for more details about these switches. | 71 | for more details about these switches. |
72 | If you specify none of these switches, you get a plain baseline-JPEG output | 72 | If you specify none of these switches, you get a plain baseline-JPEG output |
73 | file. The quality setting and so forth are determined by the input file. | 73 | file. The quality setting and so forth are determined by the input file. |
74 | .PP | 74 | .PP |
75 | The image can be losslessly transformed by giving one of these switches: | 75 | The image can be losslessly transformed by giving one of these switches: |
76 | .TP | 76 | .TP |
77 | .B \-flip horizontal | 77 | .B \-flip horizontal |
78 | Mirror image horizontally (left-right). | 78 | Mirror image horizontally (left-right). |
79 | .TP | 79 | .TP |
80 | .B \-flip vertical | 80 | .B \-flip vertical |
81 | Mirror image vertically (top-bottom). | 81 | Mirror image vertically (top-bottom). |
82 | .TP | 82 | .TP |
83 | .B \-rotate 90 | 83 | .B \-rotate 90 |
84 | Rotate image 90 degrees clockwise. | 84 | Rotate image 90 degrees clockwise. |
85 | .TP | 85 | .TP |
86 | .B \-rotate 180 | 86 | .B \-rotate 180 |
87 | Rotate image 180 degrees. | 87 | Rotate image 180 degrees. |
88 | .TP | 88 | .TP |
89 | .B \-rotate 270 | 89 | .B \-rotate 270 |
90 | Rotate image 270 degrees clockwise (or 90 ccw). | 90 | Rotate image 270 degrees clockwise (or 90 ccw). |
91 | .TP | 91 | .TP |
92 | .B \-transpose | 92 | .B \-transpose |
93 | Transpose image (across UL-to-LR axis). | 93 | Transpose image (across UL-to-LR axis). |
94 | .TP | 94 | .TP |
95 | .B \-transverse | 95 | .B \-transverse |
96 | Transverse transpose (across UR-to-LL axis). | 96 | Transverse transpose (across UR-to-LL axis). |
97 | .IP | 97 | .IP |
98 | The transpose transformation has no restrictions regarding image dimensions. | 98 | The transpose transformation has no restrictions regarding image dimensions. |
99 | The other transformations operate rather oddly if the image dimensions are not | 99 | The other transformations operate rather oddly if the image dimensions are not |
100 | a multiple of the iMCU size (usually 8 or 16 pixels), because they can only | 100 | a multiple of the iMCU size (usually 8 or 16 pixels), because they can only |
101 | transform complete blocks of DCT coefficient data in the desired way. | 101 | transform complete blocks of DCT coefficient data in the desired way. |
102 | .IP | 102 | .IP |
103 | .BR jpegtran 's | 103 | .BR jpegtran 's |
104 | default behavior when transforming an odd-size image is designed | 104 | default behavior when transforming an odd-size image is designed |
105 | to preserve exact reversibility and mathematical consistency of the | 105 | to preserve exact reversibility and mathematical consistency of the |
106 | transformation set. As stated, transpose is able to flip the entire image | 106 | transformation set. As stated, transpose is able to flip the entire image |
107 | area. Horizontal mirroring leaves any partial iMCU column at the right edge | 107 | area. Horizontal mirroring leaves any partial iMCU column at the right edge |
108 | untouched, but is able to flip all rows of the image. Similarly, vertical | 108 | untouched, but is able to flip all rows of the image. Similarly, vertical |
109 | mirroring leaves any partial iMCU row at the bottom edge untouched, but is | 109 | mirroring leaves any partial iMCU row at the bottom edge untouched, but is |
110 | able to flip all columns. The other transforms can be built up as sequences | 110 | able to flip all columns. The other transforms can be built up as sequences |
111 | of transpose and flip operations; for consistency, their actions on edge | 111 | of transpose and flip operations; for consistency, their actions on edge |
112 | pixels are defined to be the same as the end result of the corresponding | 112 | pixels are defined to be the same as the end result of the corresponding |
113 | transpose-and-flip sequence. | 113 | transpose-and-flip sequence. |
114 | .IP | 114 | .IP |
115 | For practical use, you may prefer to discard any untransformable edge pixels | 115 | For practical use, you may prefer to discard any untransformable edge pixels |
116 | rather than having a strange-looking strip along the right and/or bottom edges | 116 | rather than having a strange-looking strip along the right and/or bottom edges |
117 | of a transformed image. To do this, add the | 117 | of a transformed image. To do this, add the |
118 | .B \-trim | 118 | .B \-trim |
119 | switch: | 119 | switch: |
120 | .TP | 120 | .TP |
121 | .B \-trim | 121 | .B \-trim |
122 | Drop non-transformable edge blocks. | 122 | Drop non-transformable edge blocks. |
123 | .IP | 123 | .IP |
124 | Obviously, a transformation with | 124 | Obviously, a transformation with |
125 | .B \-trim | 125 | .B \-trim |
126 | is not reversible, so strictly speaking | 126 | is not reversible, so strictly speaking |
127 | .B jpegtran | 127 | .B jpegtran |
128 | with this switch is not lossless. Also, the expected mathematical | 128 | with this switch is not lossless. Also, the expected mathematical |
129 | equivalences between the transformations no longer hold. For example, | 129 | equivalences between the transformations no longer hold. For example, |
130 | .B \-rot 270 -trim | 130 | .B \-rot 270 -trim |
131 | trims only the bottom edge, but | 131 | trims only the bottom edge, but |
132 | .B \-rot 90 -trim | 132 | .B \-rot 90 -trim |
133 | followed by | 133 | followed by |
134 | .B \-rot 180 -trim | 134 | .B \-rot 180 -trim |
135 | trims both edges. | 135 | trims both edges. |
136 | .IP | 136 | .IP |
137 | If you are only interested in perfect transformation, add the | 137 | If you are only interested in perfect transformation, add the |
138 | .B \-perfect | 138 | .B \-perfect |
139 | switch: | 139 | switch: |
140 | .TP | 140 | .TP |
141 | .B \-perfect | 141 | .B \-perfect |
142 | Fails with an error if the transformation is not perfect. | 142 | Fails with an error if the transformation is not perfect. |
143 | .IP | 143 | .IP |
144 | For example you may want to do | 144 | For example you may want to do |
145 | .IP | 145 | .IP |
146 | .B (jpegtran \-rot 90 -perfect | 146 | .B (jpegtran \-rot 90 -perfect |
147 | .I foo.jpg | 147 | .I foo.jpg |
148 | .B || djpeg | 148 | .B || djpeg |
149 | .I foo.jpg | 149 | .I foo.jpg |
150 | .B | pnmflip \-r90 | cjpeg) | 150 | .B | pnmflip \-r90 | cjpeg) |
151 | .IP | 151 | .IP |
152 | to do a perfect rotation if available or an approximated one if not. | 152 | to do a perfect rotation if available or an approximated one if not. |
153 | .PP | 153 | .PP |
154 | We also offer a lossless-crop option, which discards data outside a given | 154 | We also offer a lossless-crop option, which discards data outside a given |
155 | image region but losslessly preserves what is inside. Like the rotate and | 155 | image region but losslessly preserves what is inside. Like the rotate and |
156 | flip transforms, lossless crop is restricted by the current JPEG format: the | 156 | flip transforms, lossless crop is restricted by the current JPEG format: the |
157 | upper left corner of the selected region must fall on an iMCU boundary. If | 157 | upper left corner of the selected region must fall on an iMCU boundary. If |
158 | this does not hold for the given crop parameters, we silently move the upper | 158 | this does not hold for the given crop parameters, we silently move the upper |
159 | left corner up and/or left to make it so, simultaneously increasing the region | 159 | left corner up and/or left to make it so, simultaneously increasing the region |
160 | dimensions to keep the lower right crop corner unchanged. (Thus, the output | 160 | dimensions to keep the lower right crop corner unchanged. (Thus, the output |
161 | image covers at least the requested region, but may cover more.) | 161 | image covers at least the requested region, but may cover more.) |
162 | 162 | ||
163 | The image can be losslessly cropped by giving the switch: | 163 | The image can be losslessly cropped by giving the switch: |
164 | .TP | 164 | .TP |
165 | .B \-crop WxH+X+Y | 165 | .B \-crop WxH+X+Y |
166 | Crop to a rectangular subarea of width W, height H starting at point X,Y. | 166 | Crop to a rectangular subarea of width W, height H starting at point X,Y. |
167 | .PP | 167 | .PP |
168 | Other not-strictly-lossless transformation switches are: | 168 | Other not-strictly-lossless transformation switches are: |
169 | .TP | 169 | .TP |
170 | .B \-grayscale | 170 | .B \-grayscale |
171 | Force grayscale output. | 171 | Force grayscale output. |
172 | .IP | 172 | .IP |
173 | This option discards the chrominance channels if the input image is YCbCr | 173 | This option discards the chrominance channels if the input image is YCbCr |
174 | (ie, a standard color JPEG), resulting in a grayscale JPEG file. The | 174 | (ie, a standard color JPEG), resulting in a grayscale JPEG file. The |
175 | luminance channel is preserved exactly, so this is a better method of reducing | 175 | luminance channel is preserved exactly, so this is a better method of reducing |
176 | to grayscale than decompression, conversion, and recompression. This switch | 176 | to grayscale than decompression, conversion, and recompression. This switch |
177 | is particularly handy for fixing a monochrome picture that was mistakenly | 177 | is particularly handy for fixing a monochrome picture that was mistakenly |
178 | encoded as a color JPEG. (In such a case, the space savings from getting rid | 178 | encoded as a color JPEG. (In such a case, the space savings from getting rid |
179 | of the near-empty chroma channels won't be large; but the decoding time for | 179 | of the near-empty chroma channels won't be large; but the decoding time for |
180 | a grayscale JPEG is substantially less than that for a color JPEG.) | 180 | a grayscale JPEG is substantially less than that for a color JPEG.) |
181 | .TP | 181 | .TP |
182 | .BI \-scale " M/N" | 182 | .BI \-scale " M/N" |
183 | Scale the output image by a factor M/N. | 183 | Scale the output image by a factor M/N. |
184 | .IP | 184 | .IP |
185 | Currently supported scale factors are M/N with all M from 1 to 16, where N is | 185 | Currently supported scale factors are M/N with all M from 1 to 16, where N is |
186 | the source DCT size, which is 8 for baseline JPEG. If the /N part is omitted, | 186 | the source DCT size, which is 8 for baseline JPEG. If the /N part is omitted, |
187 | then M specifies the DCT scaled size to be applied on the given input. For | 187 | then M specifies the DCT scaled size to be applied on the given input. For |
188 | baseline JPEG this is equivalent to M/8 scaling, since the source DCT size | 188 | baseline JPEG this is equivalent to M/8 scaling, since the source DCT size |
189 | for baseline JPEG is 8. | 189 | for baseline JPEG is 8. |
190 | .B Caution: | 190 | .B Caution: |
191 | An implementation of the JPEG SmartScale extension is required for this | 191 | An implementation of the JPEG SmartScale extension is required for this |
192 | feature. SmartScale enabled JPEG is not yet widely implemented, so many | 192 | feature. SmartScale enabled JPEG is not yet widely implemented, so many |
193 | decoders will be unable to view a SmartScale extended JPEG file at all. | 193 | decoders will be unable to view a SmartScale extended JPEG file at all. |
194 | .PP | 194 | .PP |
195 | .B jpegtran | 195 | .B jpegtran |
196 | also recognizes these switches that control what to do with "extra" markers, | 196 | also recognizes these switches that control what to do with "extra" markers, |
197 | such as comment blocks: | 197 | such as comment blocks: |
198 | .TP | 198 | .TP |
199 | .B \-copy none | 199 | .B \-copy none |
200 | Copy no extra markers from source file. This setting suppresses all | 200 | Copy no extra markers from source file. This setting suppresses all |
201 | comments and other excess baggage present in the source file. | 201 | comments and other excess baggage present in the source file. |
202 | .TP | 202 | .TP |
203 | .B \-copy comments | 203 | .B \-copy comments |
204 | Copy only comment markers. This setting copies comments from the source file, | 204 | Copy only comment markers. This setting copies comments from the source file, |
205 | but discards any other inessential (for image display) data. | 205 | but discards any other inessential (for image display) data. |
206 | .TP | 206 | .TP |
207 | .B \-copy all | 207 | .B \-copy all |
208 | Copy all extra markers. This setting preserves miscellaneous markers | 208 | Copy all extra markers. This setting preserves miscellaneous markers |
209 | found in the source file, such as JFIF thumbnails, Exif data, and Photoshop | 209 | found in the source file, such as JFIF thumbnails, Exif data, and Photoshop |
210 | settings. In some files these extra markers can be sizable. | 210 | settings. In some files these extra markers can be sizable. |
211 | .IP | 211 | .IP |
212 | The default behavior is | 212 | The default behavior is |
213 | .BR "\-copy comments" . | 213 | .BR "\-copy comments" . |
214 | (Note: in IJG releases v6 and v6a, | 214 | (Note: in IJG releases v6 and v6a, |
215 | .B jpegtran | 215 | .B jpegtran |
216 | always did the equivalent of | 216 | always did the equivalent of |
217 | .BR "\-copy none" .) | 217 | .BR "\-copy none" .) |
218 | .PP | 218 | .PP |
219 | Additional switches recognized by jpegtran are: | 219 | Additional switches recognized by jpegtran are: |
220 | .TP | 220 | .TP |
221 | .BI \-maxmemory " N" | 221 | .BI \-maxmemory " N" |
222 | Set limit for amount of memory to use in processing large images. Value is | 222 | Set limit for amount of memory to use in processing large images. Value is |
223 | in thousands of bytes, or millions of bytes if "M" is attached to the | 223 | in thousands of bytes, or millions of bytes if "M" is attached to the |
224 | number. For example, | 224 | number. For example, |
225 | .B \-max 4m | 225 | .B \-max 4m |
226 | selects 4000000 bytes. If more space is needed, temporary files will be used. | 226 | selects 4000000 bytes. If more space is needed, temporary files will be used. |
227 | .TP | 227 | .TP |
228 | .BI \-outfile " name" | 228 | .BI \-outfile " name" |
229 | Send output image to the named file, not to standard output. | 229 | Send output image to the named file, not to standard output. |
230 | .TP | 230 | .TP |
231 | .B \-verbose | 231 | .B \-verbose |
232 | Enable debug printout. More | 232 | Enable debug printout. More |
233 | .BR \-v 's | 233 | .BR \-v 's |
234 | give more output. Also, version information is printed at startup. | 234 | give more output. Also, version information is printed at startup. |
235 | .TP | 235 | .TP |
236 | .B \-debug | 236 | .B \-debug |
237 | Same as | 237 | Same as |
238 | .BR \-verbose . | 238 | .BR \-verbose . |
239 | .SH EXAMPLES | 239 | .SH EXAMPLES |
240 | .LP | 240 | .LP |
241 | This example converts a baseline JPEG file to progressive form: | 241 | This example converts a baseline JPEG file to progressive form: |
242 | .IP | 242 | .IP |
243 | .B jpegtran \-progressive | 243 | .B jpegtran \-progressive |
244 | .I foo.jpg | 244 | .I foo.jpg |
245 | .B > | 245 | .B > |
246 | .I fooprog.jpg | 246 | .I fooprog.jpg |
247 | .PP | 247 | .PP |
248 | This example rotates an image 90 degrees clockwise, discarding any | 248 | This example rotates an image 90 degrees clockwise, discarding any |
249 | unrotatable edge pixels: | 249 | unrotatable edge pixels: |
250 | .IP | 250 | .IP |
251 | .B jpegtran \-rot 90 -trim | 251 | .B jpegtran \-rot 90 -trim |
252 | .I foo.jpg | 252 | .I foo.jpg |
253 | .B > | 253 | .B > |
254 | .I foo90.jpg | 254 | .I foo90.jpg |
255 | .SH ENVIRONMENT | 255 | .SH ENVIRONMENT |
256 | .TP | 256 | .TP |
257 | .B JPEGMEM | 257 | .B JPEGMEM |
258 | If this environment variable is set, its value is the default memory limit. | 258 | If this environment variable is set, its value is the default memory limit. |
259 | The value is specified as described for the | 259 | The value is specified as described for the |
260 | .B \-maxmemory | 260 | .B \-maxmemory |
261 | switch. | 261 | switch. |
262 | .B JPEGMEM | 262 | .B JPEGMEM |
263 | overrides the default value specified when the program was compiled, and | 263 | overrides the default value specified when the program was compiled, and |
264 | itself is overridden by an explicit | 264 | itself is overridden by an explicit |
265 | .BR \-maxmemory . | 265 | .BR \-maxmemory . |
266 | .SH SEE ALSO | 266 | .SH SEE ALSO |
267 | .BR cjpeg (1), | 267 | .BR cjpeg (1), |
268 | .BR djpeg (1), | 268 | .BR djpeg (1), |
269 | .BR rdjpgcom (1), | 269 | .BR rdjpgcom (1), |
270 | .BR wrjpgcom (1) | 270 | .BR wrjpgcom (1) |
271 | .br | 271 | .br |
272 | Wallace, Gregory K. "The JPEG Still Picture Compression Standard", | 272 | Wallace, Gregory K. "The JPEG Still Picture Compression Standard", |
273 | Communications of the ACM, April 1991 (vol. 34, no. 4), pp. 30-44. | 273 | Communications of the ACM, April 1991 (vol. 34, no. 4), pp. 30-44. |
274 | .SH AUTHOR | 274 | .SH AUTHOR |
275 | Independent JPEG Group | 275 | Independent JPEG Group |
276 | .SH BUGS | 276 | .SH BUGS |
277 | The transform options can't transform odd-size images perfectly. Use | 277 | The transform options can't transform odd-size images perfectly. Use |
278 | .B \-trim | 278 | .B \-trim |
279 | or | 279 | or |
280 | .B \-perfect | 280 | .B \-perfect |
281 | if you don't like the results. | 281 | if you don't like the results. |
282 | .PP | 282 | .PP |
283 | The entire image is read into memory and then written out again, even in | 283 | The entire image is read into memory and then written out again, even in |
284 | cases where this isn't really necessary. Expect swapping on large images, | 284 | cases where this isn't really necessary. Expect swapping on large images, |
285 | especially when using the more complex transform options. | 285 | especially when using the more complex transform options. |