|
|
|
@@ -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) |
|
|
|
|