From 00e3a6c8b98dcb13cfe2a422159c39fce956f0a1 Mon Sep 17 00:00:00 2001 From: rtognimp Date: Sun, 25 Jan 2004 17:36:30 +0000 Subject: Pass header to codec in extradata (needed by ffmpeg fli decoder) git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11847 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpdemux/demux_fli.c | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'libmpdemux') diff --git a/libmpdemux/demux_fli.c b/libmpdemux/demux_fli.c index 1f485e7cd0..0b7f0a428e 100644 --- a/libmpdemux/demux_fli.c +++ b/libmpdemux/demux_fli.c @@ -74,10 +74,16 @@ demuxer_t* demux_open_fli(demuxer_t* demuxer){ int speed; unsigned int frame_size; int magic_number; + unsigned char * header; // go back to the beginning stream_reset(demuxer->stream); stream_seek(demuxer->stream, 0); + + header = malloc(sizeof(BITMAPINFOHEADER) + 128); + stream_read(demuxer->stream, header + sizeof(BITMAPINFOHEADER), 128); + stream_seek(demuxer->stream, 0); + demuxer->movi_start = 128; demuxer->movi_end = stream_read_dword_le(demuxer->stream); @@ -116,6 +122,10 @@ demuxer_t* demux_open_fli(demuxer_t* demuxer){ sh_video->disp_w = stream_read_word_le(demuxer->stream); sh_video->disp_h = stream_read_word_le(demuxer->stream); + // pass extradata to codec + sh_video->bih = (BITMAPINFOHEADER*)header; + sh_video->bih->biSize = sizeof(BITMAPINFOHEADER) + 128; + // skip the video depth and flags stream_skip(demuxer->stream, 4); -- cgit v1.2.3