platform/upstream/gstreamer.git
6 years ago[701/906] display: move context creation into window
Matthew Waters [Wed, 12 Jun 2013 13:17:30 +0000 (23:17 +1000)]
[701/906] display: move context creation into window

6 years ago[700/906] display: move most of the code into utils for sorting later
Matthew Waters [Tue, 11 Jun 2013 15:04:55 +0000 (01:04 +1000)]
[700/906] display: move most of the code into utils for sorting later

This contains a hack that essentially requires one GstGLDisplay
per process.

6 years ago[699/906] display: remove list of upload and download objects
Matthew Waters [Tue, 11 Jun 2013 08:50:12 +0000 (18:50 +1000)]
[699/906] display: remove list of upload and download objects

and only create an up/download object when needed.

6 years ago[698/906] move sink-specific stuff from GstGLDisplay into glimagesink
Matthew Waters [Tue, 11 Jun 2013 02:26:50 +0000 (12:26 +1000)]
[698/906] move sink-specific stuff from GstGLDisplay into glimagesink

6 years ago[697/906] display: allow the user to try and choose the GL api we use via env variable
Matthew Waters [Tue, 11 Jun 2013 01:27:56 +0000 (11:27 +1000)]
[697/906] display: allow the user to try and choose the GL api we use via env variable

GST_GL_API=opengl,opengl3,gles2,gles3

6 years ago[696/906] glapi: fix memory leak from not freeing a string
Matthew Waters [Tue, 11 Jun 2013 01:26:38 +0000 (11:26 +1000)]
[696/906] glapi: fix memory leak from not freeing a string

6 years ago[695/906] build: remove libtool warning about -version-info not used in convenience...
Matthew Waters [Tue, 4 Jun 2013 12:18:51 +0000 (22:18 +1000)]
[695/906] build: remove libtool warning about -version-info not used in convenience libraries

6 years ago[693/906] x11_glx: ask for a 3.0 GL Context
Matthew Waters [Tue, 4 Jun 2013 12:16:00 +0000 (22:16 +1000)]
[693/906] x11_glx: ask for a 3.0 GL Context

(falling back if needed)

6 years ago[692/906] window_x11: add XError trapping
Matthew Waters [Mon, 3 Jun 2013 08:15:45 +0000 (18:15 +1000)]
[692/906] window_x11: add XError trapping

some functions in GLX can fail if the implementation does not support
certain features we ask for (i.e. GL 3) bringing down the entire
application

6 years ago[691/906] feature: make gst_gl_check_extension public
Matthew Waters [Mon, 3 Jun 2013 08:13:52 +0000 (18:13 +1000)]
[691/906] feature: make gst_gl_check_extension public

prevents duplication of code of extension string parsing in GstGLWindow's

6 years ago[690/906] windowx11glx: use fbconfigs if supported
Matthew Waters [Sun, 2 Jun 2013 11:47:17 +0000 (21:47 +1000)]
[690/906] windowx11glx: use fbconfigs if supported

6 years ago[688/906] display: properly shutdown if we error after context creation
Matthew Waters [Wed, 24 Apr 2013 04:25:21 +0000 (14:25 +1000)]
[688/906] display: properly shutdown if we error after context creation

The _finalize() code checks to see if the context was created before
attempting to destroy it.  We never did say that we had created the context.

6 years ago[685/906] filter: improve error handling
Matthew Waters [Wed, 24 Apr 2013 04:22:40 +0000 (14:22 +1000)]
[685/906] filter: improve error handling

6 years ago[684/906] display: lack of format-string causing a compiler warning
Matthew Waters [Wed, 24 Apr 2013 02:18:14 +0000 (12:18 +1000)]
[684/906] display: lack of format-string causing a compiler warning

6 years ago[683/906] feature: remove double free
Matthew Waters [Wed, 24 Apr 2013 02:17:36 +0000 (12:17 +1000)]
[683/906] feature: remove double free

6 years ago[681/906] win32: fix gl api calls on 32-bit
Matthew Waters [Sun, 2 Jun 2013 07:52:30 +0000 (07:52 +0000)]
[681/906] win32: fix gl api calls on 32-bit

win has the bright idea of having 5 different calling conventions.
we should probably use the right one so we don't crash from stack
corruption.

