platform/upstream/gst-plugins-base.git
6 years agogl: ship the gstglcontext_egl.h header
Philippe Normand [Mon, 24 Nov 2014 09:43:23 +0000 (10:43 +0100)]
gl: ship the gstglcontext_egl.h header

It is required by gsteglimagememory.h.

https://bugzilla.gnome.org/show_bug.cgi?id=740611

6 years agogl: shadervariables: make parsing of floats locale-independent
Tim-Philipp Müller [Sun, 23 Nov 2014 21:43:20 +0000 (21:43 +0000)]
gl: shadervariables: make parsing of floats locale-independent

Floating point numbers are written differently in different
locales, e.g. in many countries 1/2 = 0,5 instead of 0.5, and
strtod will not be able to parse "0.5" correctly in such a
locale.

6 years agoglshadervariables: also trim \r as well as \n
Matthew Waters [Sun, 23 Nov 2014 15:52:24 +0000 (02:52 +1100)]
glshadervariables: also trim \r as well as \n

6 years agoglupload: rearchitecture for non GLMemory inputs/outputs
Matthew Waters [Wed, 5 Nov 2014 09:18:06 +0000 (20:18 +1100)]
glupload: rearchitecture for non GLMemory inputs/outputs

Allows other memory types to be implemented/returned/used by the caller.

6 years agoglimagesink: critical error while seek playback-test(stop state)
Vineeth T M [Thu, 20 Nov 2014 03:43:58 +0000 (09:13 +0530)]
glimagesink: critical error while seek playback-test(stop state)

If we seek when media is in stop state, playback-test gives
critical error, since context of glimagesink is destroyed during stop.
But since context is not present, we need not handle send_event in glimagesink
Hence adding a condition to check if context is valid.

https://bugzilla.gnome.org/show_bug.cgi?id=740305

6 years agoglcontext: build errors when GST_GL_HAVE_OPENGL is 0
Vineeth T M [Mon, 17 Nov 2014 04:06:52 +0000 (09:36 +0530)]
glcontext: build errors when GST_GL_HAVE_OPENGL is 0

Moving variables within #if GST_GL_HAVE_OPENGL, which are not going to be used otherwise.
and which are needed only when OpenGl is present

https://bugzilla.gnome.org/show_bug.cgi?id=740235

6 years agoglfilter: add read-only context property
Matthew Waters [Mon, 17 Nov 2014 07:50:28 +0000 (18:50 +1100)]
glfilter: add read-only context property

6 years agoglmixer: add read-only context property
Matthew Waters [Mon, 17 Nov 2014 07:50:04 +0000 (18:50 +1100)]
glmixer: add read-only context property

6 years agogl/cocoa: Only use convertRectToBacking on OSX >= 10.7
Sebastian Dröge [Sun, 16 Nov 2014 10:00:14 +0000 (11:00 +0100)]
gl/cocoa: Only use convertRectToBacking on OSX >= 10.7

It does not exist before and older versions also don't have
support for HiDPI displays anyway.

https://bugzilla.gnome.org/show_bug.cgi?id=740201

6 years agogl: Use numeric OSX version instead of the macro
Sebastian Dröge [Sun, 16 Nov 2014 09:57:55 +0000 (10:57 +0100)]
gl: Use numeric OSX version instead of the macro

The macro is not defined on older OSX versions and evaluates to 0.

https://bugzilla.gnome.org/show_bug.cgi?id=740201

6 years agogl/cocoa: Don't override the application delegate
Sebastian Dröge [Thu, 13 Nov 2014 11:01:25 +0000 (12:01 +0100)]
gl/cocoa: Don't override the application delegate

Otherwise interesting things will happen in Cocoa applications, like
infinite event loops that block the NSApplication loop forever.

This was only needed for GNUStep and thus can safely be removed now.

