summaryrefslogtreecommitdiff
path: root/gst
diff options
context:
space:
mode:
authorMatthew Waters <ystreet00@gmail.com>2013-01-31 23:31:09 +1100
committerSebastian Dröge <slomo@circular-chaos.org>2013-06-29 10:06:42 +0200
commit13ea80e5f7cb5a1d931b07d06ea6d4abdfcc0c61 (patch)
treec63a11e8b05a6f7e961c736809aef80ac494bfb4 /gst
parent17fda2aaa81c626d1070da924e9ee11ff92aeef1 (diff)
filterapp: port to non-glew
Diffstat (limited to 'gst')
-rw-r--r--gst/gl/gstglfilterapp.c34
1 files changed, 8 insertions, 26 deletions
diff --git a/gst/gl/gstglfilterapp.c b/gst/gl/gstglfilterapp.c
index c89ef2a..e98bc53 100644
--- a/gst/gl/gstglfilterapp.c
+++ b/gst/gl/gstglfilterapp.c
@@ -193,7 +193,7 @@ gst_gl_filter_app_filter_texture (GstGLFilter * filter, guint in_tex,
else {
//blocking call, use a FBO
gst_gl_filter_render_to_target (filter, TRUE, in_tex, out_tex,
- gst_gl_filter_app_callback, NULL);
+ gst_gl_filter_app_callback, filter);
}
return TRUE;
@@ -204,29 +204,11 @@ static void
gst_gl_filter_app_callback (gint width, gint height, guint texture,
gpointer stuff)
{
- glEnable (GL_TEXTURE_RECTANGLE_ARB);
- glBindTexture (GL_TEXTURE_RECTANGLE_ARB, texture);
- glTexParameteri (GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
- glTexParameteri (GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
- glTexParameteri (GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_WRAP_S,
- GL_CLAMP_TO_EDGE);
- glTexParameteri (GL_TEXTURE_RECTANGLE_ARB, GL_TEXTURE_WRAP_T,
- GL_CLAMP_TO_EDGE);
- glTexEnvi (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
-
- glClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
-
- glMatrixMode (GL_PROJECTION);
- glLoadIdentity ();
-
- glBegin (GL_QUADS);
- glTexCoord2i (0, 0);
- glVertex2f (-1.0f, -1.0f);
- glTexCoord2i (width, 0);
- glVertex2f (1.0f, -1.0f);
- glTexCoord2i (width, height);
- glVertex2f (1.0f, 1.0f);
- glTexCoord2i (0, height);
- glVertex2f (-1.0f, 1.0f);
- glEnd ();
+ GstGLFilter *filter = GST_GL_FILTER (stuff);
+ GstGLFuncs *gl = filter->display->gl_vtable;
+
+ gl->MatrixMode (GL_PROJECTION);
+ gl->LoadIdentity ();
+
+ gst_gl_filter_draw_texture (filter, texture, width, height);
}