From 182b4b56011b70fa9afdedf53d3c25f73028c335 Mon Sep 17 00:00:00 2001 From: Ratchanan Srirattanamet Date: Fri, 27 Sep 2019 23:31:57 +0700 Subject: Gstreamer: also remove features when simplifying caps Some element can return caps with same resolution/framerate but different features. gst_simplify_caps() won't de-duplicate this, resulting in duplicated entries for the same resolution/framerate. This commit add calls to also remove features from the caps in addition to setting name to video/x-raw. The GST_CHECK_VERSION macro is added to maintain compatibility with earlier version of Gstreamer without GstCapsFeatures. [ChangeLog][CameraBin] Fixed duplicated entries in supported resolution/ framerate if the underlying element uses caps' features. Change-Id: I15101899eb0369925013ccc1d925afb890a01205 Reviewed-by: VaL Doroshchuk --- src/plugins/gstreamer/camerabin/camerabinsession.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/plugins/gstreamer/camerabin/camerabinsession.cpp b/src/plugins/gstreamer/camerabin/camerabinsession.cpp index b96ba6792..3e505a413 100644 --- a/src/plugins/gstreamer/camerabin/camerabinsession.cpp +++ b/src/plugins/gstreamer/camerabin/camerabinsession.cpp @@ -1312,6 +1312,9 @@ QList< QPair > CameraBinSession::supportedFrameRates(const QSize &frame for (uint i=0; i CameraBinSession::supportedResolutions(QPair rate, for (uint i=0; i