soundtouch: 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>
This commit is contained in:
Stéphane Cerveau 2021-02-19 12:41:41 +01:00 committed by GStreamer Marge Bot
parent 1b30f6072a
commit c8ef250fe2
5 changed files with 12 additions and 3 deletions

View file

@ -79,6 +79,8 @@ struct _GstBPMDetectPrivate
#define gst_bpm_detect_parent_class parent_class
G_DEFINE_TYPE_WITH_PRIVATE (GstBPMDetect, gst_bpm_detect, GST_TYPE_AUDIO_FILTER);
GST_ELEMENT_REGISTER_DEFINE (bpmdetect, "bpmdetect", GST_RANK_NONE,
GST_TYPE_BPM_DETECT);
static void gst_bpm_detect_finalize (GObject * object);
static gboolean gst_bpm_detect_stop (GstBaseTransform * trans);

View file

@ -51,6 +51,7 @@ struct _GstBPMDetectClass {
};
GType gst_bpm_detect_get_type (void);
GST_ELEMENT_REGISTER_DECLARE (bpmdetect);
G_END_DECLS

View file

@ -118,6 +118,8 @@ static gboolean gst_pitch_src_query (GstPad * pad, GstObject * parent,
#define gst_pitch_parent_class parent_class
G_DEFINE_TYPE_WITH_PRIVATE (GstPitch, gst_pitch, GST_TYPE_ELEMENT);
GST_ELEMENT_REGISTER_DEFINE (pitch, "pitch", GST_RANK_NONE,
GST_TYPE_PITCH);
static void
gst_pitch_class_init (GstPitchClass * klass)

View file

@ -89,6 +89,7 @@ struct _GstPitchClass
};
GType gst_pitch_get_type (void);
GST_ELEMENT_REGISTER_DECLARE (pitch);
G_END_DECLS

View file

@ -28,9 +28,12 @@
static gboolean
plugin_init (GstPlugin * plugin)
{
return gst_element_register (plugin, "pitch", GST_RANK_NONE, GST_TYPE_PITCH)
&& gst_element_register (plugin, "bpmdetect", GST_RANK_NONE,
GST_TYPE_BPM_DETECT);
gboolean ret = FALSE;
ret |= GST_ELEMENT_REGISTER (pitch, plugin);
ret |= GST_ELEMENT_REGISTER (bpmdetect, plugin);
return ret;
}
GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,