diff --git a/libavcodec/aacpsy.c b/libavcodec/aacpsy.c index d5b51f8bea..5b637b8bc3 100644 --- a/libavcodec/aacpsy.c +++ b/libavcodec/aacpsy.c @@ -420,7 +420,7 @@ static void psy_3gpp_analyze(FFPsyContext *ctx, int channel, band[g].thr = FFMAX(band[g].thr, band[g+1].thr * coeffs->spread_hi [g]); for (g = 0; g < num_bands; g++) { band[g].thr_quiet = FFMAX(band[g].thr, coeffs->ath[g]); - if (wi->num_windows != 8 && wi->window_type[1] != EIGHT_SHORT_SEQUENCE) + if (!(wi->window_type[0] == LONG_STOP_SEQUENCE || (wi->window_type[1] == LONG_START_SEQUENCE && !w))) band[g].thr_quiet = FFMAX(PSY_3GPP_RPEMIN*band[g].thr_quiet, FFMIN(band[g].thr_quiet, PSY_3GPP_RPELEV*pch->prev_band[w+g].thr_quiet));