spectrum: allow per feature registration
authorStéphane Cerveau <scerveau@collabora.com>
Tue, 16 Feb 2021 16:27:24 +0000 (17:27 +0100)
committerStéphane Cerveau <scerveau@collabora.com>
Mon, 29 Mar 2021 10:45:23 +0000 (12:45 +0200)
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-good/-/merge_requests/876>

gst/spectrum/gstspectrum.c
gst/spectrum/gstspectrum.h

index 16684d4..d95915a 100644 (file)
@@ -98,6 +98,8 @@ enum
 
 #define gst_spectrum_parent_class parent_class
 G_DEFINE_TYPE (GstSpectrum, gst_spectrum, GST_TYPE_AUDIO_FILTER);
+GST_ELEMENT_REGISTER_DEFINE (spectrum, "spectrum", GST_RANK_NONE,
+    GST_TYPE_SPECTRUM);
 
 static void gst_spectrum_finalize (GObject * object);
 static void gst_spectrum_set_property (GObject * object, guint prop_id,
@@ -953,8 +955,8 @@ gst_spectrum_transform_ip (GstBaseTransform * trans, GstBuffer * buffer)
 static gboolean
 plugin_init (GstPlugin * plugin)
 {
-  return gst_element_register (plugin, "spectrum", GST_RANK_NONE,
-      GST_TYPE_SPECTRUM);
+
+  return GST_ELEMENT_REGISTER (spectrum, plugin);
 }
 
 GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
index df8d730..d73c19f 100644 (file)
@@ -90,6 +90,8 @@ struct _GstSpectrumClass
 
 GType gst_spectrum_get_type (void);
 
+GST_ELEMENT_REGISTER_DECLARE (spectrum);
+
 G_END_DECLS
 
 #endif /* __GST_SPECTRUM_H__ */