From: espes <es...@pequalsnp.com> --- libavcodec/aacdec.c | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c index bca785c..eefaa37 100644 --- a/libavcodec/aacdec.c +++ b/libavcodec/aacdec.c @@ -3235,8 +3235,20 @@ static int latm_decode_frame(AVCodecContext *avctx, void *out, return AVERROR_INVALIDDATA; } - if ((err = aac_decode_frame_int(avctx, out, got_frame_ptr, &gb)) < 0) - return err; + if (latmctx->initialized) { + switch (latmctx->aac_ctx.oc[1].m4ac.object_type) { + case AOT_ER_AAC_LC: + case AOT_ER_AAC_LTP: + case AOT_ER_AAC_LD: + case AOT_ER_AAC_ELD: + err = aac_decode_er_frame(avctx, out, got_frame_ptr, &gb); + break; + default: + err = aac_decode_frame_int(avctx, out, got_frame_ptr, &gb); + } + if (err < 0) + return err; + } return muxlength; } -- 2.2.0.rc0.207.ga3a616c _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel