mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-27 11:32:51 +00:00
basecamerabinsrc: Check if set preview caps are the same
Checks if the new received preview-caps are equal to what is already in use, skips the preview-caps setting logic in case new caps are same as current ones.
This commit is contained in:
parent
19429aa797
commit
2da37d966d
1 changed files with 10 additions and 5 deletions
|
@ -343,11 +343,16 @@ gst_base_camera_src_set_property (GObject * object,
|
|||
case PROP_POST_PREVIEW:
|
||||
self->post_preview = g_value_get_boolean (value);
|
||||
break;
|
||||
case PROP_PREVIEW_CAPS:
|
||||
gst_caps_replace (&self->preview_caps,
|
||||
(GstCaps *) gst_value_get_caps (value));
|
||||
gst_base_camera_src_setup_preview (self,
|
||||
(GstCaps *) gst_value_get_caps (value));
|
||||
case PROP_PREVIEW_CAPS:{
|
||||
GstCaps *new_caps = NULL;
|
||||
new_caps = (GstCaps *) gst_value_get_caps (value);
|
||||
if (!gst_caps_is_equal (self->preview_caps, new_caps)) {
|
||||
gst_caps_replace (&self->preview_caps, new_caps);
|
||||
gst_base_camera_src_setup_preview (self, new_caps);
|
||||
} else {
|
||||
GST_DEBUG_OBJECT (self, "New preview caps equal current preview caps");
|
||||
}
|
||||
}
|
||||
break;
|
||||
case PROP_PREVIEW_FILTER:
|
||||
if (self->preview_filter)
|
||||
|
|
Loading…
Reference in a new issue