diff options
author | Stéphane Cerveau <scerveau@collabora.com> | 2021-03-29 12:28:28 +0200 |
---|---|---|
committer | GStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org> | 2021-03-29 19:13:36 +0000 |
commit | afa744b21870daf951c1d70ff69e92c30c21e71d (patch) | |
tree | c1030c2d05f0e29a8f1081f45d2ebf4a98002130 | |
parent | 3a42409898bdafdb3ce46a950d2207f31c08b903 (diff) | |
download | gstreamer-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.c | 17 | ||||
-rw-r--r-- | ext/dvdread/dvdreadsrc.h | 1 |
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 |