From cb0f02c78abd6d528ec9377db8b716122580fca3 Mon Sep 17 00:00:00 2001 From: Matthew Waters Date: Mon, 19 Sep 2016 16:54:43 +1000 Subject: [PATCH] glcolorbalance: reconfigure on passthrough changes Fixes an assertion when moving from passthrough to non-passthrough Without an explicit reconfigure, glfiter won't have created the GL resources such as the FBO, GL bufferpool, etc and basetransform will allocate sysmem buffers instead. --- ext/gl/gstglcolorbalance.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/ext/gl/gstglcolorbalance.c b/ext/gl/gstglcolorbalance.c index 92d4447bbe..33b5a50a3b 100644 --- a/ext/gl/gstglcolorbalance.c +++ b/ext/gl/gstglcolorbalance.c @@ -150,14 +150,17 @@ gst_gl_color_balance_is_passthrough (GstGLColorBalance * glcolorbalance) static void gst_gl_color_balance_update_properties (GstGLColorBalance * glcolorbalance) { - gboolean passthrough; + gboolean current_passthrough, passthrough; GstBaseTransform *base = GST_BASE_TRANSFORM (glcolorbalance); GST_OBJECT_LOCK (glcolorbalance); passthrough = gst_gl_color_balance_is_passthrough (glcolorbalance); GST_OBJECT_UNLOCK (glcolorbalance); + current_passthrough = gst_base_transform_is_passthrough (base); gst_base_transform_set_passthrough (base, passthrough); + if (current_passthrough != passthrough) + gst_base_transform_reconfigure_src (base); } static gboolean