diff --git a/src/gst/gstpipewiredeviceprovider.c b/src/gst/gstpipewiredeviceprovider.c index c08d588a2..6fa0341c0 100644 --- a/src/gst/gstpipewiredeviceprovider.c +++ b/src/gst/gstpipewiredeviceprovider.c @@ -348,8 +348,12 @@ static void node_event_info(void *data, struct pw_node_info *info) { struct node_data *node_data = data; GstPipeWireDeviceProvider *self = node_data->self; + GstDeviceProvider *provider = GST_DEVICE_PROVIDER (self); GstDevice *dev; + if (find_device (provider, node_data->id) != NULL) + return; + dev = new_node (self, info, node_data->id); if (dev) { if(self->list_only)