summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--stream/Makefile1
-rw-r--r--stream/stream.c2
-rw-r--r--stream/stream.h1
-rw-r--r--stream/stream_mf.c46
-rw-r--r--stream/stream_null.c6
5 files changed, 51 insertions, 5 deletions
diff --git a/stream/Makefile b/stream/Makefile
index b63317347d..9cd2380545 100644
--- a/stream/Makefile
+++ b/stream/Makefile
@@ -22,6 +22,7 @@ endif
SRCS += stream.c \
stream_cue.c \
stream_file.c \
+ stream_mf.c \
stream_null.c \
ifeq ($(HAVE_DVD),yes)
diff --git a/stream/stream.c b/stream/stream.c
index aedc9bc759..78647f02fa 100644
--- a/stream/stream.c
+++ b/stream/stream.c
@@ -79,6 +79,7 @@ extern stream_info_t stream_info_rtsp_sip;
extern stream_info_t stream_info_cue;
extern stream_info_t stream_info_null;
+extern stream_info_t stream_info_mf;
extern stream_info_t stream_info_file;
#ifdef HAVE_DVD
extern stream_info_t stream_info_dvd;
@@ -131,6 +132,7 @@ stream_info_t* auto_open_streams[] = {
#endif
&stream_info_null,
+ &stream_info_mf,
&stream_info_file,
NULL
};
diff --git a/stream/stream.h b/stream/stream.h
index 5035bf181c..8329311582 100644
--- a/stream/stream.h
+++ b/stream/stream.h
@@ -23,6 +23,7 @@
#define STREAMTYPE_SDP 15
#define STREAMTYPE_PVR 16
#define STREAMTYPE_TV 17
+#define STREAMTYPE_MF 18
#define STREAM_BUFFER_SIZE 2048
diff --git a/stream/stream_mf.c b/stream/stream_mf.c
new file mode 100644
index 0000000000..b2e64901da
--- /dev/null
+++ b/stream/stream_mf.c
@@ -0,0 +1,46 @@
+/*
+ * Copyright (C) 2006 Benjamin Zores
+ * Stream layer for multiple files input, based on previous work from Albeu
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#include "config.h"
+
+#include <stdlib.h>
+#include <string.h>
+
+#include "stream.h"
+#include "demuxer.h"
+
+static int
+mf_stream_open (stream_t *stream, int mode, void *opts, int *file_format)
+{
+ stream->type = STREAMTYPE_MF;
+ *file_format = DEMUXER_TYPE_MF;
+
+ return STREAM_OK;
+}
+
+stream_info_t stream_info_mf = {
+ "Multiple files input",
+ "mf",
+ "Benjamin Zores, Albeu",
+ "",
+ mf_stream_open,
+ { "mf", NULL },
+ NULL,
+ 1
+};
diff --git a/stream/stream_null.c b/stream/stream_null.c
index 71873e4d16..93492e63a6 100644
--- a/stream/stream_null.c
+++ b/stream/stream_null.c
@@ -10,9 +10,6 @@
static int open_s(stream_t *stream,int mode, void* opts, int* file_format) {
stream->type = STREAMTYPE_DUMMY;
- if(strncmp("mf://",stream->url,5) == 0) {
- *file_format = DEMUXER_TYPE_MF;
- }
return 1;
}
@@ -23,8 +20,7 @@ stream_info_t stream_info_null = {
"Albeu",
"",
open_s,
- {
-"mf", "null", NULL },
+ { "null", NULL },
NULL,
0 // Urls are an option string
};