]> granicus.if.org Git - libjpeg-turbo/commitdiff
Wordsmithing
authorDRC <dcommander@users.sourceforge.net>
Fri, 23 Aug 2013 06:38:59 +0000 (06:38 +0000)
committerDRC <dcommander@users.sourceforge.net>
Fri, 23 Aug 2013 06:38:59 +0000 (06:38 +0000)
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1021 632fc199-4ca6-4c93-a231-07263d6284db

doc/html/group___turbo_j_p_e_g.html
java/doc/org/libjpegturbo/turbojpeg/TJ.html
java/doc/org/libjpegturbo/turbojpeg/TJCompressor.html
java/doc/org/libjpegturbo/turbojpeg/TJDecompressor.html
java/org/libjpegturbo/turbojpeg/TJ.java
java/org/libjpegturbo/turbojpeg/TJCompressor.java
java/org/libjpegturbo/turbojpeg/TJDecompressor.java
turbojpeg.h

index 92e1fe3551a444684fea4ec7c1561cd9487f5f5e..c1df1939fd7558645b20421292aede7e09bd61d1 100644 (file)
@@ -737,7 +737,7 @@ Variables</h2></td></tr>
 </td></tr>
 <tr><td class="fieldname"><em><a class="anchor" id="ggac916144e26c3817ac514e64ae5d12e2aa7f5100ec44c91994e243f1cf55553f8b"></a>TJPF_CMYK</em>&nbsp;</td><td class="fielddoc">
 <p>CMYK pixel format. </p>
-<p>Unlike RGB, which is a display colorspace, CMYK (Cyan/Magenta/Yellow/Key) is a print colorspace in which the value of each color component corresponds to the amount of cyan, magenta, yellow, or black ink that is applied to a white background. In order to convert between CMYK and RGB, it is necessary to use a color management system (CMS.) A CMS will attempt to map colors within the printer's gamut to perceptually similar colors in the display's gamut and vice versa, but the mapping is typically not 1:1 or reversible, nor can it be defined with a simple formula. Thus, such a conversion is out of scope for a codec library. However, the TurboJPEG API allows for compressing CMYK pixels into a YCCK JPEG image (see <a class="el" href="group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a53839e0fe867b76b58d16b0a1a7c598e" title="YCCK colorspace.">TJCS_YCCK</a>) and decompressing YCCK JPEG images into CMYK pixels. </p>
+<p>Unlike RGB, which is an additive color model used primarily for display, CMYK (Cyan/Magenta/Yellow/Key) is a subtractive color model used primarily for printing. In the CMYK color model, the value of each color component typically corresponds to an amount of cyan, magenta, yellow, or black ink that is applied to a white background. In order to convert between CMYK and RGB, it is necessary to use a color management system (CMS.) A CMS will attempt to map colors within the printer's gamut to perceptually similar colors in the display's gamut and vice versa, but the mapping is typically not 1:1 or reversible, nor can it be defined with a simple formula. Thus, such a conversion is out of scope for a codec library. However, the TurboJPEG API allows for compressing CMYK pixels into a YCCK JPEG image (see <a class="el" href="group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a53839e0fe867b76b58d16b0a1a7c598e" title="YCCK colorspace.">TJCS_YCCK</a>) and decompressing YCCK JPEG images into CMYK pixels. </p>
 </td></tr>
 </table>
 
@@ -754,7 +754,8 @@ Variables</h2></td></tr>
 </div><div class="memdoc">
 
 <p>Chrominance subsampling options. </p>
