summaryrefslogtreecommitdiff
path: root/src/demuxers/demux_mpeg_block.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/demuxers/demux_mpeg_block.c')
-rw-r--r--src/demuxers/demux_mpeg_block.c40
1 files changed, 27 insertions, 13 deletions
diff --git a/src/demuxers/demux_mpeg_block.c b/src/demuxers/demux_mpeg_block.c
index d3bf96519..bcdd003f6 100644
--- a/src/demuxers/demux_mpeg_block.c
+++ b/src/demuxers/demux_mpeg_block.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: demux_mpeg_block.c,v 1.2 2001/04/19 09:46:57 f1rmb Exp $
+ * $Id: demux_mpeg_block.c,v 1.3 2001/04/21 00:14:40 f1rmb Exp $
*
* demultiplexer for mpeg 1/2 program streams
*
@@ -494,7 +494,7 @@ static int demux_mpeg_block_open(demux_plugin_t *this_gen,
return DEMUX_CANNOT_HANDLE;
}
-static char *demux_mpeg_block_get_id(demux_plugin_t *this) {
+static char *demux_mpeg_block_get_id(void) {
return "MPEG_BLOCK";
}
@@ -502,18 +502,32 @@ static void demux_mpeg_block_close (demux_plugin_t *this) {
/* nothing */
}
-demux_plugin_t *init_demux_mpeg_block(config_values_t *cfg, uint32_t xd) {
+demux_plugin_t *init_demux_mpeg_block(int iface, config_values_t *config) {
demux_mpeg_block_t *this = xmalloc (sizeof (demux_mpeg_block_t));
- xine_debug = xd;
-
- this->demux_plugin.open = demux_mpeg_block_open;
- this->demux_plugin.start = demux_mpeg_block_start;
- this->demux_plugin.stop = demux_mpeg_block_stop;
- this->demux_plugin.close = demux_mpeg_block_close;
- this->demux_plugin.get_status = demux_mpeg_block_get_status;
- this->demux_plugin.get_identifier = demux_mpeg_block_get_id;
-
- return (demux_plugin_t *) this;
+ switch (iface) {
+
+ case 1:
+ // FIXME xine_debug = xd;
+ this->demux_plugin.interface_version = DEMUXER_PLUGIN_IFACE_VERSION;
+ this->demux_plugin.open = demux_mpeg_block_open;
+ this->demux_plugin.start = demux_mpeg_block_start;
+ this->demux_plugin.stop = demux_mpeg_block_stop;
+ this->demux_plugin.close = demux_mpeg_block_close;
+ this->demux_plugin.get_status = demux_mpeg_block_get_status;
+ this->demux_plugin.get_identifier = demux_mpeg_block_get_id;
+
+ return (demux_plugin_t *) this;
+ break;
+
+ default:
+ fprintf(stderr,
+ "Demuxer plugin doesn't support plugin API version %d.\n"
+ "PLUGIN DISABLED.\n"
+ "This means there's a version mismatch between xine and this "
+ "demuxer plugin.\nInstalling current input plugins should help.\n",
+ iface);
+ return NULL;
+ }
}