changeset 11677:ed3d232c9d31 libavcodec

10l: The SBR refactor requires the use of 2 independent output X buffers.
author alexc
date Mon, 03 May 2010 19:21:35 +0000
parents ceec2fb08b8e
children e1dd1ff1ab27
files aacsbr.c sbr.h
diffstat 2 files changed, 4 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/aacsbr.c	Mon May 03 05:57:48 2010 +0000
+++ b/aacsbr.c	Mon May 03 19:21:35 2010 +0000
@@ -1750,15 +1750,15 @@
         }
 
         /* synthesis */
-        sbr_x_gen(sbr, sbr->X, sbr->X_low, sbr->data[ch].Y, ch);
+        sbr_x_gen(sbr, sbr->X[ch], sbr->X_low, sbr->data[ch].Y, ch);
     }
-    sbr_qmf_synthesis(&ac->dsp, &sbr->mdct, L, sbr->X, sbr->qmf_filter_scratch,
+    sbr_qmf_synthesis(&ac->dsp, &sbr->mdct, L, sbr->X[0], sbr->qmf_filter_scratch,
                       sbr->data[0].synthesis_filterbank_samples,
                       &sbr->data[0].synthesis_filterbank_samples_offset,
                       downsampled,
                       ac->add_bias, -1024 * ac->sf_scale);
     if (nch == 2)
-        sbr_qmf_synthesis(&ac->dsp, &sbr->mdct, R, sbr->X, sbr->qmf_filter_scratch,
+        sbr_qmf_synthesis(&ac->dsp, &sbr->mdct, R, sbr->X[1], sbr->qmf_filter_scratch,
                           sbr->data[1].synthesis_filterbank_samples,
                           &sbr->data[1].synthesis_filterbank_samples_offset,
                           downsampled,
--- a/sbr.h	Mon May 03 05:57:48 2010 +0000
+++ b/sbr.h	Mon May 03 19:21:35 2010 +0000
@@ -157,7 +157,7 @@
     ///QMF output of the HF generator
     float              X_high[64][40][2];
     ///QMF values of the reconstructed signal
-    DECLARE_ALIGNED(16, float, X)[2][32][64];
+    DECLARE_ALIGNED(16, float, X)[2][2][32][64];
     ///Zeroth coefficient used to filter the subband signals
     float              alpha0[64][2];
     ///First coefficient used to filter the subband signals