-<p>When pixels are converted from the RGB colorspace to YCbCr (see <a class="el" href="group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a7389b8f65bb387ffedce3efd0d78ec75" title="YCbCr colorspace.">TJCS_YCbCr</a>) or from the CMYK colorspace to YCCK (see <a class="el" href="group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a53839e0fe867b76b58d16b0a1a7c598e" title="YCCK colorspace.">TJCS_YCCK</a>) as part of the JPEG compression process, some of the Cb and Cr (chrominance) components can be discarded or averaged together to produce a smaller image with little perceptible loss of image clarity (the human eye is more sensitive to small changes in brightness than small changes in color.) This is called "chrominance subsampling". (NOTE: In common usage, "YCbCr" and "YUV" have come to mean the same thing. The convention within the TurboJPEG API is to use "YUV" to refer to an image format consisting of Y, Cb, and Cr image planes, per the convention of the digital video community.) </p>
+<p>When pixels are converted from RGB to YCbCr (see <a class="el" href="group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a7389b8f65bb387ffedce3efd0d78ec75" title="YCbCr colorspace.">TJCS_YCbCr</a>) or from CMYK to YCCK (see <a class="el" href="group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a53839e0fe867b76b58d16b0a1a7c598e" title="YCCK colorspace.">TJCS_YCCK</a>) as part of the JPEG compression process, some of the Cb and Cr (chrominance) components can be discarded or averaged together to produce a smaller image with little perceptible loss of image clarity (the human eye is more sensitive to small changes in brightness than to small changes in color.) This is called "chrominance subsampling". </p>
+<p>NOTE: Technically, the JPEG format uses the YCbCr colorspace, but per the convention of the digital video community, the TurboJPEG API uses "YUV" to refer to an image format consisting of Y, Cb, and Cr image planes. </p>
 <table class="fieldtable">
 <tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="gga1d047060ea80bb9820d540bb928e9074afb8da4f44197837bdec0a4f593dacae3"></a>TJSAMP_444</em>&nbsp;</td><td class="fielddoc">
 <p>4:4:4 chrominance subsampling (no chrominance subsampling). </p>
@@ -1272,7 +1273,8 @@ If you choose option 1, <code>*jpegSize</code> should be set to the size of your
 </div><div class="memdoc">
 
 <p>Decompress a JPEG image to a YUV planar image. </p>
-<p>This function performs JPEG decompression but leaves out the color conversion step, so a planar YUV image is generated instead of an RGB image. The structure of the planes in this image is the same as in the images generated by <a class="el" href="group___turbo_j_p_e_g.html#ga0a5ffbf7cb58a5b6a8201114fe889360" title="Encode an RGB or grayscale image into a YUV planar image.">tjEncodeYUV3()</a>. Note that, if the width or height of the JPEG image is not an even multiple of the MCU block size (see <a class="el" href="group___turbo_j_p_e_g.html#ga9e61e7cd47a15a173283ba94e781308c" title="MCU block width (in pixels) for a given level of chrominance subsampling.">tjMCUWidth</a> and <a class="el" href="group___turbo_j_p_e_g.html#gabd247bb9fecb393eca57366feb8327bf" title="MCU block height (in pixels) for a given level of chrominance subsampling.">tjMCUHeight</a>), then an intermediate buffer copy will be performed within TurboJPEG.</p>
+<p>This function performs JPEG decompression but leaves out the color conversion step, so a planar YUV image is generated instead of an RGB image. The structure of the planes in this image is the same as in the images generated by <a class="el" href="group___turbo_j_p_e_g.html#ga0a5ffbf7cb58a5b6a8201114fe889360" title="Encode an RGB or grayscale image into a YUV planar image.">tjEncodeYUV3()</a>. Note that, if the width or height of the JPEG image is not an even multiple of the MCU block size (see <a class="el" href="group___turbo_j_p_e_g.html#ga9e61e7cd47a15a173283ba94e781308c" title="MCU block width (in pixels) for a given level of chrominance subsampling.">tjMCUWidth</a> and <a class="el" href="group___turbo_j_p_e_g.html#gabd247bb9fecb393eca57366feb8327bf" title="MCU block height (in pixels) for a given level of chrominance subsampling.">tjMCUHeight</a>), then an intermediate buffer copy will be performed within TurboJPEG. </p>
+<p>NOTE: Technically, the JPEG format uses the YCbCr colorspace, but per the convention of the digital video community, the TurboJPEG API uses "YUV" to refer to an image format consisting of Y, Cb, and Cr image planes.</p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramname">handle</td><td>a handle to a TurboJPEG decompressor or transformer instance </td></tr>
@@ -1388,7 +1390,8 @@ If you choose option 1, <code>*jpegSize</code> should be set to the size of your
 </div><div class="memdoc">
 
 <p>Encode an RGB or grayscale image into a YUV planar image. </p>