6 years ago[680/906] overlay: tentative port to new GstGLFuncs API
Matthew Waters [Sun, 10 Mar 2013 02:37:48 +0000 (13:37 +1100)]
[680/906] overlay: tentative port to new GstGLFuncs API

6 years ago[678/906] window_win32_wgl: implement wglGetProcAddress for extension functions
Matthew Waters [Sat, 9 Mar 2013 12:36:36 +0000 (23:36 +1100)]
[678/906] window_win32_wgl: implement wglGetProcAddress for extension functions

6 years ago[677/906] memory: fix GSIZE printf format on win32
Matthew Waters [Sat, 9 Mar 2013 11:53:41 +0000 (22:53 +1100)]
[677/906] memory: fix GSIZE printf format on win32

6 years ago[676/906] windwo_win32: port to new API
Matthew Waters [Sat, 9 Mar 2013 11:53:09 +0000 (22:53 +1100)]
[676/906] windwo_win32: port to new API

6 years ago[675/906] upload: provide nicer debugging
Matthew Waters [Sat, 9 Mar 2013 11:47:11 +0000 (22:47 +1100)]
[675/906] upload: provide nicer debugging

6 years ago[674/906] feature: try and catch more GL extension functions
Matthew Waters [Sat, 9 Mar 2013 11:45:23 +0000 (22:45 +1100)]
[674/906] feature: try and catch more GL extension functions

if we don't find the extension in core GL, try the extension version anyway

6 years ago[673/906] feature: add gstreamer license
Matthew Waters [Sat, 9 Mar 2013 11:37:34 +0000 (22:37 +1100)]
[673/906] feature: add gstreamer license

6 years ago[672/906] display: constify GstGLFuncs *gl
Matthew Waters [Sat, 9 Mar 2013 11:05:28 +0000 (22:05 +1100)]
[672/906] display: constify GstGLFuncs *gl

6 years ago[671/906] win32: #include GL/glext.h on windows
Matthew Waters [Sat, 9 Mar 2013 10:59:02 +0000 (21:59 +1100)]
[671/906] win32: #include GL/glext.h on windows

also add some GL default variables if some GL types are not defined

6 years ago[670/906] display: replace glib deprecated api
Matthew Waters [Mon, 18 Feb 2013 10:40:34 +0000 (21:40 +1100)]
[670/906] display: replace glib deprecated api

6 years ago[669/906] window: seperate object creation and context creation
Matthew Waters [Tue, 12 Feb 2013 12:48:36 +0000 (23:48 +1100)]
[669/906] window: seperate object creation and context creation

6 years ago[668/906] shader: fix gles2 segfault
Matthew Waters [Mon, 4 Feb 2013 10:30:51 +0000 (21:30 +1100)]
[668/906] shader: fix gles2 segfault

6 years ago[658/906] mixer: fix eos timestamp check
Matthew Waters [Thu, 31 Jan 2013 12:32:49 +0000 (23:32 +1100)]
[658/906] mixer: fix eos timestamp check

6 years ago[655/906] download: remove erronous ReadBuffer call
Matthew Waters [Thu, 17 Jan 2013 12:45:59 +0000 (23:45 +1100)]
[655/906] download: remove erronous ReadBuffer call

- it was causing segfaults in mesa
- we didn't set the readbuffer so we shouldn't reset it

6 years ago[652/906] bumper: port to non-GLEW + arrays
Matthew Waters [Thu, 17 Jan 2013 12:14:49 +0000 (23:14 +1100)]
[652/906] bumper: port to non-GLEW + arrays

6 years ago[651/906] up/download: fix some typos when removing GLEW
Matthew Waters [Thu, 17 Jan 2013 12:12:35 +0000 (23:12 +1100)]
[651/906] up/download: fix some typos when removing GLEW

6 years ago[650/906] filter: fix _draw_texture()'s wrong vertices
Matthew Waters [Wed, 16 Jan 2013 11:41:18 +0000 (22:41 +1100)]
[650/906] filter: fix _draw_texture()'s wrong vertices

6 years ago[647/906] remove dependecy on glew
Matthew Waters [Wed, 16 Jan 2013 04:21:44 +0000 (15:21 +1100)]
[647/906] remove dependecy on glew

