avcodec/mpc8: get frame output buffer right before it is actually needed
Signed-off-by: Paul B Mahol <onemda@gmail.com>
This commit is contained in:
parent
cc40228255
commit
e30a37e95e
1 changed files with 4 additions and 5 deletions
|
|
@ -250,11 +250,6 @@ static int mpc8_decode_frame(AVCodecContext * avctx, void *data,
|
|||
int maxband, keyframe;
|
||||
int last[2];
|
||||
|
||||
/* get output buffer */
|
||||
frame->nb_samples = MPC_FRAME_SIZE;
|
||||
if ((res = ff_get_buffer(avctx, frame, 0)) < 0)
|
||||
return res;
|
||||
|
||||
keyframe = c->cur_frame == 0;
|
||||
|
||||
if(keyframe){
|
||||
|
|
@ -415,6 +410,10 @@ static int mpc8_decode_frame(AVCodecContext * avctx, void *data,
|
|||
}
|
||||
}
|
||||
|
||||
frame->nb_samples = MPC_FRAME_SIZE;
|
||||
if ((res = ff_get_buffer(avctx, frame, 0)) < 0)
|
||||
return res;
|
||||
|
||||
ff_mpc_dequantize_and_synth(c, maxband - 1,
|
||||
(int16_t **)frame->extended_data,
|
||||
avctx->channels);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue