aac_latm_dec: use aac context and aac m4ac

When decoding latm config, use the corresponding aac context and its
m4ac instead of using NULL and a local variable. This fixes decoding of
audio in MPEG TS from SBTVD (the Brazillian Digital TV Sytem), when
there is no extradata. This is the case when using the decoder with
gst-ffmpeg and a GStreamer mpegts demuxer.

Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@holoscopio.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 36864ac354)
This commit is contained in:
Thadeu Lima de Souza Cascardo 2011-03-01 09:46:12 -03:00 committed by Michael Niedermayer
parent e95f3363d8
commit 08d804ab6a

View File

@ -2248,7 +2248,6 @@ static int latm_decode_audio_specific_config(struct LATMContext *latmctx,
GetBitContext *gb)
{
AVCodecContext *avctx = latmctx->aac_ctx.avctx;
MPEG4AudioConfig m4ac;
int config_start_bit = get_bits_count(gb);
int bits_consumed, esize;
@ -2258,7 +2257,8 @@ static int latm_decode_audio_specific_config(struct LATMContext *latmctx,
return AVERROR_INVALIDDATA;
} else {
bits_consumed =
decode_audio_specific_config(NULL, avctx, &m4ac,
decode_audio_specific_config(&latmctx->aac_ctx, avctx,
&latmctx->aac_ctx.m4ac,
gb->buffer + (config_start_bit / 8),
get_bits_left(gb) / 8);