exc[subvect_size*i+j]+=s*0.03125*shape_cb[ind[i]*subvect_size+j];
exc[subvect_size*i+j]+=s*0.03125*SIG_SCALING*shape_cb[ind[i]*subvect_size+j]; #else for (j=0;j<subvect_size;j++) exc[subvect_size*i+j]+=s*0.03125*shape_cb[ind[i]*subvect_size+j]; #endif
void split_cb_shape_sign_unquant(float *exc,void *par,                      /* non-overlapping codebook */int   nsf,                      /* number of samples in subframe */SpeexBits *bits,char *stack){   int i,j;   int *ind, *signs;   signed char *shape_cb;   int shape_cb_size, subvect_size, nb_subvect;   split_cb_params *params;   int have_sign;   params = (split_cb_params *) par;   subvect_size = params->subvect_size;   nb_subvect = params->nb_subvect;   shape_cb_size = 1<<params->shape_bits;   shape_cb = params->shape_cb;   have_sign = params->have_sign;   ind = PUSH(stack, nb_subvect, int);   signs = PUSH(stack, nb_subvect, int);   /* Decode codewords and gains */   for (i=0;i<nb_subvect;i++)   {      if (have_sign)         signs[i] = speex_bits_unpack_unsigned(bits, 1);      else         signs[i] = 0;      ind[i] = speex_bits_unpack_unsigned(bits, params->shape_bits);   }   /* Compute decoded excitation */   for (i=0;i<nb_subvect;i++)   {      float s=1;      if (signs[i])         s=-1;      for (j=0;j<subvect_size;j++)         exc[subvect_size*i+j]+=s*0.03125*shape_cb[ind[i]*subvect_size+j];   }}