6 years agogl/cocoa: Remove GNUStep support
Sebastian Dröge [Thu, 13 Nov 2014 10:58:07 +0000 (11:58 +0100)]
gl/cocoa: Remove GNUStep support

Until gcc and GNUStep properly support Objective-C blocks and other
"new" features of Objective-C we can't properly support them without
making the code much more ugly.

https://bugzilla.gnome.org/show_bug.cgi?id=739152

6 years agoglimagesink: don't set the upload to NULL on the drain query
Matthew Waters [Wed, 12 Nov 2014 00:44:07 +0000 (11:44 +1100)]
glimagesink: don't set the upload to NULL on the drain query

https://bugzilla.gnome.org/show_bug.cgi?id=732694

6 years agogl: Correct invalid comment text
Hyunjun Ko [Tue, 11 Nov 2014 08:04:48 +0000 (17:04 +0900)]
gl: Correct invalid comment text

6 years agogl: add unit test that checks for glimagesink drain query handling
Julien Isorce [Tue, 11 Nov 2014 23:54:44 +0000 (23:54 +0000)]
gl: add unit test that checks for glimagesink drain query handling

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732694

6 years agoglimagesink: release stored buffers on drain query
Julien Isorce [Tue, 11 Nov 2014 23:49:59 +0000 (23:49 +0000)]
glimagesink: release stored buffers on drain query

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=732694

6 years agogl: do not raise a critical msg if the backend does not handle window events
Julien Isorce [Tue, 11 Nov 2014 23:43:42 +0000 (23:43 +0000)]
gl: do not raise a critical msg if the backend does not handle window events

Fix "assertion 'window_class->handle_events != NULL' failed"
if not using a X11 window.

6 years agogl: remove the width/height fields from the caps to support frame resizing
Matthew Waters [Tue, 11 Nov 2014 03:23:55 +0000 (14:23 +1100)]
gl: remove the width/height fields from the caps to support frame resizing

It was previously only occuring with sysmem caps features

https://bugzilla.gnome.org/show_bug.cgi?id=739334

6 years agogstglconfig: Put gstglconfig.h into $(libdir)/gstreamer-1.0/include
Sebastian Dröge [Fri, 7 Nov 2014 10:41:01 +0000 (11:41 +0100)]
gstglconfig: Put gstglconfig.h into $(libdir)/gstreamer-1.0/include

It's architecture dependent and should not be placed into the include
directory as the assumption is that all those headers are architecture
independent.

https://bugzilla.gnome.org/show_bug.cgi?id=739767

6 years agoglimagesink: don't make gst_glimage_sink_handle_events call _ensure_gl_setup
Alessandro Decina [Thu, 6 Nov 2014 22:58:06 +0000 (23:58 +0100)]
glimagesink: don't make gst_glimage_sink_handle_events call _ensure_gl_setup

gst_glimage_sink_handle_events can be called from the overlay interface and from
the main thread before GL is setup. Before this change, that would call
_ensure_gl_setup() and deadlock on OSX.

Change things so that it's always safe to call gst_glimage_sink_handle_events()
without stuff deadlocking.

6 years agoglimagesink: fix possible deadlock on osx
Alessandro Decina [Thu, 6 Nov 2014 22:55:20 +0000 (23:55 +0100)]
glimagesink: fix possible deadlock on osx

Remove gst_glimage_sink_handle_events call in gst_glimage_sink_init. It was
unnecessary and when the element was instantiated from the main thread, caused a
deadlock in OSX creating the context (thread).

6 years agoglimagesink: clamp the resize width/height to >= 1 to avoid a GL error
Matthew Waters [Thu, 6 Nov 2014 23:01:59 +0000 (10:01 +1100)]
glimagesink: clamp the resize width/height to >= 1 to avoid a GL error

6 years agoglutils: only attempt getting the app context when we don't already have a display
Matthew Waters [Thu, 6 Nov 2014 07:43:01 +0000 (18:43 +1100)]
glutils: only attempt getting the app context when we don't already have a display

