Tim-Philipp Müller [Sat, 11 Apr 2015 11:12:57 +0000 (12:12 +0100)]
winks: fix debug message parameter format
The first part of the GUID structure is a DWORD
which is defined as an unsigned long, so we need
to either cast or use %08lx.
Olivier Crête [Sat, 11 Apr 2015 00:25:49 +0000 (20:25 -0400)]
pcapparse: Take buffer directly from the adapter
No need to make a copy into a new buffer, just take the data
from the adapter.
Olivier Crête [Sat, 11 Apr 2015 00:15:52 +0000 (20:15 -0400)]
pcapparse: Produce GstBufferList
Thiago Santos [Fri, 10 Apr 2015 19:23:25 +0000 (16:23 -0300)]
wrappercamerabinsrc: remove unused attribute and related pad probe
The variable was never set to true and can be removed along
with the probe in which it used to act
Anton Obzhirov [Tue, 31 Mar 2015 16:10:45 +0000 (17:10 +0100)]
glbasefilter: avoid segfault when gl platform is not available
https://bugzilla.gnome.org/show_bug.cgi?id=747124
Vincent Penquerc'h [Thu, 9 Apr 2015 15:20:44 +0000 (16:20 +0100)]
tests: fix type mismatch in varargs passing
A bitmask is 64 bits, but integer immediates are passed as int
in varargs, which happen to be 32 bit with high probability.
This triggered a valgrind jump-relies-on-uninitalized-value
report well away from the site, since it doesn't trigger on
stack accesses, and there must have been enough zeroes to stop
g_object_set at the right place.
Vincent Penquerc'h [Wed, 20 Aug 2014 12:46:12 +0000 (13:46 +0100)]
tsdemux: handle seeks with no target (ie, keep current position)
Such seeks are used to change playback rate and we do not want
to alter the position in that case, so we bypass the flush/seek
logic, and set things up so a new segment is scheduled to be
regenerated.
https://bugzilla.gnome.org/show_bug.cgi?id=735100
Vincent Penquerc'h [Thu, 26 Mar 2015 13:46:16 +0000 (13:46 +0000)]
tsparse: fix timestamps not updating after a PMT change
The PCRs stay locked onto the same PID as before the change,
but the relevant PID has no reason to be the same after it.
https://bugzilla.gnome.org/show_bug.cgi?id=745102
Vincent Penquerc'h [Tue, 24 Mar 2015 12:56:53 +0000 (12:56 +0000)]
tsdemux: send new segment when a stream is added
This will happen when the PMT changes, replacing streams with
new ones. In that case, we need to accumulate the running time
from the previous chain in the segment base.
https://bugzilla.gnome.org/show_bug.cgi?id=745102
Vincent Penquerc'h [Mon, 9 Mar 2015 09:56:38 +0000 (09:56 +0000)]
tsdemux: keep track of current position
This allows seeking to correctly set the base on the segment.
https://bugzilla.gnome.org/show_bug.cgi?id=745102
Edward Hervey [Thu, 9 Apr 2015 13:41:57 +0000 (15:41 +0200)]
check: Don't run the state change test on the dtls elements
There isn't really any way to test the elements standalone.
Sebastian Dröge [Thu, 9 Apr 2015 02:29:40 +0000 (19:29 -0700)]
videoaggregator: Remove broken timestamps-going-backwards check
This would've also triggered if for some reason the segment was updated
in such a way that PTS went backwards, but the running time increased. Like
what happens when non-flushing seeks are done.
We're doing a proper buffer-from-the-past check a few lines below based on the
running time, which is the only time we should care about here.
Andoni Morales Alastruey [Wed, 8 Apr 2015 16:51:50 +0000 (18:51 +0200)]
ksvideosrc: fix support for DV devices
Andoni Morales Alastruey [Tue, 10 Feb 2015 12:32:00 +0000 (13:32 +0100)]
ksvideosrc: only list capture devices
Edward Hervey [Wed, 8 Apr 2015 14:46:11 +0000 (16:46 +0200)]
tests: Use AM_TESTS_ENVIRONMENT
Needed by the new automake test runner
Arun Raghavan [Wed, 8 Apr 2015 05:22:17 +0000 (10:52 +0530)]
opensles: Explicitly specify layout=interleaved in caps
This is fine to hard-code. Section 9.1.8 of the OpenSL ES 1.1
specification, it is expected that multi-channel audio is always
interleaved.
Edward Hervey [Tue, 7 Apr 2015 13:57:30 +0000 (15:57 +0200)]
configure: Depend on openh264 >= 1.3.0
Required for the version check header, as agreed upon on IRC
Ilya Konstantinov [Sun, 5 Apr 2015 02:37:09 +0000 (05:37 +0300)]
avfvideosrc: fix setting of buffer offset end
Don't set offset end to random values off the stack.
https://bugzilla.gnome.org/show_bug.cgi?id=747352
Edward Hervey [Tue, 7 Apr 2015 09:09:38 +0000 (11:09 +0200)]
open264: Fix GType/gsize usage
gstopenh264enc.cpp:108:7: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
Edward Hervey [Tue, 7 Apr 2015 09:21:55 +0000 (11:21 +0200)]
openh264: Detect 1.4 API change
As mentionned in release notes : Added new Sps/Pps strategies for real-time
video (replace the old setting variable 'bEnableSpsPpsIdAddition' with
'eSpsPpsIdStrategy')
Sebastian Dröge [Tue, 7 Apr 2015 03:28:22 +0000 (20:28 -0700)]
glimagesink: Disconnect mouse/key event signal handlers from window when shutting down context
Sebastian Dröge [Tue, 7 Apr 2015 03:24:06 +0000 (20:24 -0700)]
glimagesink: Guard against disconnecting invalid signal ids
Guillaume Desmottes [Thu, 26 Mar 2015 10:52:33 +0000 (11:52 +0100)]
mxfdemux: fix memory leak
Reset the internal segment before freeing it.
mxf_index_table_segment_parse() allocates data inside the segment
(like segment->delta_entries) which have to be freed using
mxf_index_table_segment_reset().
https://bugzilla.gnome.org/show_bug.cgi?id=746803
Thiago Santos [Sat, 4 Apr 2015 13:56:56 +0000 (10:56 -0300)]
hlssink: write the playlist end marker on EOS
Catch EOS from the multifilesink and add the endlist marker to
the playlist when it happens
https://bugzilla.gnome.org/show_bug.cgi?id=747319
Reynaldo H. Verdejo Pinochet [Sun, 29 Mar 2015 20:53:23 +0000 (17:53 -0300)]
aggregator: document gap handling behavior
https://bugzilla.gnome.org/show_bug.cgi?id=746249
Reynaldo H. Verdejo Pinochet [Fri, 27 Mar 2015 22:36:42 +0000 (19:36 -0300)]
aggregator: drop stale white space at warning
Reynaldo H. Verdejo Pinochet [Fri, 27 Mar 2015 22:28:05 +0000 (19:28 -0300)]
aggregator: fix typo in test suite
Reynaldo H. Verdejo Pinochet [Fri, 27 Mar 2015 21:32:27 +0000 (18:32 -0300)]
aggregator: add gap event handling unit test
https://bugzilla.gnome.org/show_bug.cgi?id=746249
Reynaldo H. Verdejo Pinochet [Wed, 18 Mar 2015 01:13:06 +0000 (22:13 -0300)]
aggregator: implement gap handling
https://bugzilla.gnome.org/show_bug.cgi?id=746249
Tim-Philipp Müller [Fri, 3 Apr 2015 17:57:58 +0000 (18:57 +0100)]
Automatic update of common submodule
From bc76a8b to c8fb372
Arun Raghavan [Fri, 3 Apr 2015 06:16:12 +0000 (11:46 +0530)]
opus: Fix incorrect fall-through condition in property getter
Guillaume Emont [Fri, 27 Apr 2012 16:29:14 +0000 (18:29 +0200)]
shmsink: add an shm-area-name property
The shm-area-property tells the name of the shm area used by the element. This
is useful for cases where shmsink is not able to clean up (calling
shm_unlink()), e.g. if it is in a sandbox.
https://bugzilla.gnome.org/show_bug.cgi?id=675134
Olivier Crête [Thu, 2 Apr 2015 02:10:11 +0000 (22:10 -0400)]
aggregator: Unify downstream flow return and flushing
Also means that having a non-OK downstream flow return
wakes up the chain functions.
https://bugzilla.gnome.org/show_bug.cgi?id=747220
Olivier Crête [Thu, 2 Apr 2015 01:45:01 +0000 (21:45 -0400)]
aggregator: Flushing is always in pad lock, no need to atomics
The usage of atomics was always doubtful as it was used to release a
GCond
https://bugzilla.gnome.org/show_bug.cgi?id=747220
Olivier Crête [Thu, 2 Apr 2015 01:38:11 +0000 (21:38 -0400)]
aggregator: Reset pending_eos on pad flush
https://bugzilla.gnome.org/show_bug.cgi?id=747220
Olivier Crête [Thu, 2 Apr 2015 01:37:25 +0000 (21:37 -0400)]
aggregator: Unify code to set a pad flushing
https://bugzilla.gnome.org/show_bug.cgi?id=747220
Alessandro Decina [Thu, 2 Apr 2015 07:05:55 +0000 (18:05 +1100)]
libgstgl: fix rendering on iOS
Stop assuming that the handle has been set by the time ->create_context is
called. After
bc7a7259f357b0065dd94e0668b5a895d83fa53a set_window_handle always
happens after ->create_context in fact.
See also https://bugzilla.gnome.org/show_bug.cgi?id=745090
Olivier Crête [Sat, 7 Mar 2015 02:12:52 +0000 (21:12 -0500)]
aggregator: Query latency on first incoming buffer.
And keep on querying upstream until we get a reply.
Also, the _get_latency_unlocked() method required being calld
with a private lock, so removed the _unlocked() variant from the API.
And it now returns GST_CLOCK_TIME_NONE when the element is not live as
we think that 0 upstream latency is possible.
https://bugzilla.gnome.org/show_bug.cgi?id=745768
Olivier Crête [Thu, 2 Apr 2015 00:32:41 +0000 (20:32 -0400)]
audiomixer: Allow downstream caps with a non-default channel-mask
Instead of failing, take the downstream channel mask if the channel
count is 1.
Edward Hervey [Tue, 31 Mar 2015 14:27:00 +0000 (16:27 +0200)]
glvideomixer: Don't use context if not present
Avoids assertions at runtime
Edward Hervey [Tue, 31 Mar 2015 09:24:57 +0000 (11:24 +0200)]
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
Victor Toso [Tue, 31 Mar 2015 09:53:55 +0000 (10:53 +0100)]
directsoundsrc: Implement volume and mute
Using the MixerAPI as IDirectSoundCaptureBuffer doesn't implement volume
control.
https://bugzilla.gnome.org/show_bug.cgi?id=744383
Anton Obzhirov [Mon, 30 Mar 2015 12:49:01 +0000 (13:49 +0100)]
gleffects: port all effects to GLES2.0
https://bugzilla.gnome.org/show_bug.cgi?id=745955
Thiago Santos [Sat, 28 Mar 2015 14:40:14 +0000 (11:40 -0300)]
hlssink: implement a chain_list to request key unit for segments
upstream might send buffer lists instead of buffers and hlssink's
probe won't get called and a new segment won't be created when needed.
This patch fixes it by adding a chain_list function to the sink pad
that will just pass through the whole bufferlist if no segment needs
to be requested at the moment or convert the list into buffers to
check the proper timestamp to request the next key-unit that will
start the segment.
https://bugzilla.gnome.org/show_bug.cgi?id=746906
Mark Nauwelaerts [Sat, 28 Mar 2015 16:28:34 +0000 (17:28 +0100)]
mxfdemux: resurrect some flow return handling
https://bugzilla.gnome.org/show_bug.cgi?id=744572
Mark Nauwelaerts [Sat, 28 Mar 2015 16:28:26 +0000 (17:28 +0100)]
mpegdemux: resurrect some flow return handling
https://bugzilla.gnome.org/show_bug.cgi?id=744572
Thiago Santos [Fri, 27 Mar 2015 03:27:34 +0000 (00:27 -0300)]
adaptivedemux: do not try to advance fragment if there is none
It might return OK from subclasses and it could cause a bitrate
renegotiation. For DASH and MSS that is ok as they won't expose
new pads as part of this but it can cause issues for HLS as
it will expose new pads, leading to pads that will only have EOS
that cause decodebin to fail
https://bugzilla.gnome.org/show_bug.cgi?id=745905
Olivier Crête [Tue, 24 Mar 2015 17:57:54 +0000 (13:57 -0400)]
rtpopuspay: Forward stereo preferences from caps upstream
https://bugzilla.gnome.org/show_bug.cgi?id=746617
Olivier Crête [Tue, 24 Mar 2015 17:56:21 +0000 (13:56 -0400)]
rtpopuspay: Set the number of channels to 2 as per RFC draft
https://bugzilla.gnome.org/show_bug.cgi?id=746617
Jun Xie [Tue, 17 Mar 2015 13:49:40 +0000 (21:49 +0800)]
dashdemux: set default @startNumber and also avoid wrong overwrite
Set default @startNumber to 1, if @startNumber is missing at all level.
Also avoid incorrect overwriting inherited value.
https://bugzilla.gnome.org/show_bug.cgi?id=746347
Luis de Bethencourt [Tue, 24 Mar 2015 16:18:22 +0000 (16:18 +0000)]
audioaggregator: check sink caps are valid
Luis de Bethencourt [Tue, 24 Mar 2015 16:17:00 +0000 (16:17 +0000)]
Revert "audioaggregator: check sink caps are valid"
This reverts commit
6d4d0d1cdf7c7531fbf72ce39e1eab1260d20550.
Never put code with side effects into an assertion, it can be compiled out
Luis de Bethencourt [Tue, 24 Mar 2015 15:45:25 +0000 (15:45 +0000)]
audioaggregator: check sink caps are valid
CID #1291622
Luis de Bethencourt [Tue, 24 Mar 2015 15:13:52 +0000 (15:13 +0000)]
opusenc: fall through switch statement
Adding a comment makes coverity happy and quells the issue.
CID 1291629
Nirbheek Chauhan [Tue, 24 Mar 2015 13:35:00 +0000 (19:05 +0530)]
videoaggregator: Document why buffer_vinfo is needed
Nirbheek Chauhan [Tue, 24 Mar 2015 13:34:26 +0000 (19:04 +0530)]
videoaggregator: Check if there's a previous buffer to 'keep'
If we want to keep a previous buffer but there's no previous buffer, we actually
need more data instead.
Philippe Normand [Mon, 23 Mar 2015 15:43:01 +0000 (16:43 +0100)]
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
Luis de Bethencourt [Mon, 23 Mar 2015 15:09:33 +0000 (15:09 +0000)]
gaudieffects: clean solarize code
Luis de Bethencourt [Mon, 23 Mar 2015 14:39:56 +0000 (14:39 +0000)]
gaudieffects: removing values only used once
Luis de Bethencourt [Mon, 23 Mar 2015 11:13:24 +0000 (11:13 +0000)]
gaudieffects: small cleanup in headers
Sebastian Dröge [Mon, 23 Mar 2015 12:15:30 +0000 (13:15 +0100)]
opusenc: Set output format immediately after creating the encoder instance
We know the caps by then, there's no need to wait until we actually receive
the first buffer.
Sebastian Dröge [Mon, 23 Mar 2015 12:13:35 +0000 (13:13 +0100)]
opusenc: Remove another unused variable
Sebastian Dröge [Mon, 23 Mar 2015 12:11:42 +0000 (13:11 +0100)]
opusenc: Remove useless headers and header_sent variables from the instance struct
They are only used inside a single function.
Sebastian Dröge [Mon, 23 Mar 2015 11:24:55 +0000 (12:24 +0100)]
opus: Handle sprop-stereo and sprop-maxcapturerate RTP caps fields
https://bugzilla.gnome.org/show_bug.cgi?id=746617
Sebastian Dröge [Mon, 23 Mar 2015 11:09:25 +0000 (12:09 +0100)]
opusdec: Take channels and sample rate from the caps if we have no stream header
Sebastian Dröge [Mon, 23 Mar 2015 11:07:52 +0000 (12:07 +0100)]
opusdec: Reset the decoder if the caps change
Sebastian Dröge [Mon, 23 Mar 2015 10:57:09 +0000 (11:57 +0100)]
opusdec: Take output sample rate from the stream headers too
This way we let opusdec do the resampling if needed and don't carry
around buffers with a too high sample rate if not required.
While Opus always uses 48kHz internally, this information from the
header specifies which frequencies are safe to drop.
Sebastian Dröge [Mon, 23 Mar 2015 10:56:09 +0000 (11:56 +0100)]
opusheader: Put number of channels and sample rate into the caps
https://bugzilla.gnome.org/show_bug.cgi?id=746617
Julien Isorce [Sun, 22 Mar 2015 18:12:15 +0000 (19:12 +0100)]
glwindow: remove unused gl_thread field
Julien Isorce [Sun, 22 Mar 2015 18:03:19 +0000 (19:03 +0100)]
gldisplay: fix GThread leak
https://bugzilla.gnome.org/show_bug.cgi?id=746541
Nicola Murino [Fri, 20 Mar 2015 17:33:45 +0000 (18:33 +0100)]
glimagesink: fix caps leak
https://bugzilla.gnome.org/show_bug.cgi?id=746541
Jose Antonio Santos Cadenas [Wed, 18 Mar 2015 10:25:42 +0000 (11:25 +0100)]
srtpdec: Add support for buffer list
https://bugzilla.gnome.org/show_bug.cgi?id=746387
Jose Antonio Santos Cadenas [Thu, 19 Mar 2015 15:17:58 +0000 (16:17 +0100)]
srtpenc: Do not drop all buffers in buffer list if one fails
https://bugzilla.gnome.org/show_bug.cgi?id=746387
Luis de Bethencourt [Thu, 19 Mar 2015 13:59:42 +0000 (13:59 +0000)]
gaudieffects: update copyright dates of dilate
Luis de Bethencourt [Thu, 19 Mar 2015 13:58:21 +0000 (13:58 +0000)]
gaudieffects: factorize transform code of dilate
Sebastian Dröge [Thu, 19 Mar 2015 13:04:28 +0000 (14:04 +0100)]
dtls: Pass the connection instance as data to the thread pool
No need to ref/unref the connection every time we push something on the pool.
However we have to provide non-NULL data to the pool, so let's just give it
some coffee.
Sebastian Dröge [Thu, 19 Mar 2015 12:55:53 +0000 (13:55 +0100)]
dtls: Remove unused thread struct field
Sebastian Dröge [Thu, 19 Mar 2015 12:30:00 +0000 (13:30 +0100)]
dtls: Use a shared thread pool for the timeouts
This way we will share threads with other DTLS connections if possible, and
don't have to start/stop threads for timeouts if there are many to be handled
in a short period of time.
Also use the system clock and async waiting on it for scheduling the timeouts.
Sebastian Dröge [Wed, 18 Mar 2015 17:17:39 +0000 (18:17 +0100)]
dtls: Shutdown timeout thread when it's not needed
It is not needed most of the time and usually we have a thread
idling around doing nothing all the time after the first few seconds.
Matthew Waters [Wed, 18 Mar 2015 17:12:49 +0000 (10:12 -0700)]
gl/docs: update some doc comments
Sebastian Dröge [Wed, 18 Mar 2015 16:40:47 +0000 (17:40 +0100)]
dtlsenc: Clear the queue when deactivating the pad
Sebastian Dröge [Wed, 18 Mar 2015 16:38:35 +0000 (17:38 +0100)]
dtlsenc: Handle pad activity states properly
Sebastian Dröge [Wed, 18 Mar 2015 16:35:12 +0000 (17:35 +0100)]
dtlsenc: Don't manually activate/deactivate srcpad
Jose Antonio Santos Cadenas [Wed, 18 Mar 2015 09:47:15 +0000 (10:47 +0100)]
srtpdec: Separate buffer encoding functionality into a different function
https://bugzilla.gnome.org/show_bug.cgi?id=746387
Jose Antonio Santos Cadenas [Wed, 18 Mar 2015 09:16:41 +0000 (10:16 +0100)]
srtpenc: Add support for buffer list
https://bugzilla.gnome.org/show_bug.cgi?id=746387
Jose Antonio Santos Cadenas [Wed, 18 Mar 2015 08:39:49 +0000 (09:39 +0100)]
srtpenc: Add missing locks
https://bugzilla.gnome.org/show_bug.cgi?id=746387
Jose Antonio Santos Cadenas [Wed, 18 Mar 2015 08:17:31 +0000 (09:17 +0100)]
srtpenc: Split chain functionality so it can be reused for buffer list
https://bugzilla.gnome.org/show_bug.cgi?id=746387
Sebastian Dröge [Wed, 18 Mar 2015 12:52:38 +0000 (13:52 +0100)]
dtlsenc: Use a GQueue instead of a GPtrArray
Using a GPtrArray as a queue is not very efficient as the whole
array has to be copied whenever an element is removed from the
beginning.
Sebastian Dröge [Wed, 18 Mar 2015 09:06:47 +0000 (10:06 +0100)]
dtlsdec: Fix locking
Especially don't hold any mutex while adding/removing pads or pushing data.
Sebastian Dröge [Wed, 18 Mar 2015 08:57:32 +0000 (09:57 +0100)]
dtlsdec: Add support for buffer lists
Sebastian Dröge [Wed, 18 Mar 2015 08:46:40 +0000 (09:46 +0100)]
dtls: Fix some search & replace mistakes from renaming the elements
Jose Antonio Santos Cadenas [Tue, 17 Mar 2015 15:49:54 +0000 (16:49 +0100)]
srtpenc: Improve memory management on chain function
Avoiding copy the buffer twice, one while mapping and other with mencpy
https://bugzilla.gnome.org/show_bug.cgi?id=746356
Jose Antonio Santos Cadenas [Tue, 17 Mar 2015 15:50:41 +0000 (16:50 +0100)]
srtpenc: Fix typo in log
Sebastian Dröge [Tue, 17 Mar 2015 10:43:00 +0000 (11:43 +0100)]
dtls: Initialize debug category earlier
Otherwise the openssl initialization will use it before initialization
Olivier Crête [Fri, 14 Nov 2014 01:39:11 +0000 (20:39 -0500)]
audiointerleave: Add unit tests
Almost a copy of the "interleave" unit tests, improved to support
the thread on the src pad on GstAggregator.
https://bugzilla.gnome.org/show_bug.cgi?id=740236
Olivier Crête [Fri, 6 Mar 2015 18:49:48 +0000 (13:49 -0500)]
audiointerleave: Set src caps in aggregate
This prevents races between the setcaps of the sink pads
https://bugzilla.gnome.org/show_bug.cgi?id=740236
Olivier Crête [Thu, 13 Nov 2014 20:40:15 +0000 (15:40 -0500)]
audiointerleave: Add interleave element based on audioaggregator
https://bugzilla.gnome.org/show_bug.cgi?id=740236
Olivier Crête [Fri, 6 Mar 2015 21:51:12 +0000 (16:51 -0500)]
audioaggregator: Print a message when a buffer is late
https://bugzilla.gnome.org/show_bug.cgi?id=740236
Olivier Crête [Sat, 15 Nov 2014 22:54:51 +0000 (17:54 -0500)]
audioaggregator: Don't re-send the caps if they did not change
https://bugzilla.gnome.org/show_bug.cgi?id=740236
Olivier Crête [Thu, 6 Nov 2014 22:15:17 +0000 (17:15 -0500)]
audioaggregator: Split base class from audiomixer
Also:
- Don't modify size on early buffer
The size is the size of the buffer, not of remaining part.
- Use the input caps when manipulating the input buffer
Also store in in the sink pad
- Reply to the position query in bytes too
- Put GAP flag on output if all inputs are GAP data
- Only try to clip buffer if the incoming segment is in time or samples
- Use incoming segment with incoming timestamp
Handle non-time segments and NONE timestamps
- Don't reset the position when pushing out new caps
- Make a number of member variables private
- Correctly handle case where no pad has a buffer
If none of the pads have buffers that can be handled, don't claim to be EOS.
- Ensure proper locking
- Only support time segments
https://bugzilla.gnome.org/show_bug.cgi?id=740236