提交 aa388dba 编写于 作者: M Michael Niedermayer

fixing files where the first frame isn a keyframe

Originally committed as revision 1309 to svn://svn.ffmpeg.org/ffmpeg/trunk
上级 140cb663
......@@ -801,8 +801,8 @@ int MPV_frame_start(MpegEncContext *s, AVCodecContext *avctx)
}
}
}
if(!s->encoding){
alloc:
if(!s->encoding){
/* find unused Picture */
for(i=0; i<MAX_PICTURE_COUNT; i++){
if(s->picture[i].data[0]==NULL) break;
......@@ -829,14 +829,20 @@ int MPV_frame_start(MpegEncContext *s, AVCodecContext *avctx)
s->current_picture= s->picture[i];
}
s->hurry_up= s->avctx->hurry_up;
s->error_resilience= avctx->error_resilience;
if (s->pict_type != B_TYPE) {
s->last_picture= s->next_picture;
s->next_picture= s->current_picture;
}
if(s->pict_type != I_TYPE && s->last_picture.data[0]==NULL){
fprintf(stderr, "warning: first frame is no keyframe\n");
assert(s->pict_type != B_TYPE); //these should have been dropped if we dont have a reference
goto alloc;
}
s->hurry_up= s->avctx->hurry_up;
s->error_resilience= avctx->error_resilience;
/* set dequantizer, we cant do it during init as it might change for mpeg4
and we cant do it in the header decode as init isnt called for mpeg4 there yet */
if(s->out_format == FMT_H263){
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册