avoids querying/messaging the world on each frame

6 years agoglcontext: fail context creation if glGetString returns NULL
Matthew Waters [Thu, 6 Nov 2014 07:37:23 +0000 (18:37 +1100)]
glcontext: fail context creation if glGetString returns NULL

6 years agoglimagesink: implement gst_video_overlay_handle_events
Lubosz Sarnecki [Wed, 29 Oct 2014 11:24:16 +0000 (12:24 +0100)]
glimagesink: implement gst_video_overlay_handle_events

https://bugzilla.gnome.org/show_bug.cgi?id=736035

6 years agogl/cocoa: use NSAutoreleasePool to free resize data
Julien Isorce [Mon, 3 Nov 2014 23:24:33 +0000 (23:24 +0000)]
gl/cocoa: use NSAutoreleasePool to free resize data

Otherwise when resizing the window you will also get messages like:
class NSConcreteMapTable autoreleased with no pool in place - just leaking
class NSConcreteValue autoreleased with no pool in place - just leaking
class NSConcreteValue autoreleased with no pool in place - just leaking
class __NSCFDictionary autoreleased with no pool in place - just leaking

6 years agogl/cocoa: include gl3.h to have GL_CONTEXT_PROFILE_MASK
Julien Isorce [Mon, 3 Nov 2014 23:08:09 +0000 (23:08 +0000)]
gl/cocoa: include gl3.h to have GL_CONTEXT_PROFILE_MASK

6 years agogl/cocoa: make sure to turn on frame rectangle changes notifications
Julien Isorce [Mon, 3 Nov 2014 23:07:34 +0000 (23:07 +0000)]
gl/cocoa: make sure to turn on frame rectangle changes notifications

Default value of property postsFrameChangedNotifications is YES
but it is worth to explicitly enable it.

6 years agogl/cocoa: fix uncaught exception 'unrecognized selector sent to instance'
Julien Isorce [Mon, 3 Nov 2014 23:02:17 +0000 (23:02 +0000)]
gl/cocoa: fix uncaught exception 'unrecognized selector sent to instance'

Need to set the ':' as the reshape method now takes one parameter.
For the story, the GstGLNSView was previously inheriting from
NSOpenGLView which has a reshape function without any parameter.
Now the GstGLNSView inherits from NSView and we re-use the reshape
function manually.

6 years agogl/cocoa: fix compiler warning
Julien Isorce [Mon, 3 Nov 2014 22:59:41 +0000 (22:59 +0000)]
gl/cocoa: fix compiler warning

Use the reshape function after being defined. The other way
would have been to declare the reshape function in the header.

gstglwindow_cocoa.m: In function '-[GstGLNSView drawRect:]':
gstglwindow_cocoa.m:555: warning: 'GstGLNSView' may not respond to '-reshape'
gstglwindow_cocoa.m:555: warning: (Messages without a matching method signature
gstglwindow_cocoa.m:555: warning: will be assumed to return 'id' and accept
gstglwindow_cocoa.m:555: warning: '...' as arguments.)

6 years agogl: fix Since marker for gst_gl_window_run_navigation()
Tim-Philipp Müller [Mon, 3 Nov 2014 00:17:41 +0000 (00:17 +0000)]
gl: fix Since marker for gst_gl_window_run_navigation()

6 years agoglshader: Fix memory leak
Luis de Bethencourt [Wed, 29 Oct 2014 18:18:07 +0000 (18:18 +0000)]
glshader: Fix memory leak

Memory is only freed in the TRUE clause of the if conditional. Free in the else
clause as well.
Also, consolidate g_malloc + sprintf into a g_strdup_printf().

CID #1212171

https://bugzilla.gnome.org/show_bug.cgi?id=739368

6 years agoglcolorconvert: fix comments that confuse gtk-doc
Luis de Bethencourt [Fri, 31 Oct 2014 10:45:19 +0000 (10:45 +0000)]
glcolorconvert: fix comments that confuse gtk-doc

