[FFmpeg-cvslog] r23202 - trunk/libavformat/avidec.c

michael subversion
Thu May 20 20:34:44 CEST 2010


Author: michael
Date: Thu May 20 20:34:44 2010
New Revision: 23202

Log:
Disable non interleaved avi code when there is no index available.

Modified:
   trunk/libavformat/avidec.c

Modified: trunk/libavformat/avidec.c
==============================================================================
--- trunk/libavformat/avidec.c	Thu May 20 00:55:29 2010	(r23201)
+++ trunk/libavformat/avidec.c	Thu May 20 20:34:44 2010	(r23202)
@@ -650,6 +650,16 @@ static int avi_read_header(AVFormatConte
         avi_load_index(s);
     avi->index_loaded = 1;
     avi->non_interleaved |= guess_ni_flag(s);
+    for(i=0; i<s->nb_streams; i++){
+        AVStream *st = s->streams[i];
+        if(st->nb_index_entries)
+            break;
+    }
+    if(i==s->nb_streams && avi->non_interleaved) {
+        av_log(s, AV_LOG_WARNING, "non-interleaved AVI without index, switching to interleaved\n");
+        avi->non_interleaved=0;
+    }
+
     if(avi->non_interleaved) {
         av_log(s, AV_LOG_INFO, "non-interleaved AVI\n");
         clean_index(s);



More information about the ffmpeg-cvslog mailing list