diff options
author | rtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2005-08-05 19:57:47 +0000 |
---|---|---|
committer | rtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2005-08-05 19:57:47 +0000 |
commit | cd68e1618b17b525bd49757b2f5e245a6cb1a495 (patch) | |
tree | c67656ff189654b818ade76a8f5bd0b7d1bf7f91 /libmpdemux/demux_mf.c | |
parent | adfe956dc385d6588eb2ab74828f9a905821adf4 (diff) | |
download | mpv-cd68e1618b17b525bd49757b2f5e245a6cb1a495.tar.bz2 mpv-cd68e1618b17b525bd49757b2f5e245a6cb1a495.tar.xz |
Demuxer modularization
Demuxer selection by name with -demuxer command (bakward compatible)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@16176 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux/demux_mf.c')
-rw-r--r-- | libmpdemux/demux_mf.c | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/libmpdemux/demux_mf.c b/libmpdemux/demux_mf.c index 3620c77920..5139640faa 100644 --- a/libmpdemux/demux_mf.c +++ b/libmpdemux/demux_mf.c @@ -15,7 +15,7 @@ #include "stheader.h" #include "mf.h" -void demux_seek_mf(demuxer_t *demuxer,float rel_seek_secs,int flags){ +static void demux_seek_mf(demuxer_t *demuxer,float rel_seek_secs,int flags){ mf_t * mf = (mf_t *)demuxer->priv; sh_video_t * sh_video = demuxer->video->sh; int newpos = (flags & 1)?0:mf->curr_frame; @@ -30,7 +30,7 @@ void demux_seek_mf(demuxer_t *demuxer,float rel_seek_secs,int flags){ // return value: // 0 = EOF or no stream found // 1 = successfully read a packet -int demux_mf_fill_buffer(demuxer_t *demuxer){ +static int demux_mf_fill_buffer(demuxer_t *demuxer, demux_stream_t *ds){ mf_t * mf; struct stat fs; FILE * f; @@ -62,7 +62,7 @@ int demux_mf_fill_buffer(demuxer_t *demuxer){ return 1; } -demuxer_t* demux_open_mf(demuxer_t* demuxer){ +static demuxer_t* demux_open_mf(demuxer_t* demuxer){ sh_video_t *sh_video = NULL; mf_t *mf = NULL; @@ -130,10 +130,27 @@ demuxer_t* demux_open_mf(demuxer_t* demuxer){ return demuxer; } -void demux_close_mf(demuxer_t* demuxer) { +static void demux_close_mf(demuxer_t* demuxer) { mf_t *mf = demuxer->priv; if(!mf) return; free(mf); } + + +demuxer_desc_t demuxer_desc_mf = { + "mf demuxer", + "mf", + "MF", + "?", + "multiframe?, pictures demuxer", + DEMUXER_TYPE_MF, + 0, // no autodetect + NULL, + demux_mf_fill_buffer, + demux_open_mf, + demux_close_mf, + demux_seek_mf, + NULL +}; |