1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 2<!-- NewPage --> 3<html lang="en"> 4<head> 5<title>TJDecompressor</title> 6<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style"> 7</head> 8<body> 9<script type="text/javascript"><!-- 10 try { 11 if (location.href.indexOf('is-external=true') == -1) { 12 parent.document.title="TJDecompressor"; 13 } 14 } 15 catch(err) { 16 } 17//--> 18</script> 19<noscript> 20<div>JavaScript is disabled on your browser.</div> 21</noscript> 22<!-- ========= START OF TOP NAVBAR ======= --> 23<div class="topNav"><a name="navbar_top"> 24<!-- --> 25</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow"> 26<!-- --> 27</a> 28<ul class="navList" title="Navigation"> 29<li><a href="../../../org/libjpegturbo/turbojpeg/package-summary.html">Package</a></li> 30<li class="navBarCell1Rev">Class</li> 31<li><a href="package-tree.html">Tree</a></li> 32<li><a href="../../../deprecated-list.html">Deprecated</a></li> 33<li><a href="../../../index-all.html">Index</a></li> 34<li><a href="../../../help-doc.html">Help</a></li> 35</ul> 36</div> 37<div class="subNav"> 38<ul class="navList"> 39<li><a href="../../../org/libjpegturbo/turbojpeg/TJCustomFilter.html" title="interface in org.libjpegturbo.turbojpeg"><span class="strong">Prev Class</span></a></li> 40<li><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg"><span class="strong">Next Class</span></a></li> 41</ul> 42<ul class="navList"> 43<li><a href="../../../index.html?org/libjpegturbo/turbojpeg/TJDecompressor.html" target="_top">Frames</a></li> 44<li><a href="TJDecompressor.html" target="_top">No Frames</a></li> 45</ul> 46<ul class="navList" id="allclasses_navbar_top"> 47<li><a href="../../../allclasses-noframe.html">All Classes</a></li> 48</ul> 49<div> 50<script type="text/javascript"><!-- 51 allClassesLink = document.getElementById("allclasses_navbar_top"); 52 if(window==top) { 53 allClassesLink.style.display = "block"; 54 } 55 else { 56 allClassesLink.style.display = "none"; 57 } 58 //--> 59</script> 60</div> 61<div> 62<ul class="subNavList"> 63<li>Summary: </li> 64<li>Nested | </li> 65<li><a href="#field_summary">Field</a> | </li> 66<li><a href="#constructor_summary">Constr</a> | </li> 67<li><a href="#method_summary">Method</a></li> 68</ul> 69<ul class="subNavList"> 70<li>Detail: </li> 71<li><a href="#field_detail">Field</a> | </li> 72<li><a href="#constructor_detail">Constr</a> | </li> 73<li><a href="#method_detail">Method</a></li> 74</ul> 75</div> 76<a name="skip-navbar_top"> 77<!-- --> 78</a></div> 79<!-- ========= END OF TOP NAVBAR ========= --> 80<!-- ======== START OF CLASS DATA ======== --> 81<div class="header"> 82<div class="subTitle">org.libjpegturbo.turbojpeg</div> 83<h2 title="Class TJDecompressor" class="title">Class TJDecompressor</h2> 84</div> 85<div class="contentContainer"> 86<ul class="inheritance"> 87<li>java.lang.Object</li> 88<li> 89<ul class="inheritance"> 90<li>org.libjpegturbo.turbojpeg.TJDecompressor</li> 91</ul> 92</li> 93</ul> 94<div class="description"> 95<ul class="blockList"> 96<li class="blockList"> 97<dl> 98<dt>All Implemented Interfaces:</dt> 99<dd>java.io.Closeable, java.lang.AutoCloseable</dd> 100</dl> 101<dl> 102<dt>Direct Known Subclasses:</dt> 103<dd><a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html" title="class in org.libjpegturbo.turbojpeg">TJTransformer</a></dd> 104</dl> 105<hr> 106<br> 107<pre>public class <span class="strong">TJDecompressor</span> 108extends java.lang.Object 109implements java.io.Closeable</pre> 110<div class="block">TurboJPEG decompressor</div> 111</li> 112</ul> 113</div> 114<div class="summary"> 115<ul class="blockList"> 116<li class="blockList"> 117<!-- =========== FIELD SUMMARY =========== --> 118<ul class="blockList"> 119<li class="blockList"><a name="field_summary"> 120<!-- --> 121</a> 122<h3>Field Summary</h3> 123<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation"> 124<caption><span>Fields</span><span class="tabEnd"> </span></caption> 125<tr> 126<th class="colFirst" scope="col">Modifier and Type</th> 127<th class="colLast" scope="col">Field and Description</th> 128</tr> 129<tr class="altColor"> 130<td class="colFirst"><code>protected long</code></td> 131<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#handle">handle</a></strong></code> </td> 132</tr> 133<tr class="rowColor"> 134<td class="colFirst"><code>protected byte[]</code></td> 135<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegBuf">jpegBuf</a></strong></code> </td> 136</tr> 137<tr class="altColor"> 138<td class="colFirst"><code>protected int</code></td> 139<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegBufSize">jpegBufSize</a></strong></code> </td> 140</tr> 141<tr class="rowColor"> 142<td class="colFirst"><code>protected int</code></td> 143<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegColorspace">jpegColorspace</a></strong></code> </td> 144</tr> 145<tr class="altColor"> 146<td class="colFirst"><code>protected int</code></td> 147<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegHeight">jpegHeight</a></strong></code> </td> 148</tr> 149<tr class="rowColor"> 150<td class="colFirst"><code>protected int</code></td> 151<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegSubsamp">jpegSubsamp</a></strong></code> </td> 152</tr> 153<tr class="altColor"> 154<td class="colFirst"><code>protected int</code></td> 155<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegWidth">jpegWidth</a></strong></code> </td> 156</tr> 157<tr class="rowColor"> 158<td class="colFirst"><code>protected <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a></code></td> 159<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#yuvImage">yuvImage</a></strong></code> </td> 160</tr> 161</table> 162</li> 163</ul> 164<!-- ======== CONSTRUCTOR SUMMARY ======== --> 165<ul class="blockList"> 166<li class="blockList"><a name="constructor_summary"> 167<!-- --> 168</a> 169<h3>Constructor Summary</h3> 170<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> 171<caption><span>Constructors</span><span class="tabEnd"> </span></caption> 172<tr> 173<th class="colOne" scope="col">Constructor and Description</th> 174</tr> 175<tr class="altColor"> 176<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#TJDecompressor()">TJDecompressor</a></strong>()</code> 177<div class="block">Create a TurboJPEG decompresssor instance.</div> 178</td> 179</tr> 180<tr class="rowColor"> 181<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#TJDecompressor(byte[])">TJDecompressor</a></strong>(byte[] jpegImage)</code> 182<div class="block">Create a TurboJPEG decompressor instance and associate the JPEG source 183 image stored in <code>jpegImage</code> with the newly created instance.</div> 184</td> 185</tr> 186<tr class="altColor"> 187<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#TJDecompressor(byte[],%20int)">TJDecompressor</a></strong>(byte[] jpegImage, 188 int imageSize)</code> 189<div class="block">Create a TurboJPEG decompressor instance and associate the JPEG source 190 image of length <code>imageSize</code> bytes stored in 191 <code>jpegImage</code> with the newly created instance.</div> 192</td> 193</tr> 194<tr class="rowColor"> 195<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#TJDecompressor(org.libjpegturbo.turbojpeg.YUVImage)">TJDecompressor</a></strong>(<a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> yuvImage)</code> 196<div class="block">Create a TurboJPEG decompressor instance and associate the YUV planar 197 source image stored in <code>yuvImage</code> with the newly created 198 instance.</div> 199</td> 200</tr> 201</table> 202</li> 203</ul> 204<!-- ========== METHOD SUMMARY =========== --> 205<ul class="blockList"> 206<li class="blockList"><a name="method_summary"> 207<!-- --> 208</a> 209<h3>Method Summary</h3> 210<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> 211<caption><span>Methods</span><span class="tabEnd"> </span></caption> 212<tr> 213<th class="colFirst" scope="col">Modifier and Type</th> 214<th class="colLast" scope="col">Method and Description</th> 215</tr> 216<tr class="altColor"> 217<td class="colFirst"><code>void</code></td> 218<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#close()">close</a></strong>()</code> 219<div class="block">Free the native structures associated with this decompressor instance.</div> 220</td> 221</tr> 222<tr class="rowColor"> 223<td class="colFirst"><code>void</code></td> 224<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(java.awt.image.BufferedImage,%20int)">decompress</a></strong>(java.awt.image.BufferedImage dstImage, 225 int flags)</code> 226<div class="block">Decompress the JPEG source image or decode the YUV source image associated 227 with this decompressor instance and output a decompressed/decoded image to 228 the given <code>BufferedImage</code> instance.</div> 229</td> 230</tr> 231<tr class="altColor"> 232<td class="colFirst"><code>void</code></td> 233<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int)">decompress</a></strong>(byte[] dstBuf, 234 int desiredWidth, 235 int pitch, 236 int desiredHeight, 237 int pixelFormat, 238 int flags)</code> 239<div class="block"><strong>Deprecated.</strong> 240<div class="block"><i>Use 241 <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> instead.</i></div> 242</div> 243</td> 244</tr> 245<tr class="rowColor"> 246<td class="colFirst"><code>void</code></td> 247<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)">decompress</a></strong>(byte[] dstBuf, 248 int x, 249 int y, 250 int desiredWidth, 251 int pitch, 252 int desiredHeight, 253 int pixelFormat, 254 int flags)</code> 255<div class="block">Decompress the JPEG source image or decode the YUV source image associated 256 with this decompressor instance and output a grayscale, RGB, or CMYK image 257 to the given destination buffer.</div> 258</td> 259</tr> 260<tr class="altColor"> 261<td class="colFirst"><code>void</code></td> 262<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)">decompress</a></strong>(int[] dstBuf, 263 int x, 264 int y, 265 int desiredWidth, 266 int stride, 267 int desiredHeight, 268 int pixelFormat, 269 int flags)</code> 270<div class="block">Decompress the JPEG source image or decode the YUV source image associated 271 with this decompressor instance and output a grayscale, RGB, or CMYK image 272 to the given destination buffer.</div> 273</td> 274</tr> 275<tr class="rowColor"> 276<td class="colFirst"><code>java.awt.image.BufferedImage</code></td> 277<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int,%20int,%20int,%20int)">decompress</a></strong>(int desiredWidth, 278 int desiredHeight, 279 int bufferedImageType, 280 int flags)</code> 281<div class="block">Decompress the JPEG source image or decode the YUV source image associated 282 with this decompressor instance and return a <code>BufferedImage</code> 283 instance containing the decompressed/decoded image.</div> 284</td> 285</tr> 286<tr class="altColor"> 287<td class="colFirst"><code>byte[]</code></td> 288<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int,%20int,%20int,%20int,%20int)">decompress</a></strong>(int desiredWidth, 289 int pitch, 290 int desiredHeight, 291 int pixelFormat, 292 int flags)</code> 293<div class="block">Decompress the JPEG source image associated with this decompressor 294 instance and return a buffer containing the decompressed image.</div> 295</td> 296</tr> 297<tr class="rowColor"> 298<td class="colFirst"><code>void</code></td> 299<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(byte[],%20int)">decompressToYUV</a></strong>(byte[] dstBuf, 300 int flags)</code> 301<div class="block"><strong>Deprecated.</strong> 302<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage,%20int)"><code>decompressToYUV(YUVImage, int)</code></a> instead.</i></div> 303</div> 304</td> 305</tr> 306<tr class="altColor"> 307<td class="colFirst"><code>byte[]</code></td> 308<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int)">decompressToYUV</a></strong>(int flags)</code> 309<div class="block"><strong>Deprecated.</strong> 310<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int,%20int,%20int,%20int)"><code>decompressToYUV(int, int, int, int)</code></a> instead.</i></div> 311</div> 312</td> 313</tr> 314<tr class="rowColor"> 315<td class="colFirst"><code><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a></code></td> 316<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int,%20int[],%20int,%20int)">decompressToYUV</a></strong>(int desiredWidth, 317 int[] strides, 318 int desiredHeight, 319 int flags)</code> 320<div class="block">Decompress the JPEG source image associated with this decompressor 321 instance into a set of Y, U (Cb), and V (Cr) image planes and return a 322 <code>YUVImage</code> instance containing the decompressed image planes.</div> 323</td> 324</tr> 325<tr class="altColor"> 326<td class="colFirst"><code><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a></code></td> 327<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int,%20int,%20int,%20int)">decompressToYUV</a></strong>(int desiredWidth, 328 int pad, 329 int desiredHeight, 330 int flags)</code> 331<div class="block">Decompress the JPEG source image associated with this decompressor 332 instance into a unified YUV planar image buffer and return a 333 <code>YUVImage</code> instance containing the decompressed image.</div> 334</td> 335</tr> 336<tr class="rowColor"> 337<td class="colFirst"><code>void</code></td> 338<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage,%20int)">decompressToYUV</a></strong>(<a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> dstImage, 339 int flags)</code> 340<div class="block">Decompress the JPEG source image associated with this decompressor 341 instance into a YUV planar image and store it in the given 342 <code>YUVImage</code> instance.</div> 343</td> 344</tr> 345<tr class="altColor"> 346<td class="colFirst"><code>protected void</code></td> 347<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#finalize()">finalize</a></strong>()</code> </td> 348</tr> 349<tr class="rowColor"> 350<td class="colFirst"><code>int</code></td> 351<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getColorspace()">getColorspace</a></strong>()</code> 352<div class="block">Returns the colorspace used in the source image (JPEG or YUV) associated 353 with this decompressor instance.</div> 354</td> 355</tr> 356<tr class="altColor"> 357<td class="colFirst"><code>int</code></td> 358<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getHeight()">getHeight</a></strong>()</code> 359<div class="block">Returns the height of the source image (JPEG or YUV) associated with this 360 decompressor instance.</div> 361</td> 362</tr> 363<tr class="rowColor"> 364<td class="colFirst"><code>byte[]</code></td> 365<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getJPEGBuf()">getJPEGBuf</a></strong>()</code> 366<div class="block">Returns the JPEG image buffer associated with this decompressor instance.</div> 367</td> 368</tr> 369<tr class="altColor"> 370<td class="colFirst"><code>int</code></td> 371<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getJPEGSize()">getJPEGSize</a></strong>()</code> 372<div class="block">Returns the size of the JPEG image (in bytes) associated with this 373 decompressor instance.</div> 374</td> 375</tr> 376<tr class="rowColor"> 377<td class="colFirst"><code>int</code></td> 378<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledHeight(int,%20int)">getScaledHeight</a></strong>(int desiredWidth, 379 int desiredHeight)</code> 380<div class="block">Returns the height of the largest scaled-down image that the TurboJPEG 381 decompressor can generate without exceeding the desired image width and 382 height.</div> 383</td> 384</tr> 385<tr class="altColor"> 386<td class="colFirst"><code>int</code></td> 387<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledWidth(int,%20int)">getScaledWidth</a></strong>(int desiredWidth, 388 int desiredHeight)</code> 389<div class="block">Returns the width of the largest scaled-down image that the TurboJPEG 390 decompressor can generate without exceeding the desired image width and 391 height.</div> 392</td> 393</tr> 394<tr class="rowColor"> 395<td class="colFirst"><code>int</code></td> 396<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSubsamp()">getSubsamp</a></strong>()</code> 397<div class="block">Returns the level of chrominance subsampling used in the source image 398 (JPEG or YUV) associated with this decompressor instance.</div> 399</td> 400</tr> 401<tr class="altColor"> 402<td class="colFirst"><code>int</code></td> 403<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getWidth()">getWidth</a></strong>()</code> 404<div class="block">Returns the width of the source image (JPEG or YUV) associated with this 405 decompressor instance.</div> 406</td> 407</tr> 408<tr class="rowColor"> 409<td class="colFirst"><code>void</code></td> 410<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setJPEGImage(byte[],%20int)">setJPEGImage</a></strong>(byte[] jpegImage, 411 int imageSize)</code> 412<div class="block"><strong>Deprecated.</strong> 413<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(byte[],%20int)"><code>setSourceImage(byte[], int)</code></a> instead.</i></div> 414</div> 415</td> 416</tr> 417<tr class="altColor"> 418<td class="colFirst"><code>void</code></td> 419<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(byte[],%20int)">setSourceImage</a></strong>(byte[] jpegImage, 420 int imageSize)</code> 421<div class="block">Associate the JPEG image of length <code>imageSize</code> bytes stored in 422 <code>jpegImage</code> with this decompressor instance.</div> 423</td> 424</tr> 425<tr class="rowColor"> 426<td class="colFirst"><code>void</code></td> 427<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(org.libjpegturbo.turbojpeg.YUVImage)">setSourceImage</a></strong>(<a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> srcImage)</code> 428<div class="block">Associate the specified YUV planar source image with this decompressor 429 instance.</div> 430</td> 431</tr> 432</table> 433<ul class="blockList"> 434<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object"> 435<!-- --> 436</a> 437<h3>Methods inherited from class java.lang.Object</h3> 438<code>clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li> 439</ul> 440</li> 441</ul> 442</li> 443</ul> 444</div> 445<div class="details"> 446<ul class="blockList"> 447<li class="blockList"> 448<!-- ============ FIELD DETAIL =========== --> 449<ul class="blockList"> 450<li class="blockList"><a name="field_detail"> 451<!-- --> 452</a> 453<h3>Field Detail</h3> 454<a name="handle"> 455<!-- --> 456</a> 457<ul class="blockList"> 458<li class="blockList"> 459<h4>handle</h4> 460<pre>protected long handle</pre> 461</li> 462</ul> 463<a name="jpegBuf"> 464<!-- --> 465</a> 466<ul class="blockList"> 467<li class="blockList"> 468<h4>jpegBuf</h4> 469<pre>protected byte[] jpegBuf</pre> 470</li> 471</ul> 472<a name="jpegBufSize"> 473<!-- --> 474</a> 475<ul class="blockList"> 476<li class="blockList"> 477<h4>jpegBufSize</h4> 478<pre>protected int jpegBufSize</pre> 479</li> 480</ul> 481<a name="yuvImage"> 482<!-- --> 483</a> 484<ul class="blockList"> 485<li class="blockList"> 486<h4>yuvImage</h4> 487<pre>protected <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> yuvImage</pre> 488</li> 489</ul> 490<a name="jpegWidth"> 491<!-- --> 492</a> 493<ul class="blockList"> 494<li class="blockList"> 495<h4>jpegWidth</h4> 496<pre>protected int jpegWidth</pre> 497</li> 498</ul> 499<a name="jpegHeight"> 500<!-- --> 501</a> 502<ul class="blockList"> 503<li class="blockList"> 504<h4>jpegHeight</h4> 505<pre>protected int jpegHeight</pre> 506</li> 507</ul> 508<a name="jpegSubsamp"> 509<!-- --> 510</a> 511<ul class="blockList"> 512<li class="blockList"> 513<h4>jpegSubsamp</h4> 514<pre>protected int jpegSubsamp</pre> 515</li> 516</ul> 517<a name="jpegColorspace"> 518<!-- --> 519</a> 520<ul class="blockListLast"> 521<li class="blockList"> 522<h4>jpegColorspace</h4> 523<pre>protected int jpegColorspace</pre> 524</li> 525</ul> 526</li> 527</ul> 528<!-- ========= CONSTRUCTOR DETAIL ======== --> 529<ul class="blockList"> 530<li class="blockList"><a name="constructor_detail"> 531<!-- --> 532</a> 533<h3>Constructor Detail</h3> 534<a name="TJDecompressor()"> 535<!-- --> 536</a> 537<ul class="blockList"> 538<li class="blockList"> 539<h4>TJDecompressor</h4> 540<pre>public TJDecompressor() 541 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 542<div class="block">Create a TurboJPEG decompresssor instance.</div> 543<dl><dt><span class="strong">Throws:</span></dt> 544<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 545</li> 546</ul> 547<a name="TJDecompressor(byte[])"> 548<!-- --> 549</a> 550<ul class="blockList"> 551<li class="blockList"> 552<h4>TJDecompressor</h4> 553<pre>public TJDecompressor(byte[] jpegImage) 554 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 555<div class="block">Create a TurboJPEG decompressor instance and associate the JPEG source 556 image stored in <code>jpegImage</code> with the newly created instance.</div> 557<dl><dt><span class="strong">Parameters:</span></dt><dd><code>jpegImage</code> - JPEG image buffer (size of the JPEG image is assumed to 558 be the length of the array.) This buffer is not modified.</dd> 559<dt><span class="strong">Throws:</span></dt> 560<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 561</li> 562</ul> 563<a name="TJDecompressor(byte[], int)"> 564<!-- --> 565</a> 566<ul class="blockList"> 567<li class="blockList"> 568<h4>TJDecompressor</h4> 569<pre>public TJDecompressor(byte[] jpegImage, 570 int imageSize) 571 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 572<div class="block">Create a TurboJPEG decompressor instance and associate the JPEG source 573 image of length <code>imageSize</code> bytes stored in 574 <code>jpegImage</code> with the newly created instance.</div> 575<dl><dt><span class="strong">Parameters:</span></dt><dd><code>jpegImage</code> - JPEG image buffer. This buffer is not modified.</dd><dd><code>imageSize</code> - size of the JPEG image (in bytes)</dd> 576<dt><span class="strong">Throws:</span></dt> 577<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 578</li> 579</ul> 580<a name="TJDecompressor(org.libjpegturbo.turbojpeg.YUVImage)"> 581<!-- --> 582</a> 583<ul class="blockListLast"> 584<li class="blockList"> 585<h4>TJDecompressor</h4> 586<pre>public TJDecompressor(<a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> yuvImage) 587 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 588<div class="block">Create a TurboJPEG decompressor instance and associate the YUV planar 589 source image stored in <code>yuvImage</code> with the newly created 590 instance.</div> 591<dl><dt><span class="strong">Parameters:</span></dt><dd><code>yuvImage</code> - <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg"><code>YUVImage</code></a> instance containing a YUV planar 592 image to be decoded. This image is not modified.</dd> 593<dt><span class="strong">Throws:</span></dt> 594<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 595</li> 596</ul> 597</li> 598</ul> 599<!-- ============ METHOD DETAIL ========== --> 600<ul class="blockList"> 601<li class="blockList"><a name="method_detail"> 602<!-- --> 603</a> 604<h3>Method Detail</h3> 605<a name="setSourceImage(byte[], int)"> 606<!-- --> 607</a> 608<ul class="blockList"> 609<li class="blockList"> 610<h4>setSourceImage</h4> 611<pre>public void setSourceImage(byte[] jpegImage, 612 int imageSize) 613 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 614<div class="block">Associate the JPEG image of length <code>imageSize</code> bytes stored in 615 <code>jpegImage</code> with this decompressor instance. This image will 616 be used as the source image for subsequent decompress operations.</div> 617<dl><dt><span class="strong">Parameters:</span></dt><dd><code>jpegImage</code> - JPEG image buffer. This buffer is not modified.</dd><dd><code>imageSize</code> - size of the JPEG image (in bytes)</dd> 618<dt><span class="strong">Throws:</span></dt> 619<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 620</li> 621</ul> 622<a name="setJPEGImage(byte[], int)"> 623<!-- --> 624</a> 625<ul class="blockList"> 626<li class="blockList"> 627<h4>setJPEGImage</h4> 628<pre>@Deprecated 629public void setJPEGImage(byte[] jpegImage, 630 int imageSize) 631 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 632<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(byte[],%20int)"><code>setSourceImage(byte[], int)</code></a> instead.</i></div> 633<dl><dt><span class="strong">Throws:</span></dt> 634<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 635</li> 636</ul> 637<a name="setSourceImage(org.libjpegturbo.turbojpeg.YUVImage)"> 638<!-- --> 639</a> 640<ul class="blockList"> 641<li class="blockList"> 642<h4>setSourceImage</h4> 643<pre>public void setSourceImage(<a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> srcImage)</pre> 644<div class="block">Associate the specified YUV planar source image with this decompressor 645 instance. Subsequent decompress operations will decode this image into an 646 RGB or grayscale destination image.</div> 647<dl><dt><span class="strong">Parameters:</span></dt><dd><code>srcImage</code> - <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg"><code>YUVImage</code></a> instance containing a YUV planar image to 648 be decoded. This image is not modified.</dd></dl> 649</li> 650</ul> 651<a name="getWidth()"> 652<!-- --> 653</a> 654<ul class="blockList"> 655<li class="blockList"> 656<h4>getWidth</h4> 657<pre>public int getWidth()</pre> 658<div class="block">Returns the width of the source image (JPEG or YUV) associated with this 659 decompressor instance.</div> 660<dl><dt><span class="strong">Returns:</span></dt><dd>the width of the source image (JPEG or YUV) associated with this 661 decompressor instance.</dd></dl> 662</li> 663</ul> 664<a name="getHeight()"> 665<!-- --> 666</a> 667<ul class="blockList"> 668<li class="blockList"> 669<h4>getHeight</h4> 670<pre>public int getHeight()</pre> 671<div class="block">Returns the height of the source image (JPEG or YUV) associated with this 672 decompressor instance.</div> 673<dl><dt><span class="strong">Returns:</span></dt><dd>the height of the source image (JPEG or YUV) associated with this 674 decompressor instance.</dd></dl> 675</li> 676</ul> 677<a name="getSubsamp()"> 678<!-- --> 679</a> 680<ul class="blockList"> 681<li class="blockList"> 682<h4>getSubsamp</h4> 683<pre>public int getSubsamp()</pre> 684<div class="block">Returns the level of chrominance subsampling used in the source image 685 (JPEG or YUV) associated with this decompressor instance. See 686 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#SAMP_444"><code>TJ.SAMP_*</code></a>.</div> 687<dl><dt><span class="strong">Returns:</span></dt><dd>the level of chrominance subsampling used in the source image 688 (JPEG or YUV) associated with this decompressor instance.</dd></dl> 689</li> 690</ul> 691<a name="getColorspace()"> 692<!-- --> 693</a> 694<ul class="blockList"> 695<li class="blockList"> 696<h4>getColorspace</h4> 697<pre>public int getColorspace()</pre> 698<div class="block">Returns the colorspace used in the source image (JPEG or YUV) associated 699 with this decompressor instance. See <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#CS_RGB"><code>TJ.CS_*</code></a>. If the 700 source image is YUV, then this always returns <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#CS_YCbCr"><code>TJ.CS_YCbCr</code></a>.</div> 701<dl><dt><span class="strong">Returns:</span></dt><dd>the colorspace used in the source image (JPEG or YUV) associated 702 with this decompressor instance.</dd></dl> 703</li> 704</ul> 705<a name="getJPEGBuf()"> 706<!-- --> 707</a> 708<ul class="blockList"> 709<li class="blockList"> 710<h4>getJPEGBuf</h4> 711<pre>public byte[] getJPEGBuf()</pre> 712<div class="block">Returns the JPEG image buffer associated with this decompressor instance.</div> 713<dl><dt><span class="strong">Returns:</span></dt><dd>the JPEG image buffer associated with this decompressor instance.</dd></dl> 714</li> 715</ul> 716<a name="getJPEGSize()"> 717<!-- --> 718</a> 719<ul class="blockList"> 720<li class="blockList"> 721<h4>getJPEGSize</h4> 722<pre>public int getJPEGSize()</pre> 723<div class="block">Returns the size of the JPEG image (in bytes) associated with this 724 decompressor instance.</div> 725<dl><dt><span class="strong">Returns:</span></dt><dd>the size of the JPEG image (in bytes) associated with this 726 decompressor instance.</dd></dl> 727</li> 728</ul> 729<a name="getScaledWidth(int, int)"> 730<!-- --> 731</a> 732<ul class="blockList"> 733<li class="blockList"> 734<h4>getScaledWidth</h4> 735<pre>public int getScaledWidth(int desiredWidth, 736 int desiredHeight)</pre> 737<div class="block">Returns the width of the largest scaled-down image that the TurboJPEG 738 decompressor can generate without exceeding the desired image width and 739 height.</div> 740<dl><dt><span class="strong">Parameters:</span></dt><dd><code>desiredWidth</code> - desired width (in pixels) of the decompressed image. 741 Setting this to 0 is the same as setting it to the width of the JPEG image 742 (in other words, the width will not be considered when determining the 743 scaled image size.)</dd><dd><code>desiredHeight</code> - desired height (in pixels) of the decompressed image. 744 Setting this to 0 is the same as setting it to the height of the JPEG 745 image (in other words, the height will not be considered when determining 746 the scaled image size.)</dd> 747<dt><span class="strong">Returns:</span></dt><dd>the width of the largest scaled-down image that the TurboJPEG 748 decompressor can generate without exceeding the desired image width and 749 height.</dd></dl> 750</li> 751</ul> 752<a name="getScaledHeight(int, int)"> 753<!-- --> 754</a> 755<ul class="blockList"> 756<li class="blockList"> 757<h4>getScaledHeight</h4> 758<pre>public int getScaledHeight(int desiredWidth, 759 int desiredHeight)</pre> 760<div class="block">Returns the height of the largest scaled-down image that the TurboJPEG 761 decompressor can generate without exceeding the desired image width and 762 height.</div> 763<dl><dt><span class="strong">Parameters:</span></dt><dd><code>desiredWidth</code> - desired width (in pixels) of the decompressed image. 764 Setting this to 0 is the same as setting it to the width of the JPEG image 765 (in other words, the width will not be considered when determining the 766 scaled image size.)</dd><dd><code>desiredHeight</code> - desired height (in pixels) of the decompressed image. 767 Setting this to 0 is the same as setting it to the height of the JPEG 768 image (in other words, the height will not be considered when determining 769 the scaled image size.)</dd> 770<dt><span class="strong">Returns:</span></dt><dd>the height of the largest scaled-down image that the TurboJPEG 771 decompressor can generate without exceeding the desired image width and 772 height.</dd></dl> 773</li> 774</ul> 775<a name="decompress(byte[], int, int, int, int, int, int, int)"> 776<!-- --> 777</a> 778<ul class="blockList"> 779<li class="blockList"> 780<h4>decompress</h4> 781<pre>public void decompress(byte[] dstBuf, 782 int x, 783 int y, 784 int desiredWidth, 785 int pitch, 786 int desiredHeight, 787 int pixelFormat, 788 int flags) 789 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 790<div class="block">Decompress the JPEG source image or decode the YUV source image associated 791 with this decompressor instance and output a grayscale, RGB, or CMYK image 792 to the given destination buffer. 793 <p> 794 NOTE: The output image is fully recoverable if this method throws a 795 non-fatal <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg"><code>TJException</code></a> (unless 796 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_STOPONWARNING"><code>TJ.FLAG_STOPONWARNING</code></a> is specified.)</div> 797<dl><dt><span class="strong">Parameters:</span></dt><dd><code>dstBuf</code> - buffer that will receive the decompressed/decoded image. 798 If the source image is a JPEG image, then this buffer should normally be 799 <code>pitch * scaledHeight</code> bytes in size, where 800 <code>scaledHeight</code> can be determined by calling <code> 801 scalingFactor.<a href="../../../org/libjpegturbo/turbojpeg/TJScalingFactor.html#getScaled(int)"><code>getScaled</code></a>(jpegHeight) 802 </code> with one of the scaling factors returned from <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#getScalingFactors()"><code>TJ.getScalingFactors()</code></a> or by calling <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledHeight(int,%20int)"><code>getScaledHeight(int, int)</code></a>. If the 803 source image is a YUV image, then this buffer should normally be 804 <code>pitch * height</code> bytes in size, where <code>height</code> is 805 the height of the YUV image. However, the buffer may also be larger than 806 the dimensions of the source image, in which case the <code>x</code>, 807 <code>y</code>, and <code>pitch</code> parameters can be used to specify 808 the region into which the source image should be decompressed/decoded.</dd><dd><code>x</code> - x offset (in pixels) of the region in the destination image into 809 which the source image should be decompressed/decoded</dd><dd><code>y</code> - y offset (in pixels) of the region in the destination image into 810 which the source image should be decompressed/decoded</dd><dd><code>desiredWidth</code> - If the source image is a JPEG image, then this 811 specifies the desired width (in pixels) of the decompressed image (or 812 image region.) If the desired destination image dimensions are different 813 than the source image dimensions, then TurboJPEG will use scaling in the 814 JPEG decompressor to generate the largest possible image that will fit 815 within the desired dimensions. Setting this to 0 is the same as setting 816 it to the width of the JPEG image (in other words, the width will not be 817 considered when determining the scaled image size.) This parameter is 818 ignored if the source image is a YUV image.</dd><dd><code>pitch</code> - bytes per line of the destination image. Normally, this 819 should be set to <code>scaledWidth * TJ.pixelSize(pixelFormat)</code> if 820 the destination image is unpadded, but you can use this to, for instance, 821 pad each line of the destination image to a 4-byte boundary or to 822 decompress/decode the source image into a region of a larger image. NOTE: 823 if the source image is a JPEG image, then <code>scaledWidth</code> can be 824 determined by calling <code> 825 scalingFactor.<a href="../../../org/libjpegturbo/turbojpeg/TJScalingFactor.html#getScaled(int)"><code>getScaled</code></a>(jpegWidth) 826 </code> or by calling <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledWidth(int,%20int)"><code>getScaledWidth(int, int)</code></a>. If the source image is a 827 YUV image, then <code>scaledWidth</code> is the width of the YUV image. 828 Setting this parameter to 0 is the equivalent of setting it to 829 <code>scaledWidth * TJ.pixelSize(pixelFormat)</code>.</dd><dd><code>desiredHeight</code> - If the source image is a JPEG image, then this 830 specifies the desired height (in pixels) of the decompressed image (or 831 image region.) If the desired destination image dimensions are different 832 than the source image dimensions, then TurboJPEG will use scaling in the 833 JPEG decompressor to generate the largest possible image that will fit 834 within the desired dimensions. Setting this to 0 is the same as setting 835 it to the height of the JPEG image (in other words, the height will not be 836 considered when determining the scaled image size.) This parameter is 837 ignored if the source image is a YUV image.</dd><dd><code>pixelFormat</code> - pixel format of the decompressed/decoded image (one of 838 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#PF_RGB"><code>TJ.PF_*</code></a>)</dd><dd><code>flags</code> - the bitwise OR of one or more of 839 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> 840<dt><span class="strong">Throws:</span></dt> 841<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 842</li> 843</ul> 844<a name="decompress(byte[], int, int, int, int, int)"> 845<!-- --> 846</a> 847<ul class="blockList"> 848<li class="blockList"> 849<h4>decompress</h4> 850<pre>@Deprecated 851public void decompress(byte[] dstBuf, 852 int desiredWidth, 853 int pitch, 854 int desiredHeight, 855 int pixelFormat, 856 int flags) 857 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 858<div class="block"><span class="strong">Deprecated.</span> <i>Use 859 <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> instead.</i></div> 860<dl><dt><span class="strong">Throws:</span></dt> 861<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 862</li> 863</ul> 864<a name="decompress(int, int, int, int, int)"> 865<!-- --> 866</a> 867<ul class="blockList"> 868<li class="blockList"> 869<h4>decompress</h4> 870<pre>public byte[] decompress(int desiredWidth, 871 int pitch, 872 int desiredHeight, 873 int pixelFormat, 874 int flags) 875 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 876<div class="block">Decompress the JPEG source image associated with this decompressor 877 instance and return a buffer containing the decompressed image.</div> 878<dl><dt><span class="strong">Parameters:</span></dt><dd><code>desiredWidth</code> - see 879 <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> 880 for description</dd><dd><code>pitch</code> - see 881 <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> 882 for description</dd><dd><code>desiredHeight</code> - see 883 <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> 884 for description</dd><dd><code>pixelFormat</code> - pixel format of the decompressed image (one of 885 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#PF_RGB"><code>TJ.PF_*</code></a>)</dd><dd><code>flags</code> - the bitwise OR of one or more of 886 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> 887<dt><span class="strong">Returns:</span></dt><dd>a buffer containing the decompressed image.</dd> 888<dt><span class="strong">Throws:</span></dt> 889<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 890</li> 891</ul> 892<a name="decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage, int)"> 893<!-- --> 894</a> 895<ul class="blockList"> 896<li class="blockList"> 897<h4>decompressToYUV</h4> 898<pre>public void decompressToYUV(<a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> dstImage, 899 int flags) 900 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 901<div class="block">Decompress the JPEG source image associated with this decompressor 902 instance into a YUV planar image and store it in the given 903 <code>YUVImage</code> instance. This method performs JPEG decompression 904 but leaves out the color conversion step, so a planar YUV image is 905 generated instead of an RGB or grayscale image. This method cannot be 906 used to decompress JPEG source images with the CMYK or YCCK colorspace. 907 <p> 908 NOTE: The YUV planar output image is fully recoverable if this method 909 throws a non-fatal <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg"><code>TJException</code></a> (unless 910 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_STOPONWARNING"><code>TJ.FLAG_STOPONWARNING</code></a> is specified.)</div> 911<dl><dt><span class="strong">Parameters:</span></dt><dd><code>dstImage</code> - <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg"><code>YUVImage</code></a> instance that will receive the YUV planar 912 image. The level of subsampling specified in this <code>YUVImage</code> 913 instance must match that of the JPEG image, and the width and height 914 specified in the <code>YUVImage</code> instance must match one of the 915 scaled image sizes that TurboJPEG is capable of generating from the JPEG 916 source image.</dd><dd><code>flags</code> - the bitwise OR of one or more of 917 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> 918<dt><span class="strong">Throws:</span></dt> 919<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 920</li> 921</ul> 922<a name="decompressToYUV(byte[], int)"> 923<!-- --> 924</a> 925<ul class="blockList"> 926<li class="blockList"> 927<h4>decompressToYUV</h4> 928<pre>@Deprecated 929public void decompressToYUV(byte[] dstBuf, 930 int flags) 931 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 932<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage,%20int)"><code>decompressToYUV(YUVImage, int)</code></a> instead.</i></div> 933<dl><dt><span class="strong">Throws:</span></dt> 934<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 935</li> 936</ul> 937<a name="decompressToYUV(int, int[], int, int)"> 938<!-- --> 939</a> 940<ul class="blockList"> 941<li class="blockList"> 942<h4>decompressToYUV</h4> 943<pre>public <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> decompressToYUV(int desiredWidth, 944 int[] strides, 945 int desiredHeight, 946 int flags) 947 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 948<div class="block">Decompress the JPEG source image associated with this decompressor 949 instance into a set of Y, U (Cb), and V (Cr) image planes and return a 950 <code>YUVImage</code> instance containing the decompressed image planes. 951 This method performs JPEG decompression but leaves out the color 952 conversion step, so a planar YUV image is generated instead of an RGB or 953 grayscale image. This method cannot be used to decompress JPEG source 954 images with the CMYK or YCCK colorspace.</div> 955<dl><dt><span class="strong">Parameters:</span></dt><dd><code>desiredWidth</code> - desired width (in pixels) of the YUV image. If the 956 desired image dimensions are different than the dimensions of the JPEG 957 image being decompressed, then TurboJPEG will use scaling in the JPEG 958 decompressor to generate the largest possible image that will fit within 959 the desired dimensions. Setting this to 0 is the same as setting it to 960 the width of the JPEG image (in other words, the width will not be 961 considered when determining the scaled image size.)</dd><dd><code>strides</code> - an array of integers, each specifying the number of bytes 962 per line in the corresponding plane of the output image. Setting the 963 stride for any plane to 0 is the same as setting it to the scaled 964 component width of the plane. If <tt>strides</tt> is NULL, then the 965 strides for all planes will be set to their respective scaled component 966 widths. You can adjust the strides in order to add an arbitrary amount of 967 line padding to each plane.</dd><dd><code>desiredHeight</code> - desired height (in pixels) of the YUV image. If the 968 desired image dimensions are different than the dimensions of the JPEG 969 image being decompressed, then TurboJPEG will use scaling in the JPEG 970 decompressor to generate the largest possible image that will fit within 971 the desired dimensions. Setting this to 0 is the same as setting it to 972 the height of the JPEG image (in other words, the height will not be 973 considered when determining the scaled image size.)</dd><dd><code>flags</code> - the bitwise OR of one or more of 974 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> 975<dt><span class="strong">Returns:</span></dt><dd>a YUV planar image.</dd> 976<dt><span class="strong">Throws:</span></dt> 977<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 978</li> 979</ul> 980<a name="decompressToYUV(int, int, int, int)"> 981<!-- --> 982</a> 983<ul class="blockList"> 984<li class="blockList"> 985<h4>decompressToYUV</h4> 986<pre>public <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> decompressToYUV(int desiredWidth, 987 int pad, 988 int desiredHeight, 989 int flags) 990 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 991<div class="block">Decompress the JPEG source image associated with this decompressor 992 instance into a unified YUV planar image buffer and return a 993 <code>YUVImage</code> instance containing the decompressed image. This 994 method performs JPEG decompression but leaves out the color conversion 995 step, so a planar YUV image is generated instead of an RGB or grayscale 996 image. This method cannot be used to decompress JPEG source images with 997 the CMYK or YCCK colorspace.</div> 998<dl><dt><span class="strong">Parameters:</span></dt><dd><code>desiredWidth</code> - desired width (in pixels) of the YUV image. If the 999 desired image dimensions are different than the dimensions of the JPEG 1000 image being decompressed, then TurboJPEG will use scaling in the JPEG 1001 decompressor to generate the largest possible image that will fit within 1002 the desired dimensions. Setting this to 0 is the same as setting it to 1003 the width of the JPEG image (in other words, the width will not be 1004 considered when determining the scaled image size.)</dd><dd><code>pad</code> - the width of each line in each plane of the YUV image will be 1005 padded to the nearest multiple of this number of bytes (must be a power of 1006 2.)</dd><dd><code>desiredHeight</code> - desired height (in pixels) of the YUV image. If the 1007 desired image dimensions are different than the dimensions of the JPEG 1008 image being decompressed, then TurboJPEG will use scaling in the JPEG 1009 decompressor to generate the largest possible image that will fit within 1010 the desired dimensions. Setting this to 0 is the same as setting it to 1011 the height of the JPEG image (in other words, the height will not be 1012 considered when determining the scaled image size.)</dd><dd><code>flags</code> - the bitwise OR of one or more of 1013 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> 1014<dt><span class="strong">Returns:</span></dt><dd>a YUV planar image.</dd> 1015<dt><span class="strong">Throws:</span></dt> 1016<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 1017</li> 1018</ul> 1019<a name="decompressToYUV(int)"> 1020<!-- --> 1021</a> 1022<ul class="blockList"> 1023<li class="blockList"> 1024<h4>decompressToYUV</h4> 1025<pre>@Deprecated 1026public byte[] decompressToYUV(int flags) 1027 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 1028<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int,%20int,%20int,%20int)"><code>decompressToYUV(int, int, int, int)</code></a> instead.</i></div> 1029<dl><dt><span class="strong">Throws:</span></dt> 1030<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 1031</li> 1032</ul> 1033<a name="decompress(int[], int, int, int, int, int, int, int)"> 1034<!-- --> 1035</a> 1036<ul class="blockList"> 1037<li class="blockList"> 1038<h4>decompress</h4> 1039<pre>public void decompress(int[] dstBuf, 1040 int x, 1041 int y, 1042 int desiredWidth, 1043 int stride, 1044 int desiredHeight, 1045 int pixelFormat, 1046 int flags) 1047 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 1048<div class="block">Decompress the JPEG source image or decode the YUV source image associated 1049 with this decompressor instance and output a grayscale, RGB, or CMYK image 1050 to the given destination buffer. 1051 <p> 1052 NOTE: The output image is fully recoverable if this method throws a 1053 non-fatal <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg"><code>TJException</code></a> (unless 1054 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_STOPONWARNING"><code>TJ.FLAG_STOPONWARNING</code></a> is specified.)</div> 1055<dl><dt><span class="strong">Parameters:</span></dt><dd><code>dstBuf</code> - buffer that will receive the decompressed/decoded image. 1056 If the source image is a JPEG image, then this buffer should normally be 1057 <code>stride * scaledHeight</code> pixels in size, where 1058 <code>scaledHeight</code> can be determined by calling <code> 1059 scalingFactor.<a href="../../../org/libjpegturbo/turbojpeg/TJScalingFactor.html#getScaled(int)"><code>getScaled</code></a>(jpegHeight) 1060 </code> with one of the scaling factors returned from <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#getScalingFactors()"><code>TJ.getScalingFactors()</code></a> or by calling <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledHeight(int,%20int)"><code>getScaledHeight(int, int)</code></a>. If the 1061 source image is a YUV image, then this buffer should normally be 1062 <code>stride * height</code> pixels in size, where <code>height</code> is 1063 the height of the YUV image. However, the buffer may also be larger than 1064 the dimensions of the JPEG image, in which case the <code>x</code>, 1065 <code>y</code>, and <code>stride</code> parameters can be used to specify 1066 the region into which the source image should be decompressed.</dd><dd><code>x</code> - x offset (in pixels) of the region in the destination image into 1067 which the source image should be decompressed/decoded</dd><dd><code>y</code> - y offset (in pixels) of the region in the destination image into 1068 which the source image should be decompressed/decoded</dd><dd><code>desiredWidth</code> - If the source image is a JPEG image, then this 1069 specifies the desired width (in pixels) of the decompressed image (or 1070 image region.) If the desired destination image dimensions are different 1071 than the source image dimensions, then TurboJPEG will use scaling in the 1072 JPEG decompressor to generate the largest possible image that will fit 1073 within the desired dimensions. Setting this to 0 is the same as setting 1074 it to the width of the JPEG image (in other words, the width will not be 1075 considered when determining the scaled image size.) This parameter is 1076 ignored if the source image is a YUV image.</dd><dd><code>stride</code> - pixels per line of the destination image. Normally, this 1077 should be set to <code>scaledWidth</code>, but you can use this to, for 1078 instance, decompress the JPEG image into a region of a larger image. 1079 NOTE: if the source image is a JPEG image, then <code>scaledWidth</code> 1080 can be determined by calling <code> 1081 scalingFactor.<a href="../../../org/libjpegturbo/turbojpeg/TJScalingFactor.html#getScaled(int)"><code>getScaled</code></a>(jpegWidth) 1082 </code> or by calling <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledWidth(int,%20int)"><code>getScaledWidth(int, int)</code></a>. If the source image is a 1083 YUV image, then <code>scaledWidth</code> is the width of the YUV image. 1084 Setting this parameter to 0 is the equivalent of setting it to 1085 <code>scaledWidth</code>.</dd><dd><code>desiredHeight</code> - If the source image is a JPEG image, then this 1086 specifies the desired height (in pixels) of the decompressed image (or 1087 image region.) If the desired destination image dimensions are different 1088 than the source image dimensions, then TurboJPEG will use scaling in the 1089 JPEG decompressor to generate the largest possible image that will fit 1090 within the desired dimensions. Setting this to 0 is the same as setting 1091 it to the height of the JPEG image (in other words, the height will not be 1092 considered when determining the scaled image size.) This parameter is 1093 ignored if the source image is a YUV image.</dd><dd><code>pixelFormat</code> - pixel format of the decompressed image (one of 1094 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#PF_RGB"><code>TJ.PF_*</code></a>)</dd><dd><code>flags</code> - the bitwise OR of one or more of 1095 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> 1096<dt><span class="strong">Throws:</span></dt> 1097<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 1098</li> 1099</ul> 1100<a name="decompress(java.awt.image.BufferedImage, int)"> 1101<!-- --> 1102</a> 1103<ul class="blockList"> 1104<li class="blockList"> 1105<h4>decompress</h4> 1106<pre>public void decompress(java.awt.image.BufferedImage dstImage, 1107 int flags) 1108 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 1109<div class="block">Decompress the JPEG source image or decode the YUV source image associated 1110 with this decompressor instance and output a decompressed/decoded image to 1111 the given <code>BufferedImage</code> instance. 1112 <p> 1113 NOTE: The output image is fully recoverable if this method throws a 1114 non-fatal <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg"><code>TJException</code></a> (unless 1115 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_STOPONWARNING"><code>TJ.FLAG_STOPONWARNING</code></a> is specified.)</div> 1116<dl><dt><span class="strong">Parameters:</span></dt><dd><code>dstImage</code> - a <code>BufferedImage</code> instance that will receive 1117 the decompressed/decoded image. If the source image is a JPEG image, then 1118 the width and height of the <code>BufferedImage</code> instance must match 1119 one of the scaled image sizes that TurboJPEG is capable of generating from 1120 the JPEG image. If the source image is a YUV image, then the width and 1121 height of the <code>BufferedImage</code> instance must match the width and 1122 height of the YUV image.</dd><dd><code>flags</code> - the bitwise OR of one or more of 1123 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> 1124<dt><span class="strong">Throws:</span></dt> 1125<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 1126</li> 1127</ul> 1128<a name="decompress(int, int, int, int)"> 1129<!-- --> 1130</a> 1131<ul class="blockList"> 1132<li class="blockList"> 1133<h4>decompress</h4> 1134<pre>public java.awt.image.BufferedImage decompress(int desiredWidth, 1135 int desiredHeight, 1136 int bufferedImageType, 1137 int flags) 1138 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 1139<div class="block">Decompress the JPEG source image or decode the YUV source image associated 1140 with this decompressor instance and return a <code>BufferedImage</code> 1141 instance containing the decompressed/decoded image.</div> 1142<dl><dt><span class="strong">Parameters:</span></dt><dd><code>desiredWidth</code> - see 1143 <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> for 1144 description</dd><dd><code>desiredHeight</code> - see 1145 <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> for 1146 description</dd><dd><code>bufferedImageType</code> - the image type of the <code>BufferedImage</code> 1147 instance that will be created (for instance, 1148 <code>BufferedImage.TYPE_INT_RGB</code>)</dd><dd><code>flags</code> - the bitwise OR of one or more of 1149 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> 1150<dt><span class="strong">Returns:</span></dt><dd>a <code>BufferedImage</code> instance containing the 1151 decompressed/decoded image.</dd> 1152<dt><span class="strong">Throws:</span></dt> 1153<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 1154</li> 1155</ul> 1156<a name="close()"> 1157<!-- --> 1158</a> 1159<ul class="blockList"> 1160<li class="blockList"> 1161<h4>close</h4> 1162<pre>public void close() 1163 throws <a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></pre> 1164<div class="block">Free the native structures associated with this decompressor instance.</div> 1165<dl> 1166<dt><strong>Specified by:</strong></dt> 1167<dd><code>close</code> in interface <code>java.io.Closeable</code></dd> 1168<dt><strong>Specified by:</strong></dt> 1169<dd><code>close</code> in interface <code>java.lang.AutoCloseable</code></dd> 1170<dt><span class="strong">Throws:</span></dt> 1171<dd><code><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg">TJException</a></code></dd></dl> 1172</li> 1173</ul> 1174<a name="finalize()"> 1175<!-- --> 1176</a> 1177<ul class="blockListLast"> 1178<li class="blockList"> 1179<h4>finalize</h4> 1180<pre>protected void finalize() 1181 throws java.lang.Throwable</pre> 1182<dl> 1183<dt><strong>Overrides:</strong></dt> 1184<dd><code>finalize</code> in class <code>java.lang.Object</code></dd> 1185<dt><span class="strong">Throws:</span></dt> 1186<dd><code>java.lang.Throwable</code></dd></dl> 1187</li> 1188</ul> 1189</li> 1190</ul> 1191</li> 1192</ul> 1193</div> 1194</div> 1195<!-- ========= END OF CLASS DATA ========= --> 1196<!-- ======= START OF BOTTOM NAVBAR ====== --> 1197<div class="bottomNav"><a name="navbar_bottom"> 1198<!-- --> 1199</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow"> 1200<!-- --> 1201</a> 1202<ul class="navList" title="Navigation"> 1203<li><a href="../../../org/libjpegturbo/turbojpeg/package-summary.html">Package</a></li> 1204<li class="navBarCell1Rev">Class</li> 1205<li><a href="package-tree.html">Tree</a></li> 1206<li><a href="../../../deprecated-list.html">Deprecated</a></li> 1207<li><a href="../../../index-all.html">Index</a></li> 1208<li><a href="../../../help-doc.html">Help</a></li> 1209</ul> 1210</div> 1211<div class="subNav"> 1212<ul class="navList"> 1213<li><a href="../../../org/libjpegturbo/turbojpeg/TJCustomFilter.html" title="interface in org.libjpegturbo.turbojpeg"><span class="strong">Prev Class</span></a></li> 1214<li><a href="../../../org/libjpegturbo/turbojpeg/TJException.html" title="class in org.libjpegturbo.turbojpeg"><span class="strong">Next Class</span></a></li> 1215</ul> 1216<ul class="navList"> 1217<li><a href="../../../index.html?org/libjpegturbo/turbojpeg/TJDecompressor.html" target="_top">Frames</a></li> 1218<li><a href="TJDecompressor.html" target="_top">No Frames</a></li> 1219</ul> 1220<ul class="navList" id="allclasses_navbar_bottom"> 1221<li><a href="../../../allclasses-noframe.html">All Classes</a></li> 1222</ul> 1223<div> 1224<script type="text/javascript"><!-- 1225 allClassesLink = document.getElementById("allclasses_navbar_bottom"); 1226 if(window==top) { 1227 allClassesLink.style.display = "block"; 1228 } 1229 else { 1230 allClassesLink.style.display = "none"; 1231 } 1232 //--> 1233</script> 1234</div> 1235<div> 1236<ul class="subNavList"> 1237<li>Summary: </li> 1238<li>Nested | </li> 1239<li><a href="#field_summary">Field</a> | </li> 1240<li><a href="#constructor_summary">Constr</a> | </li> 1241<li><a href="#method_summary">Method</a></li> 1242</ul> 1243<ul class="subNavList"> 1244<li>Detail: </li> 1245<li><a href="#field_detail">Field</a> | </li> 1246<li><a href="#constructor_detail">Constr</a> | </li> 1247<li><a href="#method_detail">Method</a></li> 1248</ul> 1249</div> 1250<a name="skip-navbar_bottom"> 1251<!-- --> 1252</a></div> 1253<!-- ======== END OF BOTTOM NAVBAR ======= --> 1254</body> 1255</html> 1256