summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/demuxers/Makefile.am95
-rw-r--r--src/demuxers/demux.h4
-rw-r--r--src/demuxers/demux_aiff.c8
-rw-r--r--src/demuxers/demux_asf.c4
-rw-r--r--src/demuxers/demux_aud.c9
-rw-r--r--src/demuxers/demux_avi.c4
-rw-r--r--src/demuxers/demux_cda.c8
-rw-r--r--src/demuxers/demux_eawve.c8
-rw-r--r--src/demuxers/demux_elem.c4
-rw-r--r--src/demuxers/demux_film.c4
-rw-r--r--src/demuxers/demux_fli.c4
-rw-r--r--src/demuxers/demux_idcin.c8
-rw-r--r--src/demuxers/demux_ipmovie.c9
-rw-r--r--src/demuxers/demux_mng.c4
-rw-r--r--src/demuxers/demux_mpeg.c4
-rw-r--r--src/demuxers/demux_mpeg_block.c4
-rw-r--r--src/demuxers/demux_mpgaudio.c8
-rw-r--r--src/demuxers/demux_ogg.c4
-rw-r--r--src/demuxers/demux_pva.c4
-rw-r--r--src/demuxers/demux_qt.c4
-rw-r--r--src/demuxers/demux_rawdv.c39
-rw-r--r--src/demuxers/demux_real.c4
-rw-r--r--src/demuxers/demux_realaudio.c9
-rw-r--r--src/demuxers/demux_roq.c8
-rw-r--r--src/demuxers/demux_smjpeg.c4
-rw-r--r--src/demuxers/demux_snd.c8
-rw-r--r--src/demuxers/demux_str.c8
-rw-r--r--src/demuxers/demux_ts.c4
-rw-r--r--src/demuxers/demux_voc.c8
-rw-r--r--src/demuxers/demux_vqa.c8
-rw-r--r--src/demuxers/demux_wav.c8
-rw-r--r--src/demuxers/demux_wc3movie.c8
-rw-r--r--src/demuxers/demux_yuv4mpeg2.c4
-rw-r--r--src/demuxers/group_audio.c57
-rw-r--r--src/demuxers/group_games.c55
-rw-r--r--src/input/input_file.c17
-rw-r--r--src/libsputext/demux_sputext.c4
37 files changed, 279 insertions, 175 deletions
diff --git a/src/demuxers/Makefile.am b/src/demuxers/Makefile.am
index 64754e3da..0d7d4046e 100644
--- a/src/demuxers/Makefile.am
+++ b/src/demuxers/Makefile.am
@@ -26,34 +26,20 @@ endif
XINELIB = $(top_builddir)/src/xine-engine/libxine.la
lib_LTLIBRARIES = $(ogg_module) $(asf_module) $(mng_module) \
+ xineplug_dmx_games.la \
+ xineplug_dmx_audio.la \
xineplug_dmx_mpeg_ts.la \
xineplug_dmx_avi.la\
xineplug_dmx_mpeg_block.la \
xineplug_dmx_mpeg.la \
- xineplug_dmx_mpeg_audio.la \
xineplug_dmx_mpeg_elem.la \
xineplug_dmx_qt.la \
- xineplug_dmx_cda.la \
- xineplug_dmx_film.la \
- xineplug_dmx_roq.la \
xineplug_dmx_fli.la \
xineplug_dmx_smjpeg.la \
- xineplug_dmx_wav.la \
- xineplug_dmx_idcin.la \
- xineplug_dmx_wc3movie.la \
- xineplug_dmx_vqa.la \
- xineplug_dmx_voc.la \
- xineplug_dmx_aiff.la \
- xineplug_dmx_snd.la \
xineplug_dmx_yuv4mpeg2.la \
xineplug_dmx_real.la \
- xineplug_dmx_realaudio.la \
- xineplug_dmx_eawve.la \
xineplug_dmx_rawdv.la \
- xineplug_dmx_ipmovie.la \
- xineplug_dmx_str.la \
- xineplug_dmx_pva.la \
- xineplug_dmx_aud.la
+ xineplug_dmx_pva.la
xineplug_dmx_ogg_la_SOURCES = demux_ogg.c
xineplug_dmx_ogg_la_LIBADD = $(OGG_LIBS) $(VORBIS_LIBS) $(XINELIB)
@@ -71,10 +57,6 @@ xineplug_dmx_mpeg_la_SOURCES = demux_mpeg.c
xineplug_dmx_mpeg_la_LIBADD = $(XINELIB)
xineplug_dmx_mpeg_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-xineplug_dmx_mpeg_audio_la_SOURCES = demux_mpgaudio.c
-xineplug_dmx_mpeg_audio_la_LIBADD = -lm $(XINELIB)
-xineplug_dmx_mpeg_audio_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
xineplug_dmx_mpeg_elem_la_SOURCES = demux_elem.c
xineplug_dmx_mpeg_elem_la_LIBADD = $(XINELIB)
xineplug_dmx_mpeg_elem_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
@@ -95,18 +77,6 @@ xineplug_dmx_asf_la_SOURCES = demux_asf.c
xineplug_dmx_asf_la_LIBADD = $(XINELIB)
xineplug_dmx_asf_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-xineplug_dmx_cda_la_SOURCES = demux_cda.c
-xineplug_dmx_cda_la_LIBADD = $(XINELIB)
-xineplug_dmx_cda_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
-xineplug_dmx_film_la_SOURCES = demux_film.c
-xineplug_dmx_film_la_LIBADD = $(XINELIB)
-xineplug_dmx_film_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
-xineplug_dmx_roq_la_SOURCES = demux_roq.c
-xineplug_dmx_roq_la_LIBADD = $(XINELIB)
-xineplug_dmx_roq_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
xineplug_dmx_fli_la_SOURCES = demux_fli.c
xineplug_dmx_fli_la_LIBADD = $(XINELIB)
xineplug_dmx_fli_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
@@ -115,34 +85,6 @@ xineplug_dmx_smjpeg_la_SOURCES = demux_smjpeg.c
xineplug_dmx_smjpeg_la_LIBADD = $(XINELIB)
xineplug_dmx_smjpeg_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-xineplug_dmx_wav_la_SOURCES = demux_wav.c
-xineplug_dmx_wav_la_LIBADD = $(XINELIB)
-xineplug_dmx_wav_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
-xineplug_dmx_idcin_la_SOURCES = demux_idcin.c
-xineplug_dmx_idcin_la_LIBADD = $(XINELIB)
-xineplug_dmx_idcin_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
-xineplug_dmx_wc3movie_la_SOURCES = demux_wc3movie.c
-xineplug_dmx_wc3movie_la_LIBADD = $(XINELIB)
-xineplug_dmx_wc3movie_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
-xineplug_dmx_vqa_la_SOURCES = demux_vqa.c
-xineplug_dmx_vqa_la_LIBADD = $(XINELIB)
-xineplug_dmx_vqa_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
-xineplug_dmx_voc_la_SOURCES = demux_voc.c
-xineplug_dmx_voc_la_LIBADD = $(XINELIB)
-xineplug_dmx_voc_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
-xineplug_dmx_aiff_la_SOURCES = demux_aiff.c
-xineplug_dmx_aiff_la_LIBADD = $(XINELIB)
-xineplug_dmx_aiff_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
-xineplug_dmx_snd_la_SOURCES = demux_snd.c
-xineplug_dmx_snd_la_LIBADD = $(XINELIB)
-xineplug_dmx_snd_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
xineplug_dmx_yuv4mpeg2_la_SOURCES = demux_yuv4mpeg2.c
xineplug_dmx_yuv4mpeg2_la_LIBADD = $(XINELIB)
xineplug_dmx_yuv4mpeg2_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
@@ -151,14 +93,6 @@ xineplug_dmx_real_la_SOURCES = demux_real.c
xineplug_dmx_real_la_LIBADD = $(XINELIB)
xineplug_dmx_real_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-xineplug_dmx_realaudio_la_SOURCES = demux_realaudio.c
-xineplug_dmx_realaudio_la_LIBADD = $(XINELIB)
-xineplug_dmx_realaudio_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
-xineplug_dmx_eawve_la_SOURCES = demux_eawve.c
-xineplug_dmx_eawve_la_LIBADD = $(XINELIB)
-xineplug_dmx_eawve_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
xineplug_dmx_rawdv_la_SOURCES = demux_rawdv.c
xineplug_dmx_rawdv_la_LIBADD = $(XINELIB)
xineplug_dmx_rawdv_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
@@ -167,21 +101,22 @@ xineplug_dmx_mng_la_SOURCES = demux_mng.c
xineplug_dmx_mng_la_LIBADD = $(XINELIB) $(ZLIB_LIBS) $(MNG_LIBS)
xineplug_dmx_mng_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-xineplug_dmx_ipmovie_la_SOURCES = demux_ipmovie.c
-xineplug_dmx_ipmovie_la_LIBADD = $(XINELIB)
-xineplug_dmx_ipmovie_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
-xineplug_dmx_str_la_SOURCES = demux_str.c
-xineplug_dmx_str_la_LIBADD = $(XINELIB)
-xineplug_dmx_str_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-
xineplug_dmx_pva_la_SOURCES = demux_pva.c
xineplug_dmx_pva_la_LIBADD = $(XINELIB)
xineplug_dmx_pva_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
-xineplug_dmx_aud_la_SOURCES = demux_aud.c
-xineplug_dmx_aud_la_LIBADD = $(XINELIB)
-xineplug_dmx_aud_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
+xineplug_dmx_games_la_SOURCES = group_games.c demux_eawve.c \
+ demux_idcin.c demux_ipmovie.c demux_roq.c \
+ demux_vqa.c demux_wc3movie.c demux_str.c
+xineplug_dmx_games_la_LIBADD = $(XINELIB)
+xineplug_dmx_games_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
+
+xineplug_dmx_audio_la_SOURCES = group_audio.c demux_aud.c demux_aiff.c \
+ demux_cda.c demux_mpgaudio.c demux_realaudio.c \
+ demux_snd.c demux_voc.c demux_wav.c
+xineplug_dmx_audio_la_LIBADD = $(XINELIB)
+xineplug_dmx_audio_la_LDFLAGS = -avoid-version -module @XINE_PLUGIN_MIN_SYMS@
+
include_HEADERS = demux.h
noinst_HEADERS = asfheader.h qtpalette.h
diff --git a/src/demuxers/demux.h b/src/demuxers/demux.h
index 5a3efc58f..ac112aab8 100644
--- a/src/demuxers/demux.h
+++ b/src/demuxers/demux.h
@@ -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.h,v 1.27 2002/12/21 12:56:46 miguelfreitas Exp $
+ * $Id: demux.h,v 1.28 2003/01/04 14:48:11 miguelfreitas Exp $
*/
#ifndef HAVE_DEMUX_H
@@ -32,7 +32,7 @@
#include "input_plugin.h"
#endif
-#define DEMUXER_PLUGIN_IFACE_VERSION 19
+#define DEMUXER_PLUGIN_IFACE_VERSION 20
#define DEMUX_OK 0
#define DEMUX_FINISHED 1
diff --git a/src/demuxers/demux_aiff.c b/src/demuxers/demux_aiff.c
index 2cf3dd285..9f68ad6ff 100644
--- a/src/demuxers/demux_aiff.c
+++ b/src/demuxers/demux_aiff.c
@@ -19,7 +19,7 @@
*
* AIFF File Demuxer by Mike Melanson (melanson@pcisys.net)
*
- * $Id: demux_aiff.c,v 1.20 2002/12/21 12:56:44 miguelfreitas Exp $
+ * $Id: demux_aiff.c,v 1.21 2003/01/04 14:48:11 miguelfreitas Exp $
*
*/
@@ -443,7 +443,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_aiff_init_plugin (xine_t *xine, void *data) {
demux_aiff_class_t *this;
@@ -465,8 +465,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "aiff", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "aiff", XINE_VERSION_CODE, NULL, demux_aiff_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_asf.c b/src/demuxers/demux_asf.c
index b2487f8af..e98c50dd8 100644
--- a/src/demuxers/demux_asf.c
+++ b/src/demuxers/demux_asf.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_asf.c,v 1.91 2002/12/21 12:56:44 miguelfreitas Exp $
+ * $Id: demux_asf.c,v 1.92 2003/01/04 14:48:11 miguelfreitas Exp $
*
* demultiplexer for asf streams
*
@@ -1548,6 +1548,6 @@ static void *init_class (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "asf", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_DEMUX, 20, "asf", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_aud.c b/src/demuxers/demux_aud.c
index 3abb391d5..d2bf415b6 100644
--- a/src/demuxers/demux_aud.c
+++ b/src/demuxers/demux_aud.c
@@ -32,7 +32,7 @@
* data. This makes seeking conceptually impossible. Upshot: Random
* seeking is not supported.
*
- * $Id: demux_aud.c,v 1.1 2003/01/02 06:10:49 tmmm Exp $
+ * $Id: demux_aud.c,v 1.2 2003/01/04 14:48:11 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -382,7 +382,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_aud_init_plugin (xine_t *xine, void *data) {
demux_aud_class_t *this;
@@ -403,9 +403,10 @@ static void *init_plugin (xine_t *xine, void *data) {
/*
* exported plugin catalog entry
*/
-
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "aud", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "aud", XINE_VERSION_CODE, NULL, demux_aud_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_avi.c b/src/demuxers/demux_avi.c
index c5bfceebe..d307c69a0 100644
--- a/src/demuxers/demux_avi.c
+++ b/src/demuxers/demux_avi.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_avi.c,v 1.142 2002/12/29 16:48:34 mroi Exp $
+ * $Id: demux_avi.c,v 1.143 2003/01/04 14:48:11 miguelfreitas Exp $
*
* demultiplexer for avi streams
*
@@ -1599,6 +1599,6 @@ static void *init_class (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "avi", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_DEMUX, 20, "avi", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_cda.c b/src/demuxers/demux_cda.c
index d597246b1..fa159ab58 100644
--- a/src/demuxers/demux_cda.c
+++ b/src/demuxers/demux_cda.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_cda.c,v 1.37 2002/12/21 12:56:44 miguelfreitas Exp $
+ * $Id: demux_cda.c,v 1.38 2003/01/04 14:48:11 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -268,7 +268,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_cda_init_plugin (xine_t *xine, void *data) {
demux_cda_class_t *this;
@@ -290,8 +290,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "cda", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "cda", XINE_VERSION_CODE, NULL, demux_cda_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_eawve.c b/src/demuxers/demux_eawve.c
index c36ea23ef..01d0e6a55 100644
--- a/src/demuxers/demux_eawve.c
+++ b/src/demuxers/demux_eawve.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_eawve.c,v 1.12 2002/12/21 17:58:37 komadori Exp $
+ * $Id: demux_eawve.c,v 1.13 2003/01/04 14:48:11 miguelfreitas Exp $
*
* demux_eawve.c, Demuxer plugin for Electronic Arts' WVE file format
*
@@ -454,7 +454,7 @@ static void class_dispose(demux_class_t *this)
free(this);
}
-static void *init_plugin(xine_t *xine, void *data)
+void *demux_eawve_init_plugin(xine_t *xine, void *data)
{
demux_eawve_class_t *this;
@@ -472,7 +472,9 @@ static void *init_plugin(xine_t *xine, void *data)
return this;
}
+#if 0
plugin_info_t xine_plugin_info[] = {
- { PLUGIN_DEMUX, 19, "wve", XINE_VERSION_CODE, NULL, (void*)init_plugin},
+ { PLUGIN_DEMUX, 20, "wve", XINE_VERSION_CODE, NULL, (void*)demux_eawve_init_plugin},
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_elem.c b/src/demuxers/demux_elem.c
index 43ef76e0c..12e43f44b 100644
--- a/src/demuxers/demux_elem.c
+++ b/src/demuxers/demux_elem.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_elem.c,v 1.66 2002/12/21 12:56:45 miguelfreitas Exp $
+ * $Id: demux_elem.c,v 1.67 2003/01/04 14:48:11 miguelfreitas Exp $
*
* demultiplexer for elementary mpeg streams
*
@@ -360,6 +360,6 @@ static void *init_plugin (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "elem", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "elem", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_film.c b/src/demuxers/demux_film.c
index 7f0a393f1..ebe730531 100644
--- a/src/demuxers/demux_film.c
+++ b/src/demuxers/demux_film.c
@@ -21,7 +21,7 @@
* For more information on the FILM file format, visit:
* http://www.pcisys.net/~melanson/codecs/
*
- * $Id: demux_film.c,v 1.48 2002/12/23 02:29:43 miguelfreitas Exp $
+ * $Id: demux_film.c,v 1.49 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -804,6 +804,6 @@ static void *init_plugin (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "film", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "film", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_fli.c b/src/demuxers/demux_fli.c
index 3bf4e447c..49f39329c 100644
--- a/src/demuxers/demux_fli.c
+++ b/src/demuxers/demux_fli.c
@@ -22,7 +22,7 @@
* avoid while programming a FLI decoder, visit:
* http://www.pcisys.net/~melanson/codecs/
*
- * $Id: demux_fli.c,v 1.33 2002/12/28 19:00:30 tmmm Exp $
+ * $Id: demux_fli.c,v 1.34 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -412,6 +412,6 @@ static void *init_plugin (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "fli", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "fli", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_idcin.c b/src/demuxers/demux_idcin.c
index d11adbe53..2763f0f73 100644
--- a/src/demuxers/demux_idcin.c
+++ b/src/demuxers/demux_idcin.c
@@ -63,7 +63,7 @@
* - if any bytes exceed 63, do not shift the bytes at all before
* transmitting them to the video decoder
*
- * $Id: demux_idcin.c,v 1.31 2002/12/21 12:56:45 miguelfreitas Exp $
+ * $Id: demux_idcin.c,v 1.32 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -565,7 +565,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_idcin_init_plugin (xine_t *xine, void *data) {
demux_idcin_class_t *this;
@@ -587,8 +587,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "idcin", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "idcin", XINE_VERSION_CODE, NULL, demux_idcin_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_ipmovie.c b/src/demuxers/demux_ipmovie.c
index a0f3abcf4..ae1c4a62a 100644
--- a/src/demuxers/demux_ipmovie.c
+++ b/src/demuxers/demux_ipmovie.c
@@ -21,7 +21,7 @@
* For more information regarding the Interplay MVE file format, visit:
* http://www.pcisys.net/~melanson/codecs/
*
- * $Id: demux_ipmovie.c,v 1.2 2002/12/31 04:01:32 tmmm Exp $
+ * $Id: demux_ipmovie.c,v 1.3 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -768,7 +768,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_ipmovie_init_plugin (xine_t *xine, void *data) {
demux_ipmovie_class_t *this;
@@ -790,9 +790,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "ipmovie", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "ipmovie", XINE_VERSION_CODE, NULL, demux_ipmovie_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
-
+#endif
diff --git a/src/demuxers/demux_mng.c b/src/demuxers/demux_mng.c
index dacbf1d34..69d27ed9d 100644
--- a/src/demuxers/demux_mng.c
+++ b/src/demuxers/demux_mng.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_mng.c,v 1.3 2002/12/22 17:49:50 komadori Exp $
+ * $Id: demux_mng.c,v 1.4 2003/01/04 14:48:12 miguelfreitas Exp $
*
* demux_mng.c, Demuxer plugin for Multiple-image Network Graphics format
*
@@ -398,6 +398,6 @@ static void *init_plugin(xine_t *xine, void *data)
}
plugin_info_t xine_plugin_info[] = {
- { PLUGIN_DEMUX, 19, "mng", XINE_VERSION_CODE, NULL, (void*)init_plugin},
+ { PLUGIN_DEMUX, 20, "mng", XINE_VERSION_CODE, NULL, (void*)init_plugin},
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_mpeg.c b/src/demuxers/demux_mpeg.c
index 9a155998e..57e118f66 100644
--- a/src/demuxers/demux_mpeg.c
+++ b/src/demuxers/demux_mpeg.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.c,v 1.101 2002/12/21 20:19:50 esnel Exp $
+ * $Id: demux_mpeg.c,v 1.102 2003/01/04 14:48:12 miguelfreitas Exp $
*
* demultiplexer for mpeg 1/2 program streams
* reads streams of variable blocksizes
@@ -1141,6 +1141,6 @@ static void *init_plugin (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "mpeg", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "mpeg", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_mpeg_block.c b/src/demuxers/demux_mpeg_block.c
index 4091ecef0..d232e634b 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.152 2003/01/03 13:32:56 rockyb Exp $
+ * $Id: demux_mpeg_block.c,v 1.153 2003/01/04 14:48:12 miguelfreitas Exp $
*
* demultiplexer for mpeg 1/2 program streams
*
@@ -1209,6 +1209,6 @@ static void *init_plugin (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "mpeg_block", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "mpeg_block", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_mpgaudio.c b/src/demuxers/demux_mpgaudio.c
index 0e1685f10..9465d6669 100644
--- a/src/demuxers/demux_mpgaudio.c
+++ b/src/demuxers/demux_mpgaudio.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_mpgaudio.c,v 1.86 2002/12/21 12:56:45 miguelfreitas Exp $
+ * $Id: demux_mpgaudio.c,v 1.87 2003/01/04 14:48:12 miguelfreitas Exp $
*
* demultiplexer for mpeg audio (i.e. mp3) streams
*
@@ -645,7 +645,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_class (xine_t *xine, void *data) {
+void *demux_mpgaudio_init_class (xine_t *xine, void *data) {
demux_mpgaudio_class_t *this;
@@ -668,8 +668,10 @@ static void *init_class (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "mp3", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_DEMUX, 20, "mp3", XINE_VERSION_CODE, NULL, demux_mpgaudio_init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_ogg.c b/src/demuxers/demux_ogg.c
index 809b1dc58..c12f7045d 100644
--- a/src/demuxers/demux_ogg.c
+++ b/src/demuxers/demux_ogg.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_ogg.c,v 1.56 2002/12/21 12:56:45 miguelfreitas Exp $
+ * $Id: demux_ogg.c,v 1.57 2003/01/04 14:48:12 miguelfreitas Exp $
*
* demultiplexer for ogg streams
*
@@ -1071,6 +1071,6 @@ static void *init_class (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "ogg", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_DEMUX, 20, "ogg", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_pva.c b/src/demuxers/demux_pva.c
index 63162b878..35105c971 100644
--- a/src/demuxers/demux_pva.c
+++ b/src/demuxers/demux_pva.c
@@ -21,7 +21,7 @@
* For more information regarding the PVA file format, refer to this PDF:
* http://www.technotrend.de/download/av_format_v1.pdf
*
- * $Id: demux_pva.c,v 1.1 2003/01/02 06:10:49 tmmm Exp $
+ * $Id: demux_pva.c,v 1.2 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -411,6 +411,6 @@ static void *init_plugin (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "pva", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "pva", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_qt.c b/src/demuxers/demux_qt.c
index 72a7553b2..48d905c21 100644
--- a/src/demuxers/demux_qt.c
+++ b/src/demuxers/demux_qt.c
@@ -30,7 +30,7 @@
* build_frame_table
* free_qt_info
*
- * $Id: demux_qt.c,v 1.137 2003/01/01 19:47:43 tmmm Exp $
+ * $Id: demux_qt.c,v 1.138 2003/01/04 14:48:12 miguelfreitas Exp $
*
*/
@@ -2466,6 +2466,6 @@ static void *init_plugin (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "quicktime", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "quicktime", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_rawdv.c b/src/demuxers/demux_rawdv.c
index 70c836d3b..683c3c9c2 100644
--- a/src/demuxers/demux_rawdv.c
+++ b/src/demuxers/demux_rawdv.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_rawdv.c,v 1.1 2002/12/23 21:29:59 miguelfreitas Exp $
+ * $Id: demux_rawdv.c,v 1.2 2003/01/04 14:48:12 miguelfreitas Exp $
*
* demultiplexer for raw dv streams
*
@@ -140,22 +140,34 @@ static void demux_raw_dv_send_headers (demux_plugin_t *this_gen) {
demux_raw_dv_t *this = (demux_raw_dv_t *) this_gen;
buf_element_t *buf;
xine_bmiheader *bih;
- unsigned char scratch[4];
+ unsigned char scratch[4], scratch2[4];
+ int i;
this->video_fifo = this->stream->video_fifo;
this->audio_fifo = this->stream->audio_fifo;
xine_demux_control_start(this->stream);
- if ( !(this->input->get_capabilities(this->input) & INPUT_CAP_SEEKABLE)) {
- printf("demux_rawdv: not seekable, can't handle!\n");
- return;
+ if ((this->input->get_capabilities(this->input)) & INPUT_CAP_SEEKABLE) {
+ this->input->seek(this->input, 0, SEEK_SET);
+ if( this->input->read (this->input, scratch, 4) != 4 )
+ return;
+ this->input->seek(this->input, 0, SEEK_SET);
+ }
+ else {
+ if( this->input->read (this->input, scratch, 4) != 4 )
+ return;
+ if( !(scratch[3] & 0x80) )
+ i = NTSC_FRAME_SIZE;
+ else
+ i = PAL_FRAME_SIZE;
+ i -= 4;
+ while (i > 0) {
+ if( this->input->read (this->input, scratch2, 4) != 4 )
+ return;
+ i -= 4;
+ }
}
-
- this->input->seek(this->input, 0, SEEK_SET);
- if( this->input->read (this->input, scratch, 4) != 4 )
- return;
- this->input->seek(this->input, 0, SEEK_SET);
buf = this->video_fifo->buffer_pool_alloc(this->video_fifo);
buf->content = buf->mem;
@@ -201,6 +213,11 @@ static int demux_raw_dv_seek (demux_plugin_t *this_gen,
demux_raw_dv_t *this = (demux_raw_dv_t *) this_gen;
+ if (!(this->input->get_capabilities(this->input) & INPUT_CAP_SEEKABLE)) {
+ this->status = DEMUX_OK;
+ return this->status;
+ }
+
if( !start_pos && start_time ) {
start_pos = (start_time * 90000 / this->duration) * this->frame_size;
}
@@ -341,6 +358,6 @@ static void *init_plugin (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "rawdv", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "rawdv", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_real.c b/src/demuxers/demux_real.c
index a4172925e..ed1d5fec5 100644
--- a/src/demuxers/demux_real.c
+++ b/src/demuxers/demux_real.c
@@ -28,7 +28,7 @@
*
* Based on FFmpeg's libav/rm.c.
*
- * $Id: demux_real.c,v 1.29 2003/01/01 20:39:19 guenter Exp $
+ * $Id: demux_real.c,v 1.30 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -1183,6 +1183,6 @@ static void *init_class (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "real", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_DEMUX, 20, "real", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_realaudio.c b/src/demuxers/demux_realaudio.c
index 02ae5b97d..e17cd848b 100644
--- a/src/demuxers/demux_realaudio.c
+++ b/src/demuxers/demux_realaudio.c
@@ -19,7 +19,7 @@
*
* RealAudio File Demuxer by Mike Melanson (melanson@pcisys.net)
*
- * $Id: demux_realaudio.c,v 1.8 2002/12/21 12:56:45 miguelfreitas Exp $
+ * $Id: demux_realaudio.c,v 1.9 2003/01/04 14:48:12 miguelfreitas Exp $
*
*/
@@ -385,7 +385,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_realaudio_init_plugin (xine_t *xine, void *data) {
demux_ra_class_t *this;
@@ -407,9 +407,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "realaudio", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "realaudio", XINE_VERSION_CODE, NULL, demux_realaudio_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
-
+#endif
diff --git a/src/demuxers/demux_roq.c b/src/demuxers/demux_roq.c
index c568ebcbb..e209cd85e 100644
--- a/src/demuxers/demux_roq.c
+++ b/src/demuxers/demux_roq.c
@@ -21,7 +21,7 @@
* For more information regarding the RoQ file format, visit:
* http://www.csse.monash.edu.au/~timf/
*
- * $Id: demux_roq.c,v 1.34 2002/12/23 04:29:56 tmmm Exp $
+ * $Id: demux_roq.c,v 1.35 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -508,7 +508,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_roq_init_plugin (xine_t *xine, void *data) {
demux_roq_class_t *this;
@@ -530,8 +530,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "roq", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "roq", XINE_VERSION_CODE, NULL, demux_roq_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_smjpeg.c b/src/demuxers/demux_smjpeg.c
index 70e9e4180..7c76a7489 100644
--- a/src/demuxers/demux_smjpeg.c
+++ b/src/demuxers/demux_smjpeg.c
@@ -21,7 +21,7 @@
* For more information on the SMJPEG file format, visit:
* http://www.lokigames.com/development/smjpeg.php3
*
- * $Id: demux_smjpeg.c,v 1.30 2002/12/23 04:29:56 tmmm Exp $
+ * $Id: demux_smjpeg.c,v 1.31 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -559,6 +559,6 @@ static void *init_plugin (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "smjpeg", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "smjpeg", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_snd.c b/src/demuxers/demux_snd.c
index 973527c65..7798f47ae 100644
--- a/src/demuxers/demux_snd.c
+++ b/src/demuxers/demux_snd.c
@@ -19,7 +19,7 @@
*
* SND/AU File Demuxer by Mike Melanson (melanson@pcisys.net)
*
- * $Id: demux_snd.c,v 1.21 2002/12/21 12:56:45 miguelfreitas Exp $
+ * $Id: demux_snd.c,v 1.22 2003/01/04 14:48:12 miguelfreitas Exp $
*
*/
@@ -425,7 +425,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_snd_init_plugin (xine_t *xine, void *data) {
demux_snd_class_t *this;
@@ -447,8 +447,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "snd", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "snd", XINE_VERSION_CODE, NULL, demux_snd_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_str.c b/src/demuxers/demux_str.c
index 45fd78e56..30ba1cc2e 100644
--- a/src/demuxers/demux_str.c
+++ b/src/demuxers/demux_str.c
@@ -21,7 +21,7 @@
* This demuxer handles either raw STR files (which are just a concatenation
* of raw compact disc sectors) or STR files with RIFF headers.
*
- * $Id: demux_str.c,v 1.1 2003/01/02 06:10:49 tmmm Exp $
+ * $Id: demux_str.c,v 1.2 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -391,7 +391,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_str_init_plugin (xine_t *xine, void *data) {
demux_str_class_t *this;
@@ -413,8 +413,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "str", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "str", XINE_VERSION_CODE, NULL, demux_str_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_ts.c b/src/demuxers/demux_ts.c
index 3ad3adc45..a2dff0100 100644
--- a/src/demuxers/demux_ts.c
+++ b/src/demuxers/demux_ts.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_ts.c,v 1.73 2002/12/27 13:44:58 guenter Exp $
+ * $Id: demux_ts.c,v 1.74 2003/01/04 14:48:12 miguelfreitas Exp $
*
* Demultiplexer for MPEG2 Transport Streams.
*
@@ -2044,6 +2044,6 @@ static void *init_class (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "mpeg-ts", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_DEMUX, 20, "mpeg-ts", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/demux_voc.c b/src/demuxers/demux_voc.c
index fbab20fb5..4f452d487 100644
--- a/src/demuxers/demux_voc.c
+++ b/src/demuxers/demux_voc.c
@@ -23,7 +23,7 @@
* It will only play that block if it is PCM data. More variations will be
* supported as they are encountered.
*
- * $Id: demux_voc.c,v 1.21 2002/12/21 12:56:46 miguelfreitas Exp $
+ * $Id: demux_voc.c,v 1.22 2003/01/04 14:48:12 miguelfreitas Exp $
*
*/
@@ -413,7 +413,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_voc_init_plugin (xine_t *xine, void *data) {
demux_voc_class_t *this;
@@ -435,8 +435,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "voc", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "voc", XINE_VERSION_CODE, NULL, demux_voc_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_vqa.c b/src/demuxers/demux_vqa.c
index c1784765e..063d9ef14 100644
--- a/src/demuxers/demux_vqa.c
+++ b/src/demuxers/demux_vqa.c
@@ -27,7 +27,7 @@
* block needs information from the previous audio block in order to be
* decoded, thus making random seeking difficult.
*
- * $Id: demux_vqa.c,v 1.24 2002/12/21 12:56:46 miguelfreitas Exp $
+ * $Id: demux_vqa.c,v 1.25 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -453,7 +453,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_vqa_init_plugin (xine_t *xine, void *data) {
demux_vqa_class_t *this;
@@ -475,8 +475,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "vqa", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "vqa", XINE_VERSION_CODE, NULL, demux_vqa_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_wav.c b/src/demuxers/demux_wav.c
index 7457f95a2..b44996e6a 100644
--- a/src/demuxers/demux_wav.c
+++ b/src/demuxers/demux_wav.c
@@ -20,7 +20,7 @@
* MS WAV File Demuxer by Mike Melanson (melanson@pcisys.net)
* based on WAV specs that are available far and wide
*
- * $Id: demux_wav.c,v 1.29 2002/12/21 12:56:46 miguelfreitas Exp $
+ * $Id: demux_wav.c,v 1.30 2003/01/04 14:48:12 miguelfreitas Exp $
*
*/
@@ -426,7 +426,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_wav_init_plugin (xine_t *xine, void *data) {
demux_wav_class_t *this;
@@ -448,8 +448,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "wav", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "wav", XINE_VERSION_CODE, NULL, demux_wav_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_wc3movie.c b/src/demuxers/demux_wc3movie.c
index 5d7abefbd..bbb199c13 100644
--- a/src/demuxers/demux_wc3movie.c
+++ b/src/demuxers/demux_wc3movie.c
@@ -22,7 +22,7 @@
* For more information on the MVE file format, visit:
* http://www.pcisys.net/~melanson/codecs/
*
- * $Id: demux_wc3movie.c,v 1.30 2002/12/22 04:00:51 tmmm Exp $
+ * $Id: demux_wc3movie.c,v 1.31 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -762,7 +762,7 @@ static void class_dispose (demux_class_t *this_gen) {
free (this);
}
-static void *init_plugin (xine_t *xine, void *data) {
+void *demux_wc3movie_init_plugin (xine_t *xine, void *data) {
demux_mve_class_t *this;
@@ -784,8 +784,10 @@ static void *init_plugin (xine_t *xine, void *data) {
* exported plugin catalog entry
*/
+#if 0
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "wc3movie", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "wc3movie", XINE_VERSION_CODE, NULL, demux_wc3movie_init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
+#endif
diff --git a/src/demuxers/demux_yuv4mpeg2.c b/src/demuxers/demux_yuv4mpeg2.c
index 6c952168f..127226f3f 100644
--- a/src/demuxers/demux_yuv4mpeg2.c
+++ b/src/demuxers/demux_yuv4mpeg2.c
@@ -22,7 +22,7 @@
* tools, visit:
* http://mjpeg.sourceforge.net/
*
- * $Id: demux_yuv4mpeg2.c,v 1.15 2002/12/23 04:29:56 tmmm Exp $
+ * $Id: demux_yuv4mpeg2.c,v 1.16 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -454,6 +454,6 @@ static void *init_plugin (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "yuv4mpeg2", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_DEMUX, 20, "yuv4mpeg2", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/demuxers/group_audio.c b/src/demuxers/group_audio.c
new file mode 100644
index 000000000..1a3a3b391
--- /dev/null
+++ b/src/demuxers/group_audio.c
@@ -0,0 +1,57 @@
+/*
+ * Copyright (C) 2000-2002 the xine project
+ *
+ * This file is part of xine, a free video player.
+ *
+ * xine 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.
+ *
+ * xine 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+ *
+ * This file contains plugin entries for several demuxers used in games
+ *
+ * $Id: group_audio.c,v 1.1 2003/01/04 14:48:12 miguelfreitas Exp $
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "xine_internal.h"
+#include "demux.h"
+
+
+void *demux_aud_init_plugin (xine_t *xine, void *data);
+void *demux_aiff_init_plugin (xine_t *xine, void *data);
+void *demux_cda_init_plugin (xine_t *xine, void *data);
+void *demux_mpgaudio_init_class (xine_t *xine, void *data);
+void *demux_realaudio_init_plugin (xine_t *xine, void *data);
+void *demux_snd_init_plugin (xine_t *xine, void *data);
+void *demux_voc_init_plugin (xine_t *xine, void *data);
+void *demux_wav_init_plugin (xine_t *xine, void *data);
+
+/*
+ * exported plugin catalog entries
+ */
+
+plugin_info_t xine_plugin_info[] = {
+ /* type, API, "name", version, special_info, init_function */
+ { PLUGIN_DEMUX, 20, "aud", XINE_VERSION_CODE, NULL, demux_aud_init_plugin },
+ { PLUGIN_DEMUX, 20, "aiff", XINE_VERSION_CODE, NULL, demux_aiff_init_plugin },
+ { PLUGIN_DEMUX, 20, "cda", XINE_VERSION_CODE, NULL, demux_cda_init_plugin },
+ { PLUGIN_DEMUX, 20, "mp3", XINE_VERSION_CODE, NULL, demux_mpgaudio_init_class },
+ { PLUGIN_DEMUX, 20, "realaudio", XINE_VERSION_CODE, NULL, demux_realaudio_init_plugin },
+ { PLUGIN_DEMUX, 20, "snd", XINE_VERSION_CODE, NULL, demux_snd_init_plugin },
+ { PLUGIN_DEMUX, 20, "voc", XINE_VERSION_CODE, NULL, demux_voc_init_plugin },
+ { PLUGIN_DEMUX, 20, "wav", XINE_VERSION_CODE, NULL, demux_wav_init_plugin },
+ { PLUGIN_NONE, 0, "", 0, NULL, NULL }
+};
diff --git a/src/demuxers/group_games.c b/src/demuxers/group_games.c
new file mode 100644
index 000000000..3aacb007c
--- /dev/null
+++ b/src/demuxers/group_games.c
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2000-2002 the xine project
+ *
+ * This file is part of xine, a free video player.
+ *
+ * xine 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.
+ *
+ * xine 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
+ *
+ * This file contains plugin entries for several demuxers used in games
+ *
+ * $Id: group_games.c,v 1.1 2003/01/04 14:48:12 miguelfreitas Exp $
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include "xine_internal.h"
+#include "demux.h"
+
+
+void *demux_eawve_init_plugin(xine_t *xine, void *data);
+void *demux_idcin_init_plugin (xine_t *xine, void *data);
+void *demux_ipmovie_init_plugin (xine_t *xine, void *data);
+void *demux_vqa_init_plugin (xine_t *xine, void *data);
+void *demux_wc3movie_init_plugin (xine_t *xine, void *data);
+void *demux_roq_init_plugin (xine_t *xine, void *data);
+void *demux_str_init_plugin (xine_t *xine, void *data);
+
+/*
+ * exported plugin catalog entries
+ */
+
+plugin_info_t xine_plugin_info[] = {
+ /* type, API, "name", version, special_info, init_function */
+ { PLUGIN_DEMUX, 20, "wve", XINE_VERSION_CODE, NULL, demux_eawve_init_plugin},
+ { PLUGIN_DEMUX, 20, "idcin", XINE_VERSION_CODE, NULL, demux_idcin_init_plugin },
+ { PLUGIN_DEMUX, 20, "ipmovie", XINE_VERSION_CODE, NULL, demux_ipmovie_init_plugin },
+ { PLUGIN_DEMUX, 20, "vqa", XINE_VERSION_CODE, NULL, demux_vqa_init_plugin },
+ { PLUGIN_DEMUX, 20, "wc3movie", XINE_VERSION_CODE, NULL, demux_wc3movie_init_plugin },
+ { PLUGIN_DEMUX, 20, "roq", XINE_VERSION_CODE, NULL, demux_roq_init_plugin },
+ { PLUGIN_DEMUX, 20, "str", XINE_VERSION_CODE, NULL, demux_str_init_plugin },
+ { PLUGIN_NONE, 0, "", 0, NULL, NULL }
+};
diff --git a/src/input/input_file.c b/src/input/input_file.c
index 42702855e..372e864a8 100644
--- a/src/input/input_file.c
+++ b/src/input/input_file.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: input_file.c,v 1.72 2002/12/29 16:48:34 mroi Exp $
+ * $Id: input_file.c,v 1.73 2003/01/04 14:48:12 miguelfreitas Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -71,7 +71,20 @@ typedef struct {
static uint32_t file_plugin_get_capabilities (input_plugin_t *this_gen) {
- return INPUT_CAP_SEEKABLE;
+ struct stat buf ;
+ file_input_plugin_t *this = (file_input_plugin_t *) this_gen;
+
+ if (this->fh <0)
+ return 0;
+
+ if (fstat (this->fh, &buf) == 0) {
+ if (S_ISREG(buf.st_mode))
+ return INPUT_CAP_SEEKABLE;
+ else
+ return 0;
+ } else
+ perror ("system call fstat");
+ return 0;
}
diff --git a/src/libsputext/demux_sputext.c b/src/libsputext/demux_sputext.c
index 28a37e8f5..455ef4030 100644
--- a/src/libsputext/demux_sputext.c
+++ b/src/libsputext/demux_sputext.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_sputext.c,v 1.3 2002/12/30 18:07:49 mroi Exp $
+ * $Id: demux_sputext.c,v 1.4 2003/01/04 14:48:13 miguelfreitas Exp $
*
* code based on old libsputext/xine_decoder.c
*
@@ -1019,6 +1019,6 @@ static void *init_sputext_demux_class (xine_t *xine, void *data) {
plugin_info_t xine_plugin_info[] = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_DEMUX, 19, "sputext", XINE_VERSION_CODE, NULL, &init_sputext_demux_class },
+ { PLUGIN_DEMUX, 20, "sputext", XINE_VERSION_CODE, NULL, &init_sputext_demux_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};