Simplify picture output code.

Originally committed as revision 14298 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Michael Niedermayer 2008-07-19 11:11:48 +00:00
parent 6b476f05e3
commit 3eaa6d0e56
1 changed files with 4 additions and 11 deletions

View File

@ -7863,28 +7863,21 @@ static int decode_frame(AVCodecContext *avctx,
s->avctx->has_b_frames++;
}
if(out_of_order || pics > s->avctx->has_b_frames)
out->reference &= ~DELAYED_PIC_REF;
if(pics <= s->avctx->has_b_frames || out_of_order)
out = NULL;
if(out_of_order || pics > s->avctx->has_b_frames){
out->reference &= ~DELAYED_PIC_REF;
for(i=out_idx; h->delayed_pic[i]; i++)
h->delayed_pic[i] = h->delayed_pic[i+1];
}
if(out){
if(!out_of_order && pics > s->avctx->has_b_frames){
*data_size = sizeof(AVFrame);
h->outputed_poc = out->poc;
}
if(out)
*pict= *(AVFrame*)out;
else
}else{
av_log(avctx, AV_LOG_DEBUG, "no picture\n");
}
}
}
assert(pict->data[0] || !*data_size);
ff_print_debug_info(s, pict);