summaryrefslogtreecommitdiff
path: root/ext/gtk
diff options
context:
space:
mode:
authorMatthew Waters <matthew@centricular.com>2015-09-29 22:57:52 +1000
committerMatthew Waters <matthew@centricular.com>2015-09-30 12:39:47 +1000
commitab5f9c551f8af745892d9c74f68a80c63d026379 (patch)
treef34747ba74a6db84c189367116bc75c82d0b66c3 /ext/gtk
parent38e30dc631d76c2cd074d449b584ea2c695bb08e (diff)
downloadgstreamer-plugins-good-ab5f9c551f8af745892d9c74f68a80c63d026379.tar.gz
gtk: add some GL debug statements to show up in GL traces
Diffstat (limited to 'ext/gtk')
-rw-r--r--ext/gtk/gtkgstglwidget.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/ext/gtk/gtkgstglwidget.c b/ext/gtk/gtkgstglwidget.c
index 7b3f37f61..3020f1919 100644
--- a/ext/gtk/gtkgstglwidget.c
+++ b/ext/gtk/gtkgstglwidget.c
@@ -52,8 +52,7 @@ GST_DEBUG_CATEGORY_STATIC (GST_CAT_DEFAULT);
G_DEFINE_TYPE_WITH_CODE (GtkGstGLWidget, gtk_gst_gl_widget, GTK_TYPE_GL_AREA,
GST_DEBUG_CATEGORY_INIT (GST_CAT_DEFAULT, "gtkgstglwidget", 0,
- "Gtk Gst GL Widget");
- );
+ "Gtk Gst GL Widget"););
#define GTK_GST_GL_WIDGET_GET_PRIVATE(obj) (G_TYPE_INSTANCE_GET_PRIVATE ((obj), \
GTK_TYPE_GST_GL_WIDGET, GtkGstGLWidgetPrivate))
@@ -121,6 +120,7 @@ gtk_gst_gl_widget_init_redisplay (GtkGstGLWidget * gst_widget)
const GstGLFuncs *gl = priv->context->gl_vtable;
priv->shader = gst_gl_shader_new (priv->context);
+ gst_gl_insert_debug_marker (priv->other_context, "initializing redisplay");
gst_gl_shader_compile_with_default_vf_and_check (priv->shader,
&priv->attr_position, &priv->attr_texture);
@@ -207,6 +207,7 @@ _draw_black (GstGLContext * context)
{
const GstGLFuncs *gl = context->gl_vtable;
+ gst_gl_insert_debug_marker (context, "no buffer. rendering black");
gl->ClearColor (0.0, 0.0, 0.0, 0.0);
gl->Clear (GL_COLOR_BUFFER_BIT);
}
@@ -244,6 +245,10 @@ gtk_gst_gl_widget_render (GtkGLArea * widget, GdkGLContext * context)
goto done;
}
+ priv->current_tex = *(guint *) gl_frame.data[0];
+ gst_gl_insert_debug_marker (priv->other_context, "redrawing texture %u",
+ priv->current_tex);
+
gst_gl_overlay_compositor_upload_overlays (priv->overlay_compositor,
buffer);
@@ -253,8 +258,6 @@ gtk_gst_gl_widget_render (GtkGLArea * widget, GdkGLContext * context)
gst_gl_sync_meta_wait (sync_meta, priv->other_context);
}
- priv->current_tex = *(guint *) gl_frame.data[0];
-
gst_video_frame_unmap (&gl_frame);
if (base_widget->buffer)
@@ -271,6 +274,9 @@ gtk_gst_gl_widget_render (GtkGLArea * widget, GdkGLContext * context)
_redraw_texture (GTK_GST_GL_WIDGET (widget), priv->current_tex);
gst_gl_overlay_compositor_draw_overlays (priv->overlay_compositor);
+ gst_gl_insert_debug_marker (priv->other_context, "texture %u redrawn",
+ priv->current_tex);
+
done:
if (priv->other_context)
gst_gl_context_activate (priv->other_context, FALSE);