Julien Isorce [Tue, 6 May 2014 10:21:56 +0000 (11:21 +0100)]
gl: use GST_CAT_ERROR instead of GST_ERROR_OBJECT
It fixes segault when GST_DEBUG is at least level 1 and eglCreateImage fails
Julien Isorce [Tue, 6 May 2014 09:14:26 +0000 (10:14 +0100)]
gl: delete texture used with GstVideoGLTextureUploadMeta
Julien Isorce [Tue, 6 May 2014 13:23:34 +0000 (14:23 +0100)]
gl: use gst_gl_context_gen_shader helper instead of duplicating code
Luis de Bethencourt [Tue, 6 May 2014 13:55:05 +0000 (09:55 -0400)]
pnmenc: remove empty line
Remove trailing empty line from commit
bfdc54395238c04fc6e5b51880c2d706f33e9011
https://bugzilla.gnome.org/show_bug.cgi?id=729614
Jesper Larsen [Wed, 20 Nov 2013 11:16:17 +0000 (12:16 +0100)]
mpegtsmux: Remove unused data in TsMuxSection
https://bugzilla.gnome.org/show_bug.cgi?id=721685
Matthew Waters [Tue, 6 May 2014 11:17:59 +0000 (21:17 +1000)]
tests: reenable camerabin element test
Matthew Waters [Tue, 6 May 2014 06:39:06 +0000 (16:39 +1000)]
gl/display: clean up pre gstglcontext api and struct fields
https://bugzilla.gnome.org/show_bug.cgi?id=729551
Matthew Waters [Tue, 6 May 2014 07:27:15 +0000 (17:27 +1000)]
gl/display: add get_handle_type
https://bugzilla.gnome.org/show_bug.cgi?id=729551
Matthew Waters [Tue, 6 May 2014 07:08:18 +0000 (17:08 +1000)]
gl/display: avoid opening the X11 display on systems with Cocoa (OS X)
https://bugzilla.gnome.org/show_bug.cgi?id=729551
Matthew Waters [Tue, 6 May 2014 06:39:55 +0000 (16:39 +1000)]
gl/window: fix string length check for eagl
Matthew Waters [Tue, 6 May 2014 06:31:28 +0000 (16:31 +1000)]
gl/display: check the correct env variable for choosing an egl display
GST_GL_WINDOW is used for window system specific choices.
An EGLDisplay can be created from window systems with egl support by using
eglGetDisplay().
https://bugzilla.gnome.org/show_bug.cgi?id=729551
Edward Hervey [Tue, 6 May 2014 10:56:25 +0000 (12:56 +0200)]
gl/cocoa: Use OBJCFLAGS where needed
Should fix usage of c-compiler-only flags with an objective-c compiler
Tim-Philipp Müller [Tue, 6 May 2014 08:48:58 +0000 (09:48 +0100)]
pnmenc: fix flow return and buffer leak in not-negotiated case
https://bugzilla.gnome.org/show_bug.cgi?id=729614
Tim-Philipp Müller [Tue, 6 May 2014 08:40:01 +0000 (09:40 +0100)]
tests: add new vp8parser-test binary to .gitignore
Olivier Crête [Mon, 5 May 2014 21:20:45 +0000 (17:20 -0400)]
srtpdec: Don't reset stream if the key hasn't changed
Olivier Crête [Mon, 5 May 2014 21:00:02 +0000 (17:00 -0400)]
srtpdec: Add "remove-key" action signal to remove a single key
Removing all the keys can be a problem as it also resets the various
counters, so instead add an option to remove a single key.
Olivier Crête [Tue, 6 May 2014 02:25:08 +0000 (22:25 -0400)]
srtpenc: Use %u in templates to match rtpbin
Olivier Crête [Tue, 6 May 2014 04:11:26 +0000 (00:11 -0400)]
srtpdec: Remove unused field
Sanjay NM [Tue, 6 May 2014 03:53:13 +0000 (09:23 +0530)]
Fix for not checking zero width and height
Signed-off-by: Sanjay NM <sanjay.nm@samsung.com>
https://bugzilla.gnome.org/show_bug.cgi?id=729614
Thiago Santos [Mon, 5 May 2014 14:13:09 +0000 (11:13 -0300)]
hlsdemux: Only set the segment position if there is a timestamp
Only the first buffer of a fragment has its timestamp set, so only
update the segment.position when pushing those buffers to avoid
having GST_CLOCK_TIME_NONE set to the position
https://bugzilla.gnome.org/show_bug.cgi?id=729364
Sebastian Dröge [Mon, 5 May 2014 10:30:32 +0000 (12:30 +0200)]
configure: Use the same includes for GL that we would use later in the code for checking if GLES2 and OpenGL headers can both be included
Matthew Waters [Mon, 5 May 2014 10:06:29 +0000 (20:06 +1000)]
gl: check if we can include both GL and GLES2 headers at the same time
If we cannot, then default to GL over GLES2 unless GLES2 is required.
Sebastian Dröge [Mon, 5 May 2014 07:46:06 +0000 (09:46 +0200)]
hlsdemux: Set Cache-Control header according to the caching requirements of the playlist
Sebastian Dröge [Mon, 5 May 2014 07:38:14 +0000 (09:38 +0200)]
mssdemux: Update for uri downloader API changes
Sebastian Dröge [Mon, 5 May 2014 07:37:44 +0000 (09:37 +0200)]
dashdemux: Update for uri downloader API changes
Sebastian Dröge [Mon, 5 May 2014 07:36:56 +0000 (09:36 +0200)]
uridownloader: Add parameter to disallow caching as required by HLS
Sebastian Dröge [Mon, 5 May 2014 07:34:56 +0000 (09:34 +0200)]
hls: Store allowcache playlist field in a boolean
Sebastian Dröge [Sun, 4 May 2014 20:22:14 +0000 (22:22 +0200)]
configure: Use the same #includes for checking GL types as later in the code
Luis de Bethencourt [Sun, 4 May 2014 01:38:42 +0000 (21:38 -0400)]
gl/clutter: safer check for cogl version
Use COGL_VERSION_ENCODE to check for the minimum required and maximum allowed
cogl version. In certain situations just using the COGL_VERSION_* macro name can
give you the following error:
error "COGL_VERSION_MAX_ALLOWED must be >= COGL_VERSION_MIN_REQUIRED"
Luis de Bethencourt [Sun, 4 May 2014 01:05:19 +0000 (21:05 -0400)]
gl/examples/generic: remove trailing whitespaces
Sebastian Dröge [Sat, 3 May 2014 18:48:33 +0000 (20:48 +0200)]
Back to development
Sebastian Dröge [Sat, 3 May 2014 16:16:21 +0000 (18:16 +0200)]
Release 1.3.1
Sebastian Dröge [Sat, 3 May 2014 16:16:07 +0000 (18:16 +0200)]
Update .po files
Sebastian Dröge [Sat, 3 May 2014 17:45:37 +0000 (19:45 +0200)]
examples: Fix CFLAGS in clutter GL examples
Sebastian Dröge [Sat, 3 May 2014 17:42:37 +0000 (19:42 +0200)]
examples: Add all gl subdirs to DIST_SUBDIRS to fix the build
Sebastian Dröge [Sat, 3 May 2014 15:24:17 +0000 (17:24 +0200)]
po: Update translations
Sebastian Dröge [Sat, 3 May 2014 11:12:40 +0000 (13:12 +0200)]
mfc: Remove mfc plugin, it is obsoleted by the v4l2videodec element from gst-plugins-good
Sebastian Dröge [Sat, 3 May 2014 10:02:27 +0000 (12:02 +0200)]
mpegtsmux: Use complete caps for setting up the streams in the test
Sebastian Dröge [Sat, 3 May 2014 08:15:16 +0000 (10:15 +0200)]
Automatic update of common submodule
From bcb1518 to 211fa5f
Per x Johansson [Wed, 19 Mar 2014 08:22:08 +0000 (09:22 +0100)]
watchdog: Add handling of PAUSED state
Also allow disabling the timeout by setting it to 0.
https://bugzilla.gnome.org/show_bug.cgi?id=726156
Olivier Crête [Fri, 2 May 2014 21:27:56 +0000 (17:27 -0400)]
srtpenc: Add config for the replay window size
Olivier Crête [Fri, 2 May 2014 21:24:47 +0000 (17:24 -0400)]
srtpenc: Remove unused object members
Olivier Crête [Fri, 2 May 2014 21:19:21 +0000 (17:19 -0400)]
srtpenc: Remove useless structure
Remove now useless structure
Olivier Crête [Fri, 2 May 2014 21:14:14 +0000 (17:14 -0400)]
srtpenc: Remove ssrc parsing from stream
It's no longer used
Olivier Crête [Fri, 2 May 2014 21:13:54 +0000 (17:13 -0400)]
srtpenc: Remove SSRC from signal, it's meaningless
Olivier Crête [Fri, 2 May 2014 21:07:21 +0000 (17:07 -0400)]
srtpenc: Set the SRTP key as a shared key for all SSRCs
This is already how it was used.
Blake Tregre [Fri, 2 May 2014 12:20:58 +0000 (14:20 +0200)]
rfbsrc: Send stream-start event in the beginning
https://bugzilla.gnome.org/show_bug.cgi?id=726802
Sebastian Dröge [Fri, 2 May 2014 08:44:41 +0000 (10:44 +0200)]
hlsdemux: Update for URI downloader API changes
And make sure to set refresh=TRUE when updating the playlist.
Sebastian Dröge [Fri, 2 May 2014 08:43:06 +0000 (10:43 +0200)]
mssdemux: Update for URI downloader API changes
And include the manifest file as referer in requests, and make sure
to set refresh=TRUE when updating the manifest.
Sebastian Dröge [Fri, 2 May 2014 08:39:22 +0000 (10:39 +0200)]
dashdemux: Update for URI downloader API changes
And include the MPD file as referer in requests, and make sure
to set refresh=TRUE when updating the MPD.
Sebastian Dröge [Fri, 2 May 2014 08:36:21 +0000 (10:36 +0200)]
uridownloader: Add refresh parameter to hint caches that they should check if they're up to date
Matthew Waters [Fri, 2 May 2014 05:56:59 +0000 (15:56 +1000)]
gl: use the bufferpool's upload when available
Avoids duplicating GL resources
https://bugzilla.gnome.org/show_bug.cgi?id=728872
Julien Isorce [Fri, 2 May 2014 04:57:00 +0000 (05:57 +0100)]
gl: show internal cocoa window on top of others
Useful when your OSX terminal is fullscreen
https://bugzilla.gnome.org/show_bug.cgi?id=728127
Julien Isorce [Fri, 2 May 2014 04:51:36 +0000 (05:51 +0100)]
gl: pass NSView instead of NSWindow in cocoa-videooverlay example
https://bugzilla.gnome.org/show_bug.cgi?id=728451
Julien Isorce [Fri, 2 May 2014 04:50:18 +0000 (05:50 +0100)]
gl: add copyright to cocoa example
Julien Isorce [Fri, 2 May 2014 04:46:18 +0000 (05:46 +0100)]
gl: rename cocoa example and move it to its parent directory
Julien Isorce [Fri, 2 May 2014 04:29:41 +0000 (05:29 +0100)]
gl: remove unuseful README for cocoa example
Matthew Waters [Thu, 1 May 2014 06:07:05 +0000 (16:07 +1000)]
gl/pool: init the upload object on start
Theoretically, set_config could be called multiple times
Olivier Crête [Thu, 1 May 2014 23:16:35 +0000 (19:16 -0400)]
srtpdec: Only clear streams if they have been created
Olivier Crête [Thu, 1 May 2014 23:10:43 +0000 (19:10 -0400)]
srtpdec: Use object debug
Sebastian Dröge [Thu, 1 May 2014 13:59:28 +0000 (15:59 +0200)]
hlsdemux: Always succeed the LATENCY event
Upstream and our internal source is irrelevant for the latency
and we don't want the LATENCY event to ever fail.
Sebastian Dröge [Thu, 1 May 2014 13:56:55 +0000 (15:56 +0200)]
hlsdemux: Reset the last flow return before restarting the internal source
Otherwise we will never recover from previous errors, and especially
will never start again after a flushing seek if downstream returned
GST_FLOW_FLUSHING to us.
Sebastian Dröge [Thu, 1 May 2014 13:29:37 +0000 (15:29 +0200)]
hlsdemux: Only set PTS on the first buffer of a fragment instead of setting the same on all of them
Thiago Santos [Wed, 30 Apr 2014 20:59:28 +0000 (17:59 -0300)]
hlsdemux: Always flush the internal proxy pads before downloading
hlsdemux can't rely on the source to push flushes on a seek on ready
as that might not make sense. So always resort to flushing the
internal proxy pads by pushing flush events from the source's src pad.
Also as the seeking is not required anymore, only seek if there is
really a byte range to be used. And store a ref to the source's
src pad to avoid doing get_static_pad for every fragment.
Sebastian Dröge [Thu, 1 May 2014 12:36:54 +0000 (14:36 +0200)]
gl: Try harder to load symbols from the correct place
This commit makes the loading of the GModules threadsafe, and
always first tries to load the symbol for the GL library that
is selected for the current context. Only then it falls back
to looking into the current module (NULL), and only as a last
resort the context specific function (e.g. eglGetProcAddress())
is called.
Also add configure parameters to select the names of the library
modules instead of using the defaults, and let the defaults be
independent of the G_MODULE_SUFFIX.
https://bugzilla.gnome.org/show_bug.cgi?id=728753
Matthew Waters [Thu, 1 May 2014 04:11:00 +0000 (14:11 +1000)]
glcolorscale: fix operation with dual GL, GLES2 libgstgl
Matthew Waters [Thu, 1 May 2014 03:57:16 +0000 (13:57 +1000)]
gl/mem: implement texture copying between formats with strides properly
Previously, we used the width to determine the amount of data to be
copied using pbos. This, makes it allocate enough data for the
the strides as well.
Matthew Waters [Thu, 1 May 2014 02:51:06 +0000 (12:51 +1000)]
gl/mem: pad the public struct
Nicolas Dufresne [Wed, 30 Apr 2014 17:37:27 +0000 (18:37 +0100)]
gl: no need to provide full lib path to load symbols
- Make gstgl work on Mali
- Keep it work on RPI
- fallback to NULL name module if fails with usual lib name
https://bugzilla.gnome.org/show_bug.cgi?id=728753
Vincent Penquerc'h [Wed, 30 Apr 2014 09:05:15 +0000 (10:05 +0100)]
kate: avoid read buffer overflow in crafted stream
Coverity 1208777
Julien Isorce [Wed, 30 Apr 2014 16:30:06 +0000 (17:30 +0100)]
glcolorscale: use a shader on GLESv2
Otherwise you only see black frames
Fix https://bugzilla.gnome.org/show_bug.cgi?id=728947
Julien Isorce [Wed, 30 Apr 2014 14:30:53 +0000 (15:30 +0100)]
glimagesink: use new helper function to avoid duplicating default shader text
Julien Isorce [Wed, 30 Apr 2014 14:28:35 +0000 (15:28 +0100)]
gleffects: use new helper functions to avoid duplicating the same vertex shader text
And also use the default fragment shader text for the identity effect
Julien Isorce [Wed, 30 Apr 2014 14:20:23 +0000 (15:20 +0100)]
gl: add convenient functions to setup default vertex and fragment shaders
Most of our 2D filters use the same simple vertex shader.
Also define the default fragment shader as the identity.
Avoid duplicating the same vertex and fragment shader text.
Sebastian Dröge [Wed, 30 Apr 2014 06:53:19 +0000 (08:53 +0200)]
hlsdemux: Only unref pending buffer if there is one
Thiago Santos [Tue, 29 Apr 2014 21:15:05 +0000 (18:15 -0300)]
hlsdemux: Do not push last buffer after error
In decryption scenario, a buffer is always stored to be sent later
to wait for more data or EOS to be able to strip the final bytes
if requested. In case an error hapenned this buffer can be ignored
and not pushed downstream.
Thiago Santos [Tue, 29 Apr 2014 21:14:29 +0000 (18:14 -0300)]
hlsdemux: flush the adapter in the end of a fragment
In case of error there might be some data left in the
adapter when EOS is received. Clear the adapter to be
able to restart again later if requested.
Thiago Santos [Tue, 29 Apr 2014 21:14:14 +0000 (18:14 -0300)]
hlsdemux: handle more error cases
Handle some more error cases:
1) When the source element fails to go to ready
2) When decryption fails
3) When there is no source to handle a specific URI
4) When the URI is invalid
Thiago Santos [Tue, 29 Apr 2014 18:19:51 +0000 (15:19 -0300)]
hlsdemux: handle errors from internal source
Set up a message handling function to catch errors from the internal
source and store the last return code to identify error situations
when returning from a fragment download.
Also moves the duration increase to after the download when we
know if it was successful or not
Thiago Santos [Tue, 29 Apr 2014 18:17:00 +0000 (15:17 -0300)]
hlsdemux: Improve pad switching conditions
When using the internal source, hlsdemux doesn't know the caps of
the input before adding the pad, so remove the arguments that would
use that as it is always NULL.
And use an specific flag to signal when a pad switch is required.
Using the discont flag is a bad idea now because when a fragment
download fails it will lead to exposing a pad group without any
data, causing decodebin to abort.
Thiago Santos [Mon, 28 Apr 2014 23:01:48 +0000 (20:01 -0300)]
hlsdemux: properly flush decryption status on seeks
Avoids mixing decryption of different fragments when seeking happens
and leading to broken stream output.
Thiago Santos [Mon, 28 Apr 2014 22:10:02 +0000 (19:10 -0300)]
hlsdemux: Track fragments duration
When receving EOS from the internal src, increase the current positon
by the fragment duration to allow correct restoring of download position
if the bitrate changes
Thiago Santos [Fri, 25 Apr 2014 15:55:54 +0000 (12:55 -0300)]
hlsdemux: properly stop tasks by stopping fragment download
Issue a signal to the fragment download cond to stop
the task earlier
Thiago Santos [Fri, 25 Apr 2014 13:40:50 +0000 (10:40 -0300)]
hlsdemux: decrypt before typefinding
Make sure typefinding gets the decrypted content instead of
trying to typefind the encrypted data.
Thiago Santos [Fri, 25 Apr 2014 13:39:19 +0000 (10:39 -0300)]
hlsdemux: fix decryption function return
Correctly return the decrypted buffer when it succeeds and
return NULL otherwise
Thiago Santos [Tue, 22 Apr 2014 23:19:54 +0000 (20:19 -0300)]
hlsdemux: keep connection alive between downloads
Use the same properties as uridownloader to keep connections alive
between consecutive fragments downloads.
1) set keep-alive property to true
2) keep the element in READY instead of in NULL
Thiago Santos [Wed, 16 Apr 2014 23:02:35 +0000 (20:02 -0300)]
hlsdemux: create sources from uri
Instead of using always an http source, create it dynamically from
uri when needed. If not needed just replace the URI on the current
element
Thiago Santos [Wed, 16 Apr 2014 21:04:05 +0000 (18:04 -0300)]
hlsdemux: do not try to run typefind again if caps is the same
Always reset the do_typefind flag if hls did typefind because
trying it on non-zero offsets doesn't make sense and will cause
assertions
Thiago Santos [Wed, 16 Apr 2014 09:12:42 +0000 (06:12 -0300)]
hlsdemux: enable download bitrate measure
Measure the download bitrate to be able to select
the best playlist.
As the buffers are directly pushed downstream and it
might block. The time is only measured from the download
until the pad push and it is started again after the push
returns.
Thiago Santos [Tue, 8 Apr 2014 20:31:32 +0000 (17:31 -0300)]
hlsdemux: re-enable decryption after uridownloader removal
Now the decryption is done buffer by buffer instead of on the
whole fragment at once. As it expects multiples of 16 bytes a
GstAdapter was added to properly chunk the buffers.
Also the last buffer must be resized depending on the value of the
last byte of the fragment, so hlsdemux always keeps a pending buffer
as it doesn't know if it is the last one yet
Thiago Santos [Mon, 7 Apr 2014 16:57:26 +0000 (13:57 -0300)]
hlsdemux: replace uridownloader with a GstElement
The GstElement is directly linked into a ghost pad and
its buffers are pushed as received downstream. This way the
buffers are small enough and not a whole fragment that usually
causes extra latency and makes buffering harder
Philippe Normand [Tue, 29 Apr 2014 18:24:08 +0000 (19:24 +0100)]
gl: add missing G_BEGIN/END_DECLS in utils header
Thiago Santos [Tue, 29 Apr 2014 16:21:27 +0000 (13:21 -0300)]
examples: gl: add missing entry to cflags to find gst/gl/gl.h
Otherwise build fails
Stefan Sauer [Tue, 29 Apr 2014 14:44:59 +0000 (16:44 +0200)]
tests: drop direct include
It is only allowed to include gdk/gdkx.h and that will bring all the x11 things.
Stefan Sauer [Mon, 6 Jan 2014 21:13:21 +0000 (22:13 +0100)]
sndfile: send a toc for the segments in the audio file
Haakon Sporsheim (ieei) [Tue, 29 Apr 2014 15:06:00 +0000 (15:06 +0000)]
h264parse: unref/replace force_key_unit_event in gst_h264_parse_reset
https://bugzilla.gnome.org/show_bug.cgi?id=729200
Jan Schmidt [Tue, 29 Apr 2014 12:18:14 +0000 (22:18 +1000)]
gl/sdl example: Fix uninstalled build
Jan Schmidt [Wed, 23 Apr 2014 10:29:47 +0000 (20:29 +1000)]
gl: Reduce noisy Info level output to LOG
Matthew Waters [Tue, 29 Apr 2014 08:32:22 +0000 (18:32 +1000)]
gl/examples/sdl: update for the latest gstgl changes
Matthew Waters [Tue, 29 Apr 2014 06:38:55 +0000 (16:38 +1000)]
gl/examples: move to -bad
- fix all the compiler errors
- give them their own gl directory