]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/h264_refs.c
eamad: release the reference frame on video size changes
[ffmpeg] / libavcodec / h264_refs.c
index 20c75d089d04bed7d5ef6e5e9cc6d5f6fefd0c01..0e00c4f94b94c407183110bfc8f132145d19d93a 100644 (file)
@@ -479,10 +479,9 @@ static void print_long_term(H264Context *h) {
 
 void ff_generate_sliding_window_mmcos(H264Context *h) {
     MpegEncContext * const s = &h->s;
-    av_assert0(h->long_ref_count + h->short_ref_count <= h->sps.ref_frame_count);
 
     h->mmco_index= 0;
-    if(h->short_ref_count && h->long_ref_count + h->short_ref_count == h->sps.ref_frame_count &&
+    if(h->short_ref_count && h->long_ref_count + h->short_ref_count >= h->sps.ref_frame_count &&
             !(FIELD_PICTURE && !s->first_field && s->current_picture_ptr->f.reference)) {
         h->mmco[0].opcode= MMCO_SHORT2UNUSED;
         h->mmco[0].short_pic_num= h->short_ref[ h->short_ref_count - 1 ]->frame_num;