__gst_oss_plugin_dir = g_strjoinv (G_DIR_SEPARATOR_S, path);
g_strfreev (path);
- if (!gst_element_register (plugin, "osssrc", GST_RANK_PRIMARY, GST_TYPE_OSSSRC) ||
- !gst_element_register (plugin, "osssink", GST_RANK_PRIMARY, GST_TYPE_OSSSINK) ||
- !gst_element_register (plugin, "ossgst", GST_RANK_MARGINAL, GST_TYPE_OSSGST)) {
+ if (!gst_element_register (plugin, "ossmixer", GST_RANK_PRIMARY,
+ GST_TYPE_OSSELEMENT) ||
+ !gst_element_register (plugin, "osssrc", GST_RANK_PRIMARY,
+ GST_TYPE_OSSSRC) ||
+ !gst_element_register (plugin, "osssink", GST_RANK_PRIMARY,
+ GST_TYPE_OSSSINK) ||
+ !gst_element_register (plugin, "ossgst", GST_RANK_MARGINAL,
+ GST_TYPE_OSSGST)) {
return FALSE;
}
ARG_DEVICE_NAME,
};
+/* elementfactory information */
+static GstElementDetails gst_osselement_details = GST_ELEMENT_DETAILS (
+ "Audio Mixer (OSS)",
+ "Generic/Audio",
+ "OSS-based mixer element",
+ "Ronald Bultje <rbultje@ronald.bitfreak.net>"
+);
+
+static void gst_osselement_base_init (GstOssElementClass *klass);
static void gst_osselement_class_init (GstOssElementClass *klass);
static void gst_osselement_init (GstOssElement *oss);
static void gst_osselement_dispose (GObject *object);
if (!osselement_type) {
static const GTypeInfo osselement_info = {
sizeof(GstOssElementClass),
- NULL,
+ (GBaseInitFunc)gst_osselement_base_init,
NULL,
(GClassInitFunc)gst_osselement_class_init,
NULL,
}
static void
+gst_osselement_base_init (GstOssElementClass *klass)
+{
+ GstElementClass *element_class = GST_ELEMENT_CLASS (klass);
+
+ gst_element_class_set_details (element_class, &gst_osselement_details);
+}
+
+static void
gst_osselement_class_init (GstOssElementClass *klass)
{
GObjectClass *gobject_class;