From 3ada932202ae919d432e7337baaf2ff3b0a22859 Mon Sep 17 00:00:00 2001 From: Carl Eugen Hoyos Date: Tue, 7 Jan 2014 22:49:05 +0100 Subject: [PATCH] Use the h264 parser when decoding VSSH in avi. Fixes ticket #3261 visually. Analyzed-by: Michael Doilnitsyn (cherry picked from commit 94cf4f8bac12c58e30ce3b5d72cf5898baafe9a8) Conflicts: libavformat/avidec.c --- libavformat/avidec.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libavformat/avidec.c b/libavformat/avidec.c index c8d5818821..f33d3a7108 100644 --- a/libavformat/avidec.c +++ b/libavformat/avidec.c @@ -636,6 +636,8 @@ static int avi_read_header(AVFormatContext *s) st->codec->codec_tag = tag1; st->codec->codec_id = ff_codec_get_id(ff_codec_bmp_tags, tag1); st->need_parsing = AVSTREAM_PARSE_HEADERS; // This is needed to get the pict type which is necessary for generating correct pts. + 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){ st->codec->extradata_size+= 9;