summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStéphane Cerveau <scerveau@collabora.com>2021-03-29 12:28:28 +0200
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>2021-03-29 19:13:36 +0000
commitafa744b21870daf951c1d70ff69e92c30c21e71d (patch)
treec1030c2d05f0e29a8f1081f45d2ebf4a98002130
parent3a42409898bdafdb3ce46a950d2207f31c08b903 (diff)
downloadgstreamer-plugins-ugly-afa744b21870daf951c1d70ff69e92c30c21e71d.tar.gz
dvdread: allow per feature registration
Split plugin into features including dynamic types which can be indiviually registered during a static build. More details here: https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199 https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661 Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-ugly/-/merge_requests/79>
-rw-r--r--ext/dvdread/dvdreadsrc.c17
-rw-r--r--ext/dvdread/dvdreadsrc.h1
2 files changed, 11 insertions, 7 deletions
diff --git a/ext/dvdread/dvdreadsrc.c b/ext/dvdread/dvdreadsrc.c
index 97888df4..cfd72ad6 100644
--- a/ext/dvdread/dvdreadsrc.c
+++ b/ext/dvdread/dvdreadsrc.c
@@ -91,11 +91,13 @@ static gint gst_dvd_read_src_get_sector_from_time (GstDvdReadSrc * src,
static void gst_dvd_read_src_uri_handler_init (gpointer g_iface,
gpointer iface_data);
+static gboolean dvdread_element_init (GstPlugin * plugin);
#define gst_dvd_read_src_parent_class parent_class
G_DEFINE_TYPE_WITH_CODE (GstDvdReadSrc, gst_dvd_read_src, GST_TYPE_PUSH_SRC,
G_IMPLEMENT_INTERFACE (GST_TYPE_URI_HANDLER,
gst_dvd_read_src_uri_handler_init));
+GST_ELEMENT_REGISTER_DEFINE_CUSTOM (dvdreadsrc, dvdread_element_init);
static void
gst_dvd_read_src_finalize (GObject * object)
@@ -1789,7 +1791,7 @@ gst_dvd_read_src_uri_handler_init (gpointer g_iface, gpointer iface_data)
}
static gboolean
-plugin_init (GstPlugin * plugin)
+dvdread_element_init (GstPlugin * plugin)
{
GST_DEBUG_CATEGORY_INIT (gstgst_dvd_read_src_debug, "dvdreadsrc", 0,
"DVD reader element based on dvdreadsrc");
@@ -1800,13 +1802,14 @@ plugin_init (GstPlugin * plugin)
bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
#endif /* ENABLE_NLS */
+ return gst_element_register (plugin, "dvdreadsrc", GST_RANK_NONE,
+ GST_TYPE_DVD_READ_SRC);
+}
- if (!gst_element_register (plugin, "dvdreadsrc", GST_RANK_NONE,
- GST_TYPE_DVD_READ_SRC)) {
- return FALSE;
- }
-
- return TRUE;
+static gboolean
+plugin_init (GstPlugin * plugin)
+{
+ return GST_ELEMENT_REGISTER (dvdreadsrc, plugin);
}
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
diff --git a/ext/dvdread/dvdreadsrc.h b/ext/dvdread/dvdreadsrc.h
index fbca0ee0..d31c961f 100644
--- a/ext/dvdread/dvdreadsrc.h
+++ b/ext/dvdread/dvdreadsrc.h
@@ -95,6 +95,7 @@ struct _GstDvdReadSrcClass {
};
GType gst_dvd_read_src_get_type (void);
+GST_ELEMENT_REGISTER_DECLARE (dvdreadsrc);
G_END_DECLS