# HG changeset patch # User alexc # Date 1277093109 0 # Node ID c883aa4aa6167f0cd30ab8936b06b83e49de9bb4 # Parent 829dadee50c8eb96bf756acb180498c41fe21f72 aacdec: Handle the first frame being empty case. diff -r 829dadee50c8 -r c883aa4aa616 aacdec.c --- a/aacdec.c Sun Jun 20 23:03:32 2010 +0000 +++ b/aacdec.c Mon Jun 21 04:05:09 2010 +0000 @@ -1985,7 +1985,7 @@ enum RawDataBlockType elem_type, elem_type_prev = TYPE_END; int err, elem_id, data_size_tmp; int buf_consumed; - int samples = 1024, multiplier; + int samples = 0, multiplier; int buf_offset; init_get_bits(&gb, buf, buf_size * 8); @@ -2011,6 +2011,9 @@ return -1; } + if (elem_type < TYPE_DSE) + samples = 1024; + switch (elem_type) { case TYPE_SCE: @@ -2093,6 +2096,7 @@ } *data_size = data_size_tmp; + if (samples) ac->dsp.float_to_int16_interleave(data, (const float **)ac->output_data, samples, avctx->channels); if (ac->output_configured)