diff options
author | Stéphane Cerveau <scerveau@collabora.com> | 2021-02-19 11:53:12 +0100 |
---|---|---|
committer | GStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org> | 2021-03-23 14:19:17 +0000 |
commit | 144623bd4353a0233e703f2d1a39cde97c80b73a (patch) | |
tree | 0e6ce9b79b20b2a4d8f1f03989823ea832c811df /ext | |
parent | 1b0d570ee309b7d0a5a532a6bf73f6062e486a1d (diff) | |
download | gstreamer-plugins-bad-144623bd4353a0233e703f2d1a39cde97c80b73a.tar.gz |
rsvg: 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-bad/-/merge_requests/2038>
Diffstat (limited to 'ext')
-rw-r--r-- | ext/rsvg/gstrsvg.c | 11 | ||||
-rw-r--r-- | ext/rsvg/gstrsvgdec.c | 2 | ||||
-rw-r--r-- | ext/rsvg/gstrsvgdec.h | 1 | ||||
-rw-r--r-- | ext/rsvg/gstrsvgoverlay.c | 2 | ||||
-rw-r--r-- | ext/rsvg/gstrsvgoverlay.h | 1 |
5 files changed, 12 insertions, 5 deletions
diff --git a/ext/rsvg/gstrsvg.c b/ext/rsvg/gstrsvg.c index 28921e9cb..69438db06 100644 --- a/ext/rsvg/gstrsvg.c +++ b/ext/rsvg/gstrsvg.c @@ -29,11 +29,12 @@ static gboolean plugin_init (GstPlugin * plugin) { - return (gst_element_register (plugin, "rsvgoverlay", - GST_RANK_NONE, GST_TYPE_RSVG_OVERLAY) - && - gst_element_register (plugin, "rsvgdec", GST_RANK_PRIMARY, - GST_TYPE_RSVG_DEC)); + gboolean ret = FALSE; + + ret |= GST_ELEMENT_REGISTER (rsvgoverlay, plugin); + ret |= GST_ELEMENT_REGISTER (rsvgdec, plugin); + + return ret; } GST_PLUGIN_DEFINE (GST_VERSION_MAJOR, diff --git a/ext/rsvg/gstrsvgdec.c b/ext/rsvg/gstrsvgdec.c index 1cf7ea0dd..1c0dc1677 100644 --- a/ext/rsvg/gstrsvgdec.c +++ b/ext/rsvg/gstrsvgdec.c @@ -59,6 +59,8 @@ GST_STATIC_PAD_TEMPLATE ("src", GST_PAD_SRC, GST_PAD_ALWAYS, #define gst_rsv_dec_parent_class parent_class G_DEFINE_TYPE (GstRsvgDec, gst_rsvg_dec, GST_TYPE_VIDEO_DECODER); +GST_ELEMENT_REGISTER_DEFINE (rsvgdec, "rsvgdec", GST_RANK_PRIMARY, + GST_TYPE_RSVG_DEC); static gboolean gst_rsvg_dec_stop (GstVideoDecoder * decoder); static gboolean gst_rsvg_dec_set_format (GstVideoDecoder * decoder, diff --git a/ext/rsvg/gstrsvgdec.h b/ext/rsvg/gstrsvgdec.h index 37700206a..79e5496ce 100644 --- a/ext/rsvg/gstrsvgdec.h +++ b/ext/rsvg/gstrsvgdec.h @@ -70,6 +70,7 @@ struct _GstRsvgDecClass }; GType gst_rsvg_dec_get_type (void); +GST_ELEMENT_REGISTER_DECLARE (rsvgdec); G_END_DECLS diff --git a/ext/rsvg/gstrsvgoverlay.c b/ext/rsvg/gstrsvgoverlay.c index 5f661b9ad..7ab772514 100644 --- a/ext/rsvg/gstrsvgoverlay.c +++ b/ext/rsvg/gstrsvgoverlay.c @@ -123,6 +123,8 @@ static GstStaticPadTemplate data_sink_template = #define gst_rsv_overlay_parent_class parent_class G_DEFINE_TYPE (GstRsvgOverlay, gst_rsvg_overlay, GST_TYPE_VIDEO_FILTER); +GST_ELEMENT_REGISTER_DEFINE (rsvgoverlay, "rsvgoverlay", GST_RANK_NONE, + GST_TYPE_RSVG_OVERLAY); static void gst_rsvg_overlay_finalize (GObject * object); diff --git a/ext/rsvg/gstrsvgoverlay.h b/ext/rsvg/gstrsvgoverlay.h index 9cd00face..b9ab58411 100644 --- a/ext/rsvg/gstrsvgoverlay.h +++ b/ext/rsvg/gstrsvgoverlay.h @@ -73,6 +73,7 @@ struct _GstRsvgOverlayClass }; GType gst_rsvg_overlay_get_type (void); +GST_ELEMENT_REGISTER_DECLARE (rsvgoverlay); G_END_DECLS #endif /* __GST_RSVG_OVERLAY_H__ */ |