Matthew Waters
6445569abf
glwindow: track context activation properly
...
We only need to deactivate/reactivate the context iff it was already
active.
2017-12-09 19:31:59 +00:00
Matthew Waters
03908c679e
gldisplay: synchronize the searching and creation of GstGLContext's
...
Ootherwise we could end up with multiple elements in different chains
each creating a context. Fixes context creation with glvideomixer.
2017-12-09 19:31:59 +00:00
Guillaume Desmottes
e6c5410a2a
glmixer: fix caps leak in gst_gl_mixer_pad_sink_getcaps()
...
Caps refcounting was all wrong in this function. Rewrote it and add some
comments to make it clearer.
Fix caps leaks with the
validate.file.glvideomixer.simple.play_15s.synchronized scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=747915
Signed-off-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
2017-12-09 19:31:59 +00:00
Guillaume Desmottes
ce76c66f92
glmixer: unref owned caps when finalizing the mixer
...
Fix a caps leak with the
validate.file.glvideomixer.simple.play_15s.synchronized scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=747915
Signed-off-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
2017-12-09 19:31:59 +00:00
Guillaume Desmottes
0511d12e4a
glmixer: pass the proper free function to frames and buffers array
...
'array_buffers' contain borrowed GstBuffer and so shouldn't have a free
function. 'frames' is the one containing GstGLMixerFrameData and so should use
_free_glmixer_frame_data as free function.
Fix GstGLMixerFrameData leaks with the
validate.file.glvideomixer.simple.play_15s.synchronized scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=747913
Signed-off-by: Guillaume Desmottes <guillaume.desmottes@collabora.co.uk>
2017-12-09 19:31:59 +00:00
Sebastian Dröge
3acaa0eb0f
gldownloadelement: Download *from* OpenGL, not into
2017-12-09 19:31:59 +00:00
Matthieu Bouron
d20af8338a
glcontext: Make gst_gl_context_egl_activate fail if the old surface could not be destroyed
...
https://bugzilla.gnome.org/show_bug.cgi?id=746251
2017-12-09 19:31:59 +00:00
Matthieu Bouron
15785f794e
gluploadelement: Unref GstGLUpload object and caps in ::stop()
...
Fix leak of the GstGLUpload object.
https://bugzilla.gnome.org/show_bug.cgi?id=748033
2017-12-09 19:31:59 +00:00
Sebastian Dröge
bff8cde2ea
gl: Remove some empty ::finalize() implementations
2017-12-09 19:31:59 +00:00
Sebastian Dröge
c4713af2ef
gldownloadelement: Fix element description
2017-12-09 19:31:59 +00:00
Sebastian Dröge
f8d2219c44
gldownloadelement: Remove unused ::finalize() implementation
2017-12-09 19:31:59 +00:00
Sebastian Dröge
4ccf151d15
glcolorconvertelement: Also unref caps in ::stop() already
...
They are not useful anymore afterwards, so keeping them until ::finalize()
might only cause someone to use them later and then fail.
2017-12-09 19:31:59 +00:00
Guillaume Desmottes
3294854c6d
glcolorconvertelement: fix GstGLColorConvert leak
...
convert->convert was never unreffed.
This can be reproduce with the
validate.file.glvideomixer.simple.play_15s.synchronized scenario.
https://bugzilla.gnome.org/show_bug.cgi?id=747911
2017-12-09 19:31:59 +00:00
Matthieu Bouron
87a336350d
glcontext: Make gst_gl_context_egl_activate fail if the surface could not be created
...
Also add some error logging.
2017-12-09 19:31:59 +00:00
Sebastian Dröge
659477c7c7
glcolorconvert: Fix last commit
2017-12-09 19:31:59 +00:00
Sebastian Dröge
4a8001e683
gl: Remove iOS/EAGL workaround for R/RG textures
...
This should be unneeded now after https://bugzilla.gnome.org/show_bug.cgi?id=732507
2017-12-09 19:31:58 +00:00
Sebastian Dröge
bd2821982f
glcolorconvert: Add correct check for RG/R textures in glcolorconvert too
...
https://bugzilla.gnome.org/show_bug.cgi?id=732507
2017-12-09 19:31:58 +00:00
Anton Obzhirov
c45072ae86
glbasefilter: avoid segfault when gl platform is not available
...
https://bugzilla.gnome.org/show_bug.cgi?id=747124
2017-12-09 19:31:58 +00:00
Sebastian Dröge
af77f6467f
glimagesink: Disconnect mouse/key event signal handlers from window when shutting down context
2017-12-09 19:31:58 +00:00
Sebastian Dröge
39c72f324b
glimagesink: Guard against disconnecting invalid signal ids
2017-12-09 19:31:58 +00:00
Alessandro Decina
83990b491e
libgstgl: fix rendering on iOS
...
Stop assuming that the handle has been set by the time ->create_context is
called. After bc7a7259f3
set_window_handle always
happens after ->create_context in fact.
See also https://bugzilla.gnome.org/show_bug.cgi?id=745090
2017-12-09 19:31:58 +00:00
Edward Hervey
36419f2f79
glvideomixer: Don't use context if not present
...
Avoids assertions at runtime
2017-12-09 19:31:58 +00:00
Edward Hervey
0f4c79099e
introspection: Don't use g-ir-scanner cache at compile time
...
It pollutes user directories and we don't need to cache it
https://bugzilla.gnome.org/show_bug.cgi?id=747095
2017-12-09 19:31:58 +00:00
Anton Obzhirov
9294e84334
gleffects: port all effects to GLES2.0
...
https://bugzilla.gnome.org/show_bug.cgi?id=745955
2017-12-09 19:31:58 +00:00
Philippe Normand
79d340004d
gl/dispmanx: surfaceless EGL context support
...
Show the DispmanX window only if there's no shared external GL context
set up. When a window is required by the context a transparent
DispmanX element is created and later on made visible by the ::show
method.
https://bugzilla.gnome.org/show_bug.cgi?id=746632
2017-12-09 19:31:58 +00:00
Julien Isorce
0142f551f8
glwindow: remove unused gl_thread field
2017-12-09 19:31:58 +00:00
Julien Isorce
a71d479cc3
gldisplay: fix GThread leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=746541
2017-12-09 19:31:58 +00:00
Nicola Murino
1af4a1f759
glimagesink: fix caps leak
...
https://bugzilla.gnome.org/show_bug.cgi?id=746541
2017-12-09 19:31:58 +00:00
Matthew Waters
0b5c7e8b49
gl/docs: update some doc comments
2017-12-09 19:31:58 +00:00
Matthew Waters
1c51ba395a
gldisplay: tentative proper context collision detection
...
Fixes
tee name=t ! queue ! gliamgesink t. ! queue ! glimagesink
2017-12-09 19:31:58 +00:00
Víctor Manuel Jáquez Leal
55dbb25dcc
glupload: move meta-data copy into gst-gl library
...
In some upload implementations the out buffer has more than one references,
turning the buffer not writable, so it won't be possible to modify its
meta-data.
This patch moves the meta-data copy before increasing the reference of the out
buffer.
https://bugzilla.gnome.org/show_bug.cgi?id=746173
2017-12-09 19:31:58 +00:00
Matthew Waters
420cdf9cf6
glmemory: fix the slight difference between EXT_rg and ARB_rg
...
GL_EXT_texture_rg doesn't take sized formats for the internalformat
parameter of TexImage* but GL_ARB_texture_rg and GL(ES)3 do.
https://bugzilla.gnome.org/show_bug.cgi?id=732507
2017-12-09 19:31:58 +00:00
Matthew Waters
a4287991ae
gl/examples: fixup generic cube example for NDC
...
translating outside the clip region doesn't work
2017-12-09 19:31:58 +00:00
Julien Isorce
8ca59af389
gl/examples: add sdlshare2 that uses glimagesink to output textures
...
https://bugzilla.gnome.org/show_bug.cgi?id=739681
2017-12-09 19:31:58 +00:00
Julien Isorce
5f7aaba2d5
glimagesink: keep window invisible when sharing output
...
https://bugzilla.gnome.org/show_bug.cgi?id=739681
2017-12-09 19:31:58 +00:00
Julien Isorce
1d88b95201
glimagesink: provide GstSample in client-draw signal
...
Instead of prividing texture and size directly.
And apply changes to examples.
https://bugzilla.gnome.org/show_bug.cgi?id=739681
2017-12-09 19:31:58 +00:00
Julien Isorce
0f90283520
sdlshare: use glupload and unmap frame
2017-12-09 19:31:58 +00:00
Matthew Waters
93968916a4
glsyncmeta: make context to wait and set sync explicit
...
otherwise we may wait on a sync object in same context by accident
2017-12-09 19:31:58 +00:00
Nicolas Dufresne
c68af4d6fc
glimagesink: Add NULL check in error case
...
Other context may be NULL if something went wrong. Avoid trying to unref
a NULL pointer.
2017-12-09 19:31:58 +00:00
Matthew Waters
f58b5b65f1
glupload/colorconvert: only copy timestamps if the input buffer != output
2017-12-09 19:31:58 +00:00
Julien Isorce
63366be8ad
gl: add GstGLDisplayCocoa
...
https://bugzilla.gnome.org/show_bug.cgi?id=746012
2017-12-09 19:31:58 +00:00
Julien Isorce
74b8117e53
examples: initialize NSApp at the beginning
2017-12-09 19:31:58 +00:00
Julien Isorce
d3b3887c52
gl/cocoa: do not terminate loop in gst_gl_window_cocoa_close
...
It is now done in _finalize.
Fix regression introduced by
"gl/window: create the main loop/context on init/finalize"
bc7a7259f3
2017-12-09 19:31:58 +00:00
Julien Isorce
a51680b1b3
gl: avoid overwriting display and context to NULL
...
It happens when the application provides display
and/or context.
2017-12-09 19:31:57 +00:00
Matthew Waters
15fd4e164a
glshader: attribute locations are -1 on error
2017-12-09 19:31:57 +00:00
Neos3452
7d83351172
glshader: prevent from getting attributes without vertex shader
...
It doesn't make sense to query for vertex attributes without a vertex
shader. Moreover this is causing a crash on OSX.
https://bugzilla.gnome.org/show_bug.cgi?id=746168
2017-12-09 19:31:57 +00:00
Jan Schmidt
bf0440f97b
GL: Remove annoying printf in the filterbin class_init
2017-12-09 19:31:57 +00:00
Matthew Waters
23e2d74112
glimagesink: add pixel-aspect-ratio property on the bin
2017-12-09 19:31:57 +00:00
Matthew Waters
7b9d70944b
glupload: unref the bufferpool
2017-12-09 19:31:57 +00:00
Matthew Waters
3aad6d73f1
glimagesink: forward ALL the properties on the bin
2017-12-09 19:31:57 +00:00