diff --git a/libcelt/bands.c b/libcelt/bands.c index 1ce31439..e3b79a36 100644 --- a/libcelt/bands.c +++ b/libcelt/bands.c @@ -143,17 +143,20 @@ void renormalise_bands(const CELTMode *m, celt_norm_t *X) void denormalise_bands(const CELTMode *m, const celt_norm_t *X, celt_sig_t *freq, const celt_ener_t *bank) { int i, c, B, C; + const celt_word16_t sqrtC_1[2] = {QCONST16(1.f, 14), QCONST16(1.414214f, 14)}; const int *eBands = m->eBands; B = m->nbMdctBlocks; C = m->nbChannels; + if (C>2) + celt_fatal("denormalise_bands() not implemented for >2 channels"); for (c=0;cnbEBands;i++) { int j; - float g = ENER_SCALING_1*sqrt(C)*bank[i*C+c]; + celt_word32_t g = MULT16_32_Q14(sqrtC_1[C-1],bank[i*C+c]); for (j=B*eBands[i];jnbEBands];inbEBands+1];i++) diff --git a/tools/celtclient.c b/tools/celtclient.c index 08c612d0..ae64f359 100644 --- a/tools/celtclient.c +++ b/tools/celtclient.c @@ -219,7 +219,7 @@ int main(int argc, char *argv[]) sizeof(remoteAddr)); if(rc<0) { - printf("cannot send audio data\n"); + perror("cannot send to socket"); close(sd); exit(1); }