Edward Hervey [Tue, 31 Oct 2017 09:34:26 +0000 (10:34 +0100)]
ogg: Don't add tags to empty taglist
Edward Hervey [Mon, 30 Oct 2017 10:10:11 +0000 (11:10 +0100)]
typefind: Use GST_READ_UINT32 macros
Avoids undefined behaviour with shifting
Edward Hervey [Mon, 30 Oct 2017 07:55:48 +0000 (08:55 +0100)]
typefind: Fix out-of-bound memory access
We were not checking the proper amount of available data in several
places
Vivia Nikolaidou [Fri, 27 Oct 2017 15:29:40 +0000 (18:29 +0300)]
audioconvert: Fix empty mix matrix documentation typo
Seungha Yang [Thu, 16 Mar 2017 11:55:44 +0000 (20:55 +0900)]
decodebin3: Allow configure output stream without reassign slot
By select-streams event, current implementation of decodebin3
supports deactivate output stream (i.e., decoder element)
in reassign slot(), but cannot activate any slot without track change.
https://bugzilla.gnome.org/show_bug.cgi?id=778015
Seungha Yang [Thu, 16 Mar 2017 10:53:11 +0000 (19:53 +0900)]
playbin3: Use STREAMS_SELECTED message to update selected stream types
Application might choose only specific type among all available types
using select-streams event. In this case, it is desired that reconfigure
of playsink to clear unused stream path.
https://bugzilla.gnome.org/show_bug.cgi?id=778015
Edward Hervey [Fri, 27 Oct 2017 07:51:29 +0000 (09:51 +0200)]
gst-play: Prevent disabling all streams
This would have bad effects :)
Seungha Yang [Thu, 16 Mar 2017 08:52:04 +0000 (17:52 +0900)]
gst-play: Support track change on playbin3
* playbin3 does not support {current,n}-{audio,video,text}
properties, and they were replaced by GstStreams API.
So, GstStreams API and select-stream event should be used
for track change in case of playbin3.
see also https://bugzilla.gnome.org/show_bug.cgi?id=769079
* By using commend line option "--use-playbin3", gst-play will
use playbin3 regardless of "USE_PLAYBIN" env variable.
https://bugzilla.gnome.org/show_bug.cgi?id=775469
Mathieu Duponchelle [Thu, 26 Oct 2017 16:05:31 +0000 (18:05 +0200)]
audioconvert: document passing an empty mix-matrix
Edward Hervey [Thu, 26 Oct 2017 13:55:32 +0000 (15:55 +0200)]
check: Fix minor leak
Edward Hervey [Thu, 26 Oct 2017 08:07:15 +0000 (10:07 +0200)]
oggdemux: Don't forget to reacquire lock when needed
Fixup to
ef93130cf04143fcf675b05ce0d19eddfbac4e75
I overlooked the issue. There is a case when the lock is released
and we need to reacquire it
Mathieu Duponchelle [Wed, 25 Oct 2017 15:45:44 +0000 (17:45 +0200)]
libgstvideo.def: add new definitions
Guillaume Desmottes [Wed, 25 Oct 2017 09:41:02 +0000 (11:41 +0200)]
videoencoder: add qos property
This new property control if the encoder base class should gather QoS
stats and if subclasses should use them by dropping late frames.
https://bugzilla.gnome.org/show_bug.cgi?id=789467
Ashish Kumar [Wed, 25 Oct 2017 07:17:40 +0000 (12:47 +0530)]
gst-plugins-base: gstaudiochannels: Handled buffer mapping failure
https://bugzilla.gnome.org/show_bug.cgi?id=789458
Edward Hervey [Tue, 24 Oct 2017 09:05:20 +0000 (11:05 +0200)]
oggdemux: Don't drop sticky events
Previous commit was wrong. We should still send all events to the
pad (so that sticky events get attached to it and sent when pad
gets added).
Edward Hervey [Tue, 24 Oct 2017 08:56:00 +0000 (10:56 +0200)]
oggdemux: Improve handling of EOS without source pads
We might have a chain to use, but it might not have any active pads
Properly detect that and send an error message on EOS
Matthew Waters [Sat, 21 Oct 2017 14:00:10 +0000 (01:00 +1100)]
Revert "videoencoder: flush encoder in transition PAUSED->READY"
This reverts commit
877664a414a466cfcc71c79d28c470722408c9a7.
Matthew Waters [Sat, 21 Oct 2017 14:00:08 +0000 (01:00 +1100)]
Revert "videodecoder: flush decoder in transition PAUSED->READY"
This reverts commit
6e9edc3031935ce8d6640d9774a7c093d20d4366.
Matthew Waters [Sat, 21 Oct 2017 14:00:06 +0000 (01:00 +1100)]
Revert "audioencoder: flush encoder in transition PAUSED->READY"
This reverts commit
2dcdd13512e788797d03f9990994eecdd339ca0e.
Matthew Waters [Sat, 21 Oct 2017 14:00:03 +0000 (01:00 +1100)]
Revert "audiodecoder: flush decoder in transition PAUSED->READY"
This reverts commit
e7cf4c058ddd466a797623b5ddf162c263d07059.
Edward Hervey [Sat, 21 Oct 2017 08:37:48 +0000 (10:37 +0200)]
win32: update exports file
Edward Hervey [Fri, 20 Oct 2017 16:40:42 +0000 (18:40 +0200)]
oggdemux: Error out on EOS if we have no chains to use
There are not active and pending chains, if we get EOS we need to
inform the user via an error message
Edward Hervey [Fri, 20 Oct 2017 16:40:02 +0000 (18:40 +0200)]
oggdemux: Don't double lock
The lock was already taken just before this block and is released after
Nicola Murino [Thu, 28 Sep 2017 11:17:05 +0000 (13:17 +0200)]
videoencoder: flush encoder in transition PAUSED->READY
https://bugzilla.gnome.org/show_bug.cgi?id=787311
Nicola Murino [Thu, 28 Sep 2017 11:12:58 +0000 (13:12 +0200)]
videoencoder: remove the lock from gst_video_encoder_flush
The lock is already taken before calling the flush method and can lead to
deadlock for some encoders that need to take the same lock from another
thread while flushing
https://bugzilla.gnome.org/show_bug.cgi?id=787311
Nicola Murino [Wed, 27 Sep 2017 14:08:10 +0000 (16:08 +0200)]
videodecoder: flush decoder in transition PAUSED->READY
https://bugzilla.gnome.org/show_bug.cgi?id=787311
Nicola Murino [Wed, 27 Sep 2017 14:32:13 +0000 (16:32 +0200)]
audioencoder: flush encoder in transition PAUSED->READY
https://bugzilla.gnome.org/show_bug.cgi?id=787311
Nicola Murino [Wed, 27 Sep 2017 14:41:51 +0000 (16:41 +0200)]
audiodecoder: flush decoder in transition PAUSED->READY
https://bugzilla.gnome.org/show_bug.cgi?id=787311
Guillaume Desmottes [Thu, 21 Sep 2017 13:18:10 +0000 (15:18 +0200)]
videoencoder: implement QoS
It allows encoders to detect and drop input frames which are already
late to increase the chance of the pipeline to catch up.
The QoS logic and code is directly copied from gstvideodecoder.c.
https://bugzilla.gnome.org/show_bug.cgi?id=582166
Guillaume Desmottes [Thu, 21 Sep 2017 14:52:29 +0000 (16:52 +0200)]
videoencoder test: properly name the encoder variable
The element is an encoder so calling it 'dec' makes things confusing.
https://bugzilla.gnome.org/show_bug.cgi?id=582166
Thibault Saunier [Mon, 16 Oct 2017 12:16:31 +0000 (14:16 +0200)]
doc: Add some missing/malformed Since markers
Mathieu Duponchelle [Wed, 11 Oct 2017 16:03:20 +0000 (18:03 +0200)]
audioconvert: allow empty mix matrix
When an empty mix matrix is passed, audio-channel-mixer
will now generate a (potentially truncated) identity matrix,
this replicates the behaviour of audiomixmatrix in first-channels
mode.
https://bugzilla.gnome.org/show_bug.cgi?id=788833
Mathieu Duponchelle [Wed, 11 Oct 2017 20:14:28 +0000 (22:14 +0200)]
Reorder win32 defs
Mathieu Duponchelle [Tue, 13 Jun 2017 00:18:19 +0000 (02:18 +0200)]
discoverer: output channel positions
https://bugzilla.gnome.org/show_bug.cgi?id=783722
Mathieu Duponchelle [Tue, 13 Jun 2017 00:32:09 +0000 (02:32 +0200)]
discoverer: output whether the uri is live
https://bugzilla.gnome.org/show_bug.cgi?id=783722
Mathieu Duponchelle [Tue, 13 Jun 2017 00:25:31 +0000 (02:25 +0200)]
API: gst_discoverer_info_get_live
https://bugzilla.gnome.org/show_bug.cgi?id=783722
Mathieu Duponchelle [Mon, 12 Jun 2017 23:40:44 +0000 (01:40 +0200)]
API: gst_discoverer_audio_info_get_channel_mask
https://bugzilla.gnome.org/show_bug.cgi?id=783722
Mathieu Duponchelle [Mon, 9 Oct 2017 16:13:27 +0000 (18:13 +0200)]
opusenc: Allow unpositioned channels.
The input will be treated as a set of mono channels,
and the channel-mapping-family will be set to 255
(no defined channel meaning)
https://bugzilla.gnome.org/show_bug.cgi?id=788720
Mathieu Duponchelle [Wed, 11 Oct 2017 14:57:28 +0000 (16:57 +0200)]
audio-converter: remove unused mix_matrix private field
Tim-Philipp Müller [Sat, 7 Oct 2017 13:20:54 +0000 (14:20 +0100)]
tests: appsink: fix compiler warning and typo in struct name
elements/appsink.c:624:3: warning: missing braces around initializer
with gcc 4.8.4
Thibault Saunier [Thu, 20 Apr 2017 20:42:17 +0000 (17:42 -0300)]
rtsp: Start implementing support for RTSP 2.0
Properly handle protocol version in the connection
Add the following headers types:
* Pipelined-Request
* Media-Properties
* Seek-Style
* Accept-Ranges
https://bugzilla.gnome.org/show_bug.cgi?id=781446
Havard Graff [Wed, 4 Oct 2017 12:17:59 +0000 (14:17 +0200)]
meson: remove vs_module_defs
GST_EXPORT should handle it.
Rico Tzschichholz [Thu, 5 Oct 2017 12:28:42 +0000 (14:28 +0200)]
meson: Add some missing args and dependencies in the gir generation
Reynaldo H. Verdejo Pinochet [Tue, 3 Oct 2017 21:31:18 +0000 (14:31 -0700)]
Use proper GtkDoc notation for NULL/FALSE/TRUE
Thibault Saunier [Fri, 29 Sep 2017 00:56:22 +0000 (21:56 -0300)]
meson: Add mssing GstBase-1.0 include in the gir generation
Sebastian Dröge [Thu, 28 Sep 2017 11:29:03 +0000 (14:29 +0300)]
audio: Fix unit test after changed GstAudioStreamAlign constructor signature
Sebastian Dröge [Wed, 13 Sep 2017 13:23:26 +0000 (16:23 +0300)]
audio: Add stream align API for getting timestamp at discont and number of samples since discont
https://bugzilla.gnome.org/show_bug.cgi?id=787560
Sebastian Dröge [Tue, 12 Sep 2017 13:03:44 +0000 (16:03 +0300)]
audio: Add reverse playback support to GstAudioStreamAlign
https://bugzilla.gnome.org/show_bug.cgi?id=787560
Sebastian Dröge [Mon, 11 Sep 2017 19:49:32 +0000 (22:49 +0300)]
audio: Add helper object for audio discontinuity detection and sample alignment
This is the same code that is in decklinkaudiosrc, audioringbuffer,
audiomixer and various other places. Have it once instead of copying it
everywhere.
https://bugzilla.gnome.org/show_bug.cgi?id=787560
Ponnam Srinivas [Mon, 25 Sep 2017 05:12:33 +0000 (10:42 +0530)]
alsasink: Fix Memory leak in payload not succuss case
https://bugzilla.gnome.org/show_bug.cgi?id=788114
Mathieu Duponchelle [Tue, 15 Aug 2017 00:39:54 +0000 (02:39 +0200)]
audioconvert: [API]: expose mix-matrix property.
This obsoletes audiomixmatrix
https://bugzilla.gnome.org/show_bug.cgi?id=785471
Mathieu Duponchelle [Thu, 27 Jul 2017 17:31:48 +0000 (19:31 +0200)]
[API]: GST_AUDIO_CONVERTER_OPT_MIX_MATRIX
Taken from audiomixmatrix, credits to Vivia Nikolaidou
https://bugzilla.gnome.org/show_bug.cgi?id=785471
Mathieu Duponchelle [Mon, 14 Aug 2017 23:29:57 +0000 (01:29 +0200)]
[API]: gst_audio_channel_mixer_new_with_matrix
+ Refactor previous constructor to call on that new constructor
+ Reimplement is_passthrough to strictly check whether the matrix
is an identity matrix, comparing channel-masks was incorrect:
the mixer may be remixing from a list of positions to the same
list of positions, but ordered differently, and reciprocally,
the mixer may be remixing from a list of positions to another
list of positions identically ordered
+ Remove unused tmp field, must have been a refactoring leftover
https://bugzilla.gnome.org/show_bug.cgi?id=785471
Mathieu Duponchelle [Mon, 14 Aug 2017 22:20:40 +0000 (00:20 +0200)]
audioconvert: refactor format removal.
remove_format_info was a bit confusing to read, this removes
it in favor of standard gst_caps_map_in_place calls.
This no longer simplifies the resulting caps, but I
consider this should be the job of basetransform.
https://bugzilla.gnome.org/show_bug.cgi?id=785471
Julien Isorce [Thu, 24 Aug 2017 09:02:31 +0000 (10:02 +0100)]
appsink: on drain wait for buffers to be consumed
So that an upstream element can claim all buffers to return to its buffer pool.
Added unit test 'test_query_drain'
make elements/appsink.check
https://bugzilla.gnome.org/show_bug.cgi?id=786739
Julien Isorce [Mon, 18 Sep 2017 16:06:32 +0000 (17:06 +0100)]
appsink: also clear preroll buffer in _pull_sample
If someone calls gst_app_sink_try_pull_sample they are
probably no longer interested in any preroll samples.
Useful if the user has not registered a preroll appsink callback.
Also added unit test 'test_do_not_care_preroll'
make elements/appsink.check
that fails without this patch.
https://bugzilla.gnome.org/show_bug.cgi?id=786740
Julien Isorce [Tue, 29 Aug 2017 08:47:51 +0000 (09:47 +0100)]
appsink: unref preroll buffer upon pull
There is no reason for appsink to hang onto the preroll buffer.
If needed, the application can just keep a ref on this buffer
after calling gst_app_sink_try_pull_preroll.
Also added unit test 'test_pull_preroll'
make elements/appsink.check
https://bugzilla.gnome.org/show_bug.cgi?id=786740
Julien Isorce [Wed, 13 Sep 2017 13:06:43 +0000 (14:06 +0100)]
appsink: rename GstBuffer *preroll to preroll_buffer
priv->preroll can be confused with basesink_class->preroll
https://bugzilla.gnome.org/show_bug.cgi?id=786740
Tim-Philipp Müller [Sun, 10 Sep 2017 15:32:31 +0000 (16:32 +0100)]
tests: playbin-complex: skip test that needs oggdemux if it's not available
https://bugzilla.gnome.org/show_bug.cgi?id=773145
Nicolas Dufresne [Wed, 6 Sep 2017 17:55:13 +0000 (13:55 -0400)]
Request minimum buffer even if need_pool is FALSE
When tee is used, it will not request a pool, but still it wants to
know how many buffers are required.
https://bugzilla.gnome.org/show_bug.cgi?id=730758
Nicolas Dufresne [Wed, 6 Sep 2017 17:53:42 +0000 (13:53 -0400)]
video-filter: Support allocation pool with pool object
This is used to indicate upstream the requirement in buffers
while no buffer pool can be provided. In this case, only
configure the pool with caps/size/min/max if we have caps,
which we only parsed when there was no allocation pool.
https://bugzilla.gnome.org/show_bug.cgi?id=730758
Matthew Waters [Thu, 24 Aug 2017 09:11:29 +0000 (19:11 +1000)]
video/affinetransformationmeta: use the provided doc comment for the struct
Mark Nauwelaerts [Sun, 20 Aug 2017 10:09:52 +0000 (12:09 +0200)]
playbin: ref_sink() sink rather than pointer to sink
Tim-Philipp Müller [Thu, 17 Aug 2017 11:23:18 +0000 (12:23 +0100)]
Automatic update of common submodule
From 29046b8 to 3f4aa96
Mathieu Duponchelle [Fri, 11 Aug 2017 18:53:21 +0000 (20:53 +0200)]
videoutilsprivate: fill more video fields.
__gst_video_element_proxy_caps is called by
__gst_video_element_proxy_getcaps with caps set to the caps
allowed downstream. As we didn't set colorimetry or
chroma-site on the resulting caps, upstream considered it
possible to use whatever values it wanted, leading to
not negotiated errors later on.
As the description for that function is:
"Takes caps and copies its video fields to tmpl_caps",
it seems legitimate to set these fields there.
https://bugzilla.gnome.org/show_bug.cgi?id=786172
Philippe Normand [Sat, 12 Aug 2017 14:46:28 +0000 (15:46 +0100)]
appsrc: handle duration query only if the property was set
https://bugzilla.gnome.org/show_bug.cgi?id=786200
Edward Hervey [Wed, 9 Aug 2017 14:23:03 +0000 (16:23 +0200)]
decodebin3/urisourcebin: Switch to actual EOS events internally
Use the intended sequence for re-using elements:
* EOS
* STREAM_START if element is to be re-used
This avoids having elements (such as queue/multiqueue/queue2) not
properly resetting themselves.
When delaying EOS propagation (because we want to wait until all
streams of a group are done for example), we re-trigger them by
first sending the cached STREAM_START and then EOS (which will
cause elements to re-set themselves if needed and accept new
buffers/events).
https://bugzilla.gnome.org/show_bug.cgi?id=785951
Tim-Philipp Müller [Thu, 10 Aug 2017 13:00:21 +0000 (14:00 +0100)]
meson: hide symbols by default unless explicitly exported
Tim-Philipp Müller [Thu, 10 Aug 2017 12:57:26 +0000 (13:57 +0100)]
pbutils: sprinkle more GST_EXPORT
Tim-Philipp Müller [Thu, 10 Aug 2017 09:27:23 +0000 (10:27 +0100)]
libs: add some more missing GST_EXPORT
Sebastian Dröge [Wed, 9 Aug 2017 09:26:43 +0000 (12:26 +0300)]
examples/snapshot: Does not need GTK but only gdk-pixbuf
Mark Nauwelaerts [Tue, 8 Aug 2017 18:35:25 +0000 (20:35 +0200)]
audioencoder: also adjust sample count upon discont to avoid ts overflow
Only adjusting the base_ts might lead to a negative ts and as such integer
overflow into a huge timestamp which then propagates into the granulepos
and so on. Instead, resync to incoming buffer timestamp using both base_ts
and sample count rather than only base_ts.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=785948
Tim-Philipp Müller [Mon, 7 Aug 2017 23:13:01 +0000 (00:13 +0100)]
meson: fix a few meson warnings
Satya Prakash Gupta [Mon, 24 Jul 2017 08:26:16 +0000 (13:56 +0530)]
examples: fix memory leaks in appsrc and appsrc2 examples
https://bugzilla.gnome.org/show_bug.cgi?id=785336
Sebastian Dröge [Mon, 7 Aug 2017 12:27:45 +0000 (15:27 +0300)]
playbin: Make sure to ref_sink() any sinks before calling activate_sink()
It is forwarding messages to the playbin bus, thus forwarding messages
that contain a floating reference to the application. This generally
makes bindings unhappy, we must not leak floating references to them.
Sebastian Dröge [Fri, 4 Aug 2017 10:39:04 +0000 (13:39 +0300)]
xmptag: Stop parsing GPS coordinate if sscanf() fails
CID 1139610
Tim-Philipp Müller [Tue, 1 Aug 2017 16:07:32 +0000 (17:07 +0100)]
appsrc: fix doc typos
Sebastian Dröge [Tue, 1 Aug 2017 14:53:50 +0000 (17:53 +0300)]
appsrc: Add out annotations to gst_app_src_get_latency()
Thibault Saunier [Tue, 25 Jul 2017 16:37:19 +0000 (12:37 -0400)]
audioconvert: Consider channel=1, channel-mask=0x0 as mono
channels=1 is always mono, having it 'unpositioned' does not make
sense.
This fixes pipeline such as:
gst-validate-1.0 audiotestsrc ! audio/x-raw,channels=2,rate=44100,layout=interleaved ! audioconvert ! audioresample ! audio/x-raw, rate=44100, channels=1 ! avenc_mp2 ! fakesink
https://bugzilla.gnome.org/show_bug.cgi?id=785407
Sebastian Dröge [Tue, 25 Jul 2017 07:03:41 +0000 (10:03 +0300)]
videotimecode: Add GST_VIDEO_TIME_CODE_INIT macro
Satya Prakash Gupta [Mon, 24 Jul 2017 13:48:49 +0000 (19:18 +0530)]
videofilter: Unmap input frame if mapping output frame failed
https://bugzilla.gnome.org/show_bug.cgi?id=785341
Sebastian Dröge [Mon, 24 Jul 2017 13:48:17 +0000 (16:48 +0300)]
videodecoder: Make sure we have an actually writable buffer when modifying metadata
avviddec keeps references to the buffers internally for example, in
which case we need to do a shallow copy of the buffer.
Sebastian Dröge [Mon, 24 Jul 2017 13:29:53 +0000 (16:29 +0300)]
videometa: Don't crash if adding the timecode meta to a buffer failed
Satya Prakash Gupta [Mon, 24 Jul 2017 07:53:17 +0000 (13:23 +0530)]
ssaparse: Fix buffer leak in error case
https://bugzilla.gnome.org/show_bug.cgi?id=785331
Stefan Sauer [Sun, 23 Jul 2017 11:13:14 +0000 (13:13 +0200)]
adder: comment and formatting cleanups
Log a few more details. Update method comments. Remove some extra blank lines.
Mathieu Duponchelle [Fri, 7 Apr 2017 18:41:57 +0000 (20:41 +0200)]
videorate: flush remaining buffers on SEGMENT_DONE
Just as we do on EOS.
https://bugzilla.gnome.org/show_bug.cgi?id=784666
Tim-Philipp Müller [Wed, 19 Jul 2017 22:05:18 +0000 (23:05 +0100)]
fft: don't generate g-i files for bindings
The g-i stuff for this helper lib was never usable from bindings
anyway and there are problems with the latest gobject-introspection,
so we might just as well remove the g-i integration entirely for
this lib.
Seungha Yang [Wed, 19 Jul 2017 10:58:28 +0000 (19:58 +0900)]
decodebin3: Remove FIXME and do remove_input_stream() only for the corresponding parsebin
Do not remove other parsebin's input streams. It will cause unexpected
removal of any input streams in multi-parsebin use case.
Basically, the purpose of blocking buffers is similar to checking
no-more-pads of chain/group. That is, it gives hint to know the timing
to remove old (EOSed) streams of the parsebin and to add/reuse slots
for new input streams. But, that doesn't mean that we need to remove
other parsebin's EOSed stream. Each parsebin has most likely its
own streaming thread and therefore EOSed time can be much different.
(i.e., much early EOS of subtitle only parsebin)
https://bugzilla.gnome.org/show_bug.cgi?id=785120
Seungha Yang [Wed, 19 Jul 2017 09:47:29 +0000 (18:47 +0900)]
parsebin: Ensure StreamType and Caps of GstStream object before exposing it
The final StreamType and Caps might not be set yet on GstStream at exposing the pads.
https://bugzilla.gnome.org/show_bug.cgi?id=785120
Seungha Yang [Wed, 19 Jul 2017 04:39:52 +0000 (13:39 +0900)]
playbin3: Delay linking text output until video stream is shown
We are not sure that which stream's collection arrives first
when there are multiple parsebins such as adaptive streaming.
https://bugzilla.gnome.org/show_bug.cgi?id=785120
Tim-Philipp Müller [Wed, 19 Jul 2017 08:08:12 +0000 (09:08 +0100)]
tests: appsrc: fix leaks in new unit test
Satya Prakash Gupta [Wed, 19 Jul 2017 03:32:26 +0000 (09:02 +0530)]
encodebin: fix possible pad ref leak in error code path
https://bugzilla.gnome.org/show_bug.cgi?id=785065
Edward Hervey [Tue, 18 Jul 2017 11:04:09 +0000 (13:04 +0200)]
playbin3: We only care about source pads going away
Edward Hervey [Tue, 18 Jul 2017 09:34:22 +0000 (11:34 +0200)]
decodebin3: use lock macro where applicable
Thibault Saunier [Thu, 15 Jun 2017 16:48:42 +0000 (12:48 -0400)]
decodebin3: Protect fields related to streams handling with the SELECTION_LOCK
Fields related to stream handling (input_streams,
output_streams, slots, guint slot_id) where used totally unprotected
until know.
This lead to several races, especially playing back RTSP streams.
To protect those fields, the OBJECT_LOCK can not be used as we sometimes
need to be able to post message on the bus while holding it.
decodebin3 already has a lock to manage stream selection, and in the end
it makes sense to protect all the stream management fields with the same
lock which is why we reuse the SELECTION_LOCK here.
https://bugzilla.gnome.org/show_bug.cgi?id=784012
Edward Hervey [Thu, 13 Jul 2017 15:39:58 +0000 (17:39 +0200)]
decodebin3: Protect dbin->collection usage
Use the selection lock to protect dbin->collection access
https://bugzilla.gnome.org/show_bug.cgi?id=784012
Stefan Sauer [Sat, 15 Jul 2017 19:27:29 +0000 (21:27 +0200)]
tests: adder: set all properties at once
Stefan Sauer [Sat, 15 Jul 2017 17:43:52 +0000 (19:43 +0200)]
tests: adder: add helper to create buffers
Keeps repeated code out of the test and syncs it with the audiomixer test.
Tim-Philipp Müller [Sat, 15 Jul 2017 11:45:35 +0000 (12:45 +0100)]
meson: add translations
Tim-Philipp Müller [Fri, 14 Jul 2017 12:48:53 +0000 (13:48 +0100)]
adder: fix docs typo