gstreamer/ext/gl
Matthew Waters a3ebe19d87 glimagesink: don't deadlock on resize
Performing any GL function marshalling off the GL thread with glimagesink's
render lock is prone to deadlocks between the GL thread and the non-GL thread.

What can happen is this:
1. non-GL thread attempts to function marshal to the GL thread.
2. while 1 is happening, the winsys gives an event (say resize)
3. This calls back into glimagesink which taks the render lock.
4. As the GL function marshalling is attempting to run on the GL
   and already has glimagesink's render lock locked.  This deadlocks
   as the threads are waiting for each other.
2015-12-18 11:57:07 +11:00
..
effects glshader: port to using GstGLSLStage objects for string management 2015-10-15 21:27:57 +11:00
BUGS move gl elements to ext subdirectory 2014-03-16 11:23:16 +01:00
caopengllayersink.h caopengllayersink: correctly use the sync meta across multiple contexts 2015-05-20 00:36:48 +10:00
caopengllayersink.m glmemory: add support for rectangle textures 2015-10-30 14:24:53 +11:00
gltestsrc.c gl: remove useless gl{En,Dis}able (GL_TEXTURE_*) calls 2015-05-14 16:42:09 +10:00
gltestsrc.h gltestsrc: implement snow pattern with GLSL. 2014-09-24 00:40:37 +10:00
gstglbasemixer.c gl: chain up to the parent class for GstElement::set_context 2015-09-28 22:24:04 +10:00
gstglbasemixer.h gl: add a new glbasemixer class below glmixer 2015-03-12 16:45:50 +00:00
gstglbumper.c plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
gstglbumper.h move gl elements to ext subdirectory 2014-03-16 11:23:16 +01:00
gstglcolorconvertelement.c glcolorconvert: remove unused ret variable 2015-10-30 14:43:23 +11:00
gstglcolorconvertelement.h Revert "gl: readd glupload/download onto element pads" 2015-05-06 15:46:49 +02:00
gstglcolorscale.c glshader: port to using GstGLSLStage objects for string management 2015-10-15 21:27:57 +11:00
gstglcolorscale.h glcolorscale: support gl3 2014-11-28 09:14:25 +11:00
gstgldeinterlace.c plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
gstgldeinterlace.h move gl elements to ext subdirectory 2014-03-16 11:23:16 +01:00
gstgldifferencematte.c plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
gstgldifferencematte.h gl: silence all the compiler warnings 2014-03-16 15:17:44 +01:00
gstgldownloadelement.c glmemory: base classify and add the pbo memory on top 2015-12-14 16:35:32 +11:00
gstgldownloadelement.h gl: add new gldownloadelement 2015-03-12 16:45:50 +00:00
gstgleffects.c plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
gstgleffects.h gl: use gles2 shaders everywhere 2015-08-10 16:38:32 +02:00
gstglfilterapp.c gl: get the context from basemixer/basefilter 2015-03-13 12:30:20 +00:00
gstglfilterapp.h glfilterapp: actually emit the client-draw signal 2014-06-12 23:17:05 +10:00
gstglfilterbin.c gstglfilterbin: remove unused variable 2015-07-30 11:12:26 +01:00
gstglfilterbin.h gl: new element glfilterbin 2015-03-12 16:45:50 +00:00
gstglfiltercube.c gl: element buffers are part of vao state 2015-05-14 14:58:07 +10:00
gstglfiltercube.h gl: element buffers are part of vao state 2015-05-14 14:58:07 +10:00
gstglfilterglass.c gl: remove useless gl{En,Dis}able (GL_TEXTURE_*) calls 2015-05-14 16:42:09 +10:00
gstglfilterglass.h gl: silence all the compiler warnings 2014-03-16 15:17:44 +01:00
gstglfilterreflectedscreen.c plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
gstglfilterreflectedscreen.h gl: silence all the compiler warnings 2014-03-16 15:17:44 +01:00
gstglfiltershader.c plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
gstglfiltershader.h glshaderelement: implement setting arbitrary uniforms 2015-10-21 04:05:00 +11:00
gstglimagesink.c glimagesink: don't deadlock on resize 2015-12-18 11:57:07 +11:00
gstglimagesink.h glimagesink: wait on the correct sync meta when rendering 2015-11-17 15:27:26 +11:00
gstglmixer.c gl: Don't leak pool if set_config failed 2015-07-02 09:40:05 -04:00
gstglmixer.h Revert "gl: readd glupload/download onto element pads" 2015-05-06 15:46:49 +02:00
gstglmixerbin.c glmixerbin: fix minor leak 2015-11-06 13:00:55 +00:00
gstglmixerbin.h gl: new glmixerbin element 2015-03-12 16:45:51 +00:00
gstglmosaic.c gl: remove useless gl{En,Dis}able (GL_TEXTURE_*) calls 2015-05-14 16:42:09 +10:00
gstglmosaic.h gl: Move GstGLMixer to the plugin for now 2014-07-11 09:41:05 +02:00
gstgloverlay.c glmemorypbo: remove our own alloc()/wrapped()/etc functions 2015-12-17 13:49:56 +11:00
gstgloverlay.h gloverlay: remove unused type_file field 2015-05-26 16:49:55 -04:00
gstglsinkbin.c gl: move basesink properties from glimagesinkbin to glsinkbin 2015-06-12 00:34:58 +10:00
gstglsinkbin.h gl: new glsinkbin element 2015-03-12 16:45:50 +00:00
gstglsrcbin.c gl: Use gst_object_ref_sink() for gl{filter,mixer,src}bin too 2015-06-11 15:22:04 +02:00
gstglsrcbin.h gl: new glsrcbin element 2015-03-12 16:45:51 +00:00
gstglstereomix.c glviewconvert: remove set_format 2015-11-11 15:16:37 +11:00
gstglstereomix.h gldownload: remove helper api from the library 2015-12-14 13:55:16 +11:00
gstglstereosplit.c plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
gstglstereosplit.h gl: Add glviewconvert, glstereomix and glstereosplit elements 2015-06-19 01:49:33 +10:00
gstgltestsrc.c plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
gstgltestsrc.h gltestsrc: remove usage of gldownload library object 2015-03-12 16:45:51 +00:00
gstgltransformation.c plugins-bad: Fix example pipelines 2015-12-15 10:30:49 +00:00
gstgltransformation.h gltransformation: implement pivot point for rotation and scale 2015-08-08 16:32:53 -04:00
gstgluploadelement.c glupload: remove useless release_buffer 2015-09-30 13:36:09 +10:00
gstgluploadelement.h gl: add a new glupload element based on the glupload library object 2015-03-12 16:45:50 +00:00
gstglvideomixer.c glvideomixer: Proxy the ignore-eos videoaggregator property as well 2015-10-06 16:57:53 +01:00
gstglvideomixer.h gl: element buffers are part of vao state 2015-05-14 14:58:07 +10:00
gstglviewconvert.c gl: add missing break 2015-06-29 16:10:50 +01:00
gstglviewconvert.h gl: Add glviewconvert, glstereomix and glstereosplit elements 2015-06-19 01:49:33 +10:00
gstopengl.c opengl: build/provide glstereomix/split on gles only systems 2015-10-27 15:30:58 +11:00
Makefile.am opengl: build/provide glstereomix/split on gles only systems 2015-10-27 15:30:58 +11:00