GTK-Doc uses a special syntax for code documentation. A multiline comment that
starts with an additional '*' marks a documentation block that will be processed
by the GTK-Doc tools. So GTK-Doc is confused if a comment block starts with that
additional '*' but isn't meant to be processed. Removing this additional '*'.

https://bugzilla.gnome.org/show_bug.cgi?id=739444

6 years agoglimagesink: resize the viewport correctly on a caps change
Matthew Waters [Fri, 31 Oct 2014 01:52:50 +0000 (12:52 +1100)]
glimagesink: resize the viewport correctly on a caps change

with force-aspect-ratio=true, if the width or height changed, the
viewport wasn't being updated to respect the new video width and height
until a resize occured.

6 years agoglmixer: advertise support for changing input caps mid-stream
Matthew Waters [Fri, 31 Oct 2014 01:52:07 +0000 (12:52 +1100)]
glmixer: advertise support for changing input caps mid-stream

https://bugzilla.gnome.org/show_bug.cgi?id=739334

6 years agogl: sprinkle some Since markers
Matthew Waters [Fri, 31 Oct 2014 01:30:53 +0000 (12:30 +1100)]
gl: sprinkle some Since markers

6 years agoglmixer: don't get the current caps from GstVideoInfo for the srcpad
Matthew Waters [Thu, 30 Oct 2014 12:08:00 +0000 (23:08 +1100)]
glmixer: don't get the current caps from GstVideoInfo for the srcpad

It's missing the caps features needed.

6 years agogl/examples: update for other-context property removal
Matthew Waters [Thu, 30 Oct 2014 07:57:59 +0000 (18:57 +1100)]
gl/examples: update for other-context property removal

6 years agoglcontext: add more functionality to wrapped contexts
Matthew Waters [Thu, 30 Oct 2014 05:48:00 +0000 (16:48 +1100)]
glcontext: add more functionality to wrapped contexts

Implements get_current_context() and get_proc_address() for wrapped
contexts.

6 years agoglshader: advertise the default vertex and fragment shaders on desktop GL
Matthew Waters [Thu, 30 Oct 2014 01:43:09 +0000 (12:43 +1100)]
glshader: advertise the default vertex and fragment shaders on desktop GL

6 years agosatisfy gst-indent
Lubosz Sarnecki [Wed, 29 Oct 2014 11:22:14 +0000 (12:22 +0100)]
satisfy gst-indent

6 years agoglfiltercube: Fix typo in property description
Jan Schmidt [Wed, 29 Oct 2014 12:23:13 +0000 (22:23 +1000)]
glfiltercube: Fix typo in property description

6 years agoglmixer:fix incorrect parameter passed to handle_set_context
Wang Xin-yu (王昕宇) [Wed, 29 Oct 2014 00:27:57 +0000 (08:27 +0800)]
glmixer:fix incorrect parameter passed to handle_set_context

6 years agoglfilter: get the config from the correct pool
Matthew Waters [Tue, 28 Oct 2014 07:27:11 +0000 (18:27 +1100)]
glfilter: get the config from the correct pool

6 years agoglfilter: avoid uninitialized variable size when chaining multiple glfilters
Matthew Waters [Tue, 28 Oct 2014 07:01:27 +0000 (18:01 +1100)]
glfilter: avoid uninitialized variable size when chaining multiple glfilters

https://bugzilla.gnome.org/show_bug.cgi?id=739277

6 years agoglfilter: gst-indent file
Matthew Waters [Tue, 28 Oct 2014 07:01:01 +0000 (18:01 +1100)]
glfilter: gst-indent file

6 years agoglcontext: add api for retreiving the current context and api
Matthew Waters [Tue, 28 Oct 2014 06:31:37 +0000 (17:31 +1100)]
glcontext: add api for retreiving the current context and api

that is current in the calling thread.

