Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJanne Grunau <janne-libav@jannau.net>2011-10-23 03:11:44 +0400
committerJanne Grunau <janne-libav@jannau.net>2011-10-25 14:07:58 +0400
commit80e36425fb25a53f89b735d00ff3e7c293a9472c (patch)
treed44f4f0a38f1aab12539bf29249864db7ff2bfe5 /libavcodec/aacdec.c
parentb2e56e08c90a89c5566a1a391fec7c3136d49e3c (diff)
aacdec: initialize sbr context only in new channel elements
Diffstat (limited to 'libavcodec/aacdec.c')
-rw-r--r--libavcodec/aacdec.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c
index e4e18d63a3..d1774a1f98 100644
--- a/libavcodec/aacdec.c
+++ b/libavcodec/aacdec.c
@@ -184,9 +184,11 @@ static av_cold int che_configure(AACContext *ac,
int type, int id, int *channels)
{
if (che_pos[type][id]) {
- if (!ac->che[type][id] && !(ac->che[type][id] = av_mallocz(sizeof(ChannelElement))))
- return AVERROR(ENOMEM);
- ff_aac_sbr_ctx_init(ac, &ac->che[type][id]->sbr);
+ if (!ac->che[type][id]) {
+ if (!(ac->che[type][id] = av_mallocz(sizeof(ChannelElement))))
+ return AVERROR(ENOMEM);
+ ff_aac_sbr_ctx_init(ac, &ac->che[type][id]->sbr);
+ }
if (type != TYPE_CCE) {
ac->output_data[(*channels)++] = ac->che[type][id]->ch[0].ret;
if (type == TYPE_CPE ||