From 15588ad667556d6e100dbb6e381215a4bf50e10c Mon Sep 17 00:00:00 2001 From: Jean-Marc Valin Date: Thu, 10 Apr 2008 09:00:12 +1000 Subject: [PATCH] Fixed a stereo regression introduced in e28f25f0d14959d521fda0cdb8f1220995bc50e8 --- TODO | 1 + libcelt/vq.c | 8 ++++---- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/TODO b/TODO index 4745a539..5e815f7f 100644 --- a/TODO +++ b/TODO @@ -1,3 +1,4 @@ +- Fix channel order in intra prediction and folding - Dynamic adjustment of energy quantisation - Psychacoustics * Error shaping within each band diff --git a/libcelt/vq.c b/libcelt/vq.c index 8d9fbfc4..73255c83 100644 --- a/libcelt/vq.c +++ b/libcelt/vq.c @@ -311,9 +311,9 @@ void intra_prediction(celt_norm_t *x, celt_mask_t *W, int N, int K, celt_norm_t /*printf ("%d %d ", sign, best);*/ ec_enc_bits(enc,sign,1); if (max_pos == MAX_INTRA) - ec_enc_bits(enc,best,LOG_MAX_INTRA); + ec_enc_bits(enc,best/B,LOG_MAX_INTRA); else - ec_enc_uint(enc,best,max_pos); + ec_enc_uint(enc,best/B,max_pos); /*printf ("%d %f\n", best, best_score);*/ @@ -363,9 +363,9 @@ void intra_unquant(celt_norm_t *x, int N, int K, celt_norm_t *Y, celt_norm_t * r s = -1; if (max_pos == MAX_INTRA) - best = ec_dec_bits(dec, LOG_MAX_INTRA); + best = B*ec_dec_bits(dec, LOG_MAX_INTRA); else - best = ec_dec_uint(dec, max_pos); + best = B*ec_dec_uint(dec, max_pos); /*printf ("%d %d ", sign, best);*/ if (K>10)