6 years ago[646/906] some gl header fixes/additions
Matthew Waters [Sat, 12 Jan 2013 13:09:33 +0000 (00:09 +1100)]
[646/906] some gl header fixes/additions

6 years ago[645/906] fix gles2 compilation
Matthew Waters [Thu, 10 Jan 2013 02:32:16 +0000 (13:32 +1100)]
[645/906] fix gles2 compilation

6 years ago[644/906] update .gitignore for some new files
Matthew Waters [Wed, 9 Jan 2013 23:57:11 +0000 (10:57 +1100)]
[644/906] update .gitignore for some new files

6 years ago[643/906] display: privatise most of the struct
Matthew Waters [Wed, 9 Jan 2013 14:44:54 +0000 (01:44 +1100)]
[643/906] display: privatise most of the struct

6 years ago[642/906] add gstglconfig.h for apps to find out what our capabilites are
Matthew Waters [Wed, 9 Jan 2013 14:13:23 +0000 (01:13 +1100)]
[642/906] add gstglconfig.h for apps to find out what our capabilites are

ie libgstgl can be compiled with any combination of opengl/gles2

6 years ago[641/906] display: feature check for GL extension functions
Matthew Waters [Wed, 9 Jan 2013 13:30:03 +0000 (00:30 +1100)]
[641/906] display: feature check for GL extension functions

6 years ago[640/906] build: add missing file to built sources
Matthew Waters [Wed, 9 Jan 2013 13:25:06 +0000 (00:25 +1100)]
[640/906] build: add missing file to built sources

6 years ago[639/906] add get_proc_address implementations for egl and glx
Matthew Waters [Wed, 9 Jan 2013 13:23:32 +0000 (00:23 +1100)]
[639/906] add get_proc_address implementations for egl and glx

6 years ago[638/906] window: add get_proc_address + stub for retrieving gl functions
Matthew Waters [Tue, 8 Jan 2013 06:40:39 +0000 (17:40 +1100)]
[638/906] window: add get_proc_address + stub for retrieving gl functions

6 years ago[637/906] x11_egl: add prelim support for choosing opengl or gles
Matthew Waters [Tue, 8 Jan 2013 06:38:40 +0000 (17:38 +1100)]
[637/906] x11_egl: add prelim support for choosing opengl or gles

6 years ago[636/906] window_x11: compact debug info
Matthew Waters [Tue, 8 Jan 2013 06:36:18 +0000 (17:36 +1100)]
[636/906] window_x11: compact debug info

6 years ago[635/906] fixup compile errors
Matthew Waters [Mon, 7 Jan 2013 03:08:39 +0000 (14:08 +1100)]
[635/906] fixup compile errors

6 years ago[634/906] wayland egl: deactivate context before we destroy it
Matthew Waters [Wed, 19 Dec 2012 03:54:21 +0000 (14:54 +1100)]
[634/906] wayland egl: deactivate context before we destroy it

avoids a segfault with dri drivers

6 years ago[633/906] display: fail properly in context creation in order to minimize a race...
Matthew Waters [Wed, 19 Dec 2012 03:32:20 +0000 (14:32 +1100)]
[633/906] display: fail properly in context creation in order to minimize a race condition

previously, on context creation, when we failed to get a valid context
we would still atempt to run the window mainloop as well as setting an error
on the display. This would cause the calling element to finalize the display
and therefore attempt to quit the window mainloop.  However the mainloop
may not have started running.  Thus when the window mainloop ran it would
never a get a quit message and never end.

6 years ago[631/906] remove redefinition warnings in compiling tests
Matthew Waters [Tue, 18 Dec 2012 07:29:11 +0000 (18:29 +1100)]
[631/906] remove redefinition warnings in compiling tests

6 years ago[630/906] display: add gl api checking
Matthew Waters [Sat, 8 Dec 2012 22:32:48 +0000 (09:32 +1100)]
[630/906] display: add gl api checking

i.e. check for cases where the window wants a different API than
what the library was compiled with

6 years ago[629/906] window: add GError for error handling of context creation
Matthew Waters [Sat, 8 Dec 2012 22:30:48 +0000 (09:30 +1100)]
[629/906] window: add GError for error handling of context creation

6 years ago[627/906] shader: check for invalid objects
Matthew Waters [Fri, 7 Dec 2012 02:32:28 +0000 (13:32 +1100)]
[627/906] shader: check for invalid objects

