glcolorconvert: wait on the sync meta for input buffers
authorMatthew Waters <matthew@centricular.com>
Thu, 5 Nov 2015 16:05:31 +0000 (03:05 +1100)
committerTim-Philipp Müller <tim@centricular.com>
Sat, 9 Dec 2017 19:32:10 +0000 (19:32 +0000)
gst-libs/gst/gl/gstglcolorconvert.c

index f05b197..eb400f8 100644 (file)
@@ -1933,6 +1933,7 @@ _do_convert (GstGLContext * context, GstGLColorConvert * convert)
   gboolean res = TRUE;
   gint views, v;
   GstVideoOverlayCompositionMeta *composition_meta;
+  GstGLSyncMeta *sync_meta;
 
   convert->outbuf = NULL;
 
@@ -1941,6 +1942,10 @@ _do_convert (GstGLContext * context, GstGLColorConvert * convert)
     return;
   }
 
+  sync_meta = gst_buffer_get_gl_sync_meta (convert->inbuf);
+  if (sync_meta)
+    gst_gl_sync_meta_wait (sync_meta, convert->context);
+
   convert->outbuf = gst_buffer_new ();
   if (!gst_gl_memory_setup_buffer (convert->context,
           convert->priv->to_texture_target, NULL, &convert->out_info, NULL,