Fix playback of HE-AACv2 (aka SBR+PS) files.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14807 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
Magnus Holmgren 2007-09-21 17:39:24 +00:00
parent 322fcb5d1c
commit 8fadf6bbe0
2 changed files with 8 additions and 7 deletions

View file

@ -1036,10 +1036,11 @@ static void ps_decorrelate(ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][
const complex_t *Phi_Fract_SubQmf;
uint8_t temp_delay_ser[NO_ALLPASS_LINKS];
real_t P_SmoothPeakDecayDiffNrg, nrg;
real_t P[32][34];
real_t G_TransientRatio[32][34] = {{0}};
static real_t P[32][34];
static real_t G_TransientRatio[32][34];
complex_t inputLeft;
memset(&G_TransientRatio, 0, sizeof(G_TransientRatio));
/* chose hybrid filterbank: 20 or 34 band case */
if (ps->use34hybrid_bands)
@ -1940,8 +1941,8 @@ ps_info *ps_init(uint8_t sr_index)
/* main Parametric Stereo decoding function */
uint8_t ps_decode(ps_info *ps, qmf_t X_left[38][64], qmf_t X_right[38][64])
{
qmf_t X_hybrid_left[32][32];
qmf_t X_hybrid_right[32][32];
static qmf_t X_hybrid_left[32][32];
static qmf_t X_hybrid_right[32][32];
memset(&X_hybrid_left,0,sizeof(X_hybrid_left));
memset(&X_hybrid_right,0,sizeof(X_hybrid_right));

View file

@ -68,7 +68,7 @@ void sbr_qmf_analysis_32(sbr_info *sbr, qmfa_info *qmfa, const real_t *input,
{
ALIGN real_t u[64];
#ifndef SBR_LOW_POWER
ALIGN real_t in_real[32], in_imag[32], out_real[32], out_imag[32];
static ALIGN real_t in_real[32], in_imag[32], out_real[32], out_imag[32];
#else
ALIGN real_t y[32];
#endif
@ -456,8 +456,8 @@ void sbr_qmf_synthesis_64(sbr_info *sbr, qmfs_info *qmfs, qmf_t X[MAX_NTSRHFG][6
{
// ALIGN real_t x1[64], x2[64];
#ifndef SBR_LOW_POWER
ALIGN real_t in_real1[32], in_imag1[32], out_real1[32], out_imag1[32];
ALIGN real_t in_real2[32], in_imag2[32], out_real2[32], out_imag2[32];
static ALIGN real_t in_real1[32], in_imag1[32], out_real1[32], out_imag1[32];
static ALIGN real_t in_real2[32], in_imag2[32], out_real2[32], out_imag2[32];
#endif
qmf_t * pX;
real_t * pring_buffer_1, * pring_buffer_3;