diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/plugins/multimedia/gstreamer/qgstreamervideodevices.cpp | 8 |
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) |