aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarl Eugen Hoyos <cehoyos@ag.or.at>2014-01-07 22:49:05 +0100
committerCarl Eugen Hoyos <cehoyos@ag.or.at>2014-01-08 10:24:03 +0100
commit6f7fd2f589566e3aa44215fb3970b941c2070885 (patch)
tree6505c672fb7a12680d093af400ae46c713eeb7e8
parentf974c54909dc83e3c74933295718bf2539542044 (diff)
downloadffmpeg-6f7fd2f589566e3aa44215fb3970b941c2070885.tar.gz
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
-rw-r--r--libavformat/avidec.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libavformat/avidec.c b/libavformat/avidec.c
index 4852e44f12..2d60bfb9ca 100644
--- a/libavformat/avidec.c
+++ b/libavformat/avidec.c
@@ -639,6 +639,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;