mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
Ignore extradata & w/h in asf/dvr.
The w/h values are wrong and extradata contains a fake seq header that causes decoding to fail later, a valid seq header is in the stream itself. Partially fixes issue658 Originally committed as revision 24082 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
69b56ed7a6
commit
3124766959
@ -396,8 +396,14 @@ static int asf_read_header(AVFormatContext *s, AVFormatParameters *ap)
|
||||
|
||||
st->codec->codec_tag = tag1;
|
||||
st->codec->codec_id = ff_codec_get_id(ff_codec_bmp_tags, tag1);
|
||||
if(tag1 == MKTAG('D', 'V', 'R', ' '))
|
||||
if(tag1 == MKTAG('D', 'V', 'R', ' ')){
|
||||
st->need_parsing = AVSTREAM_PARSE_FULL;
|
||||
// issue658 containse wrong w/h and MS even puts a fake seq header with wrong w/h in extradata while a correct one is in te stream. maximum lameness
|
||||
st->codec->width =
|
||||
st->codec->height = 0;
|
||||
av_freep(&st->codec->extradata);
|
||||
st->codec->extradata_size=0;
|
||||
}
|
||||
if(st->codec->codec_id == CODEC_ID_H264)
|
||||
st->need_parsing = AVSTREAM_PARSE_FULL_ONCE;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user