Julien Isorce [Tue, 1 Oct 2013 11:42:21 +0000 (11:42 +0000)]
[821/906] tests: fix test_share on GLESv2
Julien Isorce [Tue, 1 Oct 2013 11:27:07 +0000 (11:27 +0000)]
[820/906] gstglwindow: if available use wayland instead dispmanx on rpi
Matthew Waters [Thu, 26 Sep 2013 15:15:25 +0000 (01:15 +1000)]
[819/906] make gen_texture/del_texture threadsafe
Use stack allocated instead of static variables
Conflicts:
gst-libs/gst/gl/gstglutils.c
Matthew Waters [Wed, 25 Sep 2013 02:26:57 +0000 (12:26 +1000)]
[818/906] window: add send_message_async vmethod
- provide a default synchronous send_message
- make context creation threadsafe again
Matthew Waters [Tue, 24 Sep 2013 06:37:11 +0000 (16:37 +1000)]
[817/906] make the state change test pass
Matthew Waters [Tue, 24 Sep 2013 04:07:58 +0000 (14:07 +1000)]
[816/906] x11: fix make check segfault
Matthew Waters [Fri, 20 Sep 2013 01:55:36 +0000 (11:55 +1000)]
[815/906] fix some refcount errors
Matthew Waters [Fri, 20 Sep 2013 01:54:42 +0000 (11:54 +1000)]
[814/906] mixer: timestamp buffers
Matthew Waters [Mon, 16 Sep 2013 09:07:18 +0000 (19:07 +1000)]
[813/906] unref the pool on shutdown
Matthew Waters [Sun, 15 Sep 2013 04:23:43 +0000 (14:23 +1000)]
[812/906] move the GL vtable from GstGLDisplay to GstGLContext
Conflicts:
tests/check/libs/gstglcontext.c
Matthew Waters [Thu, 22 Aug 2013 05:55:35 +0000 (15:55 +1000)]
[811/906] tests: update for GstGLContext addition
Julien Isorce [Thu, 26 Sep 2013 13:46:16 +0000 (14:46 +0100)]
[810/906] gstglutils: use gl_vtable for glDeleteTextures
Julien Isorce [Thu, 26 Sep 2013 13:43:19 +0000 (14:43 +0100)]
[809/906] tests: port test_share to GLES2
Also add a deinit function to release fbo, tex and shader.
Matthew Waters [Tue, 3 Sep 2013 12:03:03 +0000 (22:03 +1000)]
[808/906] x11: remove dead code
Matthew Waters [Tue, 3 Sep 2013 11:49:18 +0000 (21:49 +1000)]
[807/906] context: Move some window error enums to context
Matthew Waters [Thu, 29 Aug 2013 14:28:04 +0000 (00:28 +1000)]
[806/906] egl: doesn't require the EGLConfig from the other context
libEGL should give us the same or similar EGLConfig from the
EGLDisplay we have.
Matthew Waters [Thu, 29 Aug 2013 14:22:31 +0000 (00:22 +1000)]
[805/906] glfilter: rename external-opengl-context prop to other-context
It now requires a GstGLContext instead of a handle
Julien Isorce [Fri, 30 Aug 2013 14:53:41 +0000 (15:53 +0100)]
[804/906] rpi: call bcm_host_init in plugin_init
Julien Isorce [Fri, 30 Aug 2013 13:12:37 +0000 (14:12 +0100)]
[803/906] raspberrypi: add support for dispmanx
See https://bugzilla.gnome.org/show_bug.cgi?id=703342
Matthew Waters [Thu, 29 Aug 2013 10:12:27 +0000 (20:12 +1000)]
[802/906] add GstGLContext test that tests context sharing
Matthew Waters [Thu, 29 Aug 2013 10:10:42 +0000 (20:10 +1000)]
[801/906] context: Reimplement GL context sharing
https://bugzilla.gnome.org/show_bug.cgi?id=704806
Julien Isorce [Wed, 28 Aug 2013 09:32:29 +0000 (10:32 +0100)]
[800/906] glimagesink: avoid to draw texture while releasing stored buffer
Spoted by generic/cube example with ClientDrawCallback set to
returning TRUE (it means drawing as fast as possible)
Julien Isorce [Wed, 28 Aug 2013 09:07:24 +0000 (10:07 +0100)]
[799/906] glimagesink: fix asynchrone drawing
Simplify gst_glimage_sink_redisplay which is there
only to ask the window for a redraw.
Put a lock to make sure we are not realeasing
the stored buffer while still drawing the corresponding
texture
Matthew Waters [Wed, 21 Aug 2013 14:29:36 +0000 (00:29 +1000)]
[798/906] build: install needed header
Matthew Waters [Wed, 21 Aug 2013 05:40:52 +0000 (15:40 +1000)]
[797/906] x11: fix build for clang
Matthew Waters [Wed, 21 Aug 2013 04:05:56 +0000 (14:05 +1000)]
[796/906] move egl into its own directory
Matthew Waters [Wed, 21 Aug 2013 03:57:56 +0000 (13:57 +1000)]
[795/906] android: port to GstGLContext
not tested
Matthew Waters [Thu, 15 Aug 2013 07:09:04 +0000 (17:09 +1000)]
[794/906] context: add subclasses for the different platforms (egl, glx, wgl, etc)
- most code taken from the Window subclasses
- tested combinations: xEGL, GLX, Wayland+EGL, Cocoa (under GNUStep), WGL (Wine)
Matthew Waters [Wed, 14 Aug 2013 00:44:19 +0000 (10:44 +1000)]
[793/906] add a GstGLContext object that will be the basis of OpenGL contexts
At the moment it just sits in between GstGLDisplay and GstGLWindow
performing some of the stuff that GstGLWindow used to do.
Matthew Waters [Tue, 13 Aug 2013 10:10:56 +0000 (20:10 +1000)]
[792/906] build: use our own in tree headers before system ones
allows us to develop against the tree rather than what may be installed
Julien Isorce [Fri, 16 Aug 2013 15:29:12 +0000 (16:29 +0100)]
[791/906] glwindow/x11: remove X11EventSource as soon as the window is deleted
gst_gl_window_x11_send_message do not use XSendEvent anymore
Julien Isorce [Fri, 16 Aug 2013 14:26:28 +0000 (15:26 +0100)]
[790/906] glimagesink: retrieve window only when clientDrawCallback return true
Sebastian Dröge [Wed, 7 Aug 2013 15:11:59 +0000 (17:11 +0200)]
[789/906] egl: Create a window surface if necessary
Tonu Jaansoo [Wed, 7 Aug 2013 09:46:49 +0000 (11:46 +0200)]
[788/906] osx: Fix compilation
Tonu Jaansoo [Wed, 7 Aug 2013 09:42:46 +0000 (11:42 +0200)]
[787/906] gl: The GLSL rectangle resampler does not always work with int tex coords
Use floats instead.
Sebastian Dröge [Wed, 24 Jul 2013 11:35:27 +0000 (13:35 +0200)]
[786/906] glprototypes: Add support for NV extensions for DrawBuffers and ReadBuffer
Sebastian Dröge [Wed, 24 Jul 2013 11:34:20 +0000 (13:34 +0200)]
[785/906] egl: Use EGL_KHR_surfaceless_context instead of creating a useless surface if available
Julien Isorce [Mon, 22 Jul 2013 18:00:42 +0000 (19:00 +0100)]
[784/906] gloverlay: add G_BEGIN/END declaration
Sebastian Dröge [Fri, 19 Jul 2013 14:28:20 +0000 (16:28 +0200)]
[783/906] glimagesink: Fix format string warning
Sebastian Dröge [Fri, 19 Jul 2013 08:07:54 +0000 (10:07 +0200)]
[782/906] gldownload: Use strlen() instead of sizeof(char*)
gstgldownload.c:846:22: error: argument to 'sizeof' in 'memcpy' call is the same expression as the source; did you mean to provide an explicit length? [-Werror=sizeof-pointer-memaccess]
Matthew Waters [Fri, 19 Jul 2013 06:48:03 +0000 (16:48 +1000)]
[781/906] download: propogate errors from the GL thread
Matthew Waters [Thu, 18 Jul 2013 10:21:57 +0000 (20:21 +1000)]
[780/906] up/download: check return values
So we fail properly
Matthew Waters [Thu, 18 Jul 2013 09:37:32 +0000 (19:37 +1000)]
[779/906] download: remove _thread variants of the API
Matthew Waters [Thu, 18 Jul 2013 09:36:27 +0000 (19:36 +1000)]
[778/906] upload: remove _thread variants of the API
Matthew Waters [Thu, 18 Jul 2013 09:17:18 +0000 (19:17 +1000)]
[777/906] upload: overhaul and addition of new video formats
use the shaders from eglglessink (adapted for Desktop GL)
error out properly
Matthew Waters [Wed, 17 Jul 2013 11:17:03 +0000 (21:17 +1000)]
[776/906] download: fix compiler warning about missing string format
Sebastian Dröge [Fri, 19 Jul 2013 07:20:09 +0000 (09:20 +0200)]
[775/906] configure: Check for GLeglImageOES and others again
https://bugzilla.gnome.org/show_bug.cgi?id=704498
Sebastian Dröge [Thu, 18 Jul 2013 18:26:44 +0000 (20:26 +0200)]
[774/906] win32: Fix some compiler errors/warnings
Mathieu Duponchelle [Wed, 17 Jul 2013 23:42:31 +0000 (01:42 +0200)]
[773/906] glfilters: Mark writable-only properties as readable as well
https://bugzilla.gnome.org/show_bug.cgi?id=704429
Mathieu Duponchelle [Wed, 17 Jul 2013 23:41:05 +0000 (01:41 +0200)]
[772/906] glfilters: Mark them as Video filters in their classification
It makes it possible for applications like pitivi to
use them.
https://bugzilla.gnome.org/show_bug.cgi?id=704429
Sebastian Dröge [Wed, 17 Jul 2013 09:22:02 +0000 (11:22 +0200)]
[771/906] gl: Some less long/ulong/gulong usage
Mathieu Duponchelle [Tue, 16 Jul 2013 16:28:33 +0000 (18:28 +0200)]
[770/906] tests/examples: port some of the examples.
This commit is a first step, removes glupload, switch new-decoded-pad
to pad-added, but these examples still fail for various reasons.
Mathieu Duponchelle [Tue, 16 Jul 2013 16:27:07 +0000 (18:27 +0200)]
[769/906] tests/examples: fix and port some of the examples.
Realize widgets, remove glupload element.
Sebastian Dröge [Tue, 16 Jul 2013 14:17:11 +0000 (16:17 +0200)]
[768/906] gltestsrc: Fix usage of FBO API
Sebastian Dröge [Tue, 16 Jul 2013 12:22:53 +0000 (14:22 +0200)]
[767/906] glimagesink: Remove GValue usage for fraction handling
Matthew Waters [Thu, 4 Jul 2013 00:01:52 +0000 (10:01 +1000)]
[766/906] utils: generate a RGBA texture in all cases
Matthew Waters [Wed, 3 Jul 2013 11:01:25 +0000 (21:01 +1000)]
[765/906] wayland: remove fullscreen
Matthew Waters [Wed, 3 Jul 2013 04:37:13 +0000 (14:37 +1000)]
[764/906] filter: fix pad template caps
upload is for the sink template
download is form the src template
Matthew Waters [Wed, 3 Jul 2013 04:13:00 +0000 (14:13 +1000)]
[763/906] memory: copy properly depending on where the most recent data is
Sebastian Dröge [Tue, 16 Jul 2013 12:11:46 +0000 (14:11 +0200)]
[762/906] glimagesink: Fix some memory leaks and properly set up the buffer pool
Sebastian Dröge [Tue, 16 Jul 2013 11:28:19 +0000 (13:28 +0200)]
[761/906] x11: Protect event display connection with a mutex
We use it from different threads and need to serialize the
accesses to it.
Sebastian Dröge [Tue, 16 Jul 2013 11:23:54 +0000 (13:23 +0200)]
[760/906] x11: Always use the same display connection from the GL thread
The other display connection might be used by async calls from elsewhere
at the same time.
https://bugzilla.gnome.org/show_bug.cgi?id=704247
Sebastian Dröge [Mon, 15 Jul 2013 19:44:20 +0000 (21:44 +0200)]
[759/906] gldownload: #ifdef some GLES2 specific code to fix compilation
Sebastian Dröge [Mon, 15 Jul 2013 16:07:12 +0000 (18:07 +0200)]
[758/906] android: Don't require a window to be set
This allows the filters to be usable without a GL sink downstream.
Sebastian Dröge [Mon, 15 Jul 2013 16:01:55 +0000 (18:01 +0200)]
[757/906] egl: Create an offscreen surface if no window was provided
Sebastian Dröge [Mon, 15 Jul 2013 15:20:00 +0000 (17:20 +0200)]
[756/906] gldownload: Reset the viewport after download RGB via GLES2
Sebastian Dröge [Mon, 15 Jul 2013 15:11:59 +0000 (17:11 +0200)]
[755/906] gldownload: Unbind framebuffer after downloading RGB with GLES2
Sebastian Dröge [Mon, 15 Jul 2013 15:08:42 +0000 (17:08 +0200)]
[754/906] gldownload: Add support for RGB reordering when using GLES2
Sebastian Dröge [Mon, 15 Jul 2013 15:08:23 +0000 (17:08 +0200)]
[753/906] gldisplay: Sending a message is synchronous, we can allocate the memory on the stack
Sebastian Dröge [Mon, 15 Jul 2013 13:58:04 +0000 (15:58 +0200)]
[752/906] glwindow: Add destroy notifies for the data of the callbacks
And actually call the close callback when the window is closed.
Sebastian Dröge [Mon, 15 Jul 2013 13:25:57 +0000 (15:25 +0200)]
[751/906] gldisplay: Don't hold lock while sending a message to the GL thread
https://bugzilla.gnome.org/show_bug.cgi?id=704247
Sebastian Dröge [Mon, 15 Jul 2013 12:11:20 +0000 (14:11 +0200)]
[750/906] glupload: Add support for RGB reordering when using GLES2
Sebastian Dröge [Mon, 15 Jul 2013 05:39:07 +0000 (07:39 +0200)]
[749/906] glshader: Add some more debug output
Sebastian Dröge [Fri, 12 Jul 2013 12:31:48 +0000 (14:31 +0200)]
[748/906] glupload: GL_STENCIL_ATTACHMENT is needed for desktop GL, not GLES
Sebastian Dröge [Fri, 12 Jul 2013 12:26:58 +0000 (14:26 +0200)]
[747/906] gl: Constify YUV conversion shaders
Sebastian Dröge [Fri, 12 Jul 2013 12:20:41 +0000 (14:20 +0200)]
[746/906] android: Add comment to clarify the type of a variable
Sebastian Dröge [Fri, 12 Jul 2013 12:20:05 +0000 (14:20 +0200)]
[745/906] gl: Simplify and optimize YUV conversion shaders a bit
Sebastian Dröge [Fri, 12 Jul 2013 09:35:52 +0000 (11:35 +0200)]
[744/906] gl: Use __GST_GL_H__ instead of __GL_H__ as a multi-include guard
GL/gl.h might use the latter already.
Sebastian Dröge [Thu, 11 Jul 2013 19:30:53 +0000 (21:30 +0200)]
[743/906] win32: Allow setting window handle before creating the context
Sebastian Dröge [Thu, 11 Jul 2013 19:22:57 +0000 (21:22 +0200)]
[742/906] cocoa: Allow setting window handle before creating the context
Sebastian Dröge [Thu, 11 Jul 2013 19:17:42 +0000 (21:17 +0200)]
[741/906] wayland: Don't leak main context and loop
Sebastian Dröge [Thu, 11 Jul 2013 19:15:41 +0000 (21:15 +0200)]
[740/906] x11: Allow setting window handle before creating the context
Sebastian Dröge [Thu, 11 Jul 2013 18:58:36 +0000 (20:58 +0200)]
[739/906] x11: Don't leak main context and main loop
Sebastian Dröge [Thu, 11 Jul 2013 18:51:47 +0000 (20:51 +0200)]
[738/906] gl: Include glu.h after gl.h
Sebastian Dröge [Thu, 11 Jul 2013 14:21:00 +0000 (16:21 +0200)]
[737/906] glimagesink: Request and set the window handle much earlier
Sebastian Dröge [Thu, 11 Jul 2013 14:05:48 +0000 (16:05 +0200)]
[736/906] glimagesink: Give MARGINAL rank to be able to autoplug it if nothing else is available
Sebastian Dröge [Wed, 10 Jul 2013 09:31:17 +0000 (11:31 +0200)]
[735/906] gl: Add support for Android
https://bugzilla.gnome.org/show_bug.cgi?id=703340
Sebastian Dröge [Thu, 11 Jul 2013 09:37:17 +0000 (11:37 +0200)]
[734/906] win32: Make automake happy by using noinst_HEADERS
Sebastian Dröge [Thu, 11 Jul 2013 09:03:31 +0000 (11:03 +0200)]
[733/906] gl: Major header and include cleanup
Julien Isorce [Wed, 10 Jul 2013 15:03:04 +0000 (16:03 +0100)]
[732/906] build: fix repeated typedefs
Write forward declarations in another way to avoid
repeated typedefs "error: redefinition of typedef".
Raised when using i686-apple-darwin11-llvm-gcc-4.2
It seems that C apple compiler does not support
C11 feature.
https://bugzilla.gnome.org/show_bug.cgi?id=703885
Julien Isorce [Wed, 10 Jul 2013 14:47:23 +0000 (15:47 +0100)]
[731/906] cocoa: fix build when GNUSTEP is not defined
Sebastian Dröge [Wed, 10 Jul 2013 09:30:16 +0000 (11:30 +0200)]
[730/906] glcompat: Properly check for GLchar and other types
On Android for example these are no #defines but typedefs
Sebastian Dröge [Wed, 10 Jul 2013 09:24:34 +0000 (11:24 +0200)]
[729/906] gl: Include config.h everywhere
Matthew Waters [Wed, 3 Jul 2013 04:13:56 +0000 (14:13 +1000)]
[728/906] glimagesink: fix for gles2
https://bugzilla.gnome.org/show_bug.cgi?id=703508
Sebastian Dröge [Wed, 3 Jul 2013 07:12:39 +0000 (09:12 +0200)]
[727/906] egl: Refactor EGL logic into a helper object
Matthew Waters [Tue, 2 Jul 2013 12:45:08 +0000 (22:45 +1000)]
[726/906] window: don't call a NULL destroy function
Matthew Waters [Tue, 2 Jul 2013 12:06:03 +0000 (22:06 +1000)]
[725/906] x11: use GMainContext/GMainLoop
allows us to be reentrant
https://bugzilla.gnome.org/show_bug.cgi?id=703445
Matthew Waters [Tue, 2 Jul 2013 08:33:42 +0000 (18:33 +1000)]
[724/906] wayland: make reentrant
https://bugzilla.gnome.org/show_bug.cgi?id=703445
Julien Isorce [Mon, 1 Jul 2013 13:43:14 +0000 (14:43 +0100)]
[723/906] gstglwindow: close has to be called in the glthread.
Indeed 'glXMakeCurrent (window_x11->device, None, NULL);'
has to be called in the thread where the glcontext is actually
current.
Otherwise glXDestroyContext may crash.
Руслан Ижбулатов [Sun, 30 Jun 2013 21:36:35 +0000 (01:36 +0400)]
[722/906] gl: Fix build on Win32
1) Need to include GL/glext.h on W32 to provide necessary macros
2) W32 macros that pre-processor has by default are different for different
toolchains. Borland uses __WIN32__, everyone else has _WIN32, so check both.
Side-note: glext.h is not supplied by mingw-w64 at the moment, but can be
downloaded from http://www.opengl.org/registry/
https://bugzilla.gnome.org/show_bug.cgi?id=703364