6 years ago[625/906] add vtable for opengl functions
Matthew Waters [Thu, 6 Dec 2012 13:16:04 +0000 (00:16 +1100)]
[625/906] add vtable for opengl functions

The vtable provides the ability for one to compile (but not link)
against both OpenGL and GL|ES and starts the move away from GLEW

6 years ago[624/906] OPENGL_ES2 => HAVE_GLES2 and add HAVE_OPENGL
Matthew Waters [Thu, 6 Dec 2012 07:40:26 +0000 (18:40 +1100)]
[624/906] OPENGL_ES2 => HAVE_GLES2 and add HAVE_OPENGL

use GstGLAPI to determine which code paths to execute.
perform some cleanups

6 years ago[623/906] move GL includes into a single file
Matthew Waters [Thu, 6 Dec 2012 06:40:47 +0000 (17:40 +1100)]
[623/906] move GL includes into a single file

6 years ago[622/906] add missing GL_STENCIL_ATTACHMENT for gles2 compatability
Matthew Waters [Wed, 5 Dec 2012 06:23:21 +0000 (17:23 +1100)]
[622/906] add missing GL_STENCIL_ATTACHMENT for gles2 compatability

6 years ago[621/906] GstGLRendererAPI => GstGLAPI and get GstGLAPI from a window
Matthew Waters [Mon, 3 Dec 2012 04:04:49 +0000 (15:04 +1100)]
[621/906] GstGLRendererAPI => GstGLAPI and get GstGLAPI from a window

6 years ago[620/906] wayland_egl: attempt at resizing the video
Matthew Waters [Fri, 30 Nov 2012 06:09:21 +0000 (17:09 +1100)]
[620/906] wayland_egl: attempt at resizing the video

6 years ago[619/906] fix typo for win32 debug variables
Matthew Waters [Thu, 29 Nov 2012 02:06:24 +0000 (13:06 +1100)]
[619/906] fix typo for win32 debug variables

6 years ago[618/906] add wayland-egl window backend
Matthew Waters [Wed, 28 Nov 2012 14:01:59 +0000 (01:01 +1100)]
[618/906] add wayland-egl window backend

6 years ago[617/906] fix 'set but not used' compiler warnings
Matthew Waters [Mon, 19 Nov 2012 13:15:05 +0000 (00:15 +1100)]
[617/906] fix 'set but not used' compiler warnings

6 years ago[616/906] move window-specific code into seperate subfolders
Matthew Waters [Mon, 19 Nov 2012 11:54:19 +0000 (22:54 +1100)]
[616/906] move window-specific code into seperate subfolders

6 years ago[615/906] preliminary support for Win32 EGL
Matthew Waters [Mon, 19 Nov 2012 10:52:22 +0000 (21:52 +1100)]
[615/906] preliminary support for Win32 EGL

6 years ago[614/906] try GLX first when using ANY | OPENGL | OPENGL3
Matthew Waters [Sat, 17 Nov 2012 14:23:52 +0000 (01:23 +1100)]
[614/906] try GLX first when using ANY | OPENGL | OPENGL3

6 years ago[613/906] window_cocoa: fix segfault with gst-launch-1.0 -e ... and sending SIGINT...
Matthew Waters [Sat, 17 Nov 2012 14:16:44 +0000 (01:16 +1100)]
[613/906] window_cocoa: fix segfault with gst-launch-1.0 -e ... and sending SIGINT (Ctrl-C)

GNUstep has a signal handler for SIGINT which runs in the main thread.
However that thread has never been 'registered' with GNUstep so
the autorelease magic of objective-c causes a segfault from accessing
a null NSThread object somewhere deep in GNUstep.

6 years ago[612/906] remove GNUstep makefiles
Matthew Waters [Fri, 16 Nov 2012 07:01:08 +0000 (18:01 +1100)]
[612/906] remove GNUstep makefiles

6 years ago[611/906] cocoa port of determining gl platform at runtime
Matthew Waters [Fri, 16 Nov 2012 06:13:03 +0000 (17:13 +1100)]
[611/906] cocoa port of determining gl platform at runtime