6 years agoglprototypes: add vertex attribute array definitions
Matthew Waters [Tue, 21 Oct 2014 08:03:08 +0000 (19:03 +1100)]
glprototypes: add vertex attribute array definitions

6 years agoglmixer: override the caps query in order to 'convert' capsfeatures
Matthew Waters [Thu, 23 Oct 2014 13:35:22 +0000 (00:35 +1100)]
glmixer: override the caps query in order to 'convert' capsfeatures

Otherwise, it is only possible for the sink pads and the src pads to
have the exact same caps features.  We can convert from any feature
to another feature so support that.

6 years agoglmixer: override the accept caps query in order to 'convert' capsfeatures
Matthew Waters [Thu, 23 Oct 2014 12:55:48 +0000 (23:55 +1100)]
glmixer: override the accept caps query in order to 'convert' capsfeatures

Otherwise, it is only possible for the sink pads and the src pads to
have the exact same caps features.  We can convert from any feature
to another feature so support that.

6 years agogl: propogate other-context using GstContext
Matthew Waters [Thu, 14 Aug 2014 13:29:00 +0000 (23:29 +1000)]
gl: propogate other-context using GstContext

6 years agogl/cocoa: Fix compiler warning
Sebastian Dröge [Tue, 21 Oct 2014 14:21:08 +0000 (16:21 +0200)]
gl/cocoa: Fix compiler warning

gstglwindow_cocoa.m: In function '-[GstGLNSView drawRect:]':
gstglwindow_cocoa.m:555: warning: 'GstGLNSView' may not respond to '-reshape'
gstglwindow_cocoa.m:555: warning: (Messages without a matching method signature
gstglwindow_cocoa.m:555: warning: will be assumed to return 'id' and accept
gstglwindow_cocoa.m:555: warning: '...' as arguments.)

6 years agoglmixer: fixup eglimage include path
Matthew Waters [Mon, 20 Oct 2014 19:04:10 +0000 (06:04 +1100)]
glmixer: fixup eglimage include path

6 years agoglbufferpool: add the GstVideoGLTextureUploadMeta buffer pool option
Matthew Waters [Sat, 18 Oct 2014 08:03:43 +0000 (10:03 +0200)]
glbufferpool: add the GstVideoGLTextureUploadMeta buffer pool option

6 years agovideoaggregator: operate on caps rather than video info
Matthew Waters [Sun, 19 Oct 2014 23:34:27 +0000 (10:34 +1100)]
videoaggregator: operate on caps rather than video info

Otherwise the CapsFeatures will be lost along with the possibility
of multiple output types and formats.

https://bugzilla.gnome.org/show_bug.cgi?id=738129

6 years agoglcolorconvert: support RGB16/BGR16 video format upload
Wang Xin-yu (王昕宇) [Mon, 20 Oct 2014 07:02:28 +0000 (15:02 +0800)]
glcolorconvert: support RGB16/BGR16 video format upload

https://bugzilla.gnome.org/show_bug.cgi?id=738842

6 years agogl/cocoa: Fix for building on Mac OS X 10.10
Brion Vibber [Sat, 18 Oct 2014 04:26:52 +0000 (21:26 -0700)]
gl/cocoa: Fix for building on Mac OS X 10.10

Using NSApp directly seems to confuse something, as the compiler
was expecting an id<NSFileManagerDelegate>. Switched to using
[NSApplication sharedApplication], and specified the delegate
protocol on the window class as well.

https://bugzilla.gnome.org/show_bug.cgi?id=738740

6 years agogldeinterlace: ref the uploaded buffer
Matthew Waters [Tue, 14 Oct 2014 12:00:11 +0000 (14:00 +0200)]
gldeinterlace: ref the uploaded buffer

Instead of the possibly non-GL input buffer.

6 years agoglfilter: add uploaded_buffer field
Matthew Waters [Tue, 14 Oct 2014 14:41:51 +0000 (16:41 +0200)]
glfilter: add uploaded_buffer field

