[FFmpeg-cvslog] r18395 - trunk/libavcodec/snow.c

michael subversion
Thu Apr 9 22:13:35 CEST 2009


Author: michael
Date: Thu Apr  9 22:13:35 2009
New Revision: 18395

Log:
Skip non intra frames that have no reference frames.

Modified:
   trunk/libavcodec/snow.c

Modified: trunk/libavcodec/snow.c
==============================================================================
--- trunk/libavcodec/snow.c	Thu Apr  9 21:45:10 2009	(r18394)
+++ trunk/libavcodec/snow.c	Thu Apr  9 22:13:35 2009	(r18395)
@@ -4145,6 +4145,10 @@ static int frame_start(SnowContext *s){
             if(i && s->last_picture[i-1].key_frame)
                 break;
         s->ref_frames= i;
+        if(s->ref_frames==0){
+            av_log(s->avctx,AV_LOG_ERROR, "No reference frames\n");
+            return -1;
+        }
     }
 
     s->current_picture.reference= 1;
@@ -4520,7 +4524,8 @@ static int decode_frame(AVCodecContext *
 
     alloc_blocks(s);
 
-    frame_start(s);
+    if(frame_start(s) < 0)
+        return -1;
     //keyframe flag duplication mess FIXME
     if(avctx->debug&FF_DEBUG_PICT_INFO)
         av_log(avctx, AV_LOG_ERROR, "keyframe:%d qlog:%d\n", s->keyframe, s->qlog);



More information about the ffmpeg-cvslog mailing list