diff options
author | Philippe Normand <philn@igalia.com> | 2018-11-28 11:13:39 +0000 |
---|---|---|
committer | Matthew Waters <matthew@centricular.com> | 2018-11-30 01:55:34 +0000 |
commit | d5f2b5dcfa98c5c79e8045b8d249f48b3a82bfb9 (patch) | |
tree | 2dfaa15a781e35a0ea7fadcd6a6ce9345cb883ad /ext | |
parent | 179409e9b3f5ed35b9fb7120de129de8dbe3a436 (diff) |
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.
Diffstat (limited to 'ext')
-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 b0abea507b..a98a8e9d24 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; |