6 years ago[610/906] WindowX11EGL: remove get_platform call
Matthew Waters [Thu, 15 Nov 2012 10:46:21 +0000 (21:46 +1100)]
[610/906] WindowX11EGL: remove get_platform call

6 years ago[609/906] win32 port of determining GL platform at runtime
Matthew Waters [Thu, 15 Nov 2012 02:17:59 +0000 (13:17 +1100)]
[609/906] win32 port of determining GL platform at runtime

- add GstGLWindowWin32 and GstGLWindowWin32WGL along the same lines as the
  X11 variants

6 years ago[608/906] add GST_GL_PLATFORM_ANY for choosing any platform
Matthew Waters [Wed, 14 Nov 2012 09:39:38 +0000 (20:39 +1100)]
[608/906] add GST_GL_PLATFORM_ANY for choosing any platform

6 years ago[607/906] remove get_platform and get_window_handle vfuncs
Matthew Waters [Wed, 14 Nov 2012 09:36:16 +0000 (20:36 +1100)]
[607/906] remove get_platform and get_window_handle vfuncs

- rename choose_visual() to choose_format() for later incorporating
  win32 changes and new GstGLPlatform for WGL, EGL, GLX, etc.

6 years ago[606/906] determine the GL platform to use at runtime
Matthew Waters [Tue, 13 Nov 2012 11:12:20 +0000 (22:12 +1100)]
[606/906] determine the GL platform to use at runtime

- Make GstGLWindow subclassablerather than specified at compile time.
- Add GstGLWindowX11 for x11 windows and two subclasses, GstGLWindowX11GLX
  and GstGLWindwX11EGL for GLX and EGL repectively. (win32 and cocoa
  ports to come)
- Also cleanup GL library detection in configure.ac

6 years ago[605/906] shader: move to gst debugging
Matthew Waters [Sun, 2 Dec 2012 03:58:14 +0000 (14:58 +1100)]
[605/906] shader: move to gst debugging

6 years ago[603/906] update FSF address
Matthew Waters [Thu, 8 Nov 2012 11:53:56 +0000 (22:53 +1100)]
[603/906] update FSF address

6 years ago[601/906] fix typo causing shader compilation failure for uploading I420
Matthew Waters [Wed, 10 Oct 2012 13:24:51 +0000 (00:24 +1100)]
[601/906] fix typo causing shader compilation failure for uploading I420

6 years ago[600/906] docs: add docs for new objects and expand on some existing ones
Matthew Waters [Thu, 27 Sep 2012 05:53:46 +0000 (15:53 +1000)]
[600/906] docs: add docs for new objects and expand on some existing ones

6 years ago[599/906] GL|ES2: fix typos from recent changes and make downloading RGB formats...
Matthew Waters [Wed, 26 Sep 2012 07:18:53 +0000 (07:18 +0000)]
[599/906] GL|ES2: fix typos from recent changes and make downloading RGB formats work again

6 years ago[594/906] filter: update for up/download API changes and scaling fixes
Matthew Waters [Tue, 25 Sep 2012 07:59:27 +0000 (17:59 +1000)]
[594/906] filter: update for up/download API changes and scaling fixes

6 years ago[592/906] memory: update for up/download API changes
Matthew Waters [Tue, 25 Sep 2012 06:01:54 +0000 (16:01 +1000)]
[592/906] memory: update for up/download API changes

6 years ago[591/906] mixer: save the upload object instead of querying for it every frame
Matthew Waters [Tue, 25 Sep 2012 06:00:48 +0000 (16:00 +1000)]
[591/906] mixer: save the upload object instead of querying for it every frame

6 years ago[590/906] up/download: fix scaling on transfer
Matthew Waters [Tue, 25 Sep 2012 05:20:21 +0000 (15:20 +1000)]
[590/906] up/download: fix scaling on transfer

i.e. uploading from a 10x10 video frame to a 20x20 texture into another 30x30 videoframe

6 years ago[587/906] mixer: mirror the changes done for filter
Matthew Waters [Thu, 20 Sep 2012 13:27:00 +0000 (23:27 +1000)]
[587/906] mixer: mirror the changes done for filter

6 years ago[586/906] fix up some debug statements to get them into the right categories
Matthew Waters [Thu, 20 Sep 2012 13:21:19 +0000 (23:21 +1000)]
[586/906] fix up some debug statements to get them into the right categories

