OSDN Git Service

Since some junk may be or may be not present before actual VC-1 extradata,
authorAndrew Dennison <andrewd.lists@gmail.com>
Tue, 6 Oct 2009 15:30:08 +0000 (15:30 +0000)
committerKostya Shishkov <kostya.shishkov@gmail.com>
Tue, 6 Oct 2009 15:30:08 +0000 (15:30 +0000)
search for real extradata start instead of always skipping one byte.

Patch by Andrew Dennison gmailify(${name}d, lists)
Thread: [PATCH] Fix VC1 "Incomplete extradata" for mkv files generated by eac3to

Originally committed as revision 20178 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/vc1dec.c

index 7381601..421d8f7 100644 (file)
@@ -3039,7 +3039,7 @@ static av_cold int vc1_decode_init(AVCodecContext *avctx)
         }
 
         buf2 = av_mallocz(avctx->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE);
-        if(start[0]) start++; // in WVC1 extradata first byte is its size
+        start = find_next_marker(start, end); // in WVC1 extradata first byte is its size, but can be 0 in mkv
         next = start;
         for(; next < end; start = next){
             next = find_next_marker(start + 4, end);