Use the h264 parser when decoding VSSH in avi.
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Tue, 7 Jan 2014 21:49:05 +0000 (22:49 +0100)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Wed, 8 Jan 2014 09:19:52 +0000 (10:19 +0100)
Fixes ticket #3261 visually.

Analyzed-by: Michael Doilnitsyn
(cherry picked from commit 94cf4f8bac12c58e30ce3b5d72cf5898baafe9a8)

libavformat/avidec.c

index 81f4b18..10116bd 100644 (file)
@@ -685,6 +685,8 @@ static int avi_read_header(AVFormatContext *s)
                     /* This is needed to get the pict type which is necessary
                      * for generating correct pts. */
                     st->need_parsing = AVSTREAM_PARSE_HEADERS;
+                    if (st->codec->codec_tag == MKTAG('V', 'S', 'S', 'H'))
+                        st->need_parsing = AVSTREAM_PARSE_FULL;
 
                     if (st->codec->codec_tag == 0 && st->codec->height > 0 &&
                         st->codec->extradata_size < 1U << 30) {