6 years ago[583/906] deinterlace: change for new API
Matthew Waters [Thu, 20 Sep 2012 13:06:49 +0000 (23:06 +1000)]
[583/906] deinterlace: change for new API

also allow elements to call the _filter_texture vfunc if they want

6 years ago[581/906] filter: add seperate filter function for operating on textures instead...
Matthew Waters [Tue, 18 Sep 2012 14:32:30 +0000 (00:32 +1000)]
[581/906] filter: add seperate filter function for operating on textures instead of buffers

6 years ago[580/906] bufferpool: remove obselete gl meta buffer pool options
Matthew Waters [Tue, 18 Sep 2012 14:29:57 +0000 (00:29 +1000)]
[580/906] bufferpool: remove obselete gl meta buffer pool options

6 years ago[579/906] download: fix YV12 format
Matthew Waters [Tue, 18 Sep 2012 11:42:24 +0000 (21:42 +1000)]
[579/906] download: fix YV12 format

same as I420 but plane 1+2 swapped

6 years ago[578/906] {up,down}load: add variants that can be called in the gl thread
Matthew Waters [Tue, 18 Sep 2012 11:39:21 +0000 (21:39 +1000)]
[578/906] {up,down}load: add variants that can be called in the gl thread

6 years ago[576/906] remove uneeded GstGLMeta (use GstVideoMeta)
Matthew Waters [Mon, 17 Sep 2012 00:30:01 +0000 (10:30 +1000)]
[576/906] remove uneeded GstGLMeta (use GstVideoMeta)

6 years ago[575/906] filter: port to new upload/download
Matthew Waters [Sun, 16 Sep 2012 11:42:08 +0000 (21:42 +1000)]
[575/906] filter: port to new upload/download

6 years ago[574/906] memory: implement transperent upload/download for data
Matthew Waters [Sun, 16 Sep 2012 11:36:09 +0000 (21:36 +1000)]
[574/906] memory: implement transperent upload/download for data

(not async yet)

6 years ago[573/906] add upload and download library objects
Matthew Waters [Sun, 16 Sep 2012 11:23:09 +0000 (21:23 +1000)]
[573/906] add upload and download library objects

allows multiple upload pipelines that previously wasn't possible
 (i.e. upload RGB and I420 and ... on the same GstGLDisplay)

6 years ago[571/906] mixer: fix deadlock on shutdown
Matthew Waters [Wed, 5 Sep 2012 04:58:38 +0000 (14:58 +1000)]
[571/906] mixer: fix deadlock on shutdown

didn't reiterate over the sinkpad's displays and reactivate them causing a deadlock

6 years ago[568/906] window: fix public definitions
Matthew [Mon, 27 Aug 2012 14:08:16 +0000 (14:08 +0000)]
[568/906] window: fix public definitions

6 years ago[567/906] fix OpenGL|ES2 ifdef'ed code
Matthew [Mon, 27 Aug 2012 14:07:31 +0000 (14:07 +0000)]
[567/906] fix OpenGL|ES2 ifdef'ed code

6 years ago[564/906] glmemory: remove unused typedef
Matthew Waters [Wed, 15 Aug 2012 11:37:01 +0000 (21:37 +1000)]
[564/906] glmemory: remove unused typedef

6 years ago[563/906] readd support for hanging GL pipelines e.g. ... ! gleffects ! fakesink
Matthew Waters [Wed, 15 Aug 2012 06:52:48 +0000 (16:52 +1000)]
[563/906] readd support for hanging GL pipelines e.g. ... ! gleffects ! fakesink

6 years ago[562/906] gldisplay: fix download of YUV formats
Matthew Waters [Wed, 15 Aug 2012 05:35:46 +0000 (15:35 +1000)]
[562/906] gldisplay: fix download of YUV formats

6 years ago[561/906] gldisplay: fix endianess issues on RGB download
Matthew Waters [Tue, 14 Aug 2012 13:55:14 +0000 (23:55 +1000)]
[561/906] gldisplay: fix endianess issues on RGB download

6 years ago[559/906] glmixer: pass the mixpad's display to the querying element
Matthew Waters [Mon, 13 Aug 2012 16:05:13 +0000 (02:05 +1000)]
[559/906] glmixer: pass the mixpad's display to the querying element