From 2b955d3b05a888b153f2315a195fe7d910539d85 Mon Sep 17 00:00:00 2001 From: albeu Date: Wed, 24 Apr 2002 15:36:07 +0000 Subject: Added demuxer uninit git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@5811 b3059339-0415-0410-9bf9-f77b7e298cf2 --- libmpdemux/demuxer.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'libmpdemux/demuxer.c') diff --git a/libmpdemux/demuxer.c b/libmpdemux/demuxer.c index c3c4a4db51..e12d2af415 100644 --- a/libmpdemux/demuxer.c +++ b/libmpdemux/demuxer.c @@ -137,9 +137,39 @@ void free_sh_video(sh_video_t* sh){ free(sh); } +extern void demux_close_vivo(demuxer_t *demuxer); +extern void demux_close_real(demuxer_t *demuxer); +extern void demux_close_y4m(demuxer_t *demuxer); +extern void demux_close_mf(demuxer_t* demuxer); +extern void demux_close_roq(demuxer_t* demuxer); +extern void demux_close_film(demuxer_t* demuxer); +extern void demux_close_bmp(demuxer_t* demuxer); +extern void demux_close_fli(demuxer_t* demuxer); +extern void demux_close_nuv(demuxer_t* demuxer); + void free_demuxer(demuxer_t *demuxer){ int i; mp_msg(MSGT_DEMUXER,MSGL_V,"DEMUXER: freeing demuxer at %p \n",demuxer); + switch(demuxer->type) { + case DEMUXER_TYPE_VIVO: + demux_close_vivo(demuxer); break; + case DEMUXER_TYPE_REAL: + demux_close_real(demuxer); break; + case DEMUXER_TYPE_Y4M: + demux_close_y4m(demuxer); break; + case DEMUXER_TYPE_MF: + demux_close_mf(demuxer); break; + case DEMUXER_TYPE_ROQ: + demux_close_roq(demuxer); break; + case DEMUXER_TYPE_FILM: + demux_close_film(demuxer); break; + case DEMUXER_TYPE_BMP: + demux_close_bmp(demuxer); break; + case DEMUXER_TYPE_FLI: + demux_close_fli(demuxer); break; + case DEMUXER_TYPE_NUV: + demux_close_nuv(demuxer); break; + } // free streams: for(i=0;i<256;i++){ if(demuxer->a_streams[i]) free_sh_audio(demuxer->a_streams[i]); -- cgit v1.2.3