diff options
-rw-r--r-- | libavcodec/aac.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libavcodec/aac.c b/libavcodec/aac.c index 904c9510c8..c0673bf133 100644 --- a/libavcodec/aac.c +++ b/libavcodec/aac.c @@ -1165,6 +1165,9 @@ static int decode_cce(AACContext * ac, GetBitContext * gb, ChannelElement * che) gain = cge ? get_vlc2(gb, vlc_scalefactors.table, 7, 3) - 60: 0; gain_cache = pow(scale, -gain); } + if (coup->coupling_point == AFTER_IMDCT) { + coup->gain[c][0] = gain_cache; + } else { for (g = 0; g < sce->ics.num_window_groups; g++) { for (sfb = 0; sfb < sce->ics.max_sfb; sfb++, idx++) { if (sce->band_type[idx] != ZERO_BT) { @@ -1184,6 +1187,7 @@ static int decode_cce(AACContext * ac, GetBitContext * gb, ChannelElement * che) } } } + } } return 0; } |