diff --git a/libavcodec/aacsbr.c b/libavcodec/aacsbr.c index 4caabb5087..290fb819e7 100644 --- a/libavcodec/aacsbr.c +++ b/libavcodec/aacsbr.c @@ -1702,12 +1702,18 @@ void ff_sbr_apply(AACContext *ac, SpectralBandReplication *sbr, int id_aac, sbr_qmf_analysis(&ac->fdsp, &sbr->mdct_ana, &sbr->dsp, ch ? R : L, sbr->data[ch].analysis_filterbank_samples, (float*)sbr->qmf_filter_scratch, sbr->data[ch].W, sbr->data[ch].Ypos); - sbr->c.sbr_lf_gen(ac, sbr, sbr->X_low, sbr->data[ch].W, sbr->data[ch].Ypos); + sbr->c.sbr_lf_gen(ac, sbr, sbr->X_low, + (const float (*)[32][32][2]) sbr->data[ch].W, + sbr->data[ch].Ypos); sbr->data[ch].Ypos ^= 1; if (sbr->start) { - sbr->c.sbr_hf_inverse_filter(&sbr->dsp, sbr->alpha0, sbr->alpha1, sbr->X_low, sbr->k[0]); + sbr->c.sbr_hf_inverse_filter(&sbr->dsp, sbr->alpha0, sbr->alpha1, + (const float (*)[40][2]) sbr->X_low, sbr->k[0]); sbr_chirp(sbr, &sbr->data[ch]); - sbr_hf_gen(ac, sbr, sbr->X_high, sbr->X_low, sbr->alpha0, sbr->alpha1, + sbr_hf_gen(ac, sbr, sbr->X_high, + (const float (*)[40][2]) sbr->X_low, + (const float (*)[2]) sbr->alpha0, + (const float (*)[2]) sbr->alpha1, sbr->data[ch].bw_array, sbr->data[ch].t_env, sbr->data[ch].bs_num_env); @@ -1717,16 +1723,17 @@ void ff_sbr_apply(AACContext *ac, SpectralBandReplication *sbr, int id_aac, sbr_env_estimate(sbr->e_curr, sbr->X_high, sbr, &sbr->data[ch]); sbr_gain_calc(ac, sbr, &sbr->data[ch], sbr->data[ch].e_a); sbr->c.sbr_hf_assemble(sbr->data[ch].Y[sbr->data[ch].Ypos], - sbr->X_high, sbr, &sbr->data[ch], + (const float (*)[40][2]) sbr->X_high, + sbr, &sbr->data[ch], sbr->data[ch].e_a); } } /* synthesis */ sbr->c.sbr_x_gen(sbr, sbr->X[ch], - sbr->data[ch].Y[1-sbr->data[ch].Ypos], - sbr->data[ch].Y[ sbr->data[ch].Ypos], - sbr->X_low, ch); + (const float (*)[64][2]) sbr->data[ch].Y[1-sbr->data[ch].Ypos], + (const float (*)[64][2]) sbr->data[ch].Y[ sbr->data[ch].Ypos], + (const float (*)[40][2]) sbr->X_low, ch); } if (ac->oc[1].m4ac.ps == 1) {