diff options
author | dcommander <dcommander@632fc199-4ca6-4c93-a231-07263d6284db> | 2014-08-17 12:23:49 +0000 |
---|---|---|
committer | dcommander <dcommander@632fc199-4ca6-4c93-a231-07263d6284db> | 2014-08-17 12:23:49 +0000 |
commit | 7cf01068d01ad27a42b682b81e1829073f00680a (patch) | |
tree | 2dbb715e1f2e148b178920da98ea63ee59272a59 /java/doc/org | |
parent | 13d2bd8952748c7d38282b8fbc6a5c6a33de43e5 (diff) |
Refactored YUVImage Java class so that it supports both unified YUV image buffers as well as separate YUV image planes; modified the JNI functions accordingly and added new helper functions to the TurboJPEG C API (tjPlaneWidth(), tjPlaneHeight(), tjPlaneSizeYUV()) to facilitate those modifications; changed potentially confusing "component width" and "component height" terms to "plane width" and "plane height" and modified variable names in turbojpeg.c to reflect this; numerous other documentation tweaks
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1360 632fc199-4ca6-4c93-a231-07263d6284db
Diffstat (limited to 'java/doc/org')
-rw-r--r-- | java/doc/org/libjpegturbo/turbojpeg/TJ.html | 124 | ||||
-rw-r--r-- | java/doc/org/libjpegturbo/turbojpeg/TJCompressor.html | 161 | ||||
-rw-r--r-- | java/doc/org/libjpegturbo/turbojpeg/TJCustomFilter.html | 4 | ||||
-rw-r--r-- | java/doc/org/libjpegturbo/turbojpeg/TJDecompressor.html | 284 | ||||
-rw-r--r-- | java/doc/org/libjpegturbo/turbojpeg/TJScalingFactor.html | 8 | ||||
-rw-r--r-- | java/doc/org/libjpegturbo/turbojpeg/TJTransform.html | 14 | ||||
-rw-r--r-- | java/doc/org/libjpegturbo/turbojpeg/TJTransformer.html | 16 | ||||
-rw-r--r-- | java/doc/org/libjpegturbo/turbojpeg/YUVImage.html | 319 |
8 files changed, 646 insertions, 284 deletions
diff --git a/java/doc/org/libjpegturbo/turbojpeg/TJ.html b/java/doc/org/libjpegturbo/turbojpeg/TJ.html index ee22e76..f8342f2 100644 --- a/java/doc/org/libjpegturbo/turbojpeg/TJ.html +++ b/java/doc/org/libjpegturbo/turbojpeg/TJ.html @@ -355,7 +355,7 @@ extends java.lang.Object</pre> </tr> <tr class="altColor"> <td class="colFirst"><code>static int</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSize(int, int, int)">bufSize</a></strong>(int width, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSize(int,%20int,%20int)">bufSize</a></strong>(int width, int height, int jpegSubsamp)</code> <div class="block">Returns the maximum size of the buffer (in bytes) required to hold a JPEG @@ -364,17 +364,17 @@ extends java.lang.Object</pre> </tr> <tr class="rowColor"> <td class="colFirst"><code>static int</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int, int, int)">bufSizeYUV</a></strong>(int width, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int,%20int,%20int)">bufSizeYUV</a></strong>(int width, int height, int subsamp)</code> <div class="block"><strong>Deprecated.</strong> -<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int, int, int, int)"><code>bufSizeYUV(int, int, int, int)</code></a> instead.</i></div> +<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int,%20int,%20int,%20int)"><code>bufSizeYUV(int, int, int, int)</code></a> instead.</i></div> </div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>static int</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int, int, int, int)">bufSizeYUV</a></strong>(int width, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int,%20int,%20int,%20int)">bufSizeYUV</a></strong>(int width, int pad, int height, int subsamp)</code> @@ -430,6 +430,33 @@ extends java.lang.Object</pre> this implementation of TurboJPEG supports.</div> </td> </tr> +<tr class="altColor"> +<td class="colFirst"><code>static int</code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJ.html#planeHeight(int,%20int,%20int)">planeHeight</a></strong>(int componentID, + int height, + int subsamp)</code> +<div class="block">Returns the plane height of a YUV image plane with the given parameters.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>static int</code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJ.html#planeSizeYUV(int,%20int,%20int,%20int,%20int)">planeSizeYUV</a></strong>(int componentID, + int width, + int stride, + int height, + int subsamp)</code> +<div class="block">Returns the size of the buffer (in bytes) required to hold a YUV image + plane with the given parameters.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>static int</code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJ.html#planeWidth(int,%20int,%20int)">planeWidth</a></strong>(int componentID, + int width, + int subsamp)</code> +<div class="block">Returns the plane width of a YUV image plane with the given parameters.</div> +</td> +</tr> </table> <ul class="blockList"> <li class="blockList"><a name="methods_inherited_from_class_java.lang.Object"> @@ -962,7 +989,8 @@ public static final int FLAG_FORCESSE3</pre> subsampling.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>subsamp</code> - the level of chrominance subsampling (one of <code>SAMP_*</code>)</dd> -<dt><span class="strong">Returns:</span></dt><dd>the MCU block width for the given level of chrominance subsampling</dd> +<dt><span class="strong">Returns:</span></dt><dd>the MCU block width for the given level of chrominance + subsampling.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -980,7 +1008,7 @@ public static final int FLAG_FORCESSE3</pre> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>subsamp</code> - the level of chrominance subsampling (one of <code>SAMP_*</code>)</dd> <dt><span class="strong">Returns:</span></dt><dd>the MCU block height for the given level of chrominance - subsampling</dd> + subsampling.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -995,7 +1023,7 @@ public static final int FLAG_FORCESSE3</pre> throws java.lang.Exception</pre> <div class="block">Returns the pixel size (in bytes) for the given pixel format.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>pixelFormat</code> - the pixel format (one of <code>PF_*</code>)</dd> -<dt><span class="strong">Returns:</span></dt><dd>the pixel size (in bytes) for the given pixel format</dd> +<dt><span class="strong">Returns:</span></dt><dd>the pixel size (in bytes) for the given pixel format.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -1014,7 +1042,7 @@ public static final int FLAG_FORCESSE3</pre> then the red component will be <code>pixel[TJ.getRedOffset(TJ.PF_BGRX)]</code>.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>pixelFormat</code> - the pixel format (one of <code>PF_*</code>)</dd> -<dt><span class="strong">Returns:</span></dt><dd>the red offset for the given pixel format</dd> +<dt><span class="strong">Returns:</span></dt><dd>the red offset for the given pixel format.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -1033,7 +1061,7 @@ public static final int FLAG_FORCESSE3</pre> then the green component will be <code>pixel[TJ.getGreenOffset(TJ.PF_BGRX)]</code>.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>pixelFormat</code> - the pixel format (one of <code>PF_*</code>)</dd> -<dt><span class="strong">Returns:</span></dt><dd>the green offset for the given pixel format</dd> +<dt><span class="strong">Returns:</span></dt><dd>the green offset for the given pixel format.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -1052,7 +1080,7 @@ public static final int FLAG_FORCESSE3</pre> then the blue component will be <code>pixel[TJ.getBlueOffset(TJ.PF_BGRX)]</code>.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>pixelFormat</code> - the pixel format (one of <code>PF_*</code>)</dd> -<dt><span class="strong">Returns:</span></dt><dd>the blue offset for the given pixel format</dd> +<dt><span class="strong">Returns:</span></dt><dd>the blue offset for the given pixel format.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -1072,7 +1100,7 @@ public static final int FLAG_FORCESSE3</pre> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>width</code> - the width (in pixels) of the JPEG image</dd><dd><code>height</code> - the height (in pixels) of the JPEG image</dd><dd><code>jpegSubsamp</code> - the level of chrominance subsampling to be used when generating the JPEG image (one of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html" title="class in org.libjpegturbo.turbojpeg"><code>TJ.SAMP_*</code></a>)</dd> <dt><span class="strong">Returns:</span></dt><dd>the maximum size of the buffer (in bytes) required to hold a JPEG - image with the given width, height, and level of chrominance subsampling</dd> + image with the given width, height, and level of chrominance subsampling.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -1091,11 +1119,10 @@ public static final int FLAG_FORCESSE3</pre> <div class="block">Returns the size of the buffer (in bytes) required to hold a YUV planar image with the given width, height, and level of chrominance subsampling.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>width</code> - the width (in pixels) of the YUV image</dd><dd><code>pad</code> - the width of each line in each plane of the image is padded to - the nearest multiple of this number of bytes (must be a power of - 2.)</dd><dd><code>height</code> - the height (in pixels) of the YUV image</dd><dd><code>subsamp</code> - the level of chrominance subsampling used in the YUV + the nearest multiple of this number of bytes (must be a power of 2.)</dd><dd><code>height</code> - the height (in pixels) of the YUV image</dd><dd><code>subsamp</code> - the level of chrominance subsampling used in the YUV image (one of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html" title="class in org.libjpegturbo.turbojpeg"><code>TJ.SAMP_*</code></a>)</dd> <dt><span class="strong">Returns:</span></dt><dd>the size of the buffer (in bytes) required to hold a YUV planar - image with the given width, height, and level of chrominance subsampling</dd> + image with the given width, height, and level of chrominance subsampling.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -1111,11 +1138,76 @@ public static int bufSizeYUV(int width, int height, int subsamp) throws java.lang.Exception</pre> -<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int, int, int, int)"><code>bufSizeYUV(int, int, int, int)</code></a> instead.</i></div> +<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int,%20int,%20int,%20int)"><code>bufSizeYUV(int, int, int, int)</code></a> instead.</i></div> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> </ul> +<a name="planeSizeYUV(int, int, int, int, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>planeSizeYUV</h4> +<pre>public static int planeSizeYUV(int componentID, + int width, + int stride, + int height, + int subsamp) + throws java.lang.Exception</pre> +<div class="block">Returns the size of the buffer (in bytes) required to hold a YUV image + plane with the given parameters.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>componentID</code> - ID number of the image plane (0 = Y, 1 = U/Cb, + 2 = V/Cr)</dd><dd><code>width</code> - width (in pixels) of the YUV image. NOTE: this is the width + of the whole image, not the plane width.</dd><dd><code>stride</code> - bytes per line in the image plane.</dd><dd><code>height</code> - height (in pixels) of the YUV image. NOTE: this is the + height of the whole image, not the plane height.</dd><dd><code>subsamp</code> - the level of chrominance subsampling used in the YUV + image (one of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html" title="class in org.libjpegturbo.turbojpeg"><code>TJ.SAMP_*</code></a>)</dd> +<dt><span class="strong">Returns:</span></dt><dd>the size of the buffer (in bytes) required to hold a YUV planar + image with the given parameters.</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> +<a name="planeWidth(int, int, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>planeWidth</h4> +<pre>public static int planeWidth(int componentID, + int width, + int subsamp) + throws java.lang.Exception</pre> +<div class="block">Returns the plane width of a YUV image plane with the given parameters. + Refer to <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg"><code>YUVImage</code></a> for a description of plane width.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>componentID</code> - ID number of the image plane (0 = Y, 1 = U/Cb, + 2 = V/Cr)</dd><dd><code>width</code> - width (in pixels) of the YUV image</dd><dd><code>subsamp</code> - the level of chrominance subsampling used in the YUV image + (one of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html" title="class in org.libjpegturbo.turbojpeg"><code>TJ.SAMP_*</code></a>)</dd> +<dt><span class="strong">Returns:</span></dt><dd>the plane width of a YUV image plane with the given parameters.</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> +<a name="planeHeight(int, int, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>planeHeight</h4> +<pre>public static int planeHeight(int componentID, + int height, + int subsamp) + throws java.lang.Exception</pre> +<div class="block">Returns the plane height of a YUV image plane with the given parameters. + Refer to <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg"><code>YUVImage</code></a> for a description of plane height.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>componentID</code> - ID number of the image plane (0 = Y, 1 = U/Cb, + 2 = V/Cr)</dd><dd><code>height</code> - height (in pixels) of the YUV image</dd><dd><code>subsamp</code> - the level of chrominance subsampling used in the YUV image + (one of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html" title="class in org.libjpegturbo.turbojpeg"><code>TJ.SAMP_*</code></a>)</dd> +<dt><span class="strong">Returns:</span></dt><dd>the plane height of a YUV image plane with the given parameters.</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> <a name="getScalingFactors()"> <!-- --> </a> @@ -1127,7 +1219,7 @@ public static int bufSizeYUV(int width, <div class="block">Returns a list of fractional scaling factors that the JPEG decompressor in this implementation of TurboJPEG supports.</div> <dl><dt><span class="strong">Returns:</span></dt><dd>a list of fractional scaling factors that the JPEG decompressor in - this implementation of TurboJPEG supports</dd> + this implementation of TurboJPEG supports.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> diff --git a/java/doc/org/libjpegturbo/turbojpeg/TJCompressor.html b/java/doc/org/libjpegturbo/turbojpeg/TJCompressor.html index 6c367a7..9387253 100644 --- a/java/doc/org/libjpegturbo/turbojpeg/TJCompressor.html +++ b/java/doc/org/libjpegturbo/turbojpeg/TJCompressor.html @@ -118,7 +118,7 @@ extends java.lang.Object</pre> </td> </tr> <tr class="rowColor"> -<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#TJCompressor(java.awt.image.BufferedImage, int, int, int, int)">TJCompressor</a></strong>(java.awt.image.BufferedImage srcImage, +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#TJCompressor(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)">TJCompressor</a></strong>(java.awt.image.BufferedImage srcImage, int x, int y, int width, @@ -129,19 +129,19 @@ extends java.lang.Object</pre> </td> </tr> <tr class="altColor"> -<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#TJCompressor(byte[], int, int, int, int)">TJCompressor</a></strong>(byte[] srcImage, +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#TJCompressor(byte[],%20int,%20int,%20int,%20int)">TJCompressor</a></strong>(byte[] srcImage, int width, int pitch, int height, int pixelFormat)</code> <div class="block"><strong>Deprecated.</strong> <div class="block"><i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#TJCompressor(byte[], int, int, int, int, int, int)"><code>TJCompressor(byte[], int, int, int, int, int, int)</code></a> instead.</i></div> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#TJCompressor(byte[],%20int,%20int,%20int,%20int,%20int,%20int)"><code>TJCompressor(byte[], int, int, int, int, int, int)</code></a> instead.</i></div> </div> </td> </tr> <tr class="rowColor"> -<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#TJCompressor(byte[], int, int, int, int, int, int)">TJCompressor</a></strong>(byte[] srcImage, +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#TJCompressor(byte[],%20int,%20int,%20int,%20int,%20int,%20int)">TJCompressor</a></strong>(byte[] srcImage, int x, int y, int width, @@ -176,30 +176,30 @@ extends java.lang.Object</pre> </tr> <tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(java.awt.image.BufferedImage, byte[], int)">compress</a></strong>(java.awt.image.BufferedImage srcImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(java.awt.image.BufferedImage,%20byte[],%20int)">compress</a></strong>(java.awt.image.BufferedImage srcImage, byte[] dstBuf, int flags)</code> <div class="block"><strong>Deprecated.</strong> <div class="block"><i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(byte[], int)"><code>compress(byte[], int)</code></a> instead.</i></div> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(byte[],%20int)"><code>compress(byte[], int)</code></a> instead.</i></div> </div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>byte[]</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(java.awt.image.BufferedImage, int)">compress</a></strong>(java.awt.image.BufferedImage srcImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(java.awt.image.BufferedImage,%20int)">compress</a></strong>(java.awt.image.BufferedImage srcImage, int flags)</code> <div class="block"><strong>Deprecated.</strong> <div class="block"><i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(int)"><code>compress(int)</code></a> instead.</i></div> </div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(byte[], int)">compress</a></strong>(byte[] dstBuf, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(byte[],%20int)">compress</a></strong>(byte[] dstBuf, int flags)</code> <div class="block">Compress the uncompressed source image associated with this compressor instance and output a JPEG image to the given destination buffer.</div> @@ -214,33 +214,33 @@ extends java.lang.Object</pre> </tr> <tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(java.awt.image.BufferedImage, byte[], int)">encodeYUV</a></strong>(java.awt.image.BufferedImage srcImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(java.awt.image.BufferedImage,%20byte[],%20int)">encodeYUV</a></strong>(java.awt.image.BufferedImage srcImage, byte[] dstBuf, int flags)</code> <div class="block"><strong>Deprecated.</strong> <div class="block"><i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(byte[], int)"><code>encodeYUV(byte[], int)</code></a> instead.</i></div> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(byte[],%20int)"><code>encodeYUV(byte[], int)</code></a> instead.</i></div> </div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>byte[]</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(java.awt.image.BufferedImage, int)">encodeYUV</a></strong>(java.awt.image.BufferedImage srcImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(java.awt.image.BufferedImage,%20int)">encodeYUV</a></strong>(java.awt.image.BufferedImage srcImage, int flags)</code> <div class="block"><strong>Deprecated.</strong> <div class="block"><i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int)"><code>encodeYUV(int)</code></a> instead.</i></div> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int,%20int)"><code>encodeYUV(int, int)</code></a> instead.</i></div> </div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(byte[], int)">encodeYUV</a></strong>(byte[] dstBuf, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(byte[],%20int)">encodeYUV</a></strong>(byte[] dstBuf, int flags)</code> <div class="block"><strong>Deprecated.</strong> -<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(org.libjpegturbo.turbojpeg.YUVImage, int)"><code>encodeYUV(YUVImage, int)</code></a> instead.</i></div> +<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(org.libjpegturbo.turbojpeg.YUVImage,%20int)"><code>encodeYUV(YUVImage, int)</code></a> instead.</i></div> </div> </td> </tr> @@ -248,48 +248,57 @@ extends java.lang.Object</pre> <td class="colFirst"><code>byte[]</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int)">encodeYUV</a></strong>(int flags)</code> <div class="block"><strong>Deprecated.</strong> -<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int, int)"><code>encodeYUV(int, int)</code></a> instead.</i></div> +<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int,%20int)"><code>encodeYUV(int, int)</code></a> instead.</i></div> </div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a></code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int, int)">encodeYUV</a></strong>(int pad, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int[],%20int)">encodeYUV</a></strong>(int[] strides, int flags)</code> <div class="block">Encode the uncompressed source image associated with this compressor - instance into a YUV planar image and return a <code>YUVImage</code> - instance containing the encoded image.</div> + instance into separate Y, U (Cb), and V (Cr) image planes and return a + <code>YUVImage</code> instance containing the encoded image planes.</div> </td> </tr> <tr class="altColor"> +<td class="colFirst"><code><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a></code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int,%20int)">encodeYUV</a></strong>(int pad, + int flags)</code> +<div class="block">Encode the uncompressed source image associated with this compressor + instance into a unified YUV planar image buffer and return a + <code>YUVImage</code> instance containing the encoded image.</div> +</td> +</tr> +<tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(org.libjpegturbo.turbojpeg.YUVImage, int)">encodeYUV</a></strong>(<a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> dstImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(org.libjpegturbo.turbojpeg.YUVImage,%20int)">encodeYUV</a></strong>(<a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> dstImage, int flags)</code> <div class="block">Encode the uncompressed source image associated with this compressor instance into a YUV planar image and store it in the given <code>YUVImage</code> instance.</div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>protected void</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#finalize()">finalize</a></strong>()</code> </td> </tr> -<tr class="altColor"> +<tr class="rowColor"> <td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#getCompressedSize()">getCompressedSize</a></strong>()</code> <div class="block">Returns the size of the image (in bytes) generated by the most recent - compress/encode operation.</div> + compress operation.</div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>void</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setJPEGQuality(int)">setJPEGQuality</a></strong>(int quality)</code> <div class="block">Set the JPEG image quality level for subsequent compress operations.</div> </td> </tr> -<tr class="altColor"> +<tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)">setSourceImage</a></strong>(java.awt.image.BufferedImage srcImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)">setSourceImage</a></strong>(java.awt.image.BufferedImage srcImage, int x, int y, int width, @@ -298,22 +307,22 @@ extends java.lang.Object</pre> compressor instance.</div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[], int, int, int, int)">setSourceImage</a></strong>(byte[] srcImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[],%20int,%20int,%20int,%20int)">setSourceImage</a></strong>(byte[] srcImage, int width, int pitch, int height, int pixelFormat)</code> <div class="block"><strong>Deprecated.</strong> <div class="block"><i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[], int, int, int, int, int, int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> instead.</i></div> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[],%20int,%20int,%20int,%20int,%20int,%20int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> instead.</i></div> </div> </td> </tr> -<tr class="altColor"> +<tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[], int, int, int, int, int, int)">setSourceImage</a></strong>(byte[] srcImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[],%20int,%20int,%20int,%20int,%20int,%20int)">setSourceImage</a></strong>(byte[] srcImage, int x, int y, int width, @@ -324,14 +333,14 @@ extends java.lang.Object</pre> compressor instance.</div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>void</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.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> <div class="block">Associate an uncompressed YUV planar source image with this compressor instance.</div> </td> </tr> -<tr class="altColor"> +<tr class="rowColor"> <td class="colFirst"><code>void</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSubsamp(int)">setSubsamp</a></strong>(int newSubsamp)</code> <div class="block">Set the level of chrominance subsampling for subsequent compress/encode @@ -390,7 +399,7 @@ extends java.lang.Object</pre> <div class="block">Create a TurboJPEG compressor instance and associate the uncompressed source image stored in <code>srcImage</code> with the newly created instance.</div> -<dl><dt><span class="strong">Parameters:</span></dt><dd><code>srcImage</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[], int, int, int, int, int, int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>x</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[], int, int, int, int, int, int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>y</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[], int, int, int, int, int, int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>width</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[], int, int, int, int, int, int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>pitch</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[], int, int, int, int, int, int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>height</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[], int, int, int, int, int, int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>pixelFormat</code> - pixel format of the source image (one of +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>srcImage</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[],%20int,%20int,%20int,%20int,%20int,%20int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>x</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[],%20int,%20int,%20int,%20int,%20int,%20int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>y</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[],%20int,%20int,%20int,%20int,%20int,%20int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>width</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[],%20int,%20int,%20int,%20int,%20int,%20int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>pitch</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[],%20int,%20int,%20int,%20int,%20int,%20int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>height</code> - see <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[],%20int,%20int,%20int,%20int,%20int,%20int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> for description</dd><dd><code>pixelFormat</code> - pixel format of the source image (one of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#PF_RGB"><code>TJ.PF_*</code></a>)</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> @@ -410,7 +419,7 @@ public TJCompressor(byte[] srcImage, int pixelFormat) throws java.lang.Exception</pre> <div class="block"><span class="strong">Deprecated.</span> <i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#TJCompressor(byte[], int, int, int, int, int, int)"><code>TJCompressor(byte[], int, int, int, int, int, int)</code></a> instead.</i></div> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#TJCompressor(byte[],%20int,%20int,%20int,%20int,%20int,%20int)"><code>TJCompressor(byte[], int, int, int, int, int, int)</code></a> instead.</i></div> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -431,11 +440,11 @@ public TJCompressor(byte[] srcImage, source image stored in <code>srcImage</code> with the newly created instance.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>srcImage</code> - see - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> for description</dd><dd><code>x</code> - see - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> for description</dd><dd><code>y</code> - see - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> for description</dd><dd><code>width</code> - see - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> for description</dd><dd><code>height</code> - see - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> for description</dd> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> for description</dd><dd><code>x</code> - see + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> for description</dd><dd><code>y</code> - see + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> for description</dd><dd><code>width</code> - see + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> for description</dd><dd><code>height</code> - see + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> for description</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -496,7 +505,7 @@ public void setSourceImage(byte[] srcImage, int pixelFormat) throws java.lang.Exception</pre> <div class="block"><span class="strong">Deprecated.</span> <i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[], int, int, int, int, int, int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> instead.</i></div> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(byte[],%20int,%20int,%20int,%20int,%20int,%20int)"><code>setSourceImage(byte[], int, int, int, int, int, int)</code></a> instead.</i></div> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -599,7 +608,7 @@ public void setSourceImage(byte[] srcImage, <div class="block">Compress the uncompressed source image associated with this compressor instance and output a JPEG image to the given destination buffer.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>dstBuf</code> - buffer that will receive the JPEG image. Use - <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSize(int, int, int)"><code>TJ.bufSize(int, int, int)</code></a> to determine the maximum size for this buffer based on + <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSize(int,%20int,%20int)"><code>TJ.bufSize(int, int, int)</code></a> to determine the maximum size for this buffer based on the source image's width and height and the desired level of chrominance subsampling.</dd><dd><code>flags</code> - the bitwise OR of one or more of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> @@ -637,8 +646,8 @@ public void compress(java.awt.image.BufferedImage srcImage, int flags) throws java.lang.Exception</pre> <div class="block"><span class="strong">Deprecated.</span> <i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(byte[], int)"><code>compress(byte[], int)</code></a> instead.</i></div> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(byte[],%20int)"><code>compress(byte[], int)</code></a> instead.</i></div> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -654,7 +663,7 @@ public byte[] compress(java.awt.image.BufferedImage srcImage, int flags) throws java.lang.Exception</pre> <div class="block"><span class="strong">Deprecated.</span> <i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#compress(int)"><code>compress(int)</code></a> instead.</i></div> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> @@ -692,7 +701,7 @@ public byte[] compress(java.awt.image.BufferedImage srcImage, public void encodeYUV(byte[] dstBuf, int flags) throws java.lang.Exception</pre> -<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(org.libjpegturbo.turbojpeg.YUVImage, int)"><code>encodeYUV(YUVImage, int)</code></a> instead.</i></div> +<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(org.libjpegturbo.turbojpeg.YUVImage,%20int)"><code>encodeYUV(YUVImage, int)</code></a> instead.</i></div> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -707,16 +716,44 @@ public void encodeYUV(byte[] dstBuf, int flags) throws java.lang.Exception</pre> <div class="block">Encode the uncompressed source image associated with this compressor - instance into a YUV planar image and return a <code>YUVImage</code> - instance containing the encoded image. This method uses the accelerated - color conversion routines in TurboJPEG's underlying codec but does not - execute any of the other steps in the JPEG compression process. Encoding - CMYK source images to YUV is not supported.</div> + instance into a unified YUV planar image buffer and return a + <code>YUVImage</code> instance containing the encoded image. This method + uses the accelerated color conversion routines in TurboJPEG's underlying + codec but does not execute any of the other steps in the JPEG compression + process. Encoding CMYK source images to YUV is not supported.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>pad</code> - the width of each line in each plane of the YUV image will be padded to the nearest multiple of this number of bytes (must be a power of 2.)</dd><dd><code>flags</code> - the bitwise OR of one or more of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> -<dt><span class="strong">Returns:</span></dt><dd>a YUV planar image</dd> +<dt><span class="strong">Returns:</span></dt><dd>a YUV planar image.</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> +<a name="encodeYUV(int[], int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>encodeYUV</h4> +<pre>public <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> encodeYUV(int[] strides, + int flags) + throws java.lang.Exception</pre> +<div class="block">Encode the uncompressed source image associated with this compressor + instance into separate Y, U (Cb), and V (Cr) image planes and return a + <code>YUVImage</code> instance containing the encoded image planes. This + method uses the accelerated color conversion routines in TurboJPEG's + underlying codec but does not execute any of the other steps in the JPEG + compression process. Encoding CMYK source images to YUV is not supported.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>strides</code> - an array of integers, each specifying the number of bytes + per line in the corresponding plane of the output image. Setting the + stride for any plane to 0 is the same as setting it to the component width + of the plane. If <code>strides</code> is null, then the strides for all + planes will be set to their respective component widths. You can adjust + the strides in order to add an arbitrary amount of line padding to each + plane.</dd><dd><code>flags</code> - the bitwise OR of one or more of + <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> +<dt><span class="strong">Returns:</span></dt><dd>a YUV planar image.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -730,7 +767,7 @@ public void encodeYUV(byte[] dstBuf, <pre>@Deprecated public byte[] encodeYUV(int flags) throws java.lang.Exception</pre> -<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int, int)"><code>encodeYUV(int, int)</code></a> instead.</i></div> +<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int,%20int)"><code>encodeYUV(int, int)</code></a> instead.</i></div> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -747,8 +784,8 @@ public void encodeYUV(java.awt.image.BufferedImage srcImage, int flags) throws java.lang.Exception</pre> <div class="block"><span class="strong">Deprecated.</span> <i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(byte[], int)"><code>encodeYUV(byte[], int)</code></a> instead.</i></div> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(byte[],%20int)"><code>encodeYUV(byte[], int)</code></a> instead.</i></div> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -764,8 +801,8 @@ public byte[] encodeYUV(java.awt.image.BufferedImage srcImage, int flags) throws java.lang.Exception</pre> <div class="block"><span class="strong">Deprecated.</span> <i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage, int, int, int, int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and - <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int)"><code>encodeYUV(int)</code></a> instead.</i></div> + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#setSourceImage(java.awt.image.BufferedImage,%20int,%20int,%20int,%20int)"><code>setSourceImage(BufferedImage, int, int, int, int)</code></a> and + <a href="../../../org/libjpegturbo/turbojpeg/TJCompressor.html#encodeYUV(int,%20int)"><code>encodeYUV(int, int)</code></a> instead.</i></div> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -778,9 +815,9 @@ public byte[] encodeYUV(java.awt.image.BufferedImage srcImage, <h4>getCompressedSize</h4> <pre>public int getCompressedSize()</pre> <div class="block">Returns the size of the image (in bytes) generated by the most recent - compress/encode operation.</div> + compress operation.</div> <dl><dt><span class="strong">Returns:</span></dt><dd>the size of the image (in bytes) generated by the most recent - compress/encode operation</dd></dl> + compress operation.</dd></dl> </li> </ul> <a name="close()"> diff --git a/java/doc/org/libjpegturbo/turbojpeg/TJCustomFilter.html b/java/doc/org/libjpegturbo/turbojpeg/TJCustomFilter.html index bac519b..c2b6e61 100644 --- a/java/doc/org/libjpegturbo/turbojpeg/TJCustomFilter.html +++ b/java/doc/org/libjpegturbo/turbojpeg/TJCustomFilter.html @@ -106,7 +106,7 @@ </tr> <tr class="altColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCustomFilter.html#customFilter(java.nio.ShortBuffer, java.awt.Rectangle, java.awt.Rectangle, int, int, org.libjpegturbo.turbojpeg.TJTransform)">customFilter</a></strong>(java.nio.ShortBuffer coeffBuffer, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJCustomFilter.html#customFilter(java.nio.ShortBuffer,%20java.awt.Rectangle,%20java.awt.Rectangle,%20int,%20int,%20org.libjpegturbo.turbojpeg.TJTransform)">customFilter</a></strong>(java.nio.ShortBuffer coeffBuffer, java.awt.Rectangle bufferRegion, java.awt.Rectangle planeRegion, int componentID, @@ -162,7 +162,7 @@ <code>coeffBuffer</code> belongs (Y, Cb, and Cr have, respectively, ID's of 0, 1, and 2 in typical JPEG images.)</dd><dd><code>transformID</code> - ID number of the transformed image to which <code>coeffBuffer</code> belongs. This is the same as the index of the - transform in the <code>transforms</code> array that was passed to <a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][], org.libjpegturbo.turbojpeg.TJTransform[], int)"><code>TJTransformer.transform()</code></a>.</dd><dd><code>transform</code> - a <a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html" title="class in org.libjpegturbo.turbojpeg"><code>TJTransform</code></a> instance that specifies the + transform in the <code>transforms</code> array that was passed to <a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][],%20org.libjpegturbo.turbojpeg.TJTransform[],%20int)"><code>TJTransformer.transform()</code></a>.</dd><dd><code>transform</code> - a <a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html" title="class in org.libjpegturbo.turbojpeg"><code>TJTransform</code></a> instance that specifies the parameters and/or cropping region for this transform</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> diff --git a/java/doc/org/libjpegturbo/turbojpeg/TJDecompressor.html b/java/doc/org/libjpegturbo/turbojpeg/TJDecompressor.html index af6a902..faf9b6e 100644 --- a/java/doc/org/libjpegturbo/turbojpeg/TJDecompressor.html +++ b/java/doc/org/libjpegturbo/turbojpeg/TJDecompressor.html @@ -131,19 +131,19 @@ extends java.lang.Object</pre> </tr> <tr class="rowColor"> <td class="colFirst"><code>protected int</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#srcColorspace">srcColorspace</a></strong></code> </td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegColorspace">jpegColorspace</a></strong></code> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>protected int</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#srcHeight">srcHeight</a></strong></code> </td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegHeight">jpegHeight</a></strong></code> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>protected int</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#srcSubsamp">srcSubsamp</a></strong></code> </td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegSubsamp">jpegSubsamp</a></strong></code> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>protected int</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#srcWidth">srcWidth</a></strong></code> </td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegWidth">jpegWidth</a></strong></code> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>protected <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a></code></td> @@ -175,7 +175,7 @@ extends java.lang.Object</pre> </td> </tr> <tr class="altColor"> -<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#TJDecompressor(byte[], int)">TJDecompressor</a></strong>(byte[] jpegImage, +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#TJDecompressor(byte[],%20int)">TJDecompressor</a></strong>(byte[] jpegImage, int imageSize)</code> <div class="block">Create a TurboJPEG decompressor instance and associate the JPEG source image of length <code>imageSize</code> bytes stored in @@ -212,7 +212,7 @@ extends java.lang.Object</pre> </tr> <tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(java.awt.image.BufferedImage, int)">decompress</a></strong>(java.awt.image.BufferedImage dstImage, +<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, int flags)</code> <div class="block">Decompress the JPEG source image or decode the YUV source image associated with this decompressor instance and output a decompressed/decoded image to @@ -221,7 +221,7 @@ extends java.lang.Object</pre> </tr> <tr class="altColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int)">decompress</a></strong>(byte[] dstBuf, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int)">decompress</a></strong>(byte[] dstBuf, int desiredWidth, int pitch, int desiredHeight, @@ -229,13 +229,13 @@ extends java.lang.Object</pre> int flags)</code> <div class="block"><strong>Deprecated.</strong> <div class="block"><i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int, int, int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> instead.</i></div> + <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> </div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int, int, int)">decompress</a></strong>(byte[] dstBuf, +<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, int x, int y, int desiredWidth, @@ -250,7 +250,7 @@ extends java.lang.Object</pre> </tr> <tr class="altColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int[], int, int, int, int, int, int, int)">decompress</a></strong>(int[] dstBuf, +<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, int x, int y, int desiredWidth, @@ -265,7 +265,7 @@ extends java.lang.Object</pre> </tr> <tr class="rowColor"> <td class="colFirst"><code>java.awt.image.BufferedImage</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int, int, int, int)">decompress</a></strong>(int desiredWidth, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int,%20int,%20int,%20int)">decompress</a></strong>(int desiredWidth, int desiredHeight, int bufferedImageType, int flags)</code> @@ -276,7 +276,7 @@ extends java.lang.Object</pre> </tr> <tr class="altColor"> <td class="colFirst"><code>byte[]</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int, int, int, int, int)">decompress</a></strong>(int desiredWidth, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int,%20int,%20int,%20int,%20int)">decompress</a></strong>(int desiredWidth, int pitch, int desiredHeight, int pixelFormat, @@ -287,10 +287,10 @@ extends java.lang.Object</pre> </tr> <tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(byte[], int)">decompressToYUV</a></strong>(byte[] dstBuf, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(byte[],%20int)">decompressToYUV</a></strong>(byte[] dstBuf, int flags)</code> <div class="block"><strong>Deprecated.</strong> -<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage, int)"><code>decompressToYUV(YUVImage, int)</code></a> instead.</i></div> +<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> </div> </td> </tr> @@ -298,128 +298,122 @@ extends java.lang.Object</pre> <td class="colFirst"><code>byte[]</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int)">decompressToYUV</a></strong>(int flags)</code> <div class="block"><strong>Deprecated.</strong> -<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int, int, int, int)"><code>decompressToYUV(int, int, int, int)</code></a> instead.</i></div> +<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> </div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a></code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int, int, int, int)">decompressToYUV</a></strong>(int desiredWidth, - int pad, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int,%20int[],%20int,%20int)">decompressToYUV</a></strong>(int desiredWidth, + int[] strides, int desiredHeight, int flags)</code> <div class="block">Decompress the JPEG source image associated with this decompressor - instance into a YUV planar image and return a <code>YUVImage</code> - instance containing the decompressed image.</div> + instance into a set of Y, U (Cb), and V (Cr) image planes and return a + <code>YUVImage</code> instance containing the decompressed image planes.</div> </td> </tr> <tr class="altColor"> +<td class="colFirst"><code><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a></code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int,%20int,%20int,%20int)">decompressToYUV</a></strong>(int desiredWidth, + int pad, + int desiredHeight, + int flags)</code> +<div class="block">Decompress the JPEG source image associated with this decompressor + instance into a unified YUV planar image buffer and return a + <code>YUVImage</code> instance containing the decompressed image.</div> +</td> +</tr> +<tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage, int)">decompressToYUV</a></strong>(<a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> dstImage, +<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, int flags)</code> <div class="block">Decompress the JPEG source image associated with this decompressor instance into a YUV planar image and store it in the given <code>YUVImage</code> instance.</div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>protected void</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#finalize()">finalize</a></strong>()</code> </td> </tr> -<tr class="altColor"> +<tr class="rowColor"> <td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getColorspace()">getColorspace</a></strong>()</code> <div class="block">Returns the colorspace used in the source image (JPEG or YUV) associated with this decompressor instance.</div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getHeight()">getHeight</a></strong>()</code> <div class="block">Returns the height of the source image (JPEG or YUV) associated with this decompressor instance.</div> </td> </tr> -<tr class="altColor"> +<tr class="rowColor"> <td class="colFirst"><code>byte[]</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getJPEGBuf()">getJPEGBuf</a></strong>()</code> -<div class="block"><strong>Deprecated.</strong> -<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSourceBuf()"><code>getSourceBuf()</code></a> instead.</i></div> -</div> +<div class="block">Returns the JPEG image buffer associated with this decompressor instance.</div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getJPEGSize()">getJPEGSize</a></strong>()</code> -<div class="block"><strong>Deprecated.</strong> -<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSourceSize()"><code>getSourceSize()</code></a> instead.</i></div> -</div> +<div class="block">Returns the size of the JPEG image (in bytes) associated with this + decompressor instance.</div> </td> </tr> -<tr class="altColor"> +<tr class="rowColor"> <td class="colFirst"><code>int</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledHeight(int, int)">getScaledHeight</a></strong>(int desiredWidth, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledHeight(int,%20int)">getScaledHeight</a></strong>(int desiredWidth, int desiredHeight)</code> <div class="block">Returns the height of the largest scaled-down image that the TurboJPEG decompressor can generate without exceeding the desired image width and height.</div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>int</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledWidth(int, int)">getScaledWidth</a></strong>(int desiredWidth, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledWidth(int,%20int)">getScaledWidth</a></strong>(int desiredWidth, int desiredHeight)</code> <div class="block">Returns the width of the largest scaled-down image that the TurboJPEG decompressor can generate without exceeding the desired image width and height.</div> </td> </tr> -<tr class="altColor"> -<td class="colFirst"><code>byte[]</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSourceBuf()">getSourceBuf</a></strong>()</code> -<div class="block">Returns the source image buffer associated with this decompressor - instance.</div> -</td> -</tr> <tr class="rowColor"> <td class="colFirst"><code>int</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSourceSize()">getSourceSize</a></strong>()</code> -<div class="block">Returns the size of the source image (in bytes) associated with this - decompressor instance.</div> -</td> -</tr> -<tr class="altColor"> -<td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSubsamp()">getSubsamp</a></strong>()</code> <div class="block">Returns the level of chrominance subsampling used in the source image (JPEG or YUV) associated with this decompressor instance.</div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getWidth()">getWidth</a></strong>()</code> <div class="block">Returns the width of the source image (JPEG or YUV) associated with this decompressor instance.</div> </td> </tr> -<tr class="altColor"> +<tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setJPEGImage(byte[], int)">setJPEGImage</a></strong>(byte[] jpegImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setJPEGImage(byte[],%20int)">setJPEGImage</a></strong>(byte[] jpegImage, int imageSize)</code> <div class="block"><strong>Deprecated.</strong> -<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(byte[], int)"><code>setSourceImage(byte[], int)</code></a> instead.</i></div> +<div class="block"><i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(byte[],%20int)"><code>setSourceImage(byte[], int)</code></a> instead.</i></div> </div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(byte[], int)">setSourceImage</a></strong>(byte[] srcImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(byte[],%20int)">setSourceImage</a></strong>(byte[] jpegImage, int imageSize)</code> <div class="block">Associate the JPEG image of length <code>imageSize</code> bytes stored in - <code>srcImage</code> with this decompressor instance.</div> + <code>jpegImage</code> with this decompressor instance.</div> </td> </tr> -<tr class="altColor"> +<tr class="rowColor"> <td class="colFirst"><code>void</code></td> <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> <div class="block">Associate the specified YUV planar source image with this decompressor @@ -484,40 +478,40 @@ extends java.lang.Object</pre> <pre>protected <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> yuvImage</pre> </li> </ul> -<a name="srcWidth"> +<a name="jpegWidth"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> -<h4>srcWidth</h4> -<pre>protected int srcWidth</pre> +<h4>jpegWidth</h4> +<pre>protected int jpegWidth</pre> </li> </ul> -<a name="srcHeight"> +<a name="jpegHeight"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> -<h4>srcHeight</h4> -<pre>protected int srcHeight</pre> +<h4>jpegHeight</h4> +<pre>protected int jpegHeight</pre> </li> </ul> -<a name="srcSubsamp"> +<a name="jpegSubsamp"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> -<h4>srcSubsamp</h4> -<pre>protected int srcSubsamp</pre> +<h4>jpegSubsamp</h4> +<pre>protected int jpegSubsamp</pre> </li> </ul> -<a name="srcColorspace"> +<a name="jpegColorspace"> <!-- --> </a> <ul class="blockListLast"> <li class="blockList"> -<h4>srcColorspace</h4> -<pre>protected int srcColorspace</pre> +<h4>jpegColorspace</h4> +<pre>protected int jpegColorspace</pre> </li> </ul> </li> @@ -605,13 +599,13 @@ extends java.lang.Object</pre> <ul class="blockList"> <li class="blockList"> <h4>setSourceImage</h4> -<pre>public void setSourceImage(byte[] srcImage, +<pre>public void setSourceImage(byte[] jpegImage, int imageSize) throws java.lang.Exception</pre> <div class="block">Associate the JPEG image of length <code>imageSize</code> bytes stored in - <code>srcImage</code> with this decompressor instance. This image will + <code>jpegImage</code> with this decompressor instance. This image will be used as the source image for subsequent decompress operations.</div> -<dl><dt><span class="strong">Parameters:</span></dt><dd><code>srcImage</code> - JPEG image buffer</dd><dd><code>imageSize</code> - size of the JPEG image (in bytes)</dd> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>jpegImage</code> - JPEG image buffer</dd><dd><code>imageSize</code> - size of the JPEG image (in bytes)</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -626,7 +620,7 @@ extends java.lang.Object</pre> public void setJPEGImage(byte[] jpegImage, int imageSize) throws java.lang.Exception</pre> -<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(byte[], int)"><code>setSourceImage(byte[], int)</code></a> instead.</i></div> +<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> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -659,7 +653,7 @@ public void setJPEGImage(byte[] jpegImage, <div class="block">Returns the width of the source image (JPEG or YUV) associated with this decompressor instance.</div> <dl><dt><span class="strong">Returns:</span></dt><dd>the width of the source image (JPEG or YUV) associated with this - decompressor instance</dd> + decompressor instance.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -675,7 +669,7 @@ public void setJPEGImage(byte[] jpegImage, <div class="block">Returns the height of the source image (JPEG or YUV) associated with this decompressor instance.</div> <dl><dt><span class="strong">Returns:</span></dt><dd>the height of the source image (JPEG or YUV) associated with this - decompressor instance</dd> + decompressor instance.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -692,7 +686,7 @@ public void setJPEGImage(byte[] jpegImage, (JPEG or YUV) associated with this decompressor instance. See <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#SAMP_444"><code>TJ.SAMP_*</code></a>.</div> <dl><dt><span class="strong">Returns:</span></dt><dd>the level of chrominance subsampling used in the source image - (JPEG or YUV) associated with this decompressor instance</dd> + (JPEG or YUV) associated with this decompressor instance.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -709,22 +703,7 @@ public void setJPEGImage(byte[] jpegImage, with this decompressor instance. See <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#CS_RGB"><code>TJ.CS_*</code></a>. If the source image is YUV, then this always returns <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#CS_YCbCr"><code>TJ.CS_YCbCr</code></a>.</div> <dl><dt><span class="strong">Returns:</span></dt><dd>the colorspace used in the source image (JPEG or YUV) associated - with this decompressor instance</dd> -<dt><span class="strong">Throws:</span></dt> -<dd><code>java.lang.Exception</code></dd></dl> -</li> -</ul> -<a name="getSourceBuf()"> -<!-- --> -</a> -<ul class="blockList"> -<li class="blockList"> -<h4>getSourceBuf</h4> -<pre>public byte[] getSourceBuf() - throws java.lang.Exception</pre> -<div class="block">Returns the source image buffer associated with this decompressor - instance.</div> -<dl><dt><span class="strong">Returns:</span></dt><dd>the source image buffer associated with this decompressor instance</dd> + with this decompressor instance.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -735,26 +714,10 @@ public void setJPEGImage(byte[] jpegImage, <ul class="blockList"> <li class="blockList"> <h4>getJPEGBuf</h4> -<pre>@Deprecated -public byte[] getJPEGBuf() +<pre>public byte[] getJPEGBuf() throws java.lang.Exception</pre> -<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSourceBuf()"><code>getSourceBuf()</code></a> instead.</i></div> -<dl><dt><span class="strong">Throws:</span></dt> -<dd><code>java.lang.Exception</code></dd></dl> -</li> -</ul> -<a name="getSourceSize()"> -<!-- --> -</a> -<ul class="blockList"> -<li class="blockList"> -<h4>getSourceSize</h4> -<pre>public int getSourceSize() - throws java.lang.Exception</pre> -<div class="block">Returns the size of the source image (in bytes) associated with this - decompressor instance.</div> -<dl><dt><span class="strong">Returns:</span></dt><dd>the size of the source image (in bytes) associated with this - decompressor instance</dd> +<div class="block">Returns the JPEG image buffer associated with this decompressor instance.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the JPEG image buffer associated with this decompressor instance.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -765,11 +728,13 @@ public byte[] getJPEGBuf() <ul class="blockList"> <li class="blockList"> <h4>getJPEGSize</h4> -<pre>@Deprecated -public int getJPEGSize() +<pre>public int getJPEGSize() throws java.lang.Exception</pre> -<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSourceSize()"><code>getSourceSize()</code></a> instead.</i></div> -<dl><dt><span class="strong">Throws:</span></dt> +<div class="block">Returns the size of the JPEG image (in bytes) associated with this + decompressor instance.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the size of the JPEG image (in bytes) associated with this + decompressor instance.</dd> +<dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> </ul> @@ -794,7 +759,7 @@ public int getJPEGSize() the scaled image size.)</dd> <dt><span class="strong">Returns:</span></dt><dd>the width of the largest scaled-down image that the TurboJPEG decompressor can generate without exceeding the desired image width and - height</dd> + height.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -820,7 +785,7 @@ public int getJPEGSize() the scaled image size.)</dd> <dt><span class="strong">Returns:</span></dt><dd>the height of the largest scaled-down image that the TurboJPEG decompressor can generate without exceeding the desired image width and - height</dd> + height.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -848,7 +813,7 @@ public int getJPEGSize() <code>pitch * scaledHeight</code> bytes in size, where <code>scaledHeight</code> can be determined by calling <code> scalingFactor.<a href="../../../org/libjpegturbo/turbojpeg/TJScalingFactor.html#getScaled(int)"><code>getScaled</code></a>(jpegHeight) - </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, int)"><code>getScaledHeight(int, int)</code></a>. If the + </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 source image is a YUV image, then this buffer should normally be <code>pitch * height</code> bytes in size, where <code>height</code> is the height of the YUV image. However, the buffer may also be larger than @@ -872,7 +837,7 @@ public int getJPEGSize() if the source image is a JPEG image, then <code>scaledWidth</code> can be determined by calling <code> scalingFactor.<a href="../../../org/libjpegturbo/turbojpeg/TJScalingFactor.html#getScaled(int)"><code>getScaled</code></a>(jpegWidth) - </code> or by calling <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledWidth(int, int)"><code>getScaledWidth(int, int)</code></a>. If the source image is a + </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 YUV image, then <code>scaledWidth</code> is the width of the YUV image. Setting this parameter to 0 is the equivalent of setting it to <code>scaledWidth * TJ.pixelSize(pixelFormat)</code>.</dd><dd><code>desiredHeight</code> - If the source image is a JPEG image, then this @@ -905,7 +870,7 @@ public void decompress(byte[] dstBuf, int flags) throws java.lang.Exception</pre> <div class="block"><span class="strong">Deprecated.</span> <i>Use - <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int, int, int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> instead.</i></div> + <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> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -925,15 +890,15 @@ public void decompress(byte[] dstBuf, <div class="block">Decompress the JPEG source image associated with this decompressor instance and return a buffer containing the decompressed image.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>desiredWidth</code> - see - <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int, int, int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> + <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 description</dd><dd><code>pitch</code> - see - <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int, int, int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> + <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 description</dd><dd><code>desiredHeight</code> - see - <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int, int, int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> + <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 description</dd><dd><code>pixelFormat</code> - pixel format of the decompressed image (one of <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 <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> -<dt><span class="strong">Returns:</span></dt><dd>a buffer containing the decompressed image</dd> +<dt><span class="strong">Returns:</span></dt><dd>a buffer containing the decompressed image.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -974,11 +939,54 @@ public void decompress(byte[] dstBuf, public void decompressToYUV(byte[] dstBuf, int flags) throws java.lang.Exception</pre> -<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage, int)"><code>decompressToYUV(YUVImage, int)</code></a> instead.</i></div> +<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> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> </ul> +<a name="decompressToYUV(int, int[], int, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>decompressToYUV</h4> +<pre>public <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg">YUVImage</a> decompressToYUV(int desiredWidth, + int[] strides, + int desiredHeight, + int flags) + throws java.lang.Exception</pre> +<div class="block">Decompress the JPEG source image associated with this decompressor + instance into a set of Y, U (Cb), and V (Cr) image planes and return a + <code>YUVImage</code> instance containing the decompressed image planes. + This method performs JPEG decompression but leaves out the color + conversion step, so a planar YUV image is generated instead of an RGB or + grayscale image. This method cannot be used to decompress JPEG source + images with the CMYK or YCCK colorspace.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>desiredWidth</code> - desired width (in pixels) of the YUV image. If the + desired image dimensions are different than the dimensions of the JPEG + image being decompressed, then TurboJPEG will use scaling in the JPEG + decompressor to generate the largest possible image that will fit within + the desired dimensions. Setting this to 0 is the same as setting it to + the width of the JPEG image (in other words, the width will not be + considered when determining the scaled image size.)</dd><dd><code>strides</code> - an array of integers, each specifying the number of bytes + per line in the corresponding plane of the output image. Setting the + stride for any plane to 0 is the same as setting it to the scaled + component width of the plane. If <tt>strides</tt> is NULL, then the + strides for all planes will be set to their respective scaled component + widths. You can adjust the strides in order to add an arbitrary amount of + line padding to each plane.</dd><dd><code>desiredHeight</code> - desired height (in pixels) of the YUV image. If the + desired image dimensions are different than the dimensions of the JPEG + image being decompressed, then TurboJPEG will use scaling in the JPEG + decompressor to generate the largest possible image that will fit within + the desired dimensions. Setting this to 0 is the same as setting it to + the height of the JPEG image (in other words, the height will not be + considered when determining the scaled image size.)</dd><dd><code>flags</code> - the bitwise OR of one or more of + <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> +<dt><span class="strong">Returns:</span></dt><dd>a YUV planar image.</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> <a name="decompressToYUV(int, int, int, int)"> <!-- --> </a> @@ -991,12 +999,12 @@ public void decompressToYUV(byte[] dstBuf, int flags) throws java.lang.Exception</pre> <div class="block">Decompress the JPEG source image associated with this decompressor - instance into a YUV planar image and return a <code>YUVImage</code> - instance containing the decompressed image. This method performs JPEG - decompression but leaves out the color conversion step, so a planar YUV - image is generated instead of an RGB or grayscale image. This method - cannot be used to decompress JPEG source images with the CMYK or YCCK - colorspace.</div> + instance into a unified YUV planar image buffer and return a + <code>YUVImage</code> instance containing the decompressed image. This + method performs JPEG decompression but leaves out the color conversion + step, so a planar YUV image is generated instead of an RGB or grayscale + image. This method cannot be used to decompress JPEG source images with + the CMYK or YCCK colorspace.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>desiredWidth</code> - desired width (in pixels) of the YUV image. If the desired image dimensions are different than the dimensions of the JPEG image being decompressed, then TurboJPEG will use scaling in the JPEG @@ -1013,7 +1021,7 @@ public void decompressToYUV(byte[] dstBuf, the height of the JPEG image (in other words, the height will not be considered when determining the scaled image size.)</dd><dd><code>flags</code> - the bitwise OR of one or more of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> -<dt><span class="strong">Returns:</span></dt><dd>a YUV planar image</dd> +<dt><span class="strong">Returns:</span></dt><dd>a YUV planar image.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -1027,7 +1035,7 @@ public void decompressToYUV(byte[] dstBuf, <pre>@Deprecated public byte[] decompressToYUV(int flags) throws java.lang.Exception</pre> -<div class="block"><span class="strong">Deprecated.</span> <i>Use <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int, int, int, int)"><code>decompressToYUV(int, int, int, int)</code></a> instead.</i></div> +<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> <dl><dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -1055,7 +1063,7 @@ public byte[] decompressToYUV(int flags) <code>stride * scaledHeight</code> pixels in size, where <code>scaledHeight</code> can be determined by calling <code> scalingFactor.<a href="../../../org/libjpegturbo/turbojpeg/TJScalingFactor.html#getScaled(int)"><code>getScaled</code></a>(jpegHeight) - </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, int)"><code>getScaledHeight(int, int)</code></a>. If the + </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 source image is a YUV image, then this buffer should normally be <code>stride * height</code> pixels in size, where <code>height</code> is the height of the YUV image. However, the buffer may also be larger than @@ -1077,7 +1085,7 @@ public byte[] decompressToYUV(int flags) NOTE: if the source image is a JPEG image, then <code>scaledWidth</code> can be determined by calling <code> scalingFactor.<a href="../../../org/libjpegturbo/turbojpeg/TJScalingFactor.html#getScaled(int)"><code>getScaled</code></a>(jpegWidth) - </code> or by calling <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledWidth(int, int)"><code>getScaledWidth(int, int)</code></a>. If the source image is a + </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 YUV image, then <code>scaledWidth</code> is the width of the YUV image. Setting this parameter to 0 is the equivalent of setting it to <code>scaledWidth</code>.</dd><dd><code>desiredHeight</code> - If the source image is a JPEG image, then this @@ -1134,15 +1142,15 @@ public byte[] decompressToYUV(int flags) with this decompressor instance and return a <code>BufferedImage</code> instance containing the decompressed/decoded image.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>desiredWidth</code> - see - <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int, int, int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> for + <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 description</dd><dd><code>desiredHeight</code> - see - <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int, int, int)"><code>decompress(byte[], int, int, int, int, int, int, int)</code></a> for + <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 description</dd><dd><code>bufferedImageType</code> - the image type of the <code>BufferedImage</code> instance that will be created (for instance, <code>BufferedImage.TYPE_INT_RGB</code>)</dd><dd><code>flags</code> - the bitwise OR of one or more of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> <dt><span class="strong">Returns:</span></dt><dd>a <code>BufferedImage</code> instance containing the - decompressed/decoded image</dd> + decompressed/decoded image.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> diff --git a/java/doc/org/libjpegturbo/turbojpeg/TJScalingFactor.html b/java/doc/org/libjpegturbo/turbojpeg/TJScalingFactor.html index 1b90147..c28c00c 100644 --- a/java/doc/org/libjpegturbo/turbojpeg/TJScalingFactor.html +++ b/java/doc/org/libjpegturbo/turbojpeg/TJScalingFactor.html @@ -113,7 +113,7 @@ extends java.lang.Object</pre> <th class="colOne" scope="col">Constructor and Description</th> </tr> <tr class="altColor"> -<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJScalingFactor.html#TJScalingFactor(int, int)">TJScalingFactor</a></strong>(int num, +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJScalingFactor.html#TJScalingFactor(int,%20int)">TJScalingFactor</a></strong>(int num, int denom)</code> </td> </tr> </table> @@ -238,7 +238,7 @@ extends java.lang.Object</pre> <div class="block">Returns the scaled value of <code>dimension</code>. This function performs the integer equivalent of <code>ceil(dimension * scalingFactor)</code>.</div> -<dl><dt><span class="strong">Returns:</span></dt><dd>the scaled value of <code>dimension</code></dd></dl> +<dl><dt><span class="strong">Returns:</span></dt><dd>the scaled value of <code>dimension</code>.</dd></dl> </li> </ul> <a name="equals(org.libjpegturbo.turbojpeg.TJScalingFactor)"> @@ -251,7 +251,7 @@ extends java.lang.Object</pre> <div class="block">Returns true or false, depending on whether this instance and <code>other</code> have the same numerator and denominator.</div> <dl><dt><span class="strong">Returns:</span></dt><dd>true or false, depending on whether this instance and - <code>other</code> have the same numerator and denominator</dd></dl> + <code>other</code> have the same numerator and denominator.</dd></dl> </li> </ul> <a name="isOne()"> @@ -264,7 +264,7 @@ extends java.lang.Object</pre> <div class="block">Returns true or false, depending on whether this instance is equal to 1/1.</div> <dl><dt><span class="strong">Returns:</span></dt><dd>true or false, depending on whether this instance is equal to - 1/1</dd></dl> + 1/1.</dd></dl> </li> </ul> </li> diff --git a/java/doc/org/libjpegturbo/turbojpeg/TJTransform.html b/java/doc/org/libjpegturbo/turbojpeg/TJTransform.html index b4bd5cc..daabfb3 100644 --- a/java/doc/org/libjpegturbo/turbojpeg/TJTransform.html +++ b/java/doc/org/libjpegturbo/turbojpeg/TJTransform.html @@ -231,14 +231,14 @@ extends java.awt.Rectangle</pre> <tr class="rowColor"> <td class="colFirst"><code>static int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html#OPT_NOOUTPUT">OPT_NOOUTPUT</a></strong></code> -<div class="block">This option will prevent <a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][], org.libjpegturbo.turbojpeg.TJTransform[], int)"><code>TJTransformer.transform()</code></a> from outputting a JPEG image for this +<div class="block">This option will prevent <a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][],%20org.libjpegturbo.turbojpeg.TJTransform[],%20int)"><code>TJTransformer.transform()</code></a> from outputting a JPEG image for this particular transform.</div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>static int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html#OPT_PERFECT">OPT_PERFECT</a></strong></code> -<div class="block">This option will cause <a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][], org.libjpegturbo.turbojpeg.TJTransform[], int)"><code>TJTransformer.transform()</code></a> to throw an exception if the transform is not +<div class="block">This option will cause <a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][],%20org.libjpegturbo.turbojpeg.TJTransform[],%20int)"><code>TJTransformer.transform()</code></a> to throw an exception if the transform is not perfect.</div> </td> </tr> @@ -289,7 +289,7 @@ extends java.awt.Rectangle</pre> </td> </tr> <tr class="rowColor"> -<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html#TJTransform(int, int, int, int, int, int, org.libjpegturbo.turbojpeg.TJCustomFilter)">TJTransform</a></strong>(int x, +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html#TJTransform(int,%20int,%20int,%20int,%20int,%20int,%20org.libjpegturbo.turbojpeg.TJCustomFilter)">TJTransform</a></strong>(int x, int y, int w, int h, @@ -300,7 +300,7 @@ extends java.awt.Rectangle</pre> </td> </tr> <tr class="altColor"> -<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html#TJTransform(java.awt.Rectangle, int, int, org.libjpegturbo.turbojpeg.TJCustomFilter)">TJTransform</a></strong>(java.awt.Rectangle r, +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html#TJTransform(java.awt.Rectangle,%20int,%20int,%20org.libjpegturbo.turbojpeg.TJCustomFilter)">TJTransform</a></strong>(java.awt.Rectangle r, int op, int options, <a href="../../../org/libjpegturbo/turbojpeg/TJCustomFilter.html" title="interface in org.libjpegturbo.turbojpeg">TJCustomFilter</a> cf)</code> @@ -486,7 +486,7 @@ extends java.awt.Rectangle</pre> <li class="blockList"> <h4>OPT_PERFECT</h4> <pre>public static final int OPT_PERFECT</pre> -<div class="block">This option will cause <a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][], org.libjpegturbo.turbojpeg.TJTransform[], int)"><code>TJTransformer.transform()</code></a> to throw an exception if the transform is not +<div class="block">This option will cause <a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][],%20org.libjpegturbo.turbojpeg.TJTransform[],%20int)"><code>TJTransformer.transform()</code></a> to throw an exception if the transform is not perfect. Lossless transforms operate on MCU blocks, whose size depends on the level of chrominance subsampling used. If the image's width or height is not evenly divisible by the MCU block size (see <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#getMCUWidth(int)"><code>TJ.getMCUWidth(int)</code></a> @@ -541,7 +541,7 @@ extends java.awt.Rectangle</pre> <li class="blockList"> <h4>OPT_NOOUTPUT</h4> <pre>public static final int OPT_NOOUTPUT</pre> -<div class="block">This option will prevent <a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][], org.libjpegturbo.turbojpeg.TJTransform[], int)"><code>TJTransformer.transform()</code></a> from outputting a JPEG image for this +<div class="block">This option will prevent <a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][],%20org.libjpegturbo.turbojpeg.TJTransform[],%20int)"><code>TJTransformer.transform()</code></a> from outputting a JPEG image for this particular transform. This can be used in conjunction with a custom filter to capture the transformed DCT coefficients without transcoding them.</div> @@ -636,7 +636,7 @@ extends java.awt.Rectangle</pre> throws java.lang.Exception</pre> <div class="block">Create a new lossless transform instance with the given parameters.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>r</code> - a <code>Rectangle</code> instance that specifies the cropping - region. See <a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html#TJTransform(int, int, int, int, int, int, org.libjpegturbo.turbojpeg.TJCustomFilter)"><code>TJTransform(int, int, int, int, int, int, TJCustomFilter)</code></a> for more + region. See <a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html#TJTransform(int,%20int,%20int,%20int,%20int,%20int,%20org.libjpegturbo.turbojpeg.TJCustomFilter)"><code>TJTransform(int, int, int, int, int, int, TJCustomFilter)</code></a> for more detail.</dd><dd><code>op</code> - one of the transform operations (<code>OP_*</code>)</dd><dd><code>options</code> - the bitwise OR of one or more of the transform options (<code>OPT_*</code>)</dd><dd><code>cf</code> - an instance of an object that implements the <a href="../../../org/libjpegturbo/turbojpeg/TJCustomFilter.html" title="interface in org.libjpegturbo.turbojpeg"><code>TJCustomFilter</code></a> interface, or null if no custom filter is needed</dd> <dt><span class="strong">Throws:</span></dt> diff --git a/java/doc/org/libjpegturbo/turbojpeg/TJTransformer.html b/java/doc/org/libjpegturbo/turbojpeg/TJTransformer.html index 3be18ec..333f3eb 100644 --- a/java/doc/org/libjpegturbo/turbojpeg/TJTransformer.html +++ b/java/doc/org/libjpegturbo/turbojpeg/TJTransformer.html @@ -117,7 +117,7 @@ extends <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title= <!-- --> </a> <h3>Fields inherited from class org.libjpegturbo.turbojpeg.<a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg">TJDecompressor</a></h3> -<code><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#handle">handle</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegBuf">jpegBuf</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegBufSize">jpegBufSize</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#srcColorspace">srcColorspace</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#srcHeight">srcHeight</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#srcSubsamp">srcSubsamp</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#srcWidth">srcWidth</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#yuvImage">yuvImage</a></code></li> +<code><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#handle">handle</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegBuf">jpegBuf</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegBufSize">jpegBufSize</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegColorspace">jpegColorspace</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegHeight">jpegHeight</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegSubsamp">jpegSubsamp</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#jpegWidth">jpegWidth</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#yuvImage">yuvImage</a></code></li> </ul> </li> </ul> @@ -144,7 +144,7 @@ extends <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title= </td> </tr> <tr class="altColor"> -<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#TJTransformer(byte[], int)">TJTransformer</a></strong>(byte[] jpegImage, +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#TJTransformer(byte[],%20int)">TJTransformer</a></strong>(byte[] jpegImage, int imageSize)</code> <div class="block">Create a TurboJPEG lossless transformer instance and associate the JPEG image of length <code>imageSize</code> bytes stored in @@ -175,7 +175,7 @@ extends <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title= </tr> <tr class="rowColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][], org.libjpegturbo.turbojpeg.TJTransform[], int)">transform</a></strong>(byte[][] dstBufs, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(byte[][],%20org.libjpegturbo.turbojpeg.TJTransform[],%20int)">transform</a></strong>(byte[][] dstBufs, <a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[] transforms, int flags)</code> <div class="block">Losslessly transform the JPEG image associated with this transformer @@ -185,7 +185,7 @@ extends <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title= </tr> <tr class="altColor"> <td class="colFirst"><code><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg">TJDecompressor</a>[]</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(org.libjpegturbo.turbojpeg.TJTransform[], int)">transform</a></strong>(<a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[] transforms, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/TJTransformer.html#transform(org.libjpegturbo.turbojpeg.TJTransform[],%20int)">transform</a></strong>(<a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html" title="class in org.libjpegturbo.turbojpeg">TJTransform</a>[] transforms, int flags)</code> <div class="block">Losslessly transform the JPEG image associated with this transformer instance and return an array of <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg"><code>TJDecompressor</code></a> instances, each of @@ -198,7 +198,7 @@ extends <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title= <!-- --> </a> <h3>Methods inherited from class org.libjpegturbo.turbojpeg.<a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg">TJDecompressor</a></h3> -<code><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#close()">close</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(java.awt.image.BufferedImage, int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[], int, int, int, int, int, int, int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int[], int, int, int, int, int, int, int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int, int, int, int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int, int, int, int, int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(byte[], int)">decompressToYUV</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int)">decompressToYUV</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int, int, int, int)">decompressToYUV</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage, int)">decompressToYUV</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#finalize()">finalize</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getColorspace()">getColorspace</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getHeight()">getHeight</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getJPEGBuf()">getJPEGBuf</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getJPEGSize()">getJPEGSize</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledHeight(int, int)">getScaledHeight</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledWidth(int, int)">getScaledWidth</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSourceBuf()">getSourceBuf</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSourceSize()">getSourceSize</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSubsamp()">getSubsamp</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getWidth()">getWidth</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setJPEGImage(byte[], int)">setJPEGImage</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(byte[], int)">setSourceImage</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(org.libjpegturbo.turbojpeg.YUVImage)">setSourceImage</a></code></li> +<code><a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#close()">close</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(java.awt.image.BufferedImage,%20int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(byte[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int[],%20int,%20int,%20int,%20int,%20int,%20int,%20int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int,%20int,%20int,%20int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompress(int,%20int,%20int,%20int,%20int)">decompress</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(byte[],%20int)">decompressToYUV</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int)">decompressToYUV</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int,%20int[],%20int,%20int)">decompressToYUV</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(int,%20int,%20int,%20int)">decompressToYUV</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage,%20int)">decompressToYUV</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#finalize()">finalize</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getColorspace()">getColorspace</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getHeight()">getHeight</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getJPEGBuf()">getJPEGBuf</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getJPEGSize()">getJPEGSize</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledHeight(int,%20int)">getScaledHeight</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getScaledWidth(int,%20int)">getScaledWidth</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getSubsamp()">getSubsamp</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#getWidth()">getWidth</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setJPEGImage(byte[],%20int)">setJPEGImage</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(byte[],%20int)">setSourceImage</a>, <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html#setSourceImage(org.libjpegturbo.turbojpeg.YUVImage)">setSourceImage</a></code></li> </ul> <ul class="blockList"> <li class="blockList"><a name="methods_inherited_from_class_java.lang.Object"> @@ -299,7 +299,7 @@ extends <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title= read the source coefficients multiple times.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>dstBufs</code> - an array of image buffers. <code>dstbufs[i]</code> will receive a JPEG image that has been transformed using the parameters in - <code>transforms[i]</code>. Use <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSize(int, int, int)"><code>TJ.bufSize(int, int, int)</code></a> to determine the + <code>transforms[i]</code>. Use <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSize(int,%20int,%20int)"><code>TJ.bufSize(int, int, int)</code></a> to determine the maximum size for each buffer based on the transformed or cropped width and height and the level of subsampling used in the source image.</dd><dd><code>transforms</code> - an array of <a href="../../../org/libjpegturbo/turbojpeg/TJTransform.html" title="class in org.libjpegturbo.turbojpeg"><code>TJTransform</code></a> instances, each of which specifies the transform parameters and/or cropping region for the @@ -326,7 +326,7 @@ extends <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title= corresponding transformed output image</dd><dd><code>flags</code> - the bitwise OR of one or more of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#FLAG_BOTTOMUP"><code>TJ.FLAG_*</code></a></dd> <dt><span class="strong">Returns:</span></dt><dd>an array of <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title="class in org.libjpegturbo.turbojpeg"><code>TJDecompressor</code></a> instances, each of - which has a transformed JPEG image associated with it</dd> + which has a transformed JPEG image associated with it.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -342,7 +342,7 @@ extends <a href="../../../org/libjpegturbo/turbojpeg/TJDecompressor.html" title= <div class="block">Returns an array containing the sizes of the transformed JPEG images generated by the most recent transform operation.</div> <dl><dt><span class="strong">Returns:</span></dt><dd>an array containing the sizes of the transformed JPEG images - generated by the most recent transform operation</dd> + generated by the most recent transform operation.</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> diff --git a/java/doc/org/libjpegturbo/turbojpeg/YUVImage.html b/java/doc/org/libjpegturbo/turbojpeg/YUVImage.html index 3e7a6e8..0a3e0a5 100644 --- a/java/doc/org/libjpegturbo/turbojpeg/YUVImage.html +++ b/java/doc/org/libjpegturbo/turbojpeg/YUVImage.html @@ -108,20 +108,18 @@ extends java.lang.Object</pre> image format consisting of Y, Cb, and Cr image planes. <p> Each plane is simply a 2D array of bytes, each byte representing the value - of one of the components at a particular location in the image. The - "component width" and "component height" of each plane are determined by the - image width, height, and level of chrominance subsampling. For the - luminance plane, the component width is the image width padded to the - nearest multiple of the horizontal subsampling factor (2 in the case of - 4:2:0 and 4:2:2, 4 in the case of 4:1:1, 1 in the case of 4:4:4 or - grayscale.) Similarly, the component height of the luminance plane is the - image height padded to the nearest multiple of the vertical subsampling - factor (2 in the case of 4:2:0 or 4:4:0, 1 in the case of 4:4:4 or - grayscale.) The component width of the chrominance planes is equal to the - component width of the luminance plane divided by the horizontal subsampling - factor, and the component height of the chrominance planes is equal to the - component height of the luminance plane divided by the vertical subsampling - factor. + of one of the components (Y, Cb, or Cr) at a particular location in the + image. The width and height of each plane are determined by the image + width, height, and level of chrominance subsampling. The luminance plane + width is the image width padded to the nearest multiple of the horizontal + subsampling factor (2 in the case of 4:2:0 and 4:2:2, 4 in the case of + 4:1:1, 1 in the case of 4:4:4 or grayscale.) Similarly, the luminance plane + height is the image height padded to the nearest multiple of the vertical + subsampling factor (2 in the case of 4:2:0 or 4:4:0, 1 in the case of 4:4:4 + or grayscale.) The chrominance plane width is equal to the luminance plane + width divided by the horizontal subsampling factor, and the chrominance + plane height is equal to the luminance plane height divided by the vertical + subsampling factor. <p> For example, if the source image is 35 x 35 pixels and 4:2:2 subsampling is used, then the luminance plane would be 36 x 35 bytes, and each of the @@ -151,18 +149,26 @@ extends java.lang.Object</pre> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#handle">handle</a></strong></code> </td> </tr> <tr class="rowColor"> -<td class="colFirst"><code>protected byte[]</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#yuvBuf">yuvBuf</a></strong></code> </td> -</tr> -<tr class="altColor"> <td class="colFirst"><code>protected int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#yuvHeight">yuvHeight</a></strong></code> </td> </tr> +<tr class="altColor"> +<td class="colFirst"><code>protected int[]</code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#yuvOffsets">yuvOffsets</a></strong></code> </td> +</tr> <tr class="rowColor"> <td class="colFirst"><code>protected int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#yuvPad">yuvPad</a></strong></code> </td> </tr> <tr class="altColor"> +<td class="colFirst"><code>protected byte[][]</code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#yuvPlanes">yuvPlanes</a></strong></code> </td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>protected int[]</code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#yuvStrides">yuvStrides</a></strong></code> </td> +</tr> +<tr class="altColor"> <td class="colFirst"><code>protected int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#yuvSubsamp">yuvSubsamp</a></strong></code> </td> </tr> @@ -185,21 +191,42 @@ extends java.lang.Object</pre> <th class="colOne" scope="col">Constructor and Description</th> </tr> <tr class="altColor"> -<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#YUVImage(byte[], int, int, int, int)">YUVImage</a></strong>(byte[] yuvImage, +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#YUVImage(byte[][],%20int[],%20int,%20int[],%20int,%20int)">YUVImage</a></strong>(byte[][] planes, + int[] offsets, + int width, + int[] strides, + int height, + int subsamp)</code> +<div class="block">Create a new <code>YUVImage</code> instance from a set of existing image + planes.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#YUVImage(byte[],%20int,%20int,%20int,%20int)">YUVImage</a></strong>(byte[] yuvImage, int width, int pad, int height, int subsamp)</code> -<div class="block">Create a <code>YUVImage</code> instance from an existing YUV planar image +<div class="block">Create a new <code>YUVImage</code> instance from an existing unified image buffer.</div> </td> </tr> +<tr class="altColor"> +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#YUVImage(int,%20int[],%20int,%20int)">YUVImage</a></strong>(int width, + int[] strides, + int height, + int subsamp)</code> +<div class="block">Create a new <code>YUVImage</code> instance backed by separate image + planes, and allocate memory for the image planes.</div> +</td> +</tr> <tr class="rowColor"> -<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#YUVImage(int, int, int, int)">YUVImage</a></strong>(int width, +<td class="colOne"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#YUVImage(int,%20int,%20int,%20int)">YUVImage</a></strong>(int width, int pad, int height, int subsamp)</code> -<div class="block">Create a <code>YUVImage</code> instance with a new image buffer.</div> +<div class="block">Create a new <code>YUVImage</code> instance backed by a unified image + buffer, and allocate memory for the image buffer.</div> </td> </tr> </table> @@ -220,48 +247,80 @@ extends java.lang.Object</pre> <tr class="altColor"> <td class="colFirst"><code>byte[]</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#getBuf()">getBuf</a></strong>()</code> -<div class="block">Returns the YUV image buffer</div> +<div class="block">Returns the YUV image buffer (if this image is stored in a unified + buffer rather than separate image planes.)</div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#getHeight()">getHeight</a></strong>()</code> -<div class="block">Returns the height of the YUV image.</div> +<div class="block">Returns the height of the YUV image (or subregion.)</div> </td> </tr> <tr class="altColor"> +<td class="colFirst"><code>int[]</code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#getOffsets()">getOffsets</a></strong>()</code> +<div class="block">Returns the offsets (in bytes) of each plane within the planes of a larger + YUV image.</div> +</td> +</tr> +<tr class="rowColor"> <td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#getPad()">getPad</a></strong>()</code> -<div class="block">Returns the line padding used in the YUV image buffer.</div> +<div class="block">Returns the line padding used in the YUV image buffer (if this image is + stored in a unified buffer rather than separate image planes.)</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>byte[][]</code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#getPlanes()">getPlanes</a></strong>()</code> +<div class="block">Returns the YUV image planes.</div> </td> </tr> <tr class="rowColor"> <td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#getSize()">getSize</a></strong>()</code> -<div class="block">Returns the size (in bytes) of the YUV image buffer</div> +<div class="block">Returns the size (in bytes) of the YUV image buffer (if this image is + stored in a unified buffer rather than separate image planes.)</div> </td> </tr> <tr class="altColor"> +<td class="colFirst"><code>int[]</code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#getStrides()">getStrides</a></strong>()</code> +<div class="block">Returns the number of bytes per line of each plane in the YUV image.</div> +</td> +</tr> +<tr class="rowColor"> <td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#getSubsamp()">getSubsamp</a></strong>()</code> <div class="block">Returns the level of chrominance subsampling used in the YUV image.</div> </td> </tr> -<tr class="rowColor"> +<tr class="altColor"> <td class="colFirst"><code>int</code></td> <td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#getWidth()">getWidth</a></strong>()</code> -<div class="block">Returns the width of the YUV image.</div> +<div class="block">Returns the width of the YUV image (or subregion.)</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#setBuf(byte[][],%20int[],%20int,%20int[],%20int,%20int)">setBuf</a></strong>(byte[][] planes, + int[] offsets, + int width, + int[] strides, + int height, + int subsamp)</code> +<div class="block">Assign a set of image planes to this <code>YUVImage</code> instance.</div> </td> </tr> <tr class="altColor"> <td class="colFirst"><code>void</code></td> -<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#setBuf(byte[], int, int, int, int)">setBuf</a></strong>(byte[] yuvImage, +<td class="colLast"><code><strong><a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html#setBuf(byte[],%20int,%20int,%20int,%20int)">setBuf</a></strong>(byte[] yuvImage, int width, int pad, int height, int subsamp)</code> -<div class="block">Assign an existing YUV planar image buffer to this <code>YUVImage</code> - instance.</div> +<div class="block">Assign a unified image buffer to this <code>YUVImage</code> instance.</div> </td> </tr> </table> @@ -295,13 +354,31 @@ extends java.lang.Object</pre> <pre>protected long handle</pre> </li> </ul> -<a name="yuvBuf"> +<a name="yuvPlanes"> <!-- --> </a> <ul class="blockList"> <li class="blockList"> -<h4>yuvBuf</h4> -<pre>protected byte[] yuvBuf</pre> +<h4>yuvPlanes</h4> +<pre>protected byte[][] yuvPlanes</pre> +</li> +</ul> +<a name="yuvOffsets"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>yuvOffsets</h4> +<pre>protected int[] yuvOffsets</pre> +</li> +</ul> +<a name="yuvStrides"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>yuvStrides</h4> +<pre>protected int[] yuvStrides</pre> </li> </ul> <a name="yuvPad"> @@ -348,6 +425,31 @@ extends java.lang.Object</pre> <!-- --> </a> <h3>Constructor Detail</h3> +<a name="YUVImage(int, int[], int, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>YUVImage</h4> +<pre>public YUVImage(int width, + int[] strides, + int height, + int subsamp) + throws java.lang.Exception</pre> +<div class="block">Create a new <code>YUVImage</code> instance backed by separate image + planes, and allocate memory for the image planes.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>width</code> - width (in pixels) of the YUV image</dd><dd><code>strides</code> - an array of integers, each specifying the number of bytes + per line in the corresponding plane of the YUV image. Setting the stride + for any plane to 0 is the same as setting it to the plane width (see + <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg"><code>above</code></a>.) If <code>strides</code> is null, then the + strides for all planes will be set to their respective plane widths. When + using this constructor, the stride for each plane must be equal to or + greater than the plane width.</dd><dd><code>height</code> - height (in pixels) of the YUV image</dd><dd><code>subsamp</code> - the level of chrominance subsampling to be used in the YUV + image (one of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#SAMP_444"><code>TJ.SAMP_*</code></a>)</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> <a name="YUVImage(int, int, int, int)"> <!-- --> </a> @@ -359,7 +461,8 @@ extends java.lang.Object</pre> int height, int subsamp) throws java.lang.Exception</pre> -<div class="block">Create a <code>YUVImage</code> instance with a new image buffer.</div> +<div class="block">Create a new <code>YUVImage</code> instance backed by a unified image + buffer, and allocate memory for the image buffer.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>width</code> - width (in pixels) of the YUV image</dd><dd><code>pad</code> - Each line of each plane in the YUV image buffer will be padded to this number of bytes (must be a power of 2.)</dd><dd><code>height</code> - height (in pixels) of the YUV image</dd><dd><code>subsamp</code> - the level of chrominance subsampling to be used in the YUV image (one of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#SAMP_444"><code>TJ.SAMP_*</code></a>)</dd> @@ -367,6 +470,44 @@ extends java.lang.Object</pre> <dd><code>java.lang.Exception</code></dd></dl> </li> </ul> +<a name="YUVImage(byte[][], int[], int, int[], int, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>YUVImage</h4> +<pre>public YUVImage(byte[][] planes, + int[] offsets, + int width, + int[] strides, + int height, + int subsamp) + throws java.lang.Exception</pre> +<div class="block">Create a new <code>YUVImage</code> instance from a set of existing image + planes.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>planes</code> - an array of buffers representing the Y, U (Cb), and V (Cr) + image planes (or just the Y plane, if the image is grayscale.) These + planes can be contiguous or non-contiguous in memory. Plane + <code>i</code> should be at least <code>offsets[i] + + <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#planeSizeYUV(int,%20int,%20int,%20int,%20int)"><code>TJ.planeSizeYUV</code></a>(i, width, strides[i], height, subsamp)</code> + bytes in size.</dd><dd><code>offsets</code> - If this <code>YUVImage</code> instance represents a + subregion of a larger image, then <code>offsets[i]</code> specifies the + offset (in bytes) of the subregion within plane <code>i</code> of the + larger image. Setting this to null is the same as setting the offsets for + all planes to 0.</dd><dd><code>width</code> - width (in pixels) of the new YUV image (or subregion)</dd><dd><code>strides</code> - an array of integers, each specifying the number of bytes + per line in the corresponding plane of the YUV image. Setting the stride + for any plane to 0 is the same as setting it to the plane width (see + <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg"><code>above</code></a>.) If <code>strides</code> is null, then the + strides for all planes will be set to their respective plane widths. You + can adjust the strides in order to add an arbitrary amount of line padding + to each plane or to specify that this <code>YUVImage</code> instance is a + subregion of a larger image (in which case, <code>strides[i]</code> should + be set to the plane width of plane <code>i</code> in the larger image.)</dd><dd><code>height</code> - height (in pixels) of the new YUV image (or subregion)</dd><dd><code>subsamp</code> - the level of chrominance subsampling used in the YUV + image (one of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#SAMP_444"><code>TJ.SAMP_*</code></a>)</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> <a name="YUVImage(byte[], int, int, int, int)"> <!-- --> </a> @@ -379,10 +520,10 @@ extends java.lang.Object</pre> int height, int subsamp) throws java.lang.Exception</pre> -<div class="block">Create a <code>YUVImage</code> instance from an existing YUV planar image +<div class="block">Create a new <code>YUVImage</code> instance from an existing unified image buffer.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>yuvImage</code> - image buffer that contains or will contain YUV planar - image data. Use <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int, int, int, int)"><code>TJ.bufSizeYUV(int, int, int, int)</code></a> to determine the minimum size for + image data. Use <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int,%20int,%20int,%20int)"><code>TJ.bufSizeYUV(int, int, int, int)</code></a> to determine the minimum size for this buffer. The Y, U (Cb), and V (Cr) image planes are stored sequentially in the buffer (see <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg"><code>above</code></a> for a description of the image format.)</dd><dd><code>width</code> - width (in pixels) of the YUV image</dd><dd><code>pad</code> - the line padding used in the YUV image buffer. For @@ -401,6 +542,43 @@ extends java.lang.Object</pre> <!-- --> </a> <h3>Method Detail</h3> +<a name="setBuf(byte[][], int[], int, int[], int, int)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>setBuf</h4> +<pre>public void setBuf(byte[][] planes, + int[] offsets, + int width, + int[] strides, + int height, + int subsamp) + throws java.lang.Exception</pre> +<div class="block">Assign a set of image planes to this <code>YUVImage</code> instance.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>planes</code> - an array of buffers representing the Y, U (Cb), and V (Cr) + image planes (or just the Y plane, if the image is grayscale.) These + planes can be contiguous or non-contiguous in memory. Plane + <code>i</code> should be at least <code>offsets[i] + + <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#planeSizeYUV(int,%20int,%20int,%20int,%20int)"><code>TJ.planeSizeYUV</code></a>(i, width, strides[i], height, subsamp)</code> + bytes in size.</dd><dd><code>offsets</code> - If this <code>YUVImage</code> instance represents a + subregion of a larger image, then <code>offsets[i]</code> specifies the + offset (in bytes) of the subregion within plane <code>i</code> of the + larger image. Setting this to null is the same as setting the offsets for + all planes to 0.</dd><dd><code>width</code> - width (in pixels) of the YUV image (or subregion)</dd><dd><code>strides</code> - an array of integers, each specifying the number of bytes + per line in the corresponding plane of the YUV image. Setting the stride + for any plane to 0 is the same as setting it to the plane width (see + <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg"><code>above</code></a>.) If <code>strides</code> is null, then the + strides for all planes will be set to their respective plane widths. You + can adjust the strides in order to add an arbitrary amount of line padding + to each plane or to specify that this <code>YUVImage</code> image is a + subregion of a larger image (in which case, <code>strides[i]</code> should + be set to the plane width of plane <code>i</code> in the larger image.)</dd><dd><code>height</code> - height (in pixels) of the YUV image (or subregion)</dd><dd><code>subsamp</code> - the level of chrominance subsampling used in the YUV + image (one of <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#SAMP_444"><code>TJ.SAMP_*</code></a>)</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> <a name="setBuf(byte[], int, int, int, int)"> <!-- --> </a> @@ -413,10 +591,9 @@ extends java.lang.Object</pre> int height, int subsamp) throws java.lang.Exception</pre> -<div class="block">Assign an existing YUV planar image buffer to this <code>YUVImage</code> - instance.</div> +<div class="block">Assign a unified image buffer to this <code>YUVImage</code> instance.</div> <dl><dt><span class="strong">Parameters:</span></dt><dd><code>yuvImage</code> - image buffer that contains or will contain YUV planar - image data. Use <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int, int, int, int)"><code>TJ.bufSizeYUV(int, int, int, int)</code></a> to determine the minimum size for + image data. Use <a href="../../../org/libjpegturbo/turbojpeg/TJ.html#bufSizeYUV(int,%20int,%20int,%20int)"><code>TJ.bufSizeYUV(int, int, int, int)</code></a> to determine the minimum size for this buffer. The Y, U (Cb), and V (Cr) image planes are stored sequentially in the buffer (see <a href="../../../org/libjpegturbo/turbojpeg/YUVImage.html" title="class in org.libjpegturbo.turbojpeg"><code>above</code></a> for a description of the image format.)</dd><dd><code>width</code> - width (in pixels) of the YUV image</dd><dd><code>pad</code> - the line padding used in the YUV image buffer. For @@ -435,8 +612,8 @@ extends java.lang.Object</pre> <h4>getWidth</h4> <pre>public int getWidth() throws java.lang.Exception</pre> -<div class="block">Returns the width of the YUV image.</div> -<dl><dt><span class="strong">Returns:</span></dt><dd>the width of the YUV image</dd> +<div class="block">Returns the width of the YUV image (or subregion.)</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the width of the YUV image (or subregion)</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -449,8 +626,8 @@ extends java.lang.Object</pre> <h4>getHeight</h4> <pre>public int getHeight() throws java.lang.Exception</pre> -<div class="block">Returns the height of the YUV image.</div> -<dl><dt><span class="strong">Returns:</span></dt><dd>the height of the YUV image</dd> +<div class="block">Returns the height of the YUV image (or subregion.)</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the height of the YUV image (or subregion)</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> @@ -463,12 +640,43 @@ extends java.lang.Object</pre> <h4>getPad</h4> <pre>public int getPad() throws java.lang.Exception</pre> -<div class="block">Returns the line padding used in the YUV image buffer.</div> +<div class="block">Returns the line padding used in the YUV image buffer (if this image is + stored in a unified buffer rather than separate image planes.)</div> <dl><dt><span class="strong">Returns:</span></dt><dd>the line padding used in the YUV image buffer</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> </li> </ul> +<a name="getStrides()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getStrides</h4> +<pre>public int[] getStrides() + throws java.lang.Exception</pre> +<div class="block">Returns the number of bytes per line of each plane in the YUV image.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the number of bytes per line of each plane in the YUV image</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> +<a name="getOffsets()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getOffsets</h4> +<pre>public int[] getOffsets() + throws java.lang.Exception</pre> +<div class="block">Returns the offsets (in bytes) of each plane within the planes of a larger + YUV image.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the offsets (in bytes) of each plane within the planes of a larger + YUV image</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> <a name="getSubsamp()"> <!-- --> </a> @@ -484,6 +692,21 @@ extends java.lang.Object</pre> <dd><code>java.lang.Exception</code></dd></dl> </li> </ul> +<a name="getPlanes()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getPlanes</h4> +<pre>public byte[][] getPlanes() + throws java.lang.Exception</pre> +<div class="block">Returns the YUV image planes. If the image is stored in a unified buffer, + then all image planes will point to that buffer.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the YUV image planes</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code>java.lang.Exception</code></dd></dl> +</li> +</ul> <a name="getBuf()"> <!-- --> </a> @@ -492,7 +715,8 @@ extends java.lang.Object</pre> <h4>getBuf</h4> <pre>public byte[] getBuf() throws java.lang.Exception</pre> -<div class="block">Returns the YUV image buffer</div> +<div class="block">Returns the YUV image buffer (if this image is stored in a unified + buffer rather than separate image planes.)</div> <dl><dt><span class="strong">Returns:</span></dt><dd>the YUV image buffer</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> @@ -506,7 +730,8 @@ extends java.lang.Object</pre> <h4>getSize</h4> <pre>public int getSize() throws java.lang.Exception</pre> -<div class="block">Returns the size (in bytes) of the YUV image buffer</div> +<div class="block">Returns the size (in bytes) of the YUV image buffer (if this image is + stored in a unified buffer rather than separate image planes.)</div> <dl><dt><span class="strong">Returns:</span></dt><dd>the size (in bytes) of the YUV image buffer</dd> <dt><span class="strong">Throws:</span></dt> <dd><code>java.lang.Exception</code></dd></dl> |