summaryrefslogtreecommitdiff
path: root/ext/eglgles
diff options
context:
space:
mode:
authorSebastian Dröge <sebastian.droege@collabora.co.uk>2013-03-29 16:11:56 +0100
committerSebastian Dröge <sebastian.droege@collabora.co.uk>2013-03-29 16:11:56 +0100
commit9e2af116f6b974dcf32b6e3e8494391355deaa01 (patch)
treedb9a57585ba9d2357685329667211e9e2a1a5d97 /ext/eglgles
parent3233c6163ac22b4228bf4231a4a370710da34de7 (diff)
downloadgstreamer-plugins-bad-9e2af116f6b974dcf32b6e3e8494391355deaa01.tar.gz
eglglessink: Use a separate texture for the custom textures
Diffstat (limited to 'ext/eglgles')
-rw-r--r--ext/eglgles/gsteglglessink.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/ext/eglgles/gsteglglessink.c b/ext/eglgles/gsteglglessink.c
index fb0b7b068..5eed2fd16 100644
--- a/ext/eglgles/gsteglglessink.c
+++ b/ext/eglgles/gsteglglessink.c
@@ -1476,12 +1476,12 @@ gst_eglglessink_init_egl_surface (GstEglGlesSink * eglglessink)
if (!eglglessink->have_texture) {
GST_INFO_OBJECT (eglglessink, "Performing initial texture setup");
- glGenTextures (eglglessink->eglglesctx.n_textures,
+ glGenTextures (eglglessink->eglglesctx.n_textures+1,
eglglessink->eglglesctx.texture);
if (got_gl_error ("glGenTextures"))
goto HANDLE_ERROR_LOCKED;
- for (i = 0; i < eglglessink->eglglesctx.n_textures; i++) {
+ for (i = 0; i < eglglessink->eglglesctx.n_textures+1; i++) {
glBindTexture (GL_TEXTURE_2D, eglglessink->eglglesctx.texture[i]);
if (got_gl_error ("glBindTexture"))
goto HANDLE_ERROR;
@@ -2182,11 +2182,11 @@ gst_eglglessink_upload (GstEglGlesSink * eglglessink, GstBuffer * buf)
if (upload_meta) {
glActiveTexture (GL_TEXTURE0);
- glBindTexture (GL_TEXTURE_2D, eglglessink->eglglesctx.texture[0]);
- if (!gst_video_gl_texture_upload_meta_upload (upload_meta,
- (eglglessink->configured_info.finfo->format ==
- GST_VIDEO_FORMAT_RGBA ? GL_RGBA : GL_RGB),
- eglglessink->eglglesctx.texture[0]))
+ glBindTexture (GL_TEXTURE_2D,
+ eglglessink->eglglesctx.texture[eglglessink->eglglesctx.n_textures]);
+ if (!gst_video_gl_texture_upload_meta_upload (upload_meta, GL_RGBA,
+ eglglessink->eglglesctx.texture[eglglessink->
+ eglglesctx.n_textures]))
goto HANDLE_ERROR;
eglglessink->orientation = GST_EGL_IMAGE_ORIENTATION_X_NORMAL_Y_NORMAL;