Mercurial > mplayer.hg
comparison libmpdemux/demuxer.c @ 7329:9129781e5939
removed messy global 'tv_handle', use stream->priv for that purpose
note: i couldn't test it (only compile test) may be broken :(
we're going to an unified demuxer API - required for modularization
author | arpi |
---|---|
date | Sun, 08 Sep 2002 23:00:01 +0000 |
parents | 2e5c07262861 |
children | b2445802532c |
comparison
equal
deleted
inserted
replaced
7328:418c29a6d916 | 7329:9129781e5939 |
---|---|
155 extern void demux_close_avi(demuxer_t *demuxer); | 155 extern void demux_close_avi(demuxer_t *demuxer); |
156 extern void demux_close_rawdv(demuxer_t* demuxer); | 156 extern void demux_close_rawdv(demuxer_t* demuxer); |
157 | 157 |
158 #ifdef USE_TV | 158 #ifdef USE_TV |
159 #include "tv.h" | 159 #include "tv.h" |
160 extern tvi_handle_t *tv_handler; | |
161 extern int tv_param_on; | 160 extern int tv_param_on; |
162 | 161 |
163 extern int demux_tv_fill_buffer(demuxer_t *demux, demux_stream_t *ds, tvi_handle_t *tvh); | 162 extern int demux_tv_fill_buffer(demuxer_t *demux, demux_stream_t *ds); |
164 extern int demux_open_tv(demuxer_t *demuxer, tvi_handle_t *tvh); | 163 extern int demux_open_tv(demuxer_t *demuxer); |
165 #if defined(USE_TV) && defined(HAVE_TV_V4L) | 164 #if defined(USE_TV) && defined(HAVE_TV_V4L) |
166 extern void demux_close_tv(demuxer_t *demuxer, tvi_handle_t *tvh); | 165 extern void demux_close_tv(demuxer_t *demuxer); |
167 #endif | 166 #endif |
168 #endif | 167 #endif |
169 | 168 |
170 void free_demuxer(demuxer_t *demuxer){ | 169 void free_demuxer(demuxer_t *demuxer){ |
171 int i; | 170 int i; |
189 demux_close_fli(demuxer); break; | 188 demux_close_fli(demuxer); break; |
190 case DEMUXER_TYPE_NUV: | 189 case DEMUXER_TYPE_NUV: |
191 demux_close_nuv(demuxer); break; | 190 demux_close_nuv(demuxer); break; |
192 #if defined(USE_TV) && defined(HAVE_TV_V4L) | 191 #if defined(USE_TV) && defined(HAVE_TV_V4L) |
193 case DEMUXER_TYPE_TV: | 192 case DEMUXER_TYPE_TV: |
194 demux_close_tv(demuxer, tv_handler); break; | 193 demux_close_tv(demuxer); break; |
195 #endif | 194 #endif |
196 #ifdef HAVE_LIBDV095 | 195 #ifdef HAVE_LIBDV095 |
197 case DEMUXER_TYPE_RAWDV: | 196 case DEMUXER_TYPE_RAWDV: |
198 demux_close_rawdv(demuxer); break; | 197 demux_close_rawdv(demuxer); break; |
199 #endif | 198 #endif |
310 case DEMUXER_TYPE_RAWDV: return demux_rawdv_fill_buffer(demux); | 309 case DEMUXER_TYPE_RAWDV: return demux_rawdv_fill_buffer(demux); |
311 #endif | 310 #endif |
312 case DEMUXER_TYPE_REAL: return demux_real_fill_buffer(demux); | 311 case DEMUXER_TYPE_REAL: return demux_real_fill_buffer(demux); |
313 case DEMUXER_TYPE_NUV: return demux_nuv_fill_buffer(demux); | 312 case DEMUXER_TYPE_NUV: return demux_nuv_fill_buffer(demux); |
314 #ifdef USE_TV | 313 #ifdef USE_TV |
315 case DEMUXER_TYPE_TV: return demux_tv_fill_buffer(demux, ds, tv_handler); | 314 case DEMUXER_TYPE_TV: return demux_tv_fill_buffer(demux, ds); |
316 #endif | 315 #endif |
317 case DEMUXER_TYPE_Y4M: return demux_y4m_fill_buffer(demux); | 316 case DEMUXER_TYPE_Y4M: return demux_y4m_fill_buffer(demux); |
318 case DEMUXER_TYPE_AUDIO: return demux_audio_fill_buffer(ds); | 317 case DEMUXER_TYPE_AUDIO: return demux_audio_fill_buffer(ds); |
319 case DEMUXER_TYPE_DEMUXERS: return demux_demuxers_fill_buffer(demux,ds); | 318 case DEMUXER_TYPE_DEMUXERS: return demux_demuxers_fill_buffer(demux,ds); |
320 case DEMUXER_TYPE_OGG: return demux_ogg_fill_buffer(demux); | 319 case DEMUXER_TYPE_OGG: return demux_ogg_fill_buffer(demux); |
992 } | 991 } |
993 break; | 992 break; |
994 } | 993 } |
995 #ifdef USE_TV | 994 #ifdef USE_TV |
996 case DEMUXER_TYPE_TV: { | 995 case DEMUXER_TYPE_TV: { |
997 if (!demux_open_tv(demuxer, tv_handler)) | 996 if (!demux_open_tv(demuxer)) return(NULL); |
998 { | |
999 tv_uninit(tv_handler); | |
1000 return(NULL); | |
1001 } | |
1002 break; | 997 break; |
1003 } | 998 } |
1004 #endif | 999 #endif |
1005 #ifdef STREAMING_LIVE_DOT_COM | 1000 #ifdef STREAMING_LIVE_DOT_COM |
1006 case DEMUXER_TYPE_RTP: { | 1001 case DEMUXER_TYPE_RTP: { |