summaryrefslogtreecommitdiff
path: root/src/input
diff options
context:
space:
mode:
Diffstat (limited to 'src/input')
-rw-r--r--src/input/input_cdda.c14
-rw-r--r--src/input/input_dvb.c15
-rw-r--r--src/input/input_dvd.c18
-rw-r--r--src/input/input_file.c14
-rw-r--r--src/input/input_gnome_vfs.c18
-rw-r--r--src/input/input_http.c14
-rw-r--r--src/input/input_mms.c14
-rw-r--r--src/input/input_net.c22
-rw-r--r--src/input/input_plugin.h25
-rw-r--r--src/input/input_pnm.c22
-rw-r--r--src/input/input_pvr.c24
-rw-r--r--src/input/input_rtp.c23
-rw-r--r--src/input/input_rtsp.c23
-rw-r--r--src/input/input_smb.c28
-rw-r--r--src/input/input_stdin_fifo.c23
-rw-r--r--src/input/input_v4l.c35
-rw-r--r--src/input/input_vcd.c15
-rw-r--r--src/input/vcd/xineplug_inp_vcd.c31
18 files changed, 79 insertions, 299 deletions
diff --git a/src/input/input_cdda.c b/src/input/input_cdda.c
index eedd0d80e..df4617e22 100644
--- a/src/input/input_cdda.c
+++ b/src/input/input_cdda.c
@@ -2667,14 +2667,6 @@ static input_plugin_t *cdda_class_get_instance (input_class_t *cls_gen, xine_str
}
-static const char *cdda_class_get_identifier (input_class_t *this_gen) {
- return "cdda";
-}
-
-static const char *cdda_class_get_description (input_class_t *this_gen) {
- return _("CD Digital Audio (aka. CDDA)");
-}
-
static void cdda_class_dispose (input_class_t *this_gen) {
cdda_input_class_t *this = (cdda_input_class_t *) this_gen;
config_values_t *config = this->xine->config;
@@ -2710,8 +2702,8 @@ static void *init_plugin (xine_t *xine, void *data) {
config = xine->config;
this->input_class.get_instance = cdda_class_get_instance;
- this->input_class.get_identifier = cdda_class_get_identifier;
- this->input_class.get_description = cdda_class_get_description;
+ this->input_class.identifier = "cdda";
+ this->input_class.description = N_("CD Digital Audio (aka. CDDA)");
/* this->input_class.get_dir = cdda_class_get_dir; */
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = cdda_class_get_autoplay_list;
@@ -2771,7 +2763,7 @@ static void *init_plugin (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, "CD", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, "CD", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_dvb.c b/src/input/input_dvb.c
index fbfc62921..a998d274b 100644
--- a/src/input/input_dvb.c
+++ b/src/input/input_dvb.c
@@ -3141,15 +3141,6 @@ static input_plugin_t *dvb_class_get_instance (input_class_t *class_gen,
* dvb input plugin class stuff
*/
-static const char *dvb_class_get_description (input_class_t *this_gen) {
- return _("DVB (Digital TV) input plugin");
-}
-
-static const char *dvb_class_get_identifier (input_class_t *this_gen) {
- return "dvb";
-}
-
-
static void dvb_class_dispose(input_class_t * this_gen)
{
dvb_input_class_t *class = (dvb_input_class_t *) this_gen;
@@ -3252,8 +3243,8 @@ static void *init_class (xine_t *xine, void *data) {
this->xine = xine;
this->input_class.get_instance = dvb_class_get_instance;
- this->input_class.get_identifier = dvb_class_get_identifier;
- this->input_class.get_description = dvb_class_get_description;
+ this->input_class.identifier = "dvb";
+ this->input_class.description = N_("DVB (Digital TV) input plugin");
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = dvb_class_get_autoplay_list;
this->input_class.dispose = dvb_class_dispose;
@@ -3316,6 +3307,6 @@ static void *init_class (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, "DVB", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, "DVB", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_dvd.c b/src/input/input_dvd.c
index 55e975eab..446b7c778 100644
--- a/src/input/input_dvd.c
+++ b/src/input/input_dvd.c
@@ -1686,18 +1686,6 @@ static input_plugin_t *dvd_class_get_instance (input_class_t *class_gen, xine_st
return &this->input_plugin;
}
-static const char *dvd_class_get_description (input_class_t *this_gen) {
- trace_print("Called\n");
-
- return "DVD Navigator";
-}
-
-static const char *dvd_class_get_identifier (input_class_t *this_gen) {
- trace_print("Called\n");
-
- return "DVD";
-}
-
/* FIXME: adapt to new api. */
#if 0
static xine_mrl_t **dvd_class_get_dir (input_class_t *this_gen,
@@ -1770,8 +1758,8 @@ static void *init_class (xine_t *xine, void *data) {
return NULL;
this->input_class.get_instance = dvd_class_get_instance;
- this->input_class.get_identifier = dvd_class_get_identifier;
- this->input_class.get_description = dvd_class_get_description;
+ this->input_class.identifier = "DVD";
+ this->input_class.description = N_("DVD Navigator");
/*
this->input_class.get_dir = dvd_class_get_dir;
*/
@@ -1906,6 +1894,6 @@ static void *init_class (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, "DVD", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, "DVD", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_file.c b/src/input/input_file.c
index 0ed4ab682..1916a71e4 100644
--- a/src/input/input_file.c
+++ b/src/input/input_file.c
@@ -635,14 +635,6 @@ static off_t get_file_size(char *filepathname, char *origin) {
return pstat.st_size;
}
-static const char *file_class_get_description (input_class_t *this_gen) {
- return _("file input plugin");
-}
-
-static const char *file_class_get_identifier (input_class_t *this_gen) {
- return "file";
-}
-
static xine_mrl_t **file_class_get_dir (input_class_t *this_gen,
const char *filename, int *nFiles) {
@@ -987,8 +979,8 @@ static void *init_plugin (xine_t *xine, void *data) {
config = xine->config;
this->input_class.get_instance = file_class_get_instance;
- this->input_class.get_identifier = file_class_get_identifier;
- this->input_class.get_description = file_class_get_description;
+ this->input_class.identifier = "file";
+ this->input_class.description = N_("file input plugin");
this->input_class.get_dir = file_class_get_dir;
this->input_class.get_autoplay_list = NULL;
this->input_class.dispose = file_class_dispose;
@@ -1027,6 +1019,6 @@ static void *init_plugin (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, "FILE", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, "FILE", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_gnome_vfs.c b/src/input/input_gnome_vfs.c
index 3315a52ea..71a4ada85 100644
--- a/src/input/input_gnome_vfs.c
+++ b/src/input/input_gnome_vfs.c
@@ -211,18 +211,6 @@ gnomevfs_plugin_get_mrl (input_plugin_t *this_gen)
return this->mrl;
}
-static const char
-*gnomevfs_klass_get_description (input_class_t *this_gen)
-{
- return _("gnome-vfs input plugin as shipped with xine");
-}
-
-static const char
-*gnomevfs_klass_get_identifier (input_class_t *this_gen)
-{
- return "gnomevfs";
-}
-
static int
gnomevfs_plugin_get_optional_data (input_plugin_t *this_gen,
void *data, int data_type)
@@ -375,8 +363,8 @@ static void
this->xine = xine;
this->input_class.get_instance = gnomevfs_klass_get_instance;
- this->input_class.get_identifier = gnomevfs_klass_get_identifier;
- this->input_class.get_description = gnomevfs_klass_get_description;
+ this->input_class.identifier = "gnomevfs";
+ this->input_class.description = N_("gnome-vfs input plugin as shipped with xine");
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
this->input_class.dispose = gnomevfs_klass_dispose;
@@ -389,7 +377,7 @@ static input_info_t input_info_gnomevfs = {
};
const plugin_info_t xine_plugin_info[] EXPORTED = {
- { PLUGIN_INPUT | PLUGIN_NO_UNLOAD, 17, "gnomevfs", XINE_VERSION_CODE,
+ { PLUGIN_INPUT | PLUGIN_NO_UNLOAD, 18, "gnomevfs", XINE_VERSION_CODE,
&input_info_gnomevfs, init_input_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_http.c b/src/input/input_http.c
index 5975bb64b..38658b161 100644
--- a/src/input/input_http.c
+++ b/src/input/input_http.c
@@ -1065,14 +1065,6 @@ static input_plugin_t *http_class_get_instance (input_class_t *cls_gen, xine_str
return &this->input_plugin;
}
-static const char *http_class_get_description (input_class_t *this_gen) {
- return _("http input plugin");
-}
-
-static const char *http_class_get_identifier (input_class_t *this_gen) {
- return "http";
-}
-
static void http_class_dispose (input_class_t *this_gen) {
http_input_class_t *this = (http_input_class_t *) this_gen;
@@ -1093,8 +1085,8 @@ static void *init_class (xine_t *xine, void *data) {
config = xine->config;
this->input_class.get_instance = http_class_get_instance;
- this->input_class.get_identifier = http_class_get_identifier;
- this->input_class.get_description = http_class_get_description;
+ this->input_class.identifier = "http";
+ this->input_class.description = N_("http input plugin");
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
this->input_class.dispose = http_class_dispose;
@@ -1166,6 +1158,6 @@ static void *init_class (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, "http", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, "http", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_mms.c b/src/input/input_mms.c
index 0b726fef0..0b9e6c7f2 100644
--- a/src/input/input_mms.c
+++ b/src/input/input_mms.c
@@ -436,14 +436,6 @@ static input_plugin_t *mms_class_get_instance (input_class_t *cls_gen, xine_stre
* mms input plugin class stuff
*/
-static const char *mms_class_get_description (input_class_t *this_gen) {
- return _("mms streaming input plugin");
-}
-
-static const char *mms_class_get_identifier (input_class_t *this_gen) {
- return "mms";
-}
-
static void mms_class_dispose (input_class_t *this_gen) {
mms_input_class_t *this = (mms_input_class_t *) this_gen;
@@ -464,8 +456,8 @@ static void *init_class (xine_t *xine, void *data) {
this->ip = NULL;
this->input_class.get_instance = mms_class_get_instance;
- this->input_class.get_identifier = mms_class_get_identifier;
- this->input_class.get_description = mms_class_get_description;
+ this->input_class.identifier = "mms";
+ this->input_class.description = N_("mms streaming input plugin");
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
this->input_class.dispose = mms_class_dispose;
@@ -497,6 +489,6 @@ static void *init_class (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, "mms", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, "mms", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_net.c b/src/input/input_net.c
index b3d7a5396..7a52f670d 100644
--- a/src/input/input_net.c
+++ b/src/input/input_net.c
@@ -505,20 +505,6 @@ static input_plugin_t *net_class_get_instance (input_class_t *cls_gen, xine_stre
* net plugin class
*/
-static const char *net_class_get_description (input_class_t *this_gen) {
- return _("net input plugin as shipped with xine");
-}
-
-static const char *net_class_get_identifier (input_class_t *this_gen) {
- return "TCP";
-}
-
-static void net_class_dispose (input_class_t *this_gen) {
- net_input_class_t *this = (net_input_class_t *) this_gen;
-
- free (this);
-}
-
static void *init_class (xine_t *xine, void *data) {
net_input_class_t *this;
@@ -528,11 +514,11 @@ static void *init_class (xine_t *xine, void *data) {
this->xine = xine;
this->input_class.get_instance = net_class_get_instance;
- this->input_class.get_description = net_class_get_description;
- this->input_class.get_identifier = net_class_get_identifier;
+ this->input_class.description = N_("net input plugin as shipped with xine");
+ this->input_class.identifier = "TCP";
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
- this->input_class.dispose = net_class_dispose;
+ this->input_class.dispose = default_input_class_dispose;
this->input_class.eject_media = NULL;
return this;
@@ -544,7 +530,7 @@ static void *init_class (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT, 17, "tcp", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_INPUT, 18, "tcp", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_plugin.h b/src/input/input_plugin.h
index 3f59bab6c..2917721c9 100644
--- a/src/input/input_plugin.h
+++ b/src/input/input_plugin.h
@@ -35,7 +35,7 @@
# include <xine/configfile.h>
#endif
-#define INPUT_PLUGIN_IFACE_VERSION 17
+#define INPUT_PLUGIN_IFACE_VERSION 18
typedef struct input_class_s input_class_t ;
typedef struct input_plugin_s input_plugin_t;
@@ -48,18 +48,23 @@ struct input_class_s {
*/
input_plugin_t* (*get_instance) (input_class_t *this, xine_stream_t *stream, const char *mrl);
- /*
- * return short, human readable identifier for this plugin class
- * The returned string should not be malloc'd as it is not freed.
+ /**
+ * @brief short human readable identifier for this plugin class
*/
- const char* (*get_identifier) (input_class_t *this);
+ const char *identifier;
- /*
- * return human readable (verbose = 1 line) description for
- * this plugin class
+ /**
+ * @brief human readable (verbose = 1 line) description for this plugin class
+ *
+ * The description is passed to gettext() to internationalise.
*/
- const char* (*get_description) (input_class_t *this);
+ const char *description;
+ /**
+ * @brief Optional non-standard catalog to use with dgettext() for description.
+ */
+ const char *textdomain;
+
/*
* ls function, optional: may be NULL
* return value: NULL => filename is a file, **char=> filename is a dir
@@ -85,6 +90,8 @@ struct input_class_s {
int (*eject_media) (input_class_t *this);
};
+#define default_input_class_dispose (void (*) (input_class_t *this))free
+
struct input_plugin_s {
/*
diff --git a/src/input/input_pnm.c b/src/input/input_pnm.c
index b49060faa..3bc026b69 100644
--- a/src/input/input_pnm.c
+++ b/src/input/input_pnm.c
@@ -259,20 +259,6 @@ static input_plugin_t *pnm_class_get_instance (input_class_t *cls_gen, xine_stre
* pnm input plugin class stuff
*/
-static const char *pnm_class_get_description (input_class_t *this_gen) {
- return _("pnm streaming input plugin");
-}
-
-static const char *pnm_class_get_identifier (input_class_t *this_gen) {
- return "pnm";
-}
-
-static void pnm_class_dispose (input_class_t *this_gen) {
- pnm_input_class_t *this = (pnm_input_class_t *) this_gen;
-
- free (this);
-}
-
static void *init_class (xine_t *xine, void *data) {
pnm_input_class_t *this;
@@ -282,11 +268,11 @@ static void *init_class (xine_t *xine, void *data) {
this->xine = xine;
this->input_class.get_instance = pnm_class_get_instance;
- this->input_class.get_identifier = pnm_class_get_identifier;
- this->input_class.get_description = pnm_class_get_description;
+ this->input_class.identifier = "pnm";
+ this->input_class.description = N_("pnm streaming input plugin");
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
- this->input_class.dispose = pnm_class_dispose;
+ this->input_class.dispose = default_input_class_dispose;
this->input_class.eject_media = NULL;
return this;
@@ -298,7 +284,7 @@ static void *init_class (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT, 17, "pnm", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_INPUT, 18, "pnm", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_pvr.c b/src/input/input_pvr.c
index 84b8468db..ac7c5f2f0 100644
--- a/src/input/input_pvr.c
+++ b/src/input/input_pvr.c
@@ -1522,22 +1522,6 @@ static input_plugin_t *pvr_class_get_instance (input_class_t *cls_gen, xine_stre
/*
* plugin class functions
*/
-
-static const char *pvr_class_get_description (input_class_t *this_gen) {
- return _("WinTV-PVR 250/350 input plugin");
-}
-
-static const char *pvr_class_get_identifier (input_class_t *this_gen) {
- return "pvr";
-}
-
-
-static void pvr_class_dispose (input_class_t *this_gen) {
- pvr_input_class_t *this = (pvr_input_class_t *) this_gen;
-
- free (this);
-}
-
static void *init_plugin (xine_t *xine, void *data) {
pvr_input_class_t *this;
@@ -1556,11 +1540,11 @@ static void *init_plugin (xine_t *xine, void *data) {
NULL);
this->input_class.get_instance = pvr_class_get_instance;
- this->input_class.get_identifier = pvr_class_get_identifier;
- this->input_class.get_description = pvr_class_get_description;
+ this->input_class.identifier = "pvr";
+ this->input_class.description = N_("WinTV-PVR 250/350 input plugin");
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
- this->input_class.dispose = pvr_class_dispose;
+ this->input_class.dispose = default_input_class_dispose;
this->input_class.eject_media = NULL;
return this;
@@ -1572,7 +1556,7 @@ static void *init_plugin (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, "pvr", XINE_VERSION_CODE, NULL, init_plugin },
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, "pvr", XINE_VERSION_CODE, NULL, init_plugin },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_rtp.c b/src/input/input_rtp.c
index 1a57b7a6d..c3abf4bf5 100644
--- a/src/input/input_rtp.c
+++ b/src/input/input_rtp.c
@@ -765,21 +765,6 @@ static input_plugin_t *rtp_class_get_instance (input_class_t *cls_gen,
/*
* net plugin class
*/
-
-static const char *rtp_class_get_description (input_class_t *this_gen) {
- return _("RTP and UDP input plugin as shipped with xine");
-}
-
-static const char *rtp_class_get_identifier (input_class_t *this_gen) {
- return "RTP/UDP";
-}
-
-static void rtp_class_dispose (input_class_t *this_gen) {
- rtp_input_class_t *this = (rtp_input_class_t *) this_gen;
-
- free (this);
-}
-
static void *init_class (xine_t *xine, void *data) {
rtp_input_class_t *this;
@@ -790,11 +775,11 @@ static void *init_class (xine_t *xine, void *data) {
this->xine = xine;
this->input_class.get_instance = rtp_class_get_instance;
- this->input_class.get_description = rtp_class_get_description;
- this->input_class.get_identifier = rtp_class_get_identifier;
+ this->input_class.description = N_("RTP and UDP input plugin as shipped with xine");
+ this->input_class.identifier = "RTP/UDP";
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
- this->input_class.dispose = rtp_class_dispose;
+ this->input_class.dispose = default_input_class_dispose;
this->input_class.eject_media = NULL;
return this;
@@ -806,7 +791,7 @@ static void *init_class (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT, 17, "rtp", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_INPUT, 18, "rtp", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_rtsp.c b/src/input/input_rtsp.c
index 318659b88..690507d88 100644
--- a/src/input/input_rtsp.c
+++ b/src/input/input_rtsp.c
@@ -279,21 +279,6 @@ static input_plugin_t *rtsp_class_get_instance (input_class_t *cls_gen, xine_str
/*
* rtsp input plugin class stuff
*/
-
-static const char *rtsp_class_get_description (input_class_t *this_gen) {
- return _("rtsp streaming input plugin");
-}
-
-static const char *rtsp_class_get_identifier (input_class_t *this_gen) {
- return "rtsp";
-}
-
-static void rtsp_class_dispose (input_class_t *this_gen) {
- rtsp_input_class_t *this = (rtsp_input_class_t *) this_gen;
-
- free (this);
-}
-
static void *init_class (xine_t *xine, void *data) {
rtsp_input_class_t *this;
@@ -303,11 +288,11 @@ static void *init_class (xine_t *xine, void *data) {
this->xine = xine;
this->input_class.get_instance = rtsp_class_get_instance;
- this->input_class.get_identifier = rtsp_class_get_identifier;
- this->input_class.get_description = rtsp_class_get_description;
+ this->input_class.identifier = "rtsp";
+ this->input_class.description = N_("rtsp streaming input plugin");
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
- this->input_class.dispose = rtsp_class_dispose;
+ this->input_class.dispose = default_input_class_dispose;
this->input_class.eject_media = NULL;
return this;
@@ -319,7 +304,7 @@ static void *init_class (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT, 17, "rtsp", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_INPUT, 18, "rtsp", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_smb.c b/src/input/input_smb.c
index 9fd4e50c8..8bbbfdfe5 100644
--- a/src/input/input_smb.c
+++ b/src/input/input_smb.c
@@ -151,18 +151,6 @@ static uint32_t smb_plugin_get_blocksize (input_plugin_t *this_gen) {
return 0;
}
-static char
-*smb_class_get_description (input_class_t *this_gen)
-{
- return _("CIFS/SMB input plugin based on libsmbclient");
-}
-
-static const char
-*smb_class_get_identifier (input_class_t *this_gen)
-{
- return "smb";
-}
-
/*
* Sorting function, it comes from GNU fileutils package.
*/
@@ -457,14 +445,6 @@ smb_plugin_open (input_plugin_t *this_gen )
return 1;
}
-static void
-smb_class_dispose (input_class_t *this_gen)
-{
- smb_input_class_t *this = (smb_input_class_t *) this_gen;
-
- free (this);
-}
-
static input_plugin_t *
smb_class_get_instance (input_class_t *class_gen, xine_stream_t *stream,
const char *mrl)
@@ -519,11 +499,11 @@ static void
this->xine = xine;
this->input_class.get_instance = smb_class_get_instance;
- this->input_class.get_identifier = smb_class_get_identifier;
- this->input_class.get_description = smb_class_get_description;
+ this->input_class.identifier = "smb";
+ this->input_class.description = N_("CIFS/SMB input plugin based on libsmbclient");
this->input_class.get_dir = smb_class_get_dir;
this->input_class.get_autoplay_list = NULL;
- this->input_class.dispose = smb_class_dispose;
+ this->input_class.dispose = default_input_class_dispose;
this->input_class.eject_media = NULL;
_exit_error:
@@ -541,7 +521,7 @@ static const input_info_t input_info_smb = {
};
const plugin_info_t xine_plugin_info[] EXPORTED = {
- { PLUGIN_INPUT, 17, "smb", XINE_VERSION_CODE, &input_info_smb,
+ { PLUGIN_INPUT, 18, "smb", XINE_VERSION_CODE, &input_info_smb,
init_input_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_stdin_fifo.c b/src/input/input_stdin_fifo.c
index 01fef7431..e28a8d0c3 100644
--- a/src/input/input_stdin_fifo.c
+++ b/src/input/input_stdin_fifo.c
@@ -344,21 +344,6 @@ static input_plugin_t *stdin_class_get_instance (input_class_t *class_gen,
/*
* stdin input plugin class stuff
*/
-
-static const char *stdin_class_get_description (input_class_t *this_gen) {
- return _("stdin streaming input plugin");
-}
-
-static const char *stdin_class_get_identifier (input_class_t *this_gen) {
- return "stdin_fifo";
-}
-
-static void stdin_class_dispose (input_class_t *this_gen) {
- stdin_input_class_t *this = (stdin_input_class_t *) this_gen;
-
- free (this);
-}
-
static void *init_class (xine_t *xine, void *data) {
stdin_input_class_t *this;
@@ -368,11 +353,11 @@ static void *init_class (xine_t *xine, void *data) {
this->xine = xine;
this->input_class.get_instance = stdin_class_get_instance;
- this->input_class.get_identifier = stdin_class_get_identifier;
- this->input_class.get_description = stdin_class_get_description;
+ this->input_class.identifier = "stdin_fifo";
+ this->input_class.description = N_("stdin streaming input plugin");
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
- this->input_class.dispose = stdin_class_dispose;
+ this->input_class.dispose = default_input_class_dispose;
this->input_class.eject_media = NULL;
return this;
@@ -384,6 +369,6 @@ static void *init_class (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT, 17, "stdin", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_INPUT, 18, "stdin", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_v4l.c b/src/input/input_v4l.c
index b9ac7296a..ff9ea87d0 100644
--- a/src/input/input_v4l.c
+++ b/src/input/input_v4l.c
@@ -1900,25 +1900,6 @@ static input_plugin_t *v4l_class_get_radio_instance (input_class_t *cls_gen,
/*
* v4l input plugin class stuff
*/
-
-static char *v4l_class_get_video_description (input_class_t *this_gen) {
- return _("v4l tv input plugin");
-}
-
-static char *v4l_class_get_radio_description (input_class_t *this_gen) {
- return _("v4l radio input plugin");
-}
-
-static const char *v4l_class_get_identifier (input_class_t *this_gen) {
- return "v4l";
-}
-
-static void v4l_class_dispose (input_class_t *this_gen) {
- v4l_input_class_t *this = (v4l_input_class_t *) this_gen;
-
- free (this);
-}
-
static void *init_video_class (xine_t *xine, void *data)
{
v4l_input_class_t *this;
@@ -1929,11 +1910,11 @@ static void *init_video_class (xine_t *xine, void *data)
this->xine = xine;
this->input_class.get_instance = v4l_class_get_video_instance;
- this->input_class.get_identifier = v4l_class_get_identifier;
- this->input_class.get_description = v4l_class_get_video_description;
+ this->input_class.identifier = "v4l";
+ this->input_class.description = N_("v4l tv input plugin");
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
- this->input_class.dispose = v4l_class_dispose;
+ this->input_class.dispose = default_input_class_dispose;
this->input_class.eject_media = NULL;
config->register_filename (config, "media.video4linux.video_device",
@@ -1961,11 +1942,11 @@ static void *init_radio_class (xine_t *xine, void *data)
this->xine = xine;
this->input_class.get_instance = v4l_class_get_radio_instance;
- this->input_class.get_identifier = v4l_class_get_identifier;
- this->input_class.get_description = v4l_class_get_radio_description;
+ this->input_class.identifier = "v4l";
+ this->input_class.description = N_("v4l radio input plugin");
this->input_class.get_dir = NULL;
this->input_class.get_autoplay_list = NULL;
- this->input_class.dispose = v4l_class_dispose;
+ this->input_class.dispose = default_input_class_dispose;
this->input_class.eject_media = NULL;
config->register_filename (config, "media.video4linux.radio_device",
@@ -1983,8 +1964,8 @@ static void *init_radio_class (xine_t *xine, void *data)
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, "v4l_radio", XINE_VERSION_CODE, NULL, init_radio_class },
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, "v4l_tv", XINE_VERSION_CODE, NULL, init_video_class },
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, "v4l_radio", XINE_VERSION_CODE, NULL, init_radio_class },
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, "v4l_tv", XINE_VERSION_CODE, NULL, init_video_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/input_vcd.c b/src/input/input_vcd.c
index d5895c9a8..14a924a2a 100644
--- a/src/input/input_vcd.c
+++ b/src/input/input_vcd.c
@@ -918,15 +918,6 @@ static input_plugin_t *vcd_class_get_instance (input_class_t *cls_gen, xine_stre
/*
* vcd input plugin class stuff
*/
-
-static const char *vcd_class_get_description (input_class_t *this_gen) {
- return _("Video CD input plugin");
-}
-
-static const char *vcd_class_get_identifier (input_class_t *this_gen) {
- return "vcdo";
-}
-
static void vcd_class_dispose (input_class_t *this_gen) {
vcd_input_class_t *this = (vcd_input_class_t *) this_gen;
@@ -1087,8 +1078,8 @@ static void *init_class (xine_t *xine, void *data) {
this->xine = xine;
this->input_class.get_instance = vcd_class_get_instance;
- this->input_class.get_identifier = vcd_class_get_identifier;
- this->input_class.get_description = vcd_class_get_description;
+ this->input_class.identifier = "vcdo";
+ this->input_class.description = N_("Video CD input plugin");
this->input_class.get_dir = vcd_class_get_dir;
this->input_class.get_autoplay_list = vcd_class_get_autoplay_list;
this->input_class.dispose = vcd_class_dispose;
@@ -1116,6 +1107,6 @@ static void *init_class (xine_t *xine, void *data) {
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, "VCDO", XINE_VERSION_CODE, NULL, init_class },
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, "VCDO", XINE_VERSION_CODE, NULL, init_class },
{ PLUGIN_NONE, 0, "", 0, NULL, NULL }
};
diff --git a/src/input/vcd/xineplug_inp_vcd.c b/src/input/vcd/xineplug_inp_vcd.c
index 474cc7339..45d9789ba 100644
--- a/src/input/vcd/xineplug_inp_vcd.c
+++ b/src/input/vcd/xineplug_inp_vcd.c
@@ -1002,31 +1002,6 @@ vcd_plugin_get_mrl (input_plugin_t *this_gen)
}
}
-/*!
- From xine plugin spec:
-
- return human readable (verbose = 1 line) description for this plugin
-*/
-static const char *
-vcd_class_get_description (input_class_t *this_gen)
-{
- dbg_print((INPUT_DBG_CALL|INPUT_DBG_EXT), "called\n");
- return _("Video CD plugin with PBC and support for: (X)VCD, (X)SVCD, HQVCD, CVD ... ");
-}
-
-/*!
- From xine plugin spec:
-
- return short, human readable identifier for this plugin
- this is used for GUI buttons, The identifier must have max. 4 characters
- characters (max. 5 including terminating \0)
-*/
-static const char *
-vcd_class_get_identifier (input_class_t *this_gen) {
- dbg_print((INPUT_DBG_CALL|INPUT_DBG_EXT), "called\n");
- return SHORT_PLUGIN_NAME;
-}
-
/*
Handle all queued keyboard/mouse events. Return TRUE if this causes
a change in the play item.
@@ -1776,8 +1751,8 @@ vcd_init (xine_t *xine, void *data)
class->mrls = NULL;
class->input_class.get_instance = vcd_class_get_instance;
- class->input_class.get_identifier = vcd_class_get_identifier;
- class->input_class.get_description = vcd_class_get_description;
+ class->input_class.identifier = SHORT_PLUGIN_NAME;
+ class->input_class.description = N_("Video CD plugin with PBC and support for: (X)VCD, (X)SVCD, HQVCD, CVD ... ");
class->input_class.get_dir = vcd_class_get_dir;
class->input_class.get_autoplay_list = vcd_class_get_autoplay_list;
class->input_class.dispose = vcd_class_dispose;
@@ -2013,7 +1988,7 @@ _("For tracking down bugs in the VCD plugin. Mask values are:\n"
const plugin_info_t xine_plugin_info[] EXPORTED = {
/* type, API, "name", version, special_info, init_function */
- { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 17, (char *) SHORT_PLUGIN_NAME,
+ { PLUGIN_INPUT | PLUGIN_MUST_PRELOAD, 18, (char *) SHORT_PLUGIN_NAME,
XINE_VERSION_CODE, NULL, vcd_init },
{ PLUGIN_NONE, 0, (char *) "", 0, NULL, NULL }
};