# HG changeset patch # User jbr # Date 1184428805 0 # Node ID 4bd60d3bab7eb3cb304a97f656ae4afee94cb2b9 # Parent 2c875e6274d5bbda79b09618a28d0bb2a703d53f AC-3 decoder, soc revision 53, Aug 17 08:53:44 2006 UTC by cloud9 Converted the window from double to float. Now sound produced is as good as sound produced by liba52. diff -r 2c875e6274d5 -r 4bd60d3bab7e ac3dec.c --- a/ac3dec.c Sat Jul 14 15:59:25 2007 +0000 +++ b/ac3dec.c Sat Jul 14 16:00:05 2007 +0000 @@ -224,10 +224,10 @@ * Generate a Kaiser Window. */ static void -k_window_init(int alpha, double *window, int n, int iter) +k_window_init(int alpha, float *window, int n, int iter) { int j, k; - double a, x; + float a, x; a = alpha * M_PI / n; a = a*a; for(k=0; k> 1; kwindow = &window[n2]; @@ -319,7 +319,6 @@ static void ac3_tables_init(void) { int i, j, k, l, v; - float alpha; /* compute bndtab and masktab from bandsz */ k = 0; l = 0; @@ -376,19 +375,6 @@ //for level-15 quantizers generate_quantizers_table(l15_quantizers, 15, 15); - /* Twiddle Factors for IMDCT. */ - for(i = 0; i < N / 4; i++) { - alpha = 2 * M_PI * (8 * i + 1) / (8 * N); - x_cos1[i] = -cos(alpha); - x_sin1[i] = -sin(alpha); - } - - for (i = 0; i < N / 8; i++) { - alpha = 2 * M_PI * (8 * i + 1) / (4 * N); - x_cos2[i] = -cos(alpha); - x_sin2[i] = -sin(alpha); - } - /* Kaiser-Bessel derived window. */ kbd_window_init(5, window, 256, 100); } @@ -1917,8 +1903,7 @@ AC3DecodeContext *ctx = (AC3DecodeContext *)avctx->priv_data; int frame_start; int16_t *out_samples = (int16_t *)data; - int i, j, k, value, fs_58; - uint16_t crc1; + int i, j, k, value; av_log(NULL, AV_LOG_INFO, "decoding frame %d buf_size = %d\n", frame_count++, buf_size);