more const stuff, fixed a stupid bug in sb_decoder_ctl
authorjm <jm@0101bb08-14d6-0310-b084-bc0e0c8e3800>
Fri, 5 Dec 2003 14:59:48 +0000 (14:59 +0000)
committerjm <jm@0101bb08-14d6-0310-b084-bc0e0c8e3800>
Fri, 5 Dec 2003 14:59:48 +0000 (14:59 +0000)
git-svn-id: http://svn.xiph.org/trunk/speex@5688 0101bb08-14d6-0310-b084-bc0e0c8e3800

libspeex/quant_lsp.c
libspeex/quant_lsp.h
libspeex/sb_celp.c

index 8fed7e4..76d3f37 100644 (file)
@@ -82,14 +82,14 @@ static void compute_quant_weights(spx_lsp_t *qlsp, spx_word16_t *quant_weight, i
 }
 
 /* Note: x is modified*/
-static int lsp_quant(spx_word16_t *x, signed char *cdbk, int nbVec, int nbDim)
+static int lsp_quant(spx_word16_t *x, const signed char *cdbk, int nbVec, int nbDim)
 {
    int i,j;
    spx_word32_t dist;
    spx_word16_t tmp;
    spx_word32_t best_dist=0;
    int best_id=0;
-   signed char *ptr=cdbk;
+   const signed char *ptr=cdbk;
    for (i=0;i<nbVec;i++)
    {
       dist=0;
@@ -112,14 +112,14 @@ static int lsp_quant(spx_word16_t *x, signed char *cdbk, int nbVec, int nbDim)
 }
 
 /* Note: x is modified*/
-static int lsp_weight_quant(spx_word16_t *x, spx_word16_t *weight, signed char *cdbk, int nbVec, int nbDim)
+static int lsp_weight_quant(spx_word16_t *x, spx_word16_t *weight, const signed char *cdbk, int nbVec, int nbDim)
 {
    int i,j;
    spx_word32_t dist;
    spx_word16_t tmp;
    spx_word32_t best_dist=0;
    int best_id=0;
-   signed char *ptr=cdbk;
+   const signed char *ptr=cdbk;
    for (i=0;i<nbVec;i++)
    {
       dist=0;
@@ -287,8 +287,8 @@ void lsp_unquant_lbr(spx_lsp_t *lsp, int order, SpeexBits *bits)
 }
 
 
-extern signed char high_lsp_cdbk[];
-extern signed char high_lsp_cdbk2[];
+extern const signed char high_lsp_cdbk[];
+extern const signed char high_lsp_cdbk2[];
 
 
 void lsp_quant_high(spx_lsp_t *lsp, spx_lsp_t *qlsp, int order, SpeexBits *bits)
@@ -359,8 +359,8 @@ void lsp_unquant_high(spx_lsp_t *lsp, int order, SpeexBits *bits)
 
 #ifdef EPIC_48K
 
-extern signed char cdbk_lsp_vlbr[5120];
-extern signed char cdbk_lsp2_vlbr[160];
+extern const signed char cdbk_lsp_vlbr[5120];
+extern const signed char cdbk_lsp2_vlbr[160];
 
 void lsp_quant_48k(spx_lsp_t *lsp, spx_lsp_t *qlsp, int order, SpeexBits *bits)
 {
index c4265c8..12bdddf 100644 (file)
 #define NB_CDBK_SIZE_HIGH2 64
 
 /*Narrowband codebooks*/
-extern signed char cdbk_nb[];
-extern signed char cdbk_nb_low1[];
-extern signed char cdbk_nb_low2[];
-extern signed char cdbk_nb_high1[];
-extern signed char cdbk_nb_high2[];
+extern const signed char cdbk_nb[];
+extern const signed char cdbk_nb_low1[];
+extern const signed char cdbk_nb_low2[];
+extern const signed char cdbk_nb_high1[];
+extern const signed char cdbk_nb_high2[];
 
 /* Quantizes narrowband LSPs with 30 bits */
 void lsp_quant_nb(spx_lsp_t *lsp, spx_lsp_t *qlsp, int order, SpeexBits *bits);
index 1fc70ba..751dd0b 100644 (file)
@@ -1333,7 +1333,7 @@ int sb_decoder_ctl(void *state, int request, void *ptr)
       st->submodeID = (*(int*)ptr);
       break;
    case SPEEX_SET_LOW_MODE:
-      speex_encoder_ctl(st->st_low, SPEEX_SET_LOW_MODE, ptr);
+      speex_decoder_ctl(st->st_low, SPEEX_SET_LOW_MODE, ptr);
       break;
    case SPEEX_GET_LOW_MODE:
       speex_decoder_ctl(st->st_low, SPEEX_GET_LOW_MODE, ptr);