diff options
author | Alex Converse <alex.converse@gmail.com> | 2010-05-03 19:21:35 +0000 |
---|---|---|
committer | Alex Converse <alex.converse@gmail.com> | 2010-05-03 19:21:35 +0000 |
commit | 17d5959998c4f523abb4fde0dd0bb7df562219d8 (patch) | |
tree | 63beae0fbc040555a945020bf0e0ac2d99605bee /libavcodec | |
parent | b05394a08149c7d32a0b13c4d46e6a9d4082a786 (diff) | |
download | ffmpeg-17d5959998c4f523abb4fde0dd0bb7df562219d8.tar.gz |
10l: The SBR refactor requires the use of 2 independent output X buffers.
Originally committed as revision 23014 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavcodec')
-rw-r--r-- | libavcodec/aacsbr.c | 6 | ||||
-rw-r--r-- | libavcodec/sbr.h | 2 |
2 files changed, 4 insertions, 4 deletions
diff --git a/libavcodec/aacsbr.c b/libavcodec/aacsbr.c index 130e3ed121..0de81a5025 100644 --- a/libavcodec/aacsbr.c +++ b/libavcodec/aacsbr.c @@ -1750,15 +1750,15 @@ void ff_sbr_apply(AACContext *ac, SpectralBandReplication *sbr, int id_aac, } /* 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, diff --git a/libavcodec/sbr.h b/libavcodec/sbr.h index 11c97f7045..2d9f4a519d 100644 --- a/libavcodec/sbr.h +++ b/libavcodec/sbr.h @@ -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 |