summaryrefslogtreecommitdiff
path: root/ext
diff options
context:
space:
mode:
authorStéphane Cerveau <scerveau@collabora.com>2021-02-19 12:09:18 +0100
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>2021-03-23 14:19:17 +0000
commitc2f4524e32d9625bb1458654f8cffcde7fc83300 (patch)
treec57ac7eff386db8a25c0ddb40f1c430526da8e07 /ext
parent0a04c215d1172e1c403ec6fcfd557d2b3b2f2b48 (diff)
downloadgstreamer-plugins-bad-c2f4524e32d9625bb1458654f8cffcde7fc83300.tar.gz
sbc: 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/sbc/gstsbcdec.c2
-rw-r--r--ext/sbc/gstsbcdec.h2
-rw-r--r--ext/sbc/gstsbcenc.c1
-rw-r--r--ext/sbc/gstsbcenc.h2
-rw-r--r--ext/sbc/sbc-plugin.c9
5 files changed, 12 insertions, 4 deletions
diff --git a/ext/sbc/gstsbcdec.c b/ext/sbc/gstsbcdec.c
index 84b515709..c6709f726 100644
--- a/ext/sbc/gstsbcdec.c
+++ b/ext/sbc/gstsbcdec.c
@@ -48,6 +48,8 @@ GST_DEBUG_CATEGORY_STATIC (sbc_dec_debug);
#define parent_class gst_sbc_dec_parent_class
G_DEFINE_TYPE (GstSbcDec, gst_sbc_dec, GST_TYPE_AUDIO_DECODER);
+GST_ELEMENT_REGISTER_DEFINE (sbcdec, "sbcdec", GST_RANK_PRIMARY,
+ GST_TYPE_SBC_DEC);
static GstStaticPadTemplate sbc_dec_sink_factory =
GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS,
diff --git a/ext/sbc/gstsbcdec.h b/ext/sbc/gstsbcdec.h
index 10a15ba5c..d2ea67416 100644
--- a/ext/sbc/gstsbcdec.h
+++ b/ext/sbc/gstsbcdec.h
@@ -56,4 +56,6 @@ struct _GstSbcDecClass {
GType gst_sbc_dec_get_type (void);
+GST_ELEMENT_REGISTER_DECLARE (sbcdec);
+
G_END_DECLS
diff --git a/ext/sbc/gstsbcenc.c b/ext/sbc/gstsbcenc.c
index 2bd03be93..6dae1bfbb 100644
--- a/ext/sbc/gstsbcenc.c
+++ b/ext/sbc/gstsbcenc.c
@@ -47,6 +47,7 @@ GST_DEBUG_CATEGORY_STATIC (sbc_enc_debug);
#define GST_CAT_DEFAULT sbc_enc_debug
G_DEFINE_TYPE (GstSbcEnc, gst_sbc_enc, GST_TYPE_AUDIO_ENCODER);
+GST_ELEMENT_REGISTER_DEFINE (sbcenc, "sbcenc", GST_RANK_NONE, GST_TYPE_SBC_ENC);
static GstStaticPadTemplate sbc_enc_sink_factory =
GST_STATIC_PAD_TEMPLATE ("sink", GST_PAD_SINK, GST_PAD_ALWAYS,
diff --git a/ext/sbc/gstsbcenc.h b/ext/sbc/gstsbcenc.h
index 129c6b20d..fd3c94e6b 100644
--- a/ext/sbc/gstsbcenc.h
+++ b/ext/sbc/gstsbcenc.h
@@ -58,4 +58,6 @@ struct _GstSbcEncClass {
GType gst_sbc_enc_get_type (void);
+GST_ELEMENT_REGISTER_DECLARE (sbcenc);
+
G_END_DECLS
diff --git a/ext/sbc/sbc-plugin.c b/ext/sbc/sbc-plugin.c
index 08dd38736..3761cecde 100644
--- a/ext/sbc/sbc-plugin.c
+++ b/ext/sbc/sbc-plugin.c
@@ -24,14 +24,15 @@
#include "gstsbcdec.h"
#include "gstsbcenc.h"
-#include <string.h>
static gboolean
plugin_init (GstPlugin * plugin)
{
- gst_element_register (plugin, "sbcdec", GST_RANK_PRIMARY, GST_TYPE_SBC_DEC);
- gst_element_register (plugin, "sbcenc", GST_RANK_NONE, GST_TYPE_SBC_ENC);
- return TRUE;
+ gboolean ret = FALSE;
+
+ ret |= GST_ELEMENT_REGISTER (sbcdec, plugin);
+ ret |= GST_ELEMENT_REGISTER (sbcenc, plugin);
+ return ret;
}
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,