gl/syncmeta: implement synchronisation without glFenceSync
authorMatthew Waters <matthew@centricular.com>
Sat, 8 Aug 2015 15:22:05 +0000 (17:22 +0200)
committerMatthew Waters <matthew@centricular.com>
Sat, 8 Aug 2015 15:30:42 +0000 (17:30 +0200)
Uses glFinish as that's the best we have for lesser OpenGL versions.

gst-libs/gst/gl/gstglsyncmeta.c

index 23806aa514f88956f440e3e9d4f1585951409543..f680353fb05c80b48290d1dabb37dc8cb4ba2cab 100644 (file)
@@ -69,9 +69,11 @@ _set_sync_point (GstGLContext * context, GstGLSyncMeta * sync_meta)
       gl->DeleteSync (sync_meta->glsync);
     }
     sync_meta->glsync = gl->FenceSync (GL_SYNC_GPU_COMMANDS_COMPLETE, 0);
+    gl->Flush ();
     GST_LOG ("setting sync object %p", sync_meta->glsync);
+  } else {
+    gl->Finish ();
   }
-  gl->Flush ();
 }
 
 void