summaryrefslogtreecommitdiff
path: root/gst-libs/gst/gl/gstglmemorypbo.c
diff options
context:
space:
mode:
authorMatthew Waters <matthew@centricular.com>2016-01-07 20:54:41 +1100
committerMatthew Waters <matthew@centricular.com>2016-01-11 20:40:39 +1100
commit3423e108d49e36f784d320002fc339f610f901f3 (patch)
tree364a942f2e7c06a1077ebe14f110b0dca743dba0 /gst-libs/gst/gl/gstglmemorypbo.c
parente8a251db4b95c0f6cfff6991cb449684498a222e (diff)
downloadgstreamer-plugins-bad-3423e108d49e36f784d320002fc339f610f901f3.tar.gz
glmemorypbo: don't double read pixels
The optimistic download_transfer was not setting the required flag to not perform glReadPixels on subsequent map (READ). resulting in glReadPixels happening twice.
Diffstat (limited to 'gst-libs/gst/gl/gstglmemorypbo.c')
-rw-r--r--gst-libs/gst/gl/gstglmemorypbo.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gst-libs/gst/gl/gstglmemorypbo.c b/gst-libs/gst/gl/gstglmemorypbo.c
index 9649c6abf..37fe85a72 100644
--- a/gst-libs/gst/gl/gstglmemorypbo.c
+++ b/gst-libs/gst/gl/gstglmemorypbo.c
@@ -792,6 +792,7 @@ _download_transfer (GstGLContext * context, GstGLMemoryPBO * gl_mem)
if (_read_pixels_to_pbo (gl_mem))
GST_CAT_TRACE (GST_CAT_GL_MEMORY, "optimistic download of texture %u "
"using pbo %u", gl_mem->mem.tex_id, gl_mem->pbo->id);
+ GST_MEMORY_FLAG_UNSET (gl_mem, GST_GL_BASE_MEMORY_TRANSFER_NEED_DOWNLOAD);
g_mutex_unlock (&mem->lock);
}