Ramprakash Jelari [Thu, 4 Dec 2014 15:07:51 +0000 (20:37 +0530)]
gl: Rename gst-launch-0.10 to gst-launch-1.0 in docs
Philippe Normand [Wed, 3 Dec 2014 14:30:43 +0000 (15:30 +0100)]
glsyncmeta: add G_END_DECLS
Julien Isorce [Wed, 3 Dec 2014 08:02:58 +0000 (08:02 +0000)]
glcontext: try cgl before glx
It was already done by commit
f506e80686eedc66912583db11914ec3f713b478
but it has been broken by commit
45ec777cea0e69b2597d1ec02b18ec31d618c920
Thijs Vermeir [Mon, 1 Dec 2014 09:59:32 +0000 (10:59 +0100)]
gl/cocoa: Fix example 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.
Similar to https://bugzilla.gnome.org/show_bug.cgi?id=738740
Matthew Waters [Sat, 29 Nov 2014 13:42:17 +0000 (00:42 +1100)]
glcontext: require GL_ARB_ES2_compatibility for opengl3
until we generate gl3 compliant shaders
https://bugzilla.gnome.org/show_bug.cgi?id=740012
Matthew Waters [Sat, 29 Nov 2014 13:18:55 +0000 (00:18 +1100)]
glimagesink: properly handle the !opengl3 case
https://bugzilla.gnome.org/show_bug.cgi?id=740012
Tim-Philipp Müller [Fri, 28 Nov 2014 16:04:54 +0000 (16:04 +0000)]
glfilterapp: fix unused variable compiler warning
When GST_GL_HAVE_OPENGL is 0 or unset.
Matthew Waters [Fri, 28 Nov 2014 03:08:40 +0000 (14:08 +1100)]
glfilterapp is now available on gles2 as well so build it
Matthew Waters [Fri, 28 Nov 2014 02:04:21 +0000 (13:04 +1100)]
gl: fixup compat definition for GLuint64 for OS X
Matthew Waters [Fri, 28 Nov 2014 00:56:10 +0000 (11:56 +1100)]
gl: add compat definition for GLuint64 for android
../../../../gst-libs/gst/gl/glprototypes/sync.h:41:23: error: unknown type name 'GLuint64'
GLuint64 timeout))
Matthew Waters [Fri, 28 Nov 2014 00:11:43 +0000 (11:11 +1100)]
glsync: fix build with desktop gl
Matthew Waters [Fri, 28 Nov 2014 00:04:22 +0000 (11:04 +1100)]
gl: fix typo in #if
GST_GL_API_HAVE_OPENGL doesn't exist
Matthew Waters [Thu, 27 Nov 2014 23:59:46 +0000 (10:59 +1100)]
gl: fix various build errors without desktop gl
Matthew Waters [Thu, 27 Nov 2014 23:03:18 +0000 (10:03 +1100)]
gldisplay: fix build error
gstgldisplay.c:234:541: error: 'return' with no value, in function returning non-void [-Werror]
g_return_if_fail (GST_IS_GL_DISPLAY (display));
Matthew Waters [Thu, 27 Nov 2014 10:05:45 +0000 (21:05 +1100)]
gldisplay: implement runtime GL api filtering
Needed so that the pipeline/application can limit the choice of GL api
to what it supports
Matthew Waters [Thu, 27 Nov 2014 05:17:50 +0000 (16:17 +1100)]
gl: remove the use of glu
Matthew Waters [Fri, 17 Oct 2014 13:22:24 +0000 (15:22 +0200)]
gl: add a sync meta for synchronizing across GL contexts
A context can create a GLsync object that can be waited on in order
to ensure that GL resources created in one context are able to be
used in another shared context without any chance of reading invalid
data.
This meta would be placed on buffers that are known to cross from
one context to another. The receiving element would then wait
on the sync object to ensure that the data to be used is complete.
Matthew Waters [Fri, 17 Oct 2014 13:08:29 +0000 (15:08 +0200)]
glprototypes: add sync function definitions
Matthew Waters [Mon, 17 Nov 2014 07:06:20 +0000 (18:06 +1100)]
glfilterapp: port to gles2 and gl3
Matthew Waters [Fri, 14 Nov 2014 12:24:48 +0000 (23:24 +1100)]
gloverlay: support gl3
Matthew Waters [Thu, 13 Nov 2014 13:20:10 +0000 (00:20 +1100)]
glvideomixer: add support for gl3
Matthew Waters [Thu, 13 Nov 2014 10:30:38 +0000 (21:30 +1100)]
glfiltercube: add a gl3 code path
Matthew Waters [Thu, 13 Nov 2014 04:09:04 +0000 (15:09 +1100)]
glfiltershader: support gl3
Matthew Waters [Thu, 13 Nov 2014 01:12:46 +0000 (12:12 +1100)]
gltransformation: support gl3
Matthew Waters [Wed, 12 Nov 2014 12:48:32 +0000 (23:48 +1100)]
gleffects: support gl3 whereever gles2 is supported
Matthew Waters [Wed, 12 Nov 2014 12:47:13 +0000 (23:47 +1100)]
glcolorscale: support gl3
Matthew Waters [Wed, 12 Nov 2014 11:49:11 +0000 (22:49 +1100)]
glfilter: add a gl3 code path using vao's and vbo's
Matthew Waters [Wed, 12 Nov 2014 11:48:04 +0000 (22:48 +1100)]
glframebuffer: add support for gl3
Matthew Waters [Thu, 23 Oct 2014 11:35:20 +0000 (22:35 +1100)]
glcolorconvert: add support for gl3
Matthew Waters [Tue, 21 Oct 2014 11:18:51 +0000 (22:18 +1100)]
glimagesink: use vbo's and vao's for gl3
Matthew Waters [Tue, 21 Oct 2014 08:30:38 +0000 (19:30 +1100)]
glshader add support for gl3
Matthew Waters [Sun, 19 Oct 2014 04:09:37 +0000 (08:09 +0400)]
glx: ask for a GL3 core context
Thibault Saunier [Wed, 26 Nov 2014 17:24:05 +0000 (18:24 +0100)]
videoaggregator: Expose vmethods to set converters and prepare/clean frames
This gives more flexibility to the subclasses and permits to remove the
GstVideoAggregatorClass->disable_frame_conversion ugly API.
WARNING: This breaks the API as it removes the disable_frame_conversion
field
API:
+ GstVideoAggregatorClass->find_best_format
+ GstVideoAggregatorPadClass->set_format
+ GstVideoAggregatorPadClass->prepare_frame
+ GstVideoAggregatorPadClass->clean_frame
- GstVideoAggregatorClass->disable_frame_conversion
https://bugzilla.gnome.org/show_bug.cgi?id=740768
Sebastian Dröge [Thu, 27 Nov 2014 17:09:58 +0000 (18:09 +0100)]
glcolorconvert: Unref buffer with the correct function
Sebastian Dröge [Thu, 27 Nov 2014 17:09:14 +0000 (18:09 +0100)]
glmemory: Handle failure of memory allocation gracefully
Sebastian Dröge [Thu, 27 Nov 2014 17:04:58 +0000 (18:04 +0100)]
glmemory: Use g_try_malloc() in the appropriate places
g_malloc() aborts if allocation fails, it's pointless to check against NULL
afterwards. That's why g_try_malloc() exists.
Wang Xin-yu (王昕宇) [Thu, 27 Nov 2014 02:48:43 +0000 (10:48 +0800)]
glcolorconvert: support RGB16/BGR16 video format download
https://bugzilla.gnome.org/show_bug.cgi?id=740801
Matthew Waters [Thu, 27 Nov 2014 02:01:19 +0000 (13:01 +1100)]
glimagesink: only attempt a resize when the window has already resized
fixes a black startup screen on wayland
Matthew Waters [Thu, 27 Nov 2014 00:47:38 +0000 (11:47 +1100)]
gl/wayland: implement resizing the window using the right mouse button
Matthew Waters [Wed, 26 Nov 2014 14:27:19 +0000 (01:27 +1100)]
glfilter: support fixed dimensions on both sides of the element
Fixes:
width=320,height=240 ! glfilter ! width=800,height=600
width=230,height=240 ! glfilter ! width=600
... ! glfilter ! width=800
Ramprakash Jelari [Mon, 24 Nov 2014 13:10:53 +0000 (18:40 +0530)]
glcontext: Fix unused variable warning by moving declaration where it is actually used
Sebastian Dröge [Mon, 24 Nov 2014 10:32:33 +0000 (11:32 +0100)]
glupload: Fix valid compiler warning
gstglupload.c:442:32: error: if statement has empty body [-Werror,-Wempty-body]
if (upload->texture_ids[i]);
^
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
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.
Matthew Waters [Sun, 23 Nov 2014 15:52:24 +0000 (02:52 +1100)]
glshadervariables: also trim \r as well as \n
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.
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
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
Matthew Waters [Mon, 17 Nov 2014 07:50:28 +0000 (18:50 +1100)]
glfilter: add read-only context property
Matthew Waters [Mon, 17 Nov 2014 07:50:04 +0000 (18:50 +1100)]
glmixer: add read-only context property
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
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
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.
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
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
Hyunjun Ko [Tue, 11 Nov 2014 08:04:48 +0000 (17:04 +0900)]
gl: Correct invalid comment text
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
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
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.
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
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
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.
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).
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
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
Matthew Waters [Thu, 6 Nov 2014 07:37:23 +0000 (18:37 +1100)]
glcontext: fail context creation if glGetString returns NULL
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
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
Julien Isorce [Mon, 3 Nov 2014 23:08:09 +0000 (23:08 +0000)]
gl/cocoa: include gl3.h to have GL_CONTEXT_PROFILE_MASK
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.
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.
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.)
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()
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
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
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.
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
Matthew Waters [Fri, 31 Oct 2014 01:30:53 +0000 (12:30 +1100)]
gl: sprinkle some Since markers
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.
Matthew Waters [Thu, 30 Oct 2014 07:57:59 +0000 (18:57 +1100)]
gl/examples: update for other-context property removal
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.
Matthew Waters [Thu, 30 Oct 2014 01:43:09 +0000 (12:43 +1100)]
glshader: advertise the default vertex and fragment shaders on desktop GL
Lubosz Sarnecki [Wed, 29 Oct 2014 11:22:14 +0000 (12:22 +0100)]
satisfy gst-indent
Jan Schmidt [Wed, 29 Oct 2014 12:23:13 +0000 (22:23 +1000)]
glfiltercube: Fix typo in property description
Wang Xin-yu (王昕宇) [Wed, 29 Oct 2014 00:27:57 +0000 (08:27 +0800)]
glmixer:fix incorrect parameter passed to handle_set_context
Matthew Waters [Tue, 28 Oct 2014 07:27:11 +0000 (18:27 +1100)]
glfilter: get the config from the correct pool
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
Matthew Waters [Tue, 28 Oct 2014 07:01:01 +0000 (18:01 +1100)]
glfilter: gst-indent file
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.
Matthew Waters [Tue, 21 Oct 2014 08:03:08 +0000 (19:03 +1100)]
glprototypes: add vertex attribute array definitions
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.
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.
Matthew Waters [Thu, 14 Aug 2014 13:29:00 +0000 (23:29 +1000)]
gl: propogate other-context using GstContext
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.)
Matthew Waters [Mon, 20 Oct 2014 19:04:10 +0000 (06:04 +1100)]
glmixer: fixup eglimage include path
Matthew Waters [Sat, 18 Oct 2014 08:03:43 +0000 (10:03 +0200)]
glbufferpool: add the GstVideoGLTextureUploadMeta buffer pool option
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
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
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
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.