[FFmpeg-cvslog] r23014 - in trunk/libavcodec: aacsbr.c sbr.h

alexc subversion
Mon May 3 21:21:35 CEST 2010


Author: alexc
Date: Mon May  3 21:21:35 2010
New Revision: 23014

Log:
10l: The SBR refactor requires the use of 2 independent output X buffers.

Modified:
   trunk/libavcodec/aacsbr.c
   trunk/libavcodec/sbr.h

Modified: trunk/libavcodec/aacsbr.c
==============================================================================
--- trunk/libavcodec/aacsbr.c	Mon May  3 17:14:55 2010	(r23013)
+++ trunk/libavcodec/aacsbr.c	Mon May  3 21:21:35 2010	(r23014)
@@ -1750,15 +1750,15 @@ void ff_sbr_apply(AACContext *ac, Spectr
         }
 
         /* 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,

Modified: trunk/libavcodec/sbr.h
==============================================================================
--- trunk/libavcodec/sbr.h	Mon May  3 17:14:55 2010	(r23013)
+++ trunk/libavcodec/sbr.h	Mon May  3 21:21:35 2010	(r23014)
@@ -157,7 +157,7 @@ typedef struct {
     ///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



More information about the ffmpeg-cvslog mailing list