]> granicus.if.org Git - libjpeg-turbo/commitdiff
Add note regarding the fact that 4:4:0 lacks full SIMD support; Add an option for...
authorDRC <dcommander@users.sourceforge.net>
Sun, 18 Aug 2013 10:39:30 +0000 (10:39 +0000)
committerDRC <dcommander@users.sourceforge.net>
Sun, 18 Aug 2013 10:39:30 +0000 (10:39 +0000)
git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1015 632fc199-4ca6-4c93-a231-07263d6284db

22 files changed:
java/Makefile.am
java/TJBench.java
java/doc/allclasses-frame.html
java/doc/allclasses-noframe.html
java/doc/constant-values.html
java/doc/deprecated-list.html
java/doc/help-doc.html
java/doc/index-all.html
java/doc/index.html
java/doc/org/libjpegturbo/turbojpeg/TJ.html
java/doc/org/libjpegturbo/turbojpeg/TJCompressor.html
java/doc/org/libjpegturbo/turbojpeg/TJCustomFilter.html
java/doc/org/libjpegturbo/turbojpeg/TJDecompressor.html
java/doc/org/libjpegturbo/turbojpeg/TJScalingFactor.html
java/doc/org/libjpegturbo/turbojpeg/TJTransform.html
java/doc/org/libjpegturbo/turbojpeg/TJTransformer.html
java/doc/org/libjpegturbo/turbojpeg/package-frame.html
java/doc/org/libjpegturbo/turbojpeg/package-summary.html
java/doc/org/libjpegturbo/turbojpeg/package-tree.html
java/doc/overview-tree.html
java/doc/serialized-form.html
java/org/libjpegturbo/turbojpeg/TJ.java

index 06d813c82a272ff14a90376ed24af2bc89ddc693..1307d69ab705fc06ba50f3f086d8bf736856bfa0 100644 (file)
@@ -62,7 +62,7 @@ headers: all
 
 docs: all
        mkdir -p ${srcdir}/doc; \
-       javadoc -d ${srcdir}/doc -sourcepath ${srcdir} org.libjpegturbo.turbojpeg
+       javadoc -notimestamp -d ${srcdir}/doc -sourcepath ${srcdir} org.libjpegturbo.turbojpeg
 
 endif
 
