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
Matthew Waters [Thu, 6 Dec 2012 06:40:47 +0000 (17:40 +1100)]
[623/906] move GL includes into a single file
Matthew Waters [Wed, 5 Dec 2012 06:23:21 +0000 (17:23 +1100)]
[622/906] add missing GL_STENCIL_ATTACHMENT for gles2 compatability
Matthew Waters [Mon, 3 Dec 2012 04:04:49 +0000 (15:04 +1100)]
[621/906] GstGLRendererAPI => GstGLAPI and get GstGLAPI from a window
Matthew Waters [Fri, 30 Nov 2012 06:09:21 +0000 (17:09 +1100)]
[620/906] wayland_egl: attempt at resizing the video
Matthew Waters [Thu, 29 Nov 2012 02:06:24 +0000 (13:06 +1100)]
[619/906] fix typo for win32 debug variables
Matthew Waters [Wed, 28 Nov 2012 14:01:59 +0000 (01:01 +1100)]
[618/906] add wayland-egl window backend
Matthew Waters [Mon, 19 Nov 2012 13:15:05 +0000 (00:15 +1100)]
[617/906] fix 'set but not used' compiler warnings
Matthew Waters [Mon, 19 Nov 2012 11:54:19 +0000 (22:54 +1100)]
[616/906] move window-specific code into seperate subfolders
Matthew Waters [Mon, 19 Nov 2012 10:52:22 +0000 (21:52 +1100)]
[615/906] preliminary support for Win32 EGL
Matthew Waters [Sat, 17 Nov 2012 14:23:52 +0000 (01:23 +1100)]
[614/906] try GLX first when using ANY | OPENGL | OPENGL3
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.
Matthew Waters [Fri, 16 Nov 2012 07:01:08 +0000 (18:01 +1100)]
[612/906] remove GNUstep makefiles
Matthew Waters [Fri, 16 Nov 2012 06:13:03 +0000 (17:13 +1100)]
[611/906] cocoa port of determining gl platform at runtime
Matthew Waters [Thu, 15 Nov 2012 10:46:21 +0000 (21:46 +1100)]
[610/906] WindowX11EGL: remove get_platform call
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
Matthew Waters [Wed, 14 Nov 2012 09:39:38 +0000 (20:39 +1100)]
[608/906] add GST_GL_PLATFORM_ANY for choosing any platform
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.
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
Matthew Waters [Sun, 2 Dec 2012 03:58:14 +0000 (14:58 +1100)]
[605/906] shader: move to gst debugging
Matthew Waters [Thu, 8 Nov 2012 11:53:56 +0000 (22:53 +1100)]
[603/906] update FSF address
Matthew Waters [Wed, 10 Oct 2012 13:24:51 +0000 (00:24 +1100)]
[601/906] fix typo causing shader compilation failure for uploading I420
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
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
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
Matthew Waters [Tue, 25 Sep 2012 06:01:54 +0000 (16:01 +1000)]
[592/906] memory: update for up/download API changes
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
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
Matthew Waters [Thu, 20 Sep 2012 13:27:00 +0000 (23:27 +1000)]
[587/906] mixer: mirror the changes done for filter
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
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
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
Matthew Waters [Tue, 18 Sep 2012 14:29:57 +0000 (00:29 +1000)]
[580/906] bufferpool: remove obselete gl meta buffer pool options
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
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
Matthew Waters [Mon, 17 Sep 2012 00:30:01 +0000 (10:30 +1000)]
[576/906] remove uneeded GstGLMeta (use GstVideoMeta)
Matthew Waters [Sun, 16 Sep 2012 11:42:08 +0000 (21:42 +1000)]
[575/906] filter: port to new upload/download
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)
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)
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
Matthew [Mon, 27 Aug 2012 14:08:16 +0000 (14:08 +0000)]
[568/906] window: fix public definitions
Matthew [Mon, 27 Aug 2012 14:07:31 +0000 (14:07 +0000)]
[567/906] fix OpenGL|ES2 ifdef'ed code
Matthew Waters [Wed, 15 Aug 2012 11:37:01 +0000 (21:37 +1000)]
[564/906] glmemory: remove unused typedef
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
Matthew Waters [Wed, 15 Aug 2012 05:35:46 +0000 (15:35 +1000)]
[562/906] gldisplay: fix download of YUV formats
Matthew Waters [Tue, 14 Aug 2012 13:55:14 +0000 (23:55 +1000)]
[561/906] gldisplay: fix endianess issues on RGB download
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
Matthew Waters [Fri, 10 Aug 2012 05:31:20 +0000 (15:31 +1000)]
[555/906] Make the query for a GstGLDisplay a pad peer query
Allows the query to pass through bin boundaries and makes it possible for
arbitrary gl elements to be placed in bins.
Matthew Waters [Wed, 8 Aug 2012 06:08:40 +0000 (16:08 +1000)]
[554/906] GstGLMemory: update for GstAllocator API changes
Matthew Waters [Thu, 12 Jul 2012 15:04:22 +0000 (01:04 +1000)]
[544/906] fix memory leaks from not g_free()ing string returned by gst_element_get_name
Matthew Waters [Thu, 12 Jul 2012 08:22:01 +0000 (18:22 +1000)]
[543/906] GstGLDisplay: fix segfault from GST_PTR_FORMAT trying to expand the object
Matthew Waters [Thu, 12 Jul 2012 08:19:44 +0000 (18:19 +1000)]
[542/906] GstGLMixer: add allocation and bufferpool methods
based off GstBaseTransform
Matthew Waters [Mon, 9 Jul 2012 12:27:48 +0000 (22:27 +1000)]
[532/906] GstGLFilter: implement allocation vfuncs
Matthew Waters [Mon, 9 Jul 2012 06:13:39 +0000 (16:13 +1000)]
[528/906] GstGLMeta: seperate upload/download/normal GL caps video formats
differentiate between upload, download and GL caps
Matthew Waters [Mon, 9 Jul 2012 06:12:53 +0000 (16:12 +1000)]
[527/906] GstGLDisplay: add some trace debugging
Matthew Waters [Sat, 7 Jul 2012 15:49:06 +0000 (01:49 +1000)]
[524/906] GstGLDisplay: rework the download code
data paramaters now take GstVideoFrame
remove redundant parameters
Matthew Waters [Sat, 7 Jul 2012 15:10:40 +0000 (01:10 +1000)]
[522/906] GstGLDisplay: add forgotten function definition
Matthew Waters [Sat, 7 Jul 2012 15:09:56 +0000 (01:09 +1000)]
[521/906] GstGLMemory: update for GstAllocator changes
Matthew Waters [Sat, 7 Jul 2012 12:56:33 +0000 (22:56 +1000)]
[520/906] GstGLMixer: fix for GstChildProxy changes
Matthew Waters [Fri, 6 Jul 2012 09:05:03 +0000 (19:05 +1000)]
[517/906] add GstGLBufferPool
which adds GstGLMeta to buffers
Matthew Waters [Fri, 6 Jul 2012 08:57:39 +0000 (18:57 +1000)]
[516/906] add skeleton GstGLMeta
the GstVideoMeta _map/unmap functions still need implementing
Matthew Waters [Fri, 6 Jul 2012 08:51:02 +0000 (18:51 +1000)]
[515/906] GstGLDisplay: rework gen_texture and upload
rename functions so that other code can create textures in the GL thread
change upload functions to take a GstVideoFrame
default to GLSL for upload conversion
Matthew Waters [Fri, 6 Jul 2012 08:22:22 +0000 (18:22 +1000)]
[514/906] add GstGLMemory and allocator
implement custom GstMemory for GL textures
currently map/unmap returns NULL although it might be favourable to upload/download/cache the image data
Matthew Waters [Tue, 19 Jun 2012 08:40:28 +0000 (18:40 +1000)]
[513/906] Remove GstGLBuffer (to be replaced by GstGLMeta)
Matthew Waters [Tue, 19 Jun 2012 05:54:24 +0000 (15:54 +1000)]
[512/906] GstGLMixer: update for 1.0 based on the videomixer2 element in -good
Matthew Waters [Tue, 5 Jun 2012 09:10:19 +0000 (19:10 +1000)]
[509/906] GstGLDisplay: update for 1.0
Matthew Waters [Sun, 3 Jun 2012 10:40:53 +0000 (20:40 +1000)]
[504/906] GstGLFilter: update for 1.0
-fix up function definitions
-remove _prepare_output_buffer (functionality taken over by GstBufferPool).
Matthew Waters [Wed, 30 May 2012 03:46:21 +0000 (13:46 +1000)]
[503/906] Rename GST_BOILERPLATE_* to G_DEFINE_TYPE_* and move _base_init into _class_init
Matthew Waters [Tue, 29 May 2012 07:55:44 +0000 (17:55 +1000)]
[502/906] Update versioning for gstreamer 1.0
Renames GST_MAJORMINOR to GST_API_VERSION in build files
removes -lgstinterfaces from _LDADD flags
Raimo Järvi [Sun, 20 May 2012 15:45:06 +0000 (18:45 +0300)]
[501/906] Fix building on 64 bit mingw-w64
https://bugzilla.gnome.org/show_bug.cgi?id=676428
Julien Isorce [Fri, 20 Apr 2012 10:33:38 +0000 (12:33 +0200)]
[500/906] gldisplay: do not call glCheckFramebufferStatus if 0 is bound
Indeed it may return GL_FRAMEBUFFER_UNDEFINED if there is no
default framebuffer.
It seems to be the case on MacOSX
Julien Isorce [Fri, 20 Apr 2012 08:41:51 +0000 (10:41 +0200)]
[498/906] gldisplay: don't pass non-constant strings as printf format strings
Fixes 'format not a string literal and no format arguments' on darwin
Julien Isorce [Fri, 20 Apr 2012 08:32:23 +0000 (10:32 +0200)]
[497/906] filtershader: fix format compiler warnings
Julien Isorce [Wed, 18 Apr 2012 13:44:05 +0000 (15:44 +0200)]
[495/906] glES2.0: properly use glDeleteShader
Julien Isorce [Tue, 17 Apr 2012 16:25:55 +0000 (18:25 +0200)]
[494/906] cmake build: use config.h from win32/common and add some guidelines
Julien Isorce [Fri, 13 Apr 2012 13:08:00 +0000 (15:08 +0200)]
[492/906] glwindow: properly fails if resource not found
Julien Isorce [Fri, 13 Apr 2012 10:38:11 +0000 (12:38 +0200)]
[491/906] glES2.0: properly fails if driver/kernel inconsistency
Julien Isorce [Wed, 11 Apr 2012 08:44:23 +0000 (10:44 +0200)]
[490/906] gldisplay: error out instead of g_assert
Julien Isorce [Wed, 4 Apr 2012 14:22:40 +0000 (16:22 +0200)]
[488/906] libvisual-gl: full compatibility with projectM-libvisual if libprojectM >= 2.0.1
Fix bug #310775
Julien Isorce [Thu, 22 Dec 2011 14:30:38 +0000 (15:30 +0100)]
[486/906] libvisual-gl: add minimal support to libvisual plugins that uses Framebuffer objects
Fix bug #310775
gst-launch audiotestsrc ! libvisual_gl_projectM ! glimagesink is working
but for now you cannot append any other opengl filters between
libvisual_gl_projectM and glimagesink because our FBO is turned OFF.
It would require that libvisual allows to split rendering between
pass1,2,3... and final rendering. In order to unbind our FBO before
the passN, and then rebind it just before the final libvisual rendering.
Julien Isorce [Thu, 15 Dec 2011 17:13:00 +0000 (18:13 +0100)]
[485/906] gstgldisplay: turn off texture binding and read buffer when downloading rgb is done
It fixes: (black image before)
gst-launch-0.10 audiotestsrc ! libvisual_gl_lv_gltest ! gldownload ! ximagesink
and
gst-launch-0.10 audiotestsrc ! libvisual_gl_lv_gltest ! gldownload ! glimagesink
Julien Isorce [Thu, 15 Dec 2011 15:18:36 +0000 (16:18 +0100)]
[483/906] glelements: do not leak parent when using gst_pad_get_parent
Julien Isorce [Thu, 24 Nov 2011 15:02:32 +0000 (16:02 +0100)]
[481/906] feature checking: error out instead of doing nothing if an OpenGL feature is not present
Fix bug #572767
Julien Isorce [Mon, 21 Nov 2011 15:46:51 +0000 (16:46 +0100)]
[480/906] win32 builds: add glshader filter sources to vs9 and codeblocks
Also fix some warnings from msvc9 and mingw-3.4.5
Руслан Ижбулатов [Mon, 21 Nov 2011 14:04:16 +0000 (15:04 +0100)]
[479/906] gstglshadervariables: strtok_r is not multiplatform
Fix bug #664367
Wei Feng [Fri, 18 Nov 2011 16:32:05 +0000 (17:32 +0100)]
[478/906] OpenGL ES 2.0: include glib.h to use G_BEGIN_DECLS in gstgles2.h
Fix bug #631019
Julien Isorce [Fri, 18 Nov 2011 16:27:45 +0000 (17:27 +0100)]
[477/906] OpenGL ES 2.0: fix build since glfiltershader changes
Antoni Silvestre [Fri, 18 Nov 2011 16:26:35 +0000 (17:26 +0100)]
[476/906] OpenGL ES 2.0: fix build and disable some examples
Fix bug #631019
Luc Deschenaux [Thu, 17 Nov 2011 16:36:44 +0000 (17:36 +0100)]
[471/906] glshader: add dynamic fragment shader filter
Also add fragment shader parser
Fix bug #600195
Julien Isorce [Wed, 16 Nov 2011 15:53:25 +0000 (16:53 +0100)]
[467/906] tests: various build fixes
- cmake could not find glib
- put gtk variables at the beginning to avoid GL conflicts
- update examples to clutter-1.8
- use const instead of deprecated G_CONST_RETURN
- set max pending events to 0 to make cube example works again
Tim-Philipp Müller [Tue, 14 Dec 2010 23:56:55 +0000 (23:56 +0000)]
[463/906] Add some more G_{BEGIN,END}_DECLS to public headers
https://bugzilla.gnome.org/show_bug.cgi?id=637260
Stefan Kost [Tue, 19 Oct 2010 15:00:33 +0000 (18:00 +0300)]
[462/906] various: add missing G_PARAM_STATIC_STRINGS flags
Canonicalize property names as needed. Includes some gst-indent changes as well :/
Jan Schmidt [Tue, 10 Aug 2010 14:47:42 +0000 (00:47 +1000)]
[459/906] Fix distcheck.
Julien Isorce [Wed, 5 May 2010 09:21:31 +0000 (11:21 +0200)]
[456/906] glfilter/glmixer/gltestsrc/glupload: throw an element error if no parent bin
Fixes bug #602153
Julien Isorce [Tue, 4 May 2010 09:37:38 +0000 (11:37 +0200)]
[455/906] glimagesink: handle pixel-aspect-ratio
Filippo Argiolas [Thu, 29 Apr 2010 06:27:29 +0000 (08:27 +0200)]
[443/906] sobel: move some highly duplicated code into glfilter
Add a new convenience function in GstGLFilter that just draws an input
texture to a target texture using a simple shader with just a "tex"
uniform sampler.
Move draw_texture from glfiltersobel to glfilter. Still need to update
other plugins to this.
Julien Isorce [Mon, 26 Apr 2010 12:11:28 +0000 (14:11 +0200)]
[432/906] GstGLDisplay: this is GL_DEPTH24_STENCIL8_EXT, not GL_DEPTH24_STENCIL8_EXT
Pierre Pouzol [Mon, 26 Apr 2010 11:57:00 +0000 (13:57 +0200)]
[431/906] GstGLDisplay: enable stencil buffer when using framebuffer objects.
Fixes Bug #612159
Nicholas Panayis [Tue, 9 Mar 2010 00:35:42 +0000 (01:35 +0100)]
[415/906] gstglwindow_win32: share opengl context in correct order
Allow to use the opengl context sharing feature if the original
context has been used already.
This is only possible on win32 with wglShareLists because on other
backends, the sharing is made when a context is created.
This new feature is only usefull when using external context
because gst-gl internally makes sure that the orginal context is not
already used when sharing it.
Fix bug #611067
Julien Isorce [Tue, 5 Jan 2010 23:13:46 +0000 (00:13 +0100)]
[412/906] Cocoa backend: improve support on GNUStep