6 years agoglimagesink: Only finalize the other context in finalize()
Sebastian Dröge [Mon, 13 Oct 2014 11:28:57 +0000 (13:28 +0200)]
glimagesink: Only finalize the other context in finalize()

Otherwise we change a value of a property when going to READY state,
which is unexpected behaviour.

6 years agoglmixer: Call the pad's parent class finalize method
Sebastian Dröge [Mon, 13 Oct 2014 11:27:55 +0000 (13:27 +0200)]
glmixer: Call the pad's parent class finalize method

6 years agoglmixer: Only finalize the other context in finalize()
Sebastian Dröge [Mon, 13 Oct 2014 11:27:11 +0000 (13:27 +0200)]
glmixer: Only finalize the other context in finalize()

Otherwise we change a value of a property when going to READY state,
which is unexpected behaviour.

6 years agogltestsrc: Add other-context property
Sebastian Dröge [Mon, 13 Oct 2014 11:25:42 +0000 (13:25 +0200)]
gltestsrc: Add other-context property

6 years agoglimagesink: Don't leak other-context
Sebastian Dröge [Mon, 13 Oct 2014 09:56:03 +0000 (11:56 +0200)]
glimagesink: Don't leak other-context

6 years agoglmixer: Add other-context property
Sebastian Dröge [Mon, 13 Oct 2014 09:53:47 +0000 (11:53 +0200)]
glmixer: Add other-context property

6 years agogl/cocoa: Add support for HiDPI displays
Sebastian Dröge [Thu, 9 Oct 2014 07:54:35 +0000 (10:54 +0300)]
gl/cocoa: Add support for HiDPI displays

Without this our GL surface would be upscaled after rendering
by Cocoa, which would reduce image quality.

6 years agoglcolorconvert: output why we cannot convert a buffer
Matthew Waters [Thu, 9 Oct 2014 01:28:11 +0000 (12:28 +1100)]
glcolorconvert: output why we cannot convert a buffer

6 years agoglcolorconvert: fix planar YUV download
Matthew Waters [Thu, 9 Oct 2014 01:25:55 +0000 (12:25 +1100)]
glcolorconvert: fix planar YUV download

- sample the u and v planes properly
- output the correctly scaled u and v planes for different chroma block sizes

6 years agogloverlay: And fix another unused variable compiler warning
Vivia Nikolaidou [Wed, 8 Oct 2014 18:51:12 +0000 (21:51 +0300)]
gloverlay: And fix another unused variable compiler warning

6 years agogloverlay: Fix unused variable compiler warning when compiling without desktop GL
Vivia Nikolaidou [Wed, 8 Oct 2014 18:49:25 +0000 (21:49 +0300)]
gloverlay: Fix unused variable compiler warning when compiling without desktop GL

6 years agogltestsrc: implement checkers pattern with GLSL
Wang Xin-yu (王昕宇) [Sun, 28 Sep 2014 02:51:09 +0000 (10:51 +0800)]
gltestsrc: implement checkers pattern with GLSL

https://bugzilla.gnome.org/show_bug.cgi?id=737505

6 years agoglcolorconvert: fix UYVY download green screen
Matthew Waters [Tue, 7 Oct 2014 12:04:30 +0000 (23:04 +1100)]
glcolorconvert: fix UYVY download green screen

6 years agoglcolrconvert: fix YUY2 download
Matthew Waters [Tue, 7 Oct 2014 11:50:22 +0000 (22:50 +1100)]
glcolrconvert: fix YUY2 download

- The shader was outputing the wrong values compared with raw
  videotestsrc.
- deal with the texture edge properly.
- properly sample the 2x1 rectangle for the u and v values
- don't double sample the y value

6 years agogl/cocoa: Always update our viewport if Cocoa tells us something has changed
Sebastian Dröge [Wed, 1 Oct 2014 13:04:36 +0000 (16:04 +0300)]
gl/cocoa: Always update our viewport if Cocoa tells us something has changed

