read AVI palette from the end of extradata
authorKostya Shishkov <kostya.shishkov@gmail.com>
Sat, 23 Apr 2011 07:42:19 +0000 (09:42 +0200)
committerRonald S. Bultje <rsbultje@gmail.com>
Mon, 25 Apr 2011 06:26:45 +0000 (23:26 -0700)
commit23f40a07888018ff8a5ae8e74e15b6bae57bcae0
tree9224e51a05b19a2e67954e53425af6969bacd905
parent293fe6da01b6cb2f85c6551553ed765a7408ca23
read AVI palette from the end of extradata

Official AVI specification says that stream header in case of video contains
BITMAPINFO, which is equal to BITMAPINFOHEADER and optional palette. Currently
lavf AVI demuxer thinks otherwise which produces garbage on codecs that have
both palette and extradata (luckily, there are not so many such codecs).

An example of such file is:
http://samples.multimedia.cx/V-codecs/KMVC/baseball1.avi
(IIRC, MSS1 or MSS2 also had such situation but they are still not supported
by lavc).

As a side note, passing palette in extradata as it's been done previously is
not quite correct since proper _extra_ data is surplus bytes in
BITMAPINFOHEADER, not including palette.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
libavformat/avidec.c