index c8cca5f6bd56b485250736226e7eb0e3900c53b2..eaf5fa3846266ca3817cf6e706aa4be5652e9740 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C)2009-2012 D. R. Commander.  All Rights Reserved.
+ * Copyright (C)2009-2013 D. R. Commander.  All Rights Reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions are met:
@@ -600,6 +600,7 @@ class TJBench {
     System.out.println("     codec");
     System.out.println("-accuratedct = Use the most accurate DCT/IDCT algorithms available in the");
     System.out.println("     underlying codec");
+    System.out.println("-440 = Test 4:4:0 chrominance subsampling instead of 4:2:2");
     System.out.println("-quiet = Output results in tabular rather than verbose format");
     System.out.println("-yuvencode = Encode RGB input as planar YUV rather than compressing as JPEG");
     System.out.println("-yuvdecode = Decode JPEG image to planar YUV rather than RGB");
@@ -636,6 +637,7 @@ class TJBench {
     byte[] srcBuf = null;  int w = 0, h = 0;
     int minQual = -1, maxQual = -1;
     int minArg = 1;  int retval = 0;
+    boolean do440 = false;
 
     try {
 
@@ -713,6 +715,8 @@ class TJBench {
             System.out.println("Using most accurate DCT/IDCT algorithm\n");
             flags |= TJ.FLAG_ACCURATEDCT;
           }
+          if (argv[i].equals("-440"))
+            do440 = true;
           if (argv[i].equalsIgnoreCase("-rgb"))
             pf = TJ.PF_RGB;
           if (argv[i].equalsIgnoreCase("-rgbx"))
@@ -834,7 +838,7 @@ class TJBench {
       System.out.println("");
       System.gc();
       for (int i = maxQual; i >= minQual; i--)
-        doTest(srcBuf, w, h, TJ.SAMP_422, i, argv[0]);
+        doTest(srcBuf, w, h, do440 ? TJ.SAMP_440 : TJ.SAMP_422, i, argv[0]);
       System.out.println("");
       System.gc();
       for (int i = maxQual; i >= minQual; i--)
index 3ee3e6fd2cfe01900debcd4872a559e9659d0ef1..b2810b524bbc6bb6d8eab4863d17d9d277b3c38d 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 All Classes
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
 
index 249acfb530b76b09f649fec56ff80d81ef4cf7ae..ddc3d63363a815a4c569b2bc650bd15a15c72bff 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 All Classes
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
 
index 3978d1994def17fd767d693fb6924c5ed41922dc..e4adb67a92369eca0039ccfeb8dca41cbef48e2e 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 Constant Field Values
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
 
index 9a7315942548b10ac38764c75dd3c0413965e0da..2430387cb386e55630f28389b94b67cafe4ea77c 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 Deprecated List
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
 
index ebffee078d9b70ffd19f1dd44ff51c924b00d115..b919d0aaa298c57a9804670846dca2d9639fa46b 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 API Help
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
 
index 820876fa2afff43f8b8d2ecbc65b0f1d515e4207..56ac2d5b66367c0344449dd5e60350d2a63d8ab1 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 Index
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="./stylesheet.css" TITLE="Style">
 
index d55584876009b278018301413095bee5d509581f..87aed330ca82a8dc2f5e2a8b09673f9166e34361 100644 (file)
@@ -2,7 +2,6 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc on Sat Apr 27 20:13:12 CDT 2013-->
 <TITLE>
 Generated Documentation (Untitled)
 </TITLE>
index 3103cd4152438a10985409edbd7e527487ad5b25..50ade4985c436eca723df0567749a1e18de3af28 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:11 CDT 2013 -->
 <TITLE>
 TJ
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
 
@@ -545,6 +543,7 @@ public static final int <B>SAMP_440</B></PRE>
 <DL>
 <DD>4:4:0 chrominance subsampling.  The JPEG or YUV image will contain one
  chrominance component for every 1x2 block of pixels in the source image.
+ Note that 4:4:0 subsampling is not fully accelerated in libjpeg-turbo.
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#org.libjpegturbo.turbojpeg.TJ.SAMP_440">Constant Field Values</A></DL>
@@ -807,11 +806,11 @@ FLAG_FASTDCT</H3>
 public static final int <B>FLAG_FASTDCT</B></PRE>
 <DL>
 <DD>Use the fastest DCT/IDCT algorithm available in the underlying codec.  The
- default if this flag is not specified is implementation-specific.  The
libjpeg implementation, for example, uses the fast algorithm by default
- when compressing, because this has been shown to have only a very slight
- effect on accuracy, but it uses the accurate algorithm when decompressing,
- because this has been shown to have a larger effect.
+ default if this flag is not specified is implementation-specific.  For
example, the implementation of TurboJPEG for libjpeg[-turbo] uses the fast
+ algorithm by default when compressing, because this has been shown to have
+ only a very slight effect on accuracy, but it uses the accurate algorithm
when decompressing, because this has been shown to have a larger effect.
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#org.libjpegturbo.turbojpeg.TJ.FLAG_FASTDCT">Constant Field Values</A></DL>
@@ -825,11 +824,11 @@ public static final int <B>FLAG_ACCURATEDCT</B></PRE>
 <DL>
 <DD>Use the most accurate DCT/IDCT algorithm available in the underlying
  codec.  The default if this flag is not specified is
- implementation-specific.  The libjpeg implementation, for example, uses
- the fast algorithm by default when compressing, because this has been
- shown to have only a very slight effect on accuracy, but it uses the
- accurate algorithm when decompressing, because this has been shown to have
- a larger effect.
+ implementation-specific.  For example, the implementation of TurboJPEG for
+ libjpeg[-turbo] uses the fast algorithm by default when compressing,
+ because this has been shown to have only a very slight effect on accuracy,
+ but it uses the accurate algorithm when decompressing, because this has
been shown to have a larger effect.
 <P>
 <DL>
 <DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#org.libjpegturbo.turbojpeg.TJ.FLAG_ACCURATEDCT">Constant Field Values</A></DL>
index ee829c8890f0ce1e0a31f81cbaab5421b1bfd7f5..40511c0e4610f67068f57aa4c99812da5e71fbc1 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 TJCompressor
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
 
index 350d63659d03023286dd61c6259afd45db78a6cb..4cb26157e07b5e6c24682b00642da341140d0f94 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 TJCustomFilter
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
 
index 013c05423c95cf3b8f5eadcec9fa6c2a4938ff42..6d46ebd4254a238675d9c8b51acda9011fc67549 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 TJDecompressor
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
 
index 8badc52dc11734caae5ad7169891957b68db2e54..af29fc560c0a816ff812ff1a63de0be32d3435e3 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 TJScalingFactor
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
 
index 7e9f660ed32414677e1654d43d823066abd9d0b6..3a68c9f82bc7bef861b442e6ef94d07e8d151aef 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 TJTransform
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
 
index c597fa7fbf2ee7527c2b005ade0df11227c0ed8b..b1cc0eb1915d99f9c38317b7e779598245f2e5c8 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 TJTransformer
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
 
index 035d330b75544da8f2e3ebdc6bf3469d1af97da3..f160418d2c62d5bc7cd8f6ea911507232f1a1a0c 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 org.libjpegturbo.turbojpeg
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
 
index 7a161426cf8713163586bd96f2731bfea91f8207..505512c97c84d2d869237bbb9d1f6034923f82b8 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 org.libjpegturbo.turbojpeg
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
 
index 90668357323b8741b043659216347db5daca7d42..e13143d8052b3a8fbb826dcbc07a0cdcdb66c706 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 org.libjpegturbo.turbojpeg Class Hierarchy
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
 
index dd01dd97c8e8bbb9d3d99919ee1286ba464bda73..1c12b10edd94ce2e14359526e313f4c13102877b 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 Class Hierarchy
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
 
index bc8b1bb5a984cf031dea2da1ad0e3b10958ecd66..8ba0661bc576659ca20f1db33724c153aff3be33 100644 (file)
@@ -2,12 +2,10 @@
 <!--NewPage-->
 <HTML>
 <HEAD>
-<!-- Generated by javadoc (build 1.6.0_43) on Sat Apr 27 20:13:12 CDT 2013 -->
 <TITLE>
 Serialized Form
 </TITLE>
 
-<META NAME="date" CONTENT="2013-04-27">
 
 <LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
 
index eb9f0275d3ca111e0b2500d4aea044919f3c3c0c..f240ad58471a3571215430c8066373404f58045d 100644 (file)
@@ -61,6 +61,7 @@ public final class TJ {
   /**
    * 4:4:0 chrominance subsampling.  The JPEG or YUV image will contain one
    * chrominance component for every 1x2 block of pixels in the source image.
+   * Note that 4:4:0 subsampling is not fully accelerated in libjpeg-turbo.
    */
   public static final int SAMP_440  = 4;
 
@@ -300,21 +301,21 @@ public final class TJ {
   public static final int FLAG_FASTUPSAMPLE = 256;
   /**
    * Use the fastest DCT/IDCT algorithm available in the underlying codec.  The
-   * default if this flag is not specified is implementation-specific.  The
-   * libjpeg implementation, for example, uses the fast algorithm by default
-   * when compressing, because this has been shown to have only a very slight
-   * effect on accuracy, but it uses the accurate algorithm when decompressing,
-   * because this has been shown to have a larger effect.
+   * default if this flag is not specified is implementation-specific.  For
+   * example, the implementation of TurboJPEG for libjpeg[-turbo] uses the fast
+   * algorithm by default when compressing, because this has been shown to have
+   * only a very slight effect on accuracy, but it uses the accurate algorithm
+   * when decompressing, because this has been shown to have a larger effect.
    */
   public static final int FLAG_FASTDCT      =  2048;
   /**
    * Use the most accurate DCT/IDCT algorithm available in the underlying
    * codec.  The default if this flag is not specified is
-   * implementation-specific.  The libjpeg implementation, for example, uses
-   * the fast algorithm by default when compressing, because this has been
-   * shown to have only a very slight effect on accuracy, but it uses the
-   * accurate algorithm when decompressing, because this has been shown to have
-   * a larger effect.
+   * implementation-specific.  For example, the implementation of TurboJPEG for
+   * libjpeg[-turbo] uses the fast algorithm by default when compressing,
+   * because this has been shown to have only a very slight effect on accuracy,
+   * but it uses the accurate algorithm when decompressing, because this has
+   * been shown to have a larger effect.
    */
   public static final int FLAG_ACCURATEDCT  =  4096;