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:11:56 +0000 (01:11 +1000)]
[523/906] update for meta API changes
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:10:45 +0000 (19:10 +1000)]
[519/906] GstGLUpload: implement the allocation funcs and use GstGLMeta
make use of the new GstGLMeta, GstGLMemory and GstGLBufferPool objects
Matthew Waters [Fri, 6 Jul 2012 09:07:45 +0000 (19:07 +1000)]
[518/906] GstGLImageSink: add propose_allocation impl and use GstGLMeta
make use of GstGLMeta and GstGLMemory
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 [Wed, 6 Jun 2012 14:51:47 +0000 (00:51 +1000)]
[511/906] tests: update for 1.0
Matthew Waters [Tue, 5 Jun 2012 12:59:31 +0000 (22:59 +1000)]
[510/906] GstGLImageSink: update for 1.0
Matthew Waters [Tue, 5 Jun 2012 09:10:19 +0000 (19:10 +1000)]
[509/906] GstGLDisplay: update for 1.0
Matthew Waters [Tue, 5 Jun 2012 08:53:38 +0000 (18:53 +1000)]
[508/906] GstGLDownload: update for 1.0
Matthew Waters [Tue, 5 Jun 2012 05:40:52 +0000 (15:40 +1000)]
[507/906] GstGLTestSrc: update for 1.0
Matthew Waters [Tue, 5 Jun 2012 03:56:43 +0000 (13:56 +1000)]
[506/906] GstGLUpload: update for 1.0
Matthew Waters [Mon, 4 Jun 2012 08:44:56 +0000 (18:44 +1000)]
[505/906] GstGLColorscale: 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 09:19:32 +0000 (11:19 +0200)]
[499/906] examples: fix build 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 [Fri, 20 Apr 2012 08:26:30 +0000 (10:26 +0200)]
[496/906] cmake build: add path to config.h on APPLE
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
Tim-Philipp Müller [Thu, 27 Jun 2013 23:04:43 +0000 (00:04 +0100)]
[493/906] glfiltershader: fix crash when loading shader file
Just use g_file_get_contents() instead of home-made file loading.
Fixes two issues - one is that we should pass "r" to fopen and
not O_RDONLY, the other is that an incorrect variable was used
to read the file length, leading to an empty shader file.
Spotted by: Wang Xin-yu (王昕宇) <comicfans44@gmail.com>
https://bugzilla.gnome.org/show_bug.cgi?id=702844
https://bugzilla.gnome.org/show_bug.cgi?id=702845
Conflicts:
gst/gl/gstglfiltershader.c
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 [Tue, 10 Apr 2012 14:12:14 +0000 (16:12 +0200)]
[489/906] glimagesink: pixel-aspect-ratio property now returns "1/1" by default
Previously it was not set
Fix bug #671734 (compatibility with Totem)
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
Sebastian Dröge [Tue, 6 Mar 2012 13:31:05 +0000 (14:31 +0100)]
[487/906] gl: Fix compiler warnings
'if statement has empty body', which were real bugs and
'comparison of unsigned expression < 0 is always false', which was
only an unneeded comparison.
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 17:08:48 +0000 (18:08 +0100)]
[484/906] libvisual_gl: correctly setup depth and blend functions
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
Jonathan Matthew [Fri, 25 Nov 2011 15:51:59 +0000 (16:51 +0100)]
[482/906] ext: Add a libvisual plugin wrapping opengl libvisual
Fix bug #202069
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
Julien Isorce [Fri, 18 Nov 2011 11:16:22 +0000 (12:16 +0100)]
[475/906] docs: add glmosaic and glshader to docs
Julien Isorce [Fri, 18 Nov 2011 10:52:10 +0000 (11:52 +0100)]
[474/906] build: make libjpeg use conditional
Disable gloverlay element if we do not hve libjpeg
Julien Isorce [Fri, 18 Nov 2011 09:10:59 +0000 (10:10 +0100)]
[473/906] cmake build: 2.8 is now required and add jpeg
jpeg and png should be optional but our cmake build is still in pre-alpha
Stefan Sauer [Fri, 18 Nov 2011 07:08:18 +0000 (08:08 +0100)]
[472/906] linpng: make libpng use conditional
Disable 3 elements if we don't have libpng.
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
Anthony Violo [Thu, 17 Nov 2011 14:22:06 +0000 (15:22 +0100)]
[470/906] gloverlay: add jpeg support
Fix bug #636070
Anthony Violo [Thu, 17 Nov 2011 10:39:50 +0000 (11:39 +0100)]
[469/906] gloverlay: manage ratio texture
Fix bug #630525
Julien Isorce [Thu, 17 Nov 2011 10:34:20 +0000 (11:34 +0100)]
[468/906] tests: fix commentary in clutteractor example
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
Sebastian Dröge [Wed, 3 Aug 2011 07:08:01 +0000 (09:08 +0200)]
[466/906] tests: Fix variable unused but set compiler warning
Sebastian Dröge [Wed, 3 Aug 2011 07:07:49 +0000 (09:07 +0200)]
[465/906] gl: Fix variable unused but set compiler warnings
Sreerenj Balachandran [Wed, 25 May 2011 08:21:19 +0000 (11:21 +0300)]
[464/906] glimagesink: Interface query should return FALSE if the supplied interface is not GST_TYPE_X_OVERLAY
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 :/
Stefan Kost [Thu, 16 Sep 2010 12:00:29 +0000 (15:00 +0300)]
[461/906] xoverlay: require base from git and update to new API
Edward Hervey [Wed, 8 Sep 2010 18:38:07 +0000 (20:38 +0200)]
[460/906] gstgleffects: Fix upper bound of an array iteration
10 is above NEEDED_TEXTURES (currently 5) and makes the code consistent
with the rest of the usage in the file.
Jan Schmidt [Tue, 10 Aug 2010 14:47:42 +0000 (00:47 +1000)]
[459/906] Fix distcheck.
Julien Isorce [Fri, 23 Jul 2010 20:12:15 +0000 (22:12 +0200)]
[458/906] glfilterreflectedscreen: fix some warnings from msvc9
Julien Isorce [Mon, 12 Jul 2010 16:38:59 +0000 (18:38 +0200)]
[457/906] gtk examples: adapt code since the native-window changes from gtk
Fixes bug #599885
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 [Sat, 1 May 2010 09:19:55 +0000 (11:19 +0200)]
[454/906] blur: fix gaussian kernel computation
Filippo Argiolas [Thu, 29 Apr 2010 18:49:02 +0000 (20:49 +0200)]
[453/906] blur: give up some accuracy for speed
Settle with 7x7 gaussian convolution kernels, maybe slightly less
accurate than previous 9x9 but fast enough to be able to use it on i915.
About a 20% percent speed gain (again, roughly measured with
videotestsrc and glimagesink sync=false). No noticeable rendering
difference with current effects.
Filippo Argiolas [Wed, 28 Apr 2010 15:08:45 +0000 (17:08 +0200)]
[452/906] sin: get rid of hls conversion code
Get rid of buggy and complicated hls conversion code for the sin effect.
The only thing needed was hue anyway and it is easily calculated using
Preucil formula for rgb to polar coordinates conversion.
Now works on i915 (removed all the IF blocks). Still needs some tuning,
I wonder if it will ever work properly.
Roland Peffer [Fri, 30 Apr 2010 09:44:26 +0000 (11:44 +0200)]
[451/906] glupload: par is already handled in fixate_caps function
Fixes bug #593165
Julien Isorce [Fri, 30 Apr 2010 09:42:41 +0000 (11:42 +0200)]
[450/906] indent: gstglupload.c
Filippo Argiolas [Thu, 29 Apr 2010 12:21:28 +0000 (14:21 +0200)]
[449/906] sobel: drop unused single pass sobel shader
Drop unused sobel shader, if anyone still needs it, git log is your
friend.
Filippo Argiolas [Thu, 29 Apr 2010 12:20:56 +0000 (14:20 +0200)]
[448/906] xray: increase edges visibility
Some little fine tuning, still not completely satisfied yet.
Filippo Argiolas [Thu, 29 Apr 2010 10:59:42 +0000 (12:59 +0200)]
[447/906] xray: port to the new separable sobel convolution
Port xray effect to use the same sobel convolution just used in
glfiltersobel. Now xray too works on i915 (a bit slow).
Filippo Argiolas [Thu, 29 Apr 2010 08:57:38 +0000 (10:57 +0200)]
[446/906] blur: forgot to add all the changes in previous commit
Filippo Argiolas [Thu, 29 Apr 2010 07:15:21 +0000 (09:15 +0200)]
[445/906] blur: use draw_texture from glfilter
Filippo Argiolas [Thu, 29 Apr 2010 07:02:12 +0000 (09:02 +0200)]
[444/906] laplacian: precalculate coordinates
Precalculate coordinates to avoid unneeded texture indirections.
Now laplacian works on i915.
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.
Filippo Argiolas [Tue, 27 Apr 2010 19:56:04 +0000 (21:56 +0200)]
[442/906] blur: optimize coordinates calculations
Save 28 instructions on i915 (mainly redundant MOVs) and gain a 25%
(roughly measured with videotestsrc and glimagesink sync=false) speed
bump
Filippo Argiolas [Tue, 27 Apr 2010 17:38:33 +0000 (19:38 +0200)]
[441/906] sobel: convolve only luma
Rework Sobel a little bit again making it work as the old one:
1. desaturate input texture
2. calculate horizontal convolution for x gradient and vertical
convolution for y gradient at the same time (halves the number of
needed texture lookups)
3. store results in a single texture (red and green channel)
4. calculate remaining convolution (same as above switching vertical and
horizontal)
5. calculate length of gradient using red and green as x and y
components.
Optimize wherever possible, store kernels as constants in the shaders,
remove unneeded uniforms. Restore invert property carefully avoiding
using IF.
Still not sure if "full color" convolution will be needed, glfiltersobel
is to be intended as a demo filter and xray, the only effect which uses
sobel only needs edge intensity. Dropping it for now.
Filippo Argiolas [Tue, 27 Apr 2010 07:08:22 +0000 (09:08 +0200)]
[440/906] sobel: implement sobel filter using separable kernels
Reimplement sobel in a multipass fully separated convolution:
- calculate x gradient map convolving first horizontally with blurring
kernel and then vertically with differentiating kernel
- calculate y gradient map convolving first vertically with blurring
kernel and then horizonally with differentiating kernel
- calculate length of the gradient vector
Particular care was needed with normalization of the blurring kernel and
with grey level offset of the differentiating one to prevent overflow of
rgb values from the [0.0,1.0] range in intermediate passes.
Now works on i915.
Filippo Argiolas [Mon, 26 Apr 2010 11:20:38 +0000 (13:20 +0200)]
[439/906] sobel: get rid of #version 120 dependent array constructors
Pierre Pouzol [Tue, 27 Apr 2010 09:07:04 +0000 (11:07 +0200)]
[438/906] glfilterreflectedscreen: improve behavior and add some properties
Fixes bug #612163
Julien Isorce [Mon, 26 Apr 2010 21:48:15 +0000 (23:48 +0200)]
[437/906] glfilterreflectedscreen: remove unused code (copied/pasted from glfilterglass)
Julien Isorce [Mon, 26 Apr 2010 21:42:38 +0000 (23:42 +0200)]
[436/906] gleffectssources: fix some warnings from msvc9
Julien Isorce [Mon, 26 Apr 2010 21:38:59 +0000 (23:38 +0200)]
[435/906] GNUStep build: add glfilterreflectedscreen sources
Pierre Pouzol [Mon, 26 Apr 2010 12:41:17 +0000 (14:41 +0200)]
[434/906] glfilterreflectedscreen: forgot to add sources
Pierre Pouzol [Mon, 26 Apr 2010 12:32:28 +0000 (14:32 +0200)]
[433/906] glfilterreflectedscreen: add new OpenGL Reflected Screen filter
Fixes bug #612163
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
Filippo Argiolas [Mon, 26 Apr 2010 10:45:57 +0000 (12:45 +0200)]
[430/906] convolution: save some indirection grouping math and sampling
Thanks to Eric Anholt I've finally understood (at least I hope) how to
count texture indirections and save up some. Texture sampling dependent
on the result of some math counts as an indirection phase. Grouped
texture lookups with no math involved count as a single indirection.
Math on the coordinates count as indirection.
So the best thing is to group all the math involving coordinates and
then do all the lookups.
This saves enough indirections to make glfilterblur and glow effect
work, albeit a bit slowly, on i915.
Filippo Argiolas [Sun, 25 Apr 2010 08:55:43 +0000 (10:55 +0200)]
[429/906] laplacian: remove unused norm_const and norm_offset uniforms
Remove unused uniforms from the laplacian filter. Also remove if
kernel[i] != 0 checks so that it compiles where IF is not available.
Again, big thanks to Eric Anholt for the hints.
Eric Anholt [Tue, 13 Apr 2010 23:20:02 +0000 (16:20 -0700)]
[428/906] laplacian: Avoid using GLSL 1.20 features in a non-#versioned shader.
Fixes compile on Mesa.
Filippo Argiolas [Sun, 25 Apr 2010 08:31:01 +0000 (10:31 +0200)]
[427/906] rgb_to_curve: save up a texture indirection
Apparently assigning gl_TexCoord to a temp count as an indirection.
Using it directly avoids it and limits indirections to four not
exceeding i915 limit. Now xpro effect works on i915.
Vinson Lee [Sun, 25 Apr 2010 08:04:28 +0000 (10:04 +0200)]
[426/906] multiply: fix a compilation error with Apple compiler
Fix multiply_fragment_source to compile with Apple GLSL compiler.
https://bugzilla.gnome.org/show_bug.cgi?id=616748
Filippo Argiolas [Sat, 24 Apr 2010 19:11:35 +0000 (21:11 +0200)]
[425/906] twirl: get rid of polar coordinates conversion
Get rid of polar coordinates in the twirl effect. The same can be done
using a rotation matrix, saving alu instructions and, most of all,
avoiding the use of the evil atan() function (which uses IF operators).
Calculate rotation angle in a saner, understandable way.
Works on i915! (Hope it still works elsewhere too as I'm not able to
test at the moment)