-<p>This function 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. The Y, U, and V image planes are stored sequentially into the destination buffer, and the size of each plane is determined by the width and height of the source image, as well as the specified padding and level of chrominance subsampling. If the chrominance components are subsampled along the horizontal dimension, then the width of the luminance plane is padded to the nearest multiple of 2 in the output image (same goes for the height of the luminance plane, if the chrominance components are subsampled along the vertical dimension.)</p>
+<p>This function 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. The Y, U (Cb), and V (Cr) image planes are stored sequentially into the destination buffer, and the size of each plane is determined by the width and height of the source image, as well as the specified padding and level of chrominance subsampling. If the chrominance components are subsampled along the horizontal dimension, then the width of the luminance plane is padded to the nearest multiple of 2 in the output image (same goes for the height of the luminance plane, if the chrominance components are subsampled along the vertical dimension.) </p>
+<p>NOTE: Technically, the JPEG format uses the YCbCr colorspace, but per the convention of the digital video community, the TurboJPEG API uses "YUV" to refer to an image format consisting of Y, Cb, and Cr image planes.</p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramname">handle</td><td>a handle to a TurboJPEG compressor or transformer instance </td></tr>
index b832cf82ef7703de66954d6bb0847cdddd886cc6..3a94cba9d6aca54d104ef92e39cd504def98af02 100644 (file)
@@ -807,18 +807,19 @@ PF_CMYK</H3>
 <PRE>
 public static final int <B>PF_CMYK</B></PRE>
 <DL>
-<DD>CMYK pixel format.  Unlike RGB, which is a display colorspace,
- CMYK (Cyan/Magenta/Yellow/Key) is a print colorspace in which the
- value of each color component corresponds to the amount of cyan, magenta,
- yellow, or black ink that is applied to a white background.  In order to
- convert between CMYK and RGB, it is necessary to use a color management
- system (CMS.)  A CMS will attempt to map colors within the printer's gamut
- to perceptually similar colors in the display's gamut and vice versa, but
- the mapping is typically not 1:1 or reversible, nor can it be defined with
- a simple formula.  Thus, such a conversion is out of scope for a codec
- library.  However, the TurboJPEG API allows for compressing CMYK pixels
- into a YCCK JPEG image (see <A HREF="../../../org/libjpegturbo/turbojpeg/TJ.html#CS_YCCK"><CODE>CS_YCCK</CODE></A>) and decompressing YCCK JPEG
- images into CMYK pixels.
+<DD>CMYK pixel format.  Unlike RGB, which is an additive color model used
+ primarily for display, CMYK (Cyan/Magenta/Yellow/Key) is a subtractive
+ color model used primarily for printing.  In the CMYK color model, the
+ value of each color component typically corresponds to an amount of cyan,
+ magenta, yellow, or black ink that is applied to a white background.  In
+ order to convert between CMYK and RGB, it is necessary to use a color
+ management system (CMS.)  A CMS will attempt to map colors within the
+ printer's gamut to perceptually similar colors in the display's gamut and
+ vice versa, but the mapping is typically not 1:1 or reversible, nor can it
+ be defined with a simple formula.  Thus, such a conversion is out of scope
+ for a codec library.  However, the TurboJPEG API allows for compressing
+ CMYK pixels into a YCCK JPEG image (see <A HREF="../../../org/libjpegturbo/turbojpeg/TJ.html#CS_YCCK"><CODE>CS_YCCK</CODE></A>) and
+ decompressing YCCK JPEG images into CMYK pixels.
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#org.libjpegturbo.turbojpeg.TJ.PF_CMYK">Constant Field Values</A></DL>
index 30d5ff31d6caff0d5ca9aca4613adc59a8ee668b..a41ea0650ebb7b6006051c3f7e29088ae1662be3 100644 (file)
@@ -469,7 +469,13 @@ public void <B>setSubsamp</B>(int&nbsp;newSubsamp)
                 throws java.lang.Exception</PRE>
 <DL>
 <DD>Set the level of chrominance subsampling for subsequent compress/encode
