avcodec/h264_refs: modify key frame detection heuristic to detect more cases
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 9 Oct 2013 21:52:54 +0000 (23:52 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 9 Oct 2013 22:07:26 +0000 (00:07 +0200)
Fixes Ticket2968

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/h264_refs.c

index 7dffa9b..42316b4 100644 (file)
@@ -732,7 +732,7 @@ int ff_h264_execute_ref_pic_marking(H264Context *h, MMCO *mmco, int mmco_count)
     print_short_term(h);
     print_long_term(h);
 
-    if(err >= 0 && h->long_ref_count==0 && h->short_ref_count<=2 && h->pps.ref_count[0]<=1 + (h->picture_structure != PICT_FRAME) && h->cur_pic_ptr->f.pict_type == AV_PICTURE_TYPE_I){
+    if(err >= 0 && h->long_ref_count==0 && h->short_ref_count<=2 && h->pps.ref_count[0]<=2 + (h->picture_structure != PICT_FRAME) && h->cur_pic_ptr->f.pict_type == AV_PICTURE_TYPE_I){
         h->cur_pic_ptr->sync |= 1;
         if(!h->avctx->has_b_frames)
             h->sync = 2;