The visible rect and bounds might be the same as before, but Cocoa
might've changed our viewport without us nothing. This happens if
you hide the view and show it again.

6 years agogl/cocoa: Handle NSView::renewGState() properly
Sebastian Dröge [Wed, 1 Oct 2014 08:55:13 +0000 (11:55 +0300)]
gl/cocoa: Handle NSView::renewGState() properly

Don't update the screen until we redraw, this prevents flickering during
scrolling, clipping, resizing, etc

6 years agogltransformation: graphene multiplication order has changed
Lubosz Sarnecki [Thu, 25 Sep 2014 15:01:31 +0000 (17:01 +0200)]
gltransformation: graphene multiplication order has changed

https://bugzilla.gnome.org/show_bug.cgi?id=733510

6 years agoglvideomixer: update element documentation
Matthew Waters [Tue, 30 Sep 2014 10:39:36 +0000 (20:39 +1000)]
glvideomixer: update element documentation

6 years agotests/glcolorconvert: do reorder checking for rgba formats
Matthew Waters [Tue, 30 Sep 2014 08:26:34 +0000 (18:26 +1000)]
tests/glcolorconvert: do reorder checking for rgba formats

6 years agoglcolorconvert: convert xRGB into ARGB properly
Matthew Waters [Tue, 30 Sep 2014 04:46:14 +0000 (14:46 +1000)]
glcolorconvert: convert xRGB into ARGB properly

The alpha channel might not be the last component so check which one
it is in and clobber that one instead.

6 years agotests/glmemory: add simple transfer test
Matthew Waters [Mon, 29 Sep 2014 15:45:20 +0000 (01:45 +1000)]
tests/glmemory: add simple transfer test

tests transferring to/from the GL with a 1x1 RGBA pixel.

6 years agoglmemory: unset the opposite corresponding transfer flags when mapped with write
Matthew Waters [Mon, 29 Sep 2014 15:38:05 +0000 (01:38 +1000)]
glmemory: unset the opposite corresponding transfer flags when mapped with write

fixes consistency with consecutive gst_memory_map()'s with
flags & GST_MAP_WRITE

6 years agogl/cocoa: Update viewport according to the current clipping
Sebastian Dröge [Mon, 29 Sep 2014 06:33:42 +0000 (09:33 +0300)]
gl/cocoa: Update viewport according to the current clipping

We have to update the GL viewport if the NSView is only partially
visible. Otherwise the content of the frame will be visibly offset.

6 years agogl/cocoa: Improve the NSApplication initialization
Sebastian Dröge [Mon, 29 Sep 2014 07:49:46 +0000 (10:49 +0300)]
gl/cocoa: Improve the NSApplication initialization

This is only for non-Cocoa apps but previously caused a 2 second
waiting during startup for Cocoa apps. This is unacceptable.

Instead we now check a bit more extensive if something actually
runs on the GLib default main context, and if not don't even
bother waiting for something to happen from there.

6 years agogl/cocoa: NSView::drawRect() should call into reshape too
Sebastian Dröge [Mon, 29 Sep 2014 06:24:49 +0000 (09:24 +0300)]
gl/cocoa: NSView::drawRect() should call into reshape too

We a) need to render again because part of the window was
obscured and b) might need to reshape because of clipping
changes.

6 years agogl/cocoa: Call UI related API from the application main thread
Sebastian Dröge [Fri, 26 Sep 2014 11:21:46 +0000 (14:21 +0300)]
gl/cocoa: Call UI related API from the application main thread

6 years agogl/cocoa: Switch to a plain NSView subclass instead of NSOpenGLView
Sebastian Dröge [Fri, 26 Sep 2014 10:05:27 +0000 (13:05 +0300)]
gl/cocoa: Switch to a plain NSView subclass instead of NSOpenGLView

