[FFmpeg-cvslog] aacenc: update max_sfb when num_swb changes

Andreas Cadhalpun git at videolan.org
Thu Dec 17 21:14:49 CET 2015


ffmpeg | branch: release/2.8 | Andreas Cadhalpun <Andreas.Cadhalpun at googlemail.com> | Sun Dec  6 21:35:08 2015 +0100| [dcd837e41c83c6eac52d64b8d8f6a96aacf674cb] | committer: Andreas Cadhalpun

aacenc: update max_sfb when num_swb changes

This fixes out-of-bounds reads in avoid_clipping.

Reviewed-by: Rostislav Pehlivanov <atomnuker at gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun at googlemail.com>
(cherry picked from commit 5b0da6999fdd0135b6f269d3691d74720f773c85)
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun at googlemail.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=dcd837e41c83c6eac52d64b8d8f6a96aacf674cb
---

 libavcodec/aacenc.c |    1 +
 1 file changed, 1 insertion(+)

diff --git a/libavcodec/aacenc.c b/libavcodec/aacenc.c
index 9cce1a2..a7c7336 100644
--- a/libavcodec/aacenc.c
+++ b/libavcodec/aacenc.c
@@ -547,6 +547,7 @@ static int aac_encode_frame(AVCodecContext *avctx, AVPacket *avpkt,
             ics->num_windows        = wi[ch].num_windows;
             ics->swb_sizes          = s->psy.bands    [ics->num_windows == 8];
             ics->num_swb            = tag == TYPE_LFE ? ics->num_swb : s->psy.num_bands[ics->num_windows == 8];
+            ics->max_sfb            = FFMIN(ics->max_sfb, ics->num_swb);
             ics->swb_offset         = wi[ch].window_type[0] == EIGHT_SHORT_SEQUENCE ?
                                         ff_swb_offset_128 [s->samplerate_index]:
                                         ff_swb_offset_1024[s->samplerate_index];



More information about the ffmpeg-cvslog mailing list