summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/plugins/multimedia/gstreamer/qgstreamervideodevices.cpp8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/plugins/multimedia/gstreamer/qgstreamervideodevices.cpp b/src/plugins/multimedia/gstreamer/qgstreamervideodevices.cpp
index d0c341fc9..cd4d15e02 100644
--- a/src/plugins/multimedia/gstreamer/qgstreamervideodevices.cpp
+++ b/src/plugins/multimedia/gstreamer/qgstreamervideodevices.cpp
@@ -119,16 +119,12 @@ QList<QCameraDevice> QGstreamerVideoDevices::videoDevices() const
void QGstreamerVideoDevices::addDevice(GstDevice *device)
{
- gchar *type = gst_device_get_device_class(device);
- gst_object_ref(device);
- if (!strcmp(type, "Video/Source") || !strcmp(type, "Source/Video")) {
+ if (gst_device_has_classes(device, "Video/Source")) {
+ gst_object_ref(device);
m_videoSources.push_back({device, QByteArray::number(m_idGenerator)});
videoInputsChanged();
m_idGenerator++;
- } else {
- gst_object_unref(device);
}
- g_free(type);
}
void QGstreamerVideoDevices::removeDevice(GstDevice *device)