diff --git a/src/modules/gst/gst-manager.c b/src/modules/gst/gst-manager.c index 813c92ffa..62fead91d 100644 --- a/src/modules/gst/gst-manager.c +++ b/src/modules/gst/gst-manager.c @@ -104,6 +104,25 @@ bus_handler (GstBus *bus, return TRUE; } +static void +disable_pinos_provider (PinosGstManager *manager) +{ + GList *factories = NULL; + + factories = gst_device_provider_factory_list_get_device_providers (1); + + while (factories) { + GstDeviceProviderFactory *factory = factories->data; + + if (strcmp (GST_OBJECT_NAME (factory), "pinosdeviceprovider") == 0) { + gst_plugin_feature_set_rank (GST_PLUGIN_FEATURE (factory), 0); + } + factories = g_list_remove (factories, factory); + gst_object_unref (factory); + } + +} + static void start_monitor (PinosGstManager *manager) { @@ -111,6 +130,8 @@ start_monitor (PinosGstManager *manager) GstBus *bus; GList *devices; + disable_pinos_provider (manager); + priv->monitor = gst_device_monitor_new (); bus = gst_device_monitor_get_bus (priv->monitor);