diff --git a/libavcodec/mpegaudiodec.c b/libavcodec/mpegaudiodec.c
index 9c5ef265c1b0732421e47fa8df3b2af5bbac6bd7..d08177e9ebc22818837f3e62713cc21cbac6eb8c 100644
--- a/libavcodec/mpegaudiodec.c
+++ b/libavcodec/mpegaudiodec.c
@@ -1398,6 +1398,7 @@ static int mp_decode_layer3(MPADecodeContext *s)
                 g = &s->granules[ch][gr];
                 s->last_buf_size += g->part2_3_length;
                 memset(g->sb_hybrid, 0, sizeof(g->sb_hybrid));
+                compute_imdct(s, g, &s->sb_samples[ch][18 * gr][0], s->mdct_buf[ch]);
             }
         }
         skip = s->last_buf_size - 8 * main_data_begin;