We don't and can't use NSOpenGLView as it's supposed to be used and
it gets into our way by being to clever in various situations.

6 years agoglcontext: Initialize variable
Edward Hervey [Mon, 29 Sep 2014 06:54:29 +0000 (08:54 +0200)]
glcontext: Initialize variable

Avoids the following warning:

gstglcontext.c:647:58: error: 'prev' may be used uninitialized in
 this function [-Werror=maybe-uninitialized]

6 years agoexamples: Fix Qt/GL qglwtextureshare example for X11
Jan Schmidt [Sun, 28 Sep 2014 14:23:57 +0000 (00:23 +1000)]
examples: Fix Qt/GL qglwtextureshare example for X11

We need to pass the X11 display to GstGL or else it will
use its own X11 Display pointer, and the GL Context won't get shared
correctly on newer X servers

6 years agoexamples: port GL/Qt examples to Qt5
Jan Schmidt [Sun, 28 Sep 2014 10:21:50 +0000 (20:21 +1000)]
examples: port GL/Qt examples to Qt5

Update the GL Qt integration examples for Qt5 changes and for GstGL
signal signature changes.

6 years agoglcontext: fixup error in sharegroup comment
Matthew Waters [Sun, 28 Sep 2014 14:32:05 +0000 (00:32 +1000)]
glcontext: fixup error in sharegroup comment

6 years agoRevert accidental push: "gltestsrc: implement checkers pattern with GLSL"
Matthew Waters [Sun, 28 Sep 2014 14:27:30 +0000 (00:27 +1000)]
Revert accidental push: "gltestsrc: implement checkers pattern with GLSL"

This reverts commit eae09179f0b4eb584c8fc7b6560d8fc8e86eed4c.

6 years agoglcontext: detect the sharegroup case where the context are in different chains
Matthew Waters [Sun, 28 Sep 2014 14:24:28 +0000 (00:24 +1000)]
glcontext: detect the sharegroup case where the context are in different chains

In the end they will lead to the same root context in the tree so check that
for equality.

6 years agogltestsrc: implement checkers pattern with GLSL
Wang Xin-yu (王昕宇) [Sun, 28 Sep 2014 02:51:09 +0000 (10:51 +0800)]
gltestsrc: implement checkers pattern with GLSL

6 years agoglfilter: silence a warning with empty input caps
Matthew Waters [Sun, 28 Sep 2014 11:18:32 +0000 (21:18 +1000)]
glfilter: silence a warning with empty input caps

discovered with the doublecube example

gst_caps_get_features: assertion 'index < GST_CAPS_LEN (caps)' failed

6 years agoexamples/gl: update for signal signature change
Matthew Waters [Sun, 28 Sep 2014 10:37:04 +0000 (20:37 +1000)]
examples/gl: update for signal signature change

6 years agogloverlay: fix zero output frames with YUY2/UYVY
Matthew Waters [Fri, 26 Sep 2014 12:29:56 +0000 (22:29 +1000)]
gloverlay: fix zero output frames with YUY2/UYVY

also, be nice and disable blending for other elements

6 years agogloverlay: protect desktop gl specific tokens with #if
Matthew Waters [Fri, 26 Sep 2014 12:22:06 +0000 (22:22 +1000)]
gloverlay: protect desktop gl specific tokens with #if

6 years agogloverlay: free the image memory every time the location changes
Matthew Waters [Fri, 26 Sep 2014 02:28:10 +0000 (12:28 +1000)]
gloverlay: free the image memory every time the location changes

fixes a memory leak

6 years agogloverlay: Include into the build with GLES2 only too
Sebastian Dröge [Thu, 25 Sep 2014 17:48:59 +0000 (20:48 +0300)]
gloverlay: Include into the build with GLES2 only too

6 years agogltestsrc: free the shader on stop
Matthew Waters [Thu, 25 Sep 2014 15:45:22 +0000 (01:45 +1000)]
gltestsrc: free the shader on stop