libavcodec/aacsbr.c:1711: error: Buffer Overrun L1
  Offset: 2 (⇐ 1 + 1) Size: 2 by call to `sbr_qmf_synthesis`.

libavcodec/aacsbr.c:1646:1: Parameter `sbr->X[*]`
1644. }
1645. 
1646. void ff_sbr_apply(AACContext *ac, SpectralBandReplication *sbr, int id_aac,
      ^
1647.                   float* L, float* R)
1648. {

libavcodec/aacsbr.c:1711:9: Call
1709.                       downsampled);
1710.     if (nch == 2)
1711.         sbr_qmf_synthesis(&ac->dsp, &sbr->mdct, &sbr->dsp, &ac->fdsp,
              ^
1712.                           R, sbr->X[1], sbr->qmf_filter_scratch,
1713.                           sbr->data[1].synthesis_filterbank_samples,

libavcodec/aacsbr.c:1175:1: <Length trace>
1173.  * (14496-3 sp04 p206)
1174.  */
1175. static void sbr_qmf_synthesis(DSPContext *dsp, FFTContext *mdct,
      ^
1176.                               SBRDSPContext *sbrdsp, AVFloatDSPContext *fdsp,
1177.                               float *out, float X[2][38][64],

libavcodec/aacsbr.c:1175:1: Parameter `*X`
  1173.  * (14496-3 sp04 p206)
  1174.  */
  1175. static void sbr_qmf_synthesis(DSPContext *dsp, FFTContext *mdct,
        ^
  1176.                               SBRDSPContext *sbrdsp, AVFloatDSPContext *fdsp,
  1177.                               float *out, float X[2][38][64],

libavcodec/aacsbr.c:1197:34: Array access: Offset: 2 (⇐ 1 + 1) Size: 2 by call to `sbr_qmf_synthesis` 
  1195.             for (n = 0; n < 32; n++) {
  1196.                 X[0][i][   n] = -X[0][i][n];
  1197.                 X[0][i][32+n] =  X[1][i][31-n];
                                         ^
  1198.             }
  1199.             mdct->imdct_half(mdct, mdct_buf[0], X[0][i]);

static void sbr_qmf_synthesis(DSPContext *dsp, FFTContext *mdct,
                              SBRDSPContext *sbrdsp, AVFloatDSPContext *fdsp,
                              float *out, float X[2][38][64],
                              float mdct_buf[2][64],
                              float *v0, int *v_off, const unsigned int div)
{
    int i, n;
    const float *sbr_qmf_window = div ? sbr_qmf_window_ds : sbr_qmf_window_us;
    const int step = 128 >> div;
    float *v;
    for (i = 0; i < 32; i++) {
        if (*v_off < step) {
            int saved_samples = (1280 - 128) >> div;
            memcpy(&v0[SBR_SYNTHESIS_BUF_SIZE - saved_samples], v0, saved_samples * sizeof(float));
            *v_off = SBR_SYNTHESIS_BUF_SIZE - saved_samples - step;
        } else {
            *v_off -= step;
        }
        v = v0 + *v_off;
        if (div) {
            for (n = 0; n < 32; n++) {
                X[0][i][   n] = -X[0][i][n];
                X[0][i][32+n] =  X[1][i][31-n];
            }
            mdct->imdct_half(mdct, mdct_buf[0], X[0][i]);
            sbrdsp->qmf_deint_neg(v, mdct_buf[0]);
        } else {
            sbrdsp->neg_odd_64(X[1][i]);
            mdct->imdct_half(mdct, mdct_buf[0], X[0][i]);
            mdct->imdct_half(mdct, mdct_buf[1], X[1][i]);
            sbrdsp->qmf_deint_bfly(v, mdct_buf[1], mdct_buf[0]);
        }
        fdsp->vector_fmul   (out, v                , sbr_qmf_window                       , 64 >> div);
        dsp->vector_fmul_add(out, v + ( 192 >> div), sbr_qmf_window + ( 64 >> div), out   , 64 >> div);
        dsp->vector_fmul_add(out, v + ( 256 >> div), sbr_qmf_window + (128 >> div), out   , 64 >> div);
        dsp->vector_fmul_add(out, v + ( 448 >> div), sbr_qmf_window + (192 >> div), out   , 64 >> div);
        dsp->vector_fmul_add(out, v + ( 512 >> div), sbr_qmf_window + (256 >> div), out   , 64 >> div);
        dsp->vector_fmul_add(out, v + ( 704 >> div), sbr_qmf_window + (320 >> div), out   , 64 >> div);
        dsp->vector_fmul_add(out, v + ( 768 >> div), sbr_qmf_window + (384 >> div), out   , 64 >> div);
        dsp->vector_fmul_add(out, v + ( 960 >> div), sbr_qmf_window + (448 >> div), out   , 64 >> div);
        dsp->vector_fmul_add(out, v + (1024 >> div), sbr_qmf_window + (512 >> div), out   , 64 >> div);
        dsp->vector_fmul_add(out, v + (1216 >> div), sbr_qmf_window + (576 >> div), out   , 64 >> div);
        out += 64 >> div;
    }
}
['void ff_sbr_apply(AACContext *ac, SpectralBandReplication *sbr, int id_aac,\n                  float* L, float* R)\n{\n    int downsampled = ac->oc[1].m4ac.ext_sample_rate < sbr->sample_rate;\n    int ch;\n    int nch = (id_aac == TYPE_CPE) ? 2 : 1;\n    int err;\n    if (!sbr->kx_and_m_pushed) {\n        sbr->kx[0] = sbr->kx[1];\n        sbr->m[0] = sbr->m[1];\n    } else {\n        sbr->kx_and_m_pushed = 0;\n    }\n    if (sbr->start) {\n        sbr_dequant(sbr, id_aac);\n    }\n    for (ch = 0; ch < nch; ch++) {\n        sbr_qmf_analysis(&ac->dsp, &sbr->mdct_ana, &sbr->dsp, ch ? R : L, sbr->data[ch].analysis_filterbank_samples,\n                         (float*)sbr->qmf_filter_scratch,\n                         sbr->data[ch].W, sbr->data[ch].Ypos);\n        sbr_lf_gen(ac, sbr, sbr->X_low, sbr->data[ch].W, sbr->data[ch].Ypos);\n        sbr->data[ch].Ypos ^= 1;\n        if (sbr->start) {\n            sbr_hf_inverse_filter(&sbr->dsp, sbr->alpha0, sbr->alpha1, sbr->X_low, sbr->k[0]);\n            sbr_chirp(sbr, &sbr->data[ch]);\n            sbr_hf_gen(ac, sbr, sbr->X_high, sbr->X_low, sbr->alpha0, sbr->alpha1,\n                       sbr->data[ch].bw_array, sbr->data[ch].t_env,\n                       sbr->data[ch].bs_num_env);\n            err = sbr_mapping(ac, sbr, &sbr->data[ch], sbr->data[ch].e_a);\n            if (!err) {\n                sbr_env_estimate(sbr->e_curr, sbr->X_high, sbr, &sbr->data[ch]);\n                sbr_gain_calc(ac, sbr, &sbr->data[ch], sbr->data[ch].e_a);\n                sbr_hf_assemble(sbr->data[ch].Y[sbr->data[ch].Ypos],\n                                sbr->X_high, sbr, &sbr->data[ch],\n                                sbr->data[ch].e_a);\n            }\n        }\n        sbr_x_gen(sbr, sbr->X[ch],\n                  sbr->data[ch].Y[1-sbr->data[ch].Ypos],\n                  sbr->data[ch].Y[  sbr->data[ch].Ypos],\n                  sbr->X_low, ch);\n    }\n    if (ac->oc[1].m4ac.ps == 1) {\n        if (sbr->ps.start) {\n            ff_ps_apply(ac->avctx, &sbr->ps, sbr->X[0], sbr->X[1], sbr->kx[1] + sbr->m[1]);\n        } else {\n            memcpy(sbr->X[1], sbr->X[0], sizeof(sbr->X[0]));\n        }\n        nch = 2;\n    }\n    sbr_qmf_synthesis(&ac->dsp, &sbr->mdct, &sbr->dsp, &ac->fdsp,\n                      L, sbr->X[0], sbr->qmf_filter_scratch,\n                      sbr->data[0].synthesis_filterbank_samples,\n                      &sbr->data[0].synthesis_filterbank_samples_offset,\n                      downsampled);\n    if (nch == 2)\n        sbr_qmf_synthesis(&ac->dsp, &sbr->mdct, &sbr->dsp, &ac->fdsp,\n                          R, sbr->X[1], sbr->qmf_filter_scratch,\n                          sbr->data[1].synthesis_filterbank_samples,\n                          &sbr->data[1].synthesis_filterbank_samples_offset,\n                          downsampled);\n}', 'static void sbr_qmf_synthesis(DSPContext *dsp, FFTContext *mdct,\n                              SBRDSPContext *sbrdsp, AVFloatDSPContext *fdsp,\n                              float *out, float X[2][38][64],\n                              float mdct_buf[2][64],\n                              float *v0, int *v_off, const unsigned int div)\n{\n    int i, n;\n    const float *sbr_qmf_window = div ? sbr_qmf_window_ds : sbr_qmf_window_us;\n    const int step = 128 >> div;\n    float *v;\n    for (i = 0; i < 32; i++) {\n        if (*v_off < step) {\n            int saved_samples = (1280 - 128) >> div;\n            memcpy(&v0[SBR_SYNTHESIS_BUF_SIZE - saved_samples], v0, saved_samples * sizeof(float));\n            *v_off = SBR_SYNTHESIS_BUF_SIZE - saved_samples - step;\n        } else {\n            *v_off -= step;\n        }\n        v = v0 + *v_off;\n        if (div) {\n            for (n = 0; n < 32; n++) {\n                X[0][i][   n] = -X[0][i][n];\n                X[0][i][32+n] =  X[1][i][31-n];\n            }\n            mdct->imdct_half(mdct, mdct_buf[0], X[0][i]);\n            sbrdsp->qmf_deint_neg(v, mdct_buf[0]);\n        } else {\n            sbrdsp->neg_odd_64(X[1][i]);\n            mdct->imdct_half(mdct, mdct_buf[0], X[0][i]);\n            mdct->imdct_half(mdct, mdct_buf[1], X[1][i]);\n            sbrdsp->qmf_deint_bfly(v, mdct_buf[1], mdct_buf[0]);\n        }\n        fdsp->vector_fmul   (out, v                , sbr_qmf_window                       , 64 >> div);\n        dsp->vector_fmul_add(out, v + ( 192 >> div), sbr_qmf_window + ( 64 >> div), out   , 64 >> div);\n        dsp->vector_fmul_add(out, v + ( 256 >> div), sbr_qmf_window + (128 >> div), out   , 64 >> div);\n        dsp->vector_fmul_add(out, v + ( 448 >> div), sbr_qmf_window + (192 >> div), out   , 64 >> div);\n        dsp->vector_fmul_add(out, v + ( 512 >> div), sbr_qmf_window + (256 >> div), out   , 64 >> div);\n        dsp->vector_fmul_add(out, v + ( 704 >> div), sbr_qmf_window + (320 >> div), out   , 64 >> div);\n        dsp->vector_fmul_add(out, v + ( 768 >> div), sbr_qmf_window + (384 >> div), out   , 64 >> div);\n        dsp->vector_fmul_add(out, v + ( 960 >> div), sbr_qmf_window + (448 >> div), out   , 64 >> div);\n        dsp->vector_fmul_add(out, v + (1024 >> div), sbr_qmf_window + (512 >> div), out   , 64 >> div);\n        dsp->vector_fmul_add(out, v + (1216 >> div), sbr_qmf_window + (576 >> div), out   , 64 >> div);\n        out += 64 >> div;\n    }\n}']