audioresample: allow per feature registration
authorStéphane Cerveau <scerveau@collabora.com>
Mon, 29 Mar 2021 12:06:30 +0000 (14:06 +0200)
committerStéphane Cerveau <scerveau@collabora.com>
Mon, 29 Mar 2021 12:06:30 +0000 (14:06 +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-base/-/merge_requests/1089>

gst/audioresample/gstaudioresample.c
gst/audioresample/gstaudioresample.h

index 3b35718..f031bb6 100644 (file)
@@ -136,7 +136,10 @@ static void gst_audio_resample_push_drain (GstAudioResample * resample,
 
 #define gst_audio_resample_parent_class parent_class
 G_DEFINE_TYPE (GstAudioResample, gst_audio_resample, GST_TYPE_BASE_TRANSFORM);
-
+GST_ELEMENT_REGISTER_DEFINE_WITH_CODE (audioresample, "audioresample",
+    GST_RANK_PRIMARY, GST_TYPE_AUDIO_RESAMPLE,
+    GST_DEBUG_CATEGORY_INIT (audio_resample_debug, "audioresample", 0,
+        "audio resampling element"));
 static void
 gst_audio_resample_class_init (GstAudioResampleClass * klass)
 {
@@ -1121,15 +1124,7 @@ gst_audio_resample_get_property (GObject * object, guint prop_id,
 static gboolean
 plugin_init (GstPlugin * plugin)
 {
-  GST_DEBUG_CATEGORY_INIT (audio_resample_debug, "audioresample", 0,
-      "audio resampling element");
-
-  if (!gst_element_register (plugin, "audioresample", GST_RANK_PRIMARY,
-          GST_TYPE_AUDIO_RESAMPLE)) {
-    return FALSE;
-  }
-
-  return TRUE;
+  return GST_ELEMENT_REGISTER (audioresample, plugin);
 }
 
 GST_PLUGIN_DEFINE (GST_VERSION_MAJOR,
index 205512a..e0af9ab 100644 (file)
@@ -64,6 +64,7 @@ struct _GstAudioResample {
   GstAudioInfo out;
   GstAudioConverter *converter;
 };
+GST_ELEMENT_REGISTER_DECLARE (audioresample);
 
 G_END_DECLS