mirror of
https://github.com/mpv-player/mpv
synced 2025-03-22 19:34:14 +00:00
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
This commit is contained in:
parent
b136df4b34
commit
00e3a6c8b9
@ -74,10 +74,16 @@ demuxer_t* demux_open_fli(demuxer_t* demuxer){
|
|||||||
int speed;
|
int speed;
|
||||||
unsigned int frame_size;
|
unsigned int frame_size;
|
||||||
int magic_number;
|
int magic_number;
|
||||||
|
unsigned char * header;
|
||||||
|
|
||||||
// go back to the beginning
|
// go back to the beginning
|
||||||
stream_reset(demuxer->stream);
|
stream_reset(demuxer->stream);
|
||||||
stream_seek(demuxer->stream, 0);
|
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_start = 128;
|
||||||
demuxer->movi_end = stream_read_dword_le(demuxer->stream);
|
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_w = stream_read_word_le(demuxer->stream);
|
||||||
sh_video->disp_h = 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
|
// skip the video depth and flags
|
||||||
stream_skip(demuxer->stream, 4);
|
stream_skip(demuxer->stream, 4);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user