diff options
author | Philippe Normand <philn@igalia.com> | 2018-11-28 11:13:39 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2019-05-01 17:05:09 +0100 |
commit | c9edd55f5328541eb782d4d9da6c46d5b18871d6 (patch) | |
tree | ad7696732b240271e080062616f0dd2736767398 | |
parent | 49dae4ec57a6fa30d93a8ecf9c73018c9d03946c (diff) | |
download | gstreamer-plugins-base-c9edd55f5328541eb782d4d9da6c46d5b18871d6.tar.gz |
gltestsrc: Run context query only during decide_allocation
Running the context query in _start and during the NULL->READY state transition
can fail because downstream elements might not be able to answer and thus the
source element would not be able to reuse downstream GLContext and GLDisplay.
This issue happened specifically when trying to use gltestsrc in playbin.
-rw-r--r-- | ext/gl/gstgltestsrc.c | 17 |
1 files changed, 0 insertions, 17 deletions
diff --git a/ext/gl/gstgltestsrc.c b/ext/gl/gstgltestsrc.c index b0abea507..a98a8e9d2 100644 --- a/ext/gl/gstgltestsrc.c +++ b/ext/gl/gstgltestsrc.c @@ -510,11 +510,6 @@ gst_gl_test_src_start (GstBaseSrc * basesrc) { GstGLTestSrc *src = GST_GL_TEST_SRC (basesrc); - if (!gst_gl_ensure_element_data (src, &src->display, &src->other_context)) - return FALSE; - - gst_gl_display_filter_gl_api (src->display, SUPPORTED_GL_APIS); - src->running_time = 0; src->n_frames = 0; src->negotiated = FALSE; @@ -735,18 +730,6 @@ gst_gl_test_src_change_state (GstElement * element, GstStateChange transition) gst_element_state_get_name (GST_STATE_TRANSITION_CURRENT (transition)), gst_element_state_get_name (GST_STATE_TRANSITION_NEXT (transition))); - switch (transition) { - case GST_STATE_CHANGE_NULL_TO_READY: - if (!gst_gl_ensure_element_data (element, &src->display, - &src->other_context)) - return GST_STATE_CHANGE_FAILURE; - - gst_gl_display_filter_gl_api (src->display, SUPPORTED_GL_APIS); - break; - default: - break; - } - ret = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition); if (ret == GST_STATE_CHANGE_FAILURE) return ret; |