Mercurial > libavcodec.hg
comparison mpegaudiodec.c @ 6691:863e939331aa libavcodec
correctly compute out_size and samples number
author | bcoudurier |
---|---|
date | Sat, 26 Apr 2008 13:03:41 +0000 |
parents | 36e1f34d5428 |
children | 25413354a79a |
comparison
equal
deleted
inserted
replaced
6690:36e1f34d5428 | 6691:863e939331aa |
---|---|
2594 *data_size = 0; | 2594 *data_size = 0; |
2595 return buf_size; | 2595 return buf_size; |
2596 } | 2596 } |
2597 | 2597 |
2598 ff_mpegaudio_decode_header(m, header); | 2598 ff_mpegaudio_decode_header(m, header); |
2599 mp_decode_frame(m, decoded_buf, start, fsize); | 2599 out_size += mp_decode_frame(m, decoded_buf, start, fsize); |
2600 | 2600 |
2601 n = MPA_FRAME_SIZE * m->nb_channels; | |
2602 out_size += n * sizeof(OUT_INT); | |
2603 if(s->frames > 1) { | 2601 if(s->frames > 1) { |
2602 n = m->avctx->frame_size*m->nb_channels; | |
2604 /* interleave output data */ | 2603 /* interleave output data */ |
2605 bp = out_samples + coff[fr]; | 2604 bp = out_samples + coff[fr]; |
2606 if(m->nb_channels == 1) { | 2605 if(m->nb_channels == 1) { |
2607 for(j = 0; j < n; j++) { | 2606 for(j = 0; j < n; j++) { |
2608 *bp = decoded_buf[j]; | 2607 *bp = decoded_buf[j]; |