- operations.
+ operations.  When pixels are converted from RGB to YCbCr (see
+ <A HREF="../../../org/libjpegturbo/turbojpeg/TJ.html#CS_YCbCr"><CODE>TJ.CS_YCbCr</CODE></A>) or from CMYK to YCCK (see <A HREF="../../../org/libjpegturbo/turbojpeg/TJ.html#CS_YCCK"><CODE>TJ.CS_YCCK</CODE></A>) as part
+ of the JPEG compression process, some of the Cb and Cr (chrominance)
+ components can be discarded or averaged together to produce a smaller
+ image with little perceptible loss of image clarity (the human eye is more
+ sensitive to small changes in brightness than to small changes in color.)
+ This is called "chrominance subsampling".
 <P>
 <DD><DL>
 <DT><B>Parameters:</B><DD><CODE>newSubsamp</CODE> - the new level of chrominance subsampling (one of
@@ -609,14 +615,18 @@ public void <B>encodeYUV</B>(byte[]&nbsp;dstBuf,
  instance and output a YUV planar image to the given destination buffer.
  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.  The Y, U, and V image planes are stored sequentially
- into the destination buffer, and the size of each plane is determined by
- the width and height of the source image, as well as the specified padding
- and level of chrominance subsampling.  If the chrominance components are
- subsampled along the horizontal dimension, then the width of the luminance
- plane is padded to the nearest multiple of 2 in the output image (same
- goes for the height of the luminance plane, if the chrominance components
- are subsampled along the vertical dimension.)
+ compression process.  The Y, U (Cb), and V (Cr) image planes are stored
+ sequentially into the destination buffer, and the size of each plane is
+ determined by the width and height of the source image, as well as the
+ specified padding and level of chrominance subsampling.  If the
+ chrominance components are subsampled along the horizontal dimension, then
+ the width of the luminance plane is padded to the nearest multiple of 2 in
+ the output image (same goes for the height of the luminance plane, if the
+ chrominance components are subsampled along the vertical dimension.)
+ <p>
+ NOTE: Technically, the JPEG format uses the YCbCr colorspace, but per the
+ convention of the digital video community, the TurboJPEG API uses "YUV" to
+ refer to an image format consisting of Y, Cb, and Cr image planes.
 <P>
 <DD><DL>
 <DT><B>Parameters:</B><DD><CODE>dstBuf</CODE> - buffer that will receive the YUV planar image.  Use
index 12a5e83338e3a015bfe9d870055bbf0b3811dea8..a3d3db5d76153c0d5bf4630a630217d2e02a6a42 100644 (file)
@@ -887,6 +887,10 @@ public void <B>decompressToYUV</B>(byte[]&nbsp;dstBuf,
  that, if the width or height of the image is not an even multiple of the
  MCU block size (see <A HREF="../../../org/libjpegturbo/turbojpeg/TJ.html#getMCUWidth(int)"><CODE>TJ.getMCUWidth(int)</CODE></A> and <A HREF="../../../org/libjpegturbo/turbojpeg/TJ.html#getMCUHeight(int)"><CODE>TJ.getMCUHeight(int)</CODE></A>),
  then an intermediate buffer copy will be performed within TurboJPEG.
+ <p>
+ NOTE: Technically, the JPEG format uses the YCbCr colorspace, but per the
+ convention of the digital video community, the TurboJPEG API uses "YUV" to
+ refer to an image format consisting of Y, Cb, and Cr image planes.
 <P>
 <DD><DL>
 <DT><B>Parameters:</B><DD><CODE>dstBuf</CODE> - buffer that will receive the YUV planar image.  Use
index b3ca4b809e1dc6b5f8e9631c499eb9ede3af806b..9fe305893b2f94f1930ab83f3c9c17810dcaef5f 100644 (file)
@@ -192,18 +192,19 @@ public final class TJ {
    */
   public static final int PF_ARGB = 10;
   /**
-   * CMYK pixel format.  Unlike RGB, which is a display colorspace,
-   * CMYK (Cyan/Magenta/Yellow/Key) is a print colorspace in which the
-   * value of each color component corresponds to the amount of cyan, magenta,
-   * yellow, or black ink that is applied to a white background.  In order to
-   * convert between CMYK and RGB, it is necessary to use a color management
-   * system (CMS.)  A CMS will attempt to map colors within the printer's gamut
-   * to perceptually similar colors in the display's gamut and vice versa, but
-   * the mapping is typically not 1:1 or reversible, nor can it be defined with
-   * a simple formula.  Thus, such a conversion is out of scope for a codec
-   * library.  However, the TurboJPEG API allows for compressing CMYK pixels
-   * into a YCCK JPEG image (see {@link #CS_YCCK}) and decompressing YCCK JPEG
-   * images into CMYK pixels.
+   * CMYK pixel format.  Unlike RGB, which is an additive color model used
+   * primarily for display, CMYK (Cyan/Magenta/Yellow/Key) is a subtractive
+   * color model used primarily for printing.  In the CMYK color model, the
+   * value of each color component typically corresponds to an amount of cyan,
+   * magenta, yellow, or black ink that is applied to a white background.  In
+   * order to convert between CMYK and RGB, it is necessary to use a color
+   * management system (CMS.)  A CMS will attempt to map colors within the
+   * printer's gamut to perceptually similar colors in the display's gamut and
+   * vice versa, but the mapping is typically not 1:1 or reversible, nor can it
+   * be defined with a simple formula.  Thus, such a conversion is out of scope
+   * for a codec library.  However, the TurboJPEG API allows for compressing
+   * CMYK pixels into a YCCK JPEG image (see {@link #CS_YCCK}) and
+   * decompressing YCCK JPEG images into CMYK pixels.
    */
   public static final int PF_CMYK = 11;
 
index 114c4a7770f2ffc22625d938ea803a01c4cff783..e8dd260e3df8f207d581f9efe6744a4df53035d4 100644 (file)
@@ -155,7 +155,13 @@ public class TJCompressor {
 
   /**
    * Set the level of chrominance subsampling for subsequent compress/encode
-   * operations.
+   * operations.  When pixels are converted from RGB to YCbCr (see
+   * {@link TJ#CS_YCbCr}) or from CMYK to YCCK (see {@link TJ#CS_YCCK}) as part
+   * of the JPEG compression process, some of the Cb and Cr (chrominance)
+   * components can be discarded or averaged together to produce a smaller
+   * image with little perceptible loss of image clarity (the human eye is more
+   * sensitive to small changes in brightness than to small changes in color.)
+   * This is called "chrominance subsampling".
    *
    * @param newSubsamp the new level of chrominance subsampling (one of
    * {@link TJ TJ.SAMP_*})
@@ -351,14 +357,18 @@ public class TJCompressor {
    * instance and output a YUV planar image to the given destination buffer.
    * 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.  The Y, U, and V image planes are stored sequentially
-   * into the destination buffer, and the size of each plane is determined by
-   * the width and height of the source image, as well as the specified padding
-   * and level of chrominance subsampling.  If the chrominance components are
-   * subsampled along the horizontal dimension, then the width of the luminance
-   * plane is padded to the nearest multiple of 2 in the output image (same
-   * goes for the height of the luminance plane, if the chrominance components
-   * are subsampled along the vertical dimension.)
+   * compression process.  The Y, U (Cb), and V (Cr) image planes are stored
+   * sequentially into the destination buffer, and the size of each plane is
+   * determined by the width and height of the source image, as well as the
+   * specified padding and level of chrominance subsampling.  If the
+   * chrominance components are subsampled along the horizontal dimension, then
+   * the width of the luminance plane is padded to the nearest multiple of 2 in
+   * the output image (same goes for the height of the luminance plane, if the
+   * chrominance components are subsampled along the vertical dimension.)
+   * <p>
+   * NOTE: Technically, the JPEG format uses the YCbCr colorspace, but per the
+   * convention of the digital video community, the TurboJPEG API uses "YUV" to
+   * refer to an image format consisting of Y, Cb, and Cr image planes.
    *
    * @param dstBuf buffer that will receive the YUV planar image.  Use
    * {@link TJ#bufSizeYUV} to determine the appropriate size for this buffer
index 42c36912b48c6a16eda8cf8a0af87a1b5b746f3a..ad6197599400d71a45d2735c947e9b122a6ade11 100644 (file)
@@ -369,6 +369,10 @@ public class TJDecompressor {
    * that, if the width or height of the image is not an even multiple of the
    * MCU block size (see {@link TJ#getMCUWidth} and {@link TJ#getMCUHeight}),
    * then an intermediate buffer copy will be performed within TurboJPEG.
+   * <p>
+   * NOTE: Technically, the JPEG format uses the YCbCr colorspace, but per the
+   * convention of the digital video community, the TurboJPEG API uses "YUV" to
+   * refer to an image format consisting of Y, Cb, and Cr image planes.
    *
    * @param dstBuf buffer that will receive the YUV planar image.  Use
    * {@link TJ#bufSizeYUV} to determine the appropriate size for this buffer
index 065150c535bea5ab72b16765e16ee26a5b623dab..77019e0e58b41b0f87c008fb5a5022135018fb7a 100644 (file)
 
 /**
  * Chrominance subsampling options.
- * When pixels are converted from the RGB colorspace to YCbCr (see #TJCS_YCbCr)
- * or from the CMYK colorspace to YCCK (see #TJCS_YCCK) as part of the JPEG
- * compression process, some of the Cb and Cr (chrominance) components can be
- * discarded or averaged together to produce a smaller image with little
- * perceptible loss of image clarity (the human eye is more sensitive to small
- * changes in brightness than small changes in color.)  This is called
- * "chrominance subsampling".  (NOTE:  In common usage, "YCbCr" and "YUV" have
- * come to mean the same thing.  The convention within the TurboJPEG API is to
- * use "YUV" to refer to an image format consisting of Y, Cb, and Cr image
- * planes, per the convention of the digital video community.)
+ * When pixels are converted from RGB to YCbCr (see #TJCS_YCbCr) or from CMYK
+ * to YCCK (see #TJCS_YCCK) as part of the JPEG compression process, some of
+ * the Cb and Cr (chrominance) components can be discarded or averaged together
+ * to produce a smaller image with little perceptible loss of image clarity
+ * (the human eye is more sensitive to small changes in brightness than to
+ * small changes in color.)  This is called "chrominance subsampling".
+ * <p>
+ * NOTE: Technically, the JPEG format uses the YCbCr colorspace, but per the
+ * convention of the digital video community, the TurboJPEG API uses "YUV" to
+ * refer to an image format consisting of Y, Cb, and Cr image planes.
  */
 enum TJSAMP
 {
@@ -208,18 +208,19 @@ enum TJPF
    */
   TJPF_ARGB,
   /**
-   * CMYK pixel format.  Unlike RGB, which is a display colorspace,
-   * CMYK (Cyan/Magenta/Yellow/Key) is a print colorspace in which the
-   * value of each color component corresponds to the amount of cyan, magenta,
-   * yellow, or black ink that is applied to a white background.  In order to
-   * convert between CMYK and RGB, it is necessary to use a color management
-   * system (CMS.)  A CMS will attempt to map colors within the printer's gamut
-   * to perceptually similar colors in the display's gamut and vice versa, but
-   * the mapping is typically not 1:1 or reversible, nor can it be defined with
-   * a simple formula.  Thus, such a conversion is out of scope for a codec
-   * library.  However, the TurboJPEG API allows for compressing CMYK pixels
-   * into a YCCK JPEG image (see #TJCS_YCCK) and decompressing YCCK JPEG images
-   * into CMYK pixels.
+   * CMYK pixel format.  Unlike RGB, which is an additive color model used
+   * primarily for display, CMYK (Cyan/Magenta/Yellow/Key) is a subtractive
+   * color model used primarily for printing.  In the CMYK color model, the
+   * value of each color component typically corresponds to an amount of cyan,
+   * magenta, yellow, or black ink that is applied to a white background.  In
+   * order to convert between CMYK and RGB, it is necessary to use a color
+   * management system (CMS.)  A CMS will attempt to map colors within the
+   * printer's gamut to perceptually similar colors in the display's gamut and
+   * vice versa, but the mapping is typically not 1:1 or reversible, nor can it
+   * be defined with a simple formula.  Thus, such a conversion is out of scope
+   * for a codec library.  However, the TurboJPEG API allows for compressing
+   * CMYK pixels into a YCCK JPEG image (see #TJCS_YCCK) and decompressing YCCK
+   * JPEG images into CMYK pixels.
    */
   TJPF_CMYK
 };
@@ -700,14 +701,18 @@ DLLEXPORT unsigned long DLLCALL tjBufSizeYUV2(int width, int pad, int height,
  * Encode an RGB or grayscale image into a YUV planar image.  This function
  * 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.  The Y, U, and V image planes are stored sequentially into the
- * destination buffer, and the size of each plane is determined by the width
- * and height of the source image, as well as the specified padding and level
- * of chrominance subsampling.  If the chrominance components are subsampled
- * along the horizontal dimension, then the width of the luminance plane is
- * padded to the nearest multiple of 2 in the output image (same goes for the
- * height of the luminance plane, if the chrominance components are subsampled
- * along the vertical dimension.)
+ * process.  The Y, U (Cb), and V (Cr) image planes are stored sequentially
+ * into the destination buffer, and the size of each plane is determined by the
+ * width and height of the source image, as well as the specified padding and
+ * level of chrominance subsampling.  If the chrominance components are
+ * subsampled along the horizontal dimension, then the width of the luminance
+ * plane is padded to the nearest multiple of 2 in the output image (same goes
+ * for the height of the luminance plane, if the chrominance components are
+ * subsampled along the vertical dimension.)
+ * <p>
+ * NOTE: Technically, the JPEG format uses the YCbCr colorspace, but per the
+ * convention of the digital video community, the TurboJPEG API uses "YUV" to
+ * refer to an image format consisting of Y, Cb, and Cr image planes.
  *
  * @param handle a handle to a TurboJPEG compressor or transformer instance
  * @param srcBuf pointer to an image buffer containing RGB or grayscale pixels
@@ -848,6 +853,10 @@ DLLEXPORT int DLLCALL tjDecompress2(tjhandle handle,
  * that, if the width or height of the JPEG image is not an even multiple of
  * the MCU block size (see #tjMCUWidth and #tjMCUHeight), then an intermediate
  * buffer copy will be performed within TurboJPEG.
+ * <p>
+ * NOTE: Technically, the JPEG format uses the YCbCr colorspace, but per the
+ * convention of the digital video community, the TurboJPEG API uses "YUV" to
+ * refer to an image format consisting of Y, Cb, and Cr image planes.
  *
  * @param handle a handle to a TurboJPEG decompressor or transformer instance
  * @param jpegBuf pointer to a buffer containing the JPEG image to decompress