diff options
Diffstat (limited to 'libmpdemux/demux_fli.c')
-rw-r--r-- | libmpdemux/demux_fli.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/libmpdemux/demux_fli.c b/libmpdemux/demux_fli.c index 8cc0abc3d9..6a5afb4725 100644 --- a/libmpdemux/demux_fli.c +++ b/libmpdemux/demux_fli.c @@ -65,8 +65,19 @@ demuxer_t* demux_open_fli(demuxer_t* demuxer){ demuxer->movi_start = 128; demuxer->movi_end = stream_read_dword_le(demuxer->stream); +#if 0 // skip the magic number stream_skip(demuxer->stream, 2); +#else + magic_number = stream_read_word_le(demuxer->stream); + + if ((magic_number != 0xAF11) && (magic_number != 0xAF12)) + { + mp_msg(MSGT_DEMUX, MSGL_ERR, "Bad/unknown magic number (%04x)\n", + magic_number); + return(NULL); + } +#endif // fetch the number of frames frames->num_frames = stream_read_word_le(demuxer->stream); @@ -101,6 +112,10 @@ demuxer_t* demux_open_fli(demuxer_t* demuxer){ speed = stream_read_word_le(demuxer->stream); if (speed == 0) speed = 1; +#if 0 + if (magic_number == 0xAF11) + speed *= 1000/70; +#endif sh_video->fps = 1000 / speed; sh_video->frametime = 1/sh_video->fps; |