aacdec: Fix Sound fragments after seeking

Fixes Ticket420

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
kaptnole 2011-11-26 14:37:39 +01:00 committed by Michael Niedermayer
parent 8f37c8f0f8
commit cb8db6423a

View File

@ -262,6 +262,23 @@ static av_cold int output_configure(AACContext *ac,
return 0; return 0;
} }
static void flush(AVCodecContext *avctx)
{
AACContext *ac= avctx->priv_data;
int type, i, j;
for (type = 3; type >= 0; type--) {
for (i = 0; i < MAX_ELEM_ID; i++) {
ChannelElement *che = ac->che[type][i];
if (che) {
for (j = 0; j <= 1; j++) {
memset(che->ch[j].saved, 0, sizeof(che->ch[j].saved));
}
}
}
}
}
/** /**
* Decode an array of 4 bit element IDs, optionally interleaved with a stereo/mono switching bit. * Decode an array of 4 bit element IDs, optionally interleaved with a stereo/mono switching bit.
* *
@ -2589,4 +2606,5 @@ AVCodec ff_aac_latm_decoder = {
}, },
.capabilities = CODEC_CAP_CHANNEL_CONF, .capabilities = CODEC_CAP_CHANNEL_CONF,
.channel_layouts = aac_channel_layout, .channel_layouts = aac_channel_layout,
.flush = flush,
}; };