diff --git a/libavcodec/h264.c b/libavcodec/h264.c index 109a109530..77acd7168f 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -1530,7 +1530,11 @@ static void decode_postinit(H264Context *h, int setup_finished){ h->next_outputed_poc = INT_MIN; } } else { - h->next_outputed_poc = out->poc; + if (out_idx == 0 && pics > 1 && h->delayed_pic[0]->f.key_frame) { + h->next_outputed_poc = INT_MIN; + } else { + h->next_outputed_poc = out->poc; + } } h->mmco_reset = 0; }else{