]> source.dussan.org Git - tigervnc.git/commitdiff
Changes in mapping of JPEG quality levels. Minor code cleanups.
authorConstantin Kaplinsky <const@tightvnc.com>
Wed, 10 Oct 2007 10:03:06 +0000 (10:03 +0000)
committerConstantin Kaplinsky <const@tightvnc.com>
Wed, 10 Oct 2007 10:03:06 +0000 (10:03 +0000)
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2360 3789f03b-4d11-0410-bbf8-ca57d06f2519

common/rfb/IrixDMJpegCompressor.cxx
common/rfb/JpegCompressor.cxx
common/rfb/JpegEncoder.cxx

index dda059f8814c522a85b3f034875ab76265e59841..6e155ec10aa1c38ff1a6e8006078da65a974b76d 100644 (file)
@@ -35,7 +35,7 @@ IrixDMJpegCompressor::~IrixDMJpegCompressor()
 }
 
 //
-// Set JPEG quality level (0..100)
+// Set JPEG quality level (1..100)
 //
 // FIXME: Call m_ic.setImageQuality() when necessary.
 //
@@ -43,10 +43,11 @@ IrixDMJpegCompressor::~IrixDMJpegCompressor()
 void
 IrixDMJpegCompressor::setQuality(int level)
 {
-  if (level < 0)
-    level = 0;
-  if (level > 100)
+  if (level < 1) {
+    level = 1;
+  } else if (level > 100) {
     level = 100;
+  }
 
   m_quality = level;
 }
index 0914f850123c42b55ddfa8bf33f4420265c69b42..0de87b4cabc0be1ecbc4853a03e4b914401f4a84 100644 (file)
@@ -134,11 +134,11 @@ StandardJpegCompressor::termDestination()
 void
 StandardJpegCompressor::setQuality(int level)
 {
-  if (level < 0)
+  if (level < 0) {
     level = 0;
-  if (level > 100)
+  } else if (level > 100) {
     level = 100;
-
+  }
   jpeg_set_quality(&m_cinfo, level, true);
 }
 
index 51d48f16bd39ed390f3fe0fb173f6a39195f463a..6903c2cc919fd8567cd05fc4da06b5dae9ded570 100644 (file)
@@ -35,7 +35,7 @@ BoolParameter JpegEncoder::useHardwareJPEG
  true);
 
 const int JpegEncoder::qualityMap[10] = {
-  5, 10, 15, 25, 37, 50, 60, 70, 75, 80
+  2, 10, 15, 25, 37, 50, 60, 70, 80, 90
 };
 
 JpegEncoder::JpegEncoder(SMsgWriter* writer_) : writer(writer_), jcomp(0)
@@ -71,9 +71,12 @@ JpegEncoder::~JpegEncoder()
 
 void JpegEncoder::setQualityLevel(int level)
 {
-  if (level >= 0 && level <= 9) {
-    jcomp->setQuality(qualityMap[level]);
+  if (level < 0) {
+    level = 0;
+  } else if (level > 9) {
+    level = 9;
   }
+  jcomp->setQuality(qualityMap[level]);
 }
 
 bool JpegEncoder::writeRect(PixelBuffer* pb, const Rect& r)