aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorchinshou <chinshou1976@gmail.com>2011-09-10 05:23:17 +0200
committerMichael Niedermayer <michaelni@gmx.at>2011-09-10 05:24:39 +0200
commitb10ba1175d3afa28d88cf3b24b69dc4882be16f5 (patch)
treec5ec34d2616513c8359d0847aa35624bfc5fa4ac
parent4f123a7d7c8cbf425958e726689c6bdc84605e91 (diff)
downloadffmpeg-b10ba1175d3afa28d88cf3b24b69dc4882be16f5.tar.gz
avisynth: Fix upside down bug
-rw-r--r--libavformat/avisynth.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libavformat/avisynth.c b/libavformat/avisynth.c
index 84a956cb6c..32e6d1e7d2 100644
--- a/libavformat/avisynth.c
+++ b/libavformat/avisynth.c
@@ -122,6 +122,14 @@ static int avisynth_read_header(AVFormatContext *s, AVFormatParameters *ap)
st->codec->bit_rate = (uint64_t)stream->info.dwSampleSize * (uint64_t)stream->info.dwRate * 8 / (uint64_t)stream->info.dwScale;
st->codec->codec_tag = imgfmt.bmiHeader.biCompression;
st->codec->codec_id = ff_codec_get_id(ff_codec_bmp_tags, imgfmt.bmiHeader.biCompression);
+ if (st->codec->codec_id == CODEC_ID_RAWVIDEO && imgfmt.bmiHeader.biCompression== BI_RGB) {
+ st->codec->extradata = av_malloc(9 + FF_INPUT_BUFFER_PADDING_SIZE);
+ if (st->codec->extradata) {
+ st->codec->extradata_size = 9;
+ memcpy(st->codec->extradata, "BottomUp", 9);
+ }
+ }
+
st->duration = stream->info.dwLength;
}