Browse Source

aacdec: Handle the first frame being empty case.

Originally committed as revision 23673 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/n0.8
Alex Converse 15 years ago
parent
commit
fda36b5944
1 changed files with 5 additions and 1 deletions
  1. +5
    -1
      libavcodec/aacdec.c

+ 5
- 1
libavcodec/aacdec.c View File

@@ -1985,7 +1985,7 @@ static int aac_decode_frame(AVCodecContext *avctx, void *data,
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 @@ static int aac_decode_frame(AVCodecContext *avctx, void *data,
return -1;
}

if (elem_type < TYPE_DSE)
samples = 1024;

switch (elem_type) {

case TYPE_SCE:
@@ -2093,6 +2096,7 @@ static int aac_decode_frame(AVCodecContext *avctx, void *data,
}
*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)


Loading…
Cancel
Save