diff --git a/libcelt/arch.h b/libcelt/arch.h
index 084b298a45de006f478312357b087273d7686a63..ec43c7b51cb2f2f8e64e5c95b4eff7a1198da7a9 100644
--- a/libcelt/arch.h
+++ b/libcelt/arch.h
@@ -96,8 +96,7 @@ typedef celt_word32 celt_mask;
 #define PGAIN_SCALING_1 (1.f/32768.f)
 #define PGAIN_SHIFT 15
 
-#define DB_SCALING 256.f
-#define DB_SCALING_1 (1.f/256.f)
+#define DB_SHIFT 8
 
 #define EPSILON 1
 #define VERY_SMALL 0
@@ -151,9 +150,6 @@ typedef float celt_mask;
 #define PGAIN_SCALING 1.f
 #define PGAIN_SCALING_1 1.f
 
-#define DB_SCALING 1.f
-#define DB_SCALING_1 1.f
-
 #define EPSILON 1e-15f
 #define VERY_SMALL 1e-15f
 #define VERY_LARGE32 1e15f
diff --git a/libcelt/celt.h b/libcelt/celt.h
index 37aee27d1484ba441c2c360a5e6b930b78168f9b..fbf47e3c9465d408f6aade80c706696c6f83e89e 100644
--- a/libcelt/celt.h
+++ b/libcelt/celt.h
@@ -269,7 +269,7 @@ EXPORT int celt_decoder_ctl(CELTDecoder * st, int request, ...);
 
 /*  @} */
 
-const char *celt_strerror(int error);
+EXPORT const char *celt_strerror(int error);
 
 
 #ifdef __cplusplus
diff --git a/libcelt/modes.c b/libcelt/modes.c
index 4411d6d91b0c8d9bd0d5c940f72dbdec1831cd77..3faae9c2ad223a2b02e6d24bfebef271e961403c 100644
--- a/libcelt/modes.c
+++ b/libcelt/modes.c
@@ -375,16 +375,6 @@ CELTMode *celt_mode_create(celt_int32 Fs, int frame_size, int *error)
    
 #endif /* !STATIC_MODES */
 
-#ifdef DISABLE_STEREO
-   if (channels > 1)
-   {
-      celt_warning("Stereo support was disable from this build");
-      if (error)
-         *error = CELT_BAD_ARG;
-      return NULL;
-   }
-#endif
-
    mdct_init(&mode->mdct, 2*mode->mdctSize);
    mode->fft = pitch_state_alloc(MAX_PERIOD);
 
diff --git a/libcelt/quant_bands.c b/libcelt/quant_bands.c
index 9191c2f1784eb1cee4b570e83b41664f382d1d6e..753c01d6e411bb3267c2e4e3e97e24d787522e76 100644
--- a/libcelt/quant_bands.c
+++ b/libcelt/quant_bands.c
@@ -136,7 +136,7 @@ unsigned quant_coarse_energy(const CELTMode *m, celt_word16 *eBands, celt_word16
             ec_laplace_encode_start(enc, &qi, prob[2*i], prob[2*i+1]);
             error[i+c*m->nbEBands] = f - SHL16(qi,8);
          }
-         q = qi*DB_SCALING;
+         q = SHL16(qi,DB_SHIFT);
          
          oldEBands[i+c*m->nbEBands] = MULT16_16_Q15(coef,oldEBands[i+c*m->nbEBands])+(mean+prev[c]+q);
          prev[c] = mean+prev[c]+MULT16_16_Q15(Q15ONE-beta,q);
@@ -252,7 +252,7 @@ void unquant_coarse_energy(const CELTMode *m, celt_ener *eBands, celt_word16 *ol
             qi = -1;
          else
             qi = ec_laplace_decode_start(dec, prob[2*i], prob[2*i+1]);
-         q = qi*DB_SCALING;
+         q = SHL16(qi,DB_SHIFT);
 
          oldEBands[i+c*m->nbEBands] = MULT16_16_Q15(coef,oldEBands[i+c*m->nbEBands])+(mean+prev[c]+q);
          prev[c] = mean+prev[c]+MULT16_16_Q15(Q15ONE-beta,q);