Sebastian Dröge [Thu, 16 Jan 2014 17:16:35 +0000 (18:16 +0100)]
capsfilter: Only set caps on the srcpad if it's activated in push mode
https://bugzilla.gnome.org/show_bug.cgi?id=722289
Fabian Kirsch [Thu, 16 Jan 2014 11:28:47 +0000 (12:28 +0100)]
parse: Some minor fixes
Fix destructor segfaulting
Expect 0 grammar-ambiguities
Fix order of bin-properties assignment
https://bugzilla.gnome.org/show_bug.cgi?id=710034
Thiago Santos [Wed, 15 Jan 2014 22:28:01 +0000 (19:28 -0300)]
inputselector: removing duplicate field position
It is already stored inside the GstSegment struct and
was only duplicating information. Also removed some
weird positon if/else that would possibly change the
segment that was going to be pushed downstream
Thiago Santos [Wed, 15 Jan 2014 03:12:26 +0000 (00:12 -0300)]
multiqueue: prevent buffering forever with playbin
When prerolling/buffering, multiqueue has its buffers limit set
to 0, this means it can take an infinite amount of buffers.
When prerolling/buffering finishes, its limit is set back to 5, but
only if the current level is lower than 5. It should (almost) never be
and this will cause prerolling/buffering to need to wait to reach the
hard bytes and time limits, which are much higher.
This can lead to a very long startup time. This patch fixes this
by setting the single queues to the max(current, new_value) instead
of simply ignoring the new value and letting it as infinite(0)
https://bugzilla.gnome.org/show_bug.cgi?id=712597
Sebastian Dröge [Wed, 15 Jan 2014 10:12:08 +0000 (11:12 +0100)]
segment: gst_segment_offset_running_time() will be available in 1.2.3
Nicolas Dufresne [Tue, 14 Jan 2014 21:15:21 +0000 (16:15 -0500)]
doc: Update sections with the new rounding macros
Nicolas Dufresne [Tue, 14 Jan 2014 21:15:02 +0000 (16:15 -0500)]
util: Add GST_ROUND_UP_N and GST_ROUND_DOWN_N
These are generic rounding macro that works for any power of two.
Sebastian Dröge [Tue, 14 Jan 2014 15:47:38 +0000 (16:47 +0100)]
tee: Add unit test for requesting pad names
Sebastian Dröge [Tue, 14 Jan 2014 15:45:53 +0000 (16:45 +0100)]
tee: Make sure to give pads the name that was requested
Also check for uniqueness and make sure we create a new
pad index properly if some were requested with names but
the new one is not.
Sebastian Dröge [Tue, 14 Jan 2014 14:52:26 +0000 (15:52 +0100)]
parse: Make sure to create and link chains in the order as written
Make this work again:
audiotestsrc ! tee name=t t.src_0 ! queue ! fakesink t.src_1 ! queue ! fakesink
and this fail again:
audiotestsrc ! tee name=t t.src_1 ! queue ! fakesink t.src_0 ! queue ! fakesink
as tee just counts itself and does not care about the pad names we request
from it.
Sebastian Dröge [Tue, 14 Jan 2014 12:45:34 +0000 (13:45 +0100)]
parse: Remove some C99-style comments
Sebastian Dröge [Tue, 14 Jan 2014 12:44:11 +0000 (13:44 +0100)]
parse: Use GSlice for allocating and freeing links and chains
Sebastian Dröge [Tue, 14 Jan 2014 12:42:20 +0000 (13:42 +0100)]
parse: Add comment about why we disable the "tracing"
It did not print anything useful before anyway, everything
was commented out.
Also remove some unneeded struct members.
Sebastian Dröge [Tue, 14 Jan 2014 12:36:24 +0000 (13:36 +0100)]
parse-launch: Add some more failing pipelines
Also convert some comments about valgrind warnings to
FIXME comments. These were leaking since some time already.
Fabian Kirsch [Fri, 10 Jan 2014 20:10:17 +0000 (21:10 +0100)]
parse: Refactor grammar, make it more consistent and fix conflicts
https://bugzilla.gnome.org/show_bug.cgi?id=710034
Stefan Sauer [Mon, 13 Jan 2014 19:48:32 +0000 (20:48 +0100)]
docs: ensure GstBufferPools shows up as with GObject features
GstBufferPool is a GstObject, add the _get_type function to the types file.
Thiago Santos [Mon, 13 Jan 2014 11:37:37 +0000 (08:37 -0300)]
tests: baseparse: add test for reverse playback on passthrough
Baseparse stores buffers for reverse playback to push on the next
DISCONT, the issue was that it wouldn't ever check for a discont
on passthrough mode as it skips all real parsing. This test
was create to verify this issue and prevent it from happening again
https://bugzilla.gnome.org/show_bug.cgi?id=721941
Thiago Santos [Sat, 11 Jan 2014 13:49:17 +0000 (10:49 -0300)]
tests: baseparse: add basic test for baseparse
Just a small test to check that basic playback works
Thiago Santos [Fri, 10 Jan 2014 12:10:06 +0000 (09:10 -0300)]
baseparse: do not accumulate buffers on passthrough mode
If on passthrough during reverse playback, do not accumulate buffers as
baseparse will never check for DISCONT flag to push those buffers.
So just push buffers downstream as if it was forward playback.
https://bugzilla.gnome.org/show_bug.cgi?id=721941
Stefan Sauer [Mon, 6 Jan 2014 20:47:22 +0000 (21:47 +0100)]
basesrc: don't confuse GST_PAD_MODE_NONE and PULL
Use a switch-case to explicitly handle all pad-modes. This way we don't log an error when the pad is not yet activated.
Stefan Sauer [Thu, 9 Jan 2014 06:56:55 +0000 (07:56 +0100)]
gstobject: add FIXME and docs for the disabled notify on parent
We haven't found a way to re-enable emitting notify and deep-notify for parent
changes. Add a FIXME-2.0 and a doc blob on the property. See #693281.
Thiago Santos [Wed, 8 Jan 2014 19:28:54 +0000 (16:28 -0300)]
baseparse: do not ignore TIME segments
TIME segments are being ignored and a standard initialized
segment is used instead. This causes issues as not properly detecting
reverse playback or not cliping output based on the segment.
This seems to be a regression from one of the GstSegment/GstEvent
redesigns on the 0.10 -> 1.0 transition
Wim Taymans [Wed, 8 Jan 2014 14:47:10 +0000 (15:47 +0100)]
tests: improve check, also check stream-time
Wim Taymans [Wed, 8 Jan 2014 14:31:28 +0000 (15:31 +0100)]
tests: add unit test for segment _offset_running_time()
Add a unit test to check that positive and negative offsets are applied
correctly in various cases.
Wim Taymans [Wed, 8 Jan 2014 14:23:00 +0000 (15:23 +0100)]
segment: take offset into account in _to_position()
Take the offset into account when converting between running-time and
segment positions.
Wim Taymans [Wed, 8 Jan 2014 13:57:04 +0000 (14:57 +0100)]
pad: use new segment offset method to apply the offset
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=721422
Wim Taymans [Wed, 8 Jan 2014 13:54:47 +0000 (14:54 +0100)]
segment: add method to offset the segment running-time
Add a method that can apply an offset to the calculated running-time of
a segment.
Wim Taymans [Wed, 8 Jan 2014 13:52:04 +0000 (14:52 +0100)]
collectpads: take offset into account for expected segment position
The firt valid segment position is start + offset.
Also add some more debug and a FIXME
Wim Taymans [Wed, 8 Jan 2014 13:50:29 +0000 (14:50 +0100)]
info: debug segment offset field as well
Sebastian Dröge [Wed, 8 Jan 2014 08:53:09 +0000 (09:53 +0100)]
multiqueue: Allow growing a queue if all other queues are not linked
See https://bugzilla.gnome.org/show_bug.cgi?id=719893
Wim Taymans [Tue, 7 Jan 2014 15:18:37 +0000 (16:18 +0100)]
filesrc: don't try to seek to -1 offset
The offset can be -1 when we are configured in TIME format. Instead of
failing the seek and erroring, do what and offset of -1 is supposed to
do and simply read from the current offset.
Stefan Sauer [Mon, 6 Jan 2014 20:04:32 +0000 (21:04 +0100)]
basesrc: demote error to warning
This is not an error. A subclass returning FALSE for is_seekable() is one way of
saying that we can't operate in pull mode.
YanpingZhang [Fri, 3 Jan 2014 03:47:23 +0000 (11:47 +0800)]
multiqueue: Fix hanging if shut down while handling a serialized query
https://bugzilla.gnome.org/show_bug.cgi?id=721253
Thiago Santos [Thu, 2 Jan 2014 19:22:37 +0000 (16:22 -0300)]
baseparse: remove pending_segment as it was being misused
It wasn't required, instead baseparse was using it to check the media
caps to identify if it was handling audio or video.
The pending_segment was removed and a checked_media boolean
replaced it for a more accurate naming.
https://bugzilla.gnome.org/show_bug.cgi?id=721350
Thiago Santos [Thu, 2 Jan 2014 16:43:54 +0000 (13:43 -0300)]
baseparse: push pending events before GAP event
A GAP event is handled as an empty buffer by sinks and they expect
to receive start up events before GAP events (like a segment).
This is important specially if there is a GAP at the beginning of
a stream (before any buffers) so that the segment event can be
pushed downstream before the GAP
https://bugzilla.gnome.org/show_bug.cgi?id=721350
Thiago Santos [Thu, 2 Jan 2014 16:41:25 +0000 (13:41 -0300)]
baseparse: refactor pending events pushing
Refactor code repeated 3 times to a common function
https://bugzilla.gnome.org/show_bug.cgi?id=721350
Stefan Sauer [Thu, 2 Jan 2014 19:17:58 +0000 (20:17 +0100)]
design/part-toc.txt: update design docs
Sebastian Dröge [Thu, 2 Jan 2014 12:34:52 +0000 (13:34 +0100)]
pad: Add unit test for adding/removing blocking probes while a pad is blocked
And make sure that these new probes are actually called if they should
instead of silently blocking the pad forever.
https://bugzilla.gnome.org/show_bug.cgi?id=721289
Sebastian Dröge [Thu, 2 Jan 2014 12:33:20 +0000 (13:33 +0100)]
pad: Check if new probes need to be called when adding/removing some
This allows blocking a pad, add a new blocking probe, removing
the first probe and then having the second probe called. Which
could then decide that data-flow should actually continue
instead of blocking now.
https://bugzilla.gnome.org/show_bug.cgi?id=721289
Sebastian Dröge [Thu, 2 Jan 2014 10:13:27 +0000 (11:13 +0100)]
tee: Remove dyn lock
It was used for pad-alloc in 0.10 but currently is completely unused
and not necessary. All pad access is protected by the tee object lock
and keeping another reference to the current pad.
Sebastian Dröge [Thu, 2 Jan 2014 10:09:59 +0000 (11:09 +0100)]
tee: Keep another ref to our one and only srcpad around while pushing
A pad probe on that pad might otherwise just release the pad, drop
the last reference and cause great misery.
https://bugzilla.gnome.org/show_bug.cgi?id=721300
Sebastian Dröge [Mon, 30 Dec 2013 18:03:22 +0000 (19:03 +0100)]
pad: Keep an extra ref of the pad when calling an IDLE probe immediately
The callback might destroy the pad.
Sebastian Dröge [Mon, 30 Dec 2013 17:44:24 +0000 (18:44 +0100)]
pad: Only call IDLE probes if we are actually idle
Also only check the data types for non-IDLE probes. When we
are idle, we have no data type obviously.
Previously we were calling IDLE probes during data flow whenever
a non-blocking probe would be called. The pad was usually not idle
at that time.
Tim-Philipp Müller [Mon, 30 Dec 2013 16:10:08 +0000 (16:10 +0000)]
nettimeprovider: remove unnecessary NULL check
Error is never NULL when we break out of the loop.
COVERITY CID 1037151
Tim-Philipp Müller [Mon, 30 Dec 2013 16:05:47 +0000 (16:05 +0000)]
Revert "nettimeprovider: Remove dead code"
This reverts commit
9649cd4ca19a75d0319117a77a7609e4b8c96533.
This is not right, and it's also not what coverity
is complaining about.
Edward Hervey [Mon, 30 Dec 2013 15:47:32 +0000 (16:47 +0100)]
queue: Remove unneeded checks
item is guaranteed to be non-null.
COVERITY CID 1037152
COVERITY CID 1037153
Edward Hervey [Mon, 30 Dec 2013 15:34:08 +0000 (16:34 +0100)]
nettimeprovider: Remove dead code
err is always NULL by the point we reach this line
COVERITY CID 1037151
Stefan Sauer [Mon, 30 Dec 2013 13:47:19 +0000 (14:47 +0100)]
taglist: fix since marker again (1.3 -> 1.4)
Since markers should point to the appropriate stable version.
Stefan Sauer [Mon, 30 Dec 2013 13:40:40 +0000 (14:40 +0100)]
taglist: fix since-marker in docs (we're in 1.3.X)
Stefan Sauer [Mon, 30 Dec 2013 13:22:37 +0000 (14:22 +0100)]
taglist: add a tag for midi base note numbers
Audio files containing sampled instruments can have metadata describing the note
that was played on the instrument.
Sebastian Dröge [Mon, 30 Dec 2013 09:01:39 +0000 (10:01 +0100)]
pad: Don't ignore probe callback return value when immediately calling IDLE probe
https://bugzilla.gnome.org/show_bug.cgi?id=721096
Pedro Côrte-Real [Sun, 29 Dec 2013 14:06:55 +0000 (14:06 +0000)]
scripts: git-update.sh: fix for non-master branches
Pull from tracking branch instead of origin/master, so
that this works with e.g. 1.2 as well.
Sebastian Dröge [Fri, 27 Dec 2013 11:55:02 +0000 (12:55 +0100)]
parse: Use GLib malloc/free/realloc functions
https://bugzilla.gnome.org/show_bug.cgi?id=720100
Tim-Philipp Müller [Thu, 26 Dec 2013 12:16:26 +0000 (12:16 +0000)]
scripts: create-uninstalled-setup: re-use existing master branch if it exists
When creating separate checkout for non-master branches.
Erik Andresen [Thu, 26 Dec 2013 10:39:27 +0000 (11:39 +0100)]
docs: fix memory leak of appsink example in manual
https://bugzilla.gnome.org/show_bug.cgi?id=721076
Tim-Philipp Müller [Sun, 22 Dec 2013 22:33:12 +0000 (22:33 +0000)]
Automatic update of common submodule
From dbedaa0 to d48bed3
Tim-Philipp Müller [Sun, 22 Dec 2013 22:04:37 +0000 (22:04 +0000)]
po: update for string changes
Tim-Philipp Müller [Sun, 22 Dec 2013 21:56:03 +0000 (21:56 +0000)]
po: set gettext domain in Makevars so we don't have to patch the generated Makefile.in.in
https://bugzilla.gnome.org/show_bug.cgi?id=705455
Wim Taymans [Fri, 20 Dec 2013 13:41:06 +0000 (14:41 +0100)]
utils: Add round down 128 macro for completeness
Nicolas Dufresne [Wed, 13 Nov 2013 22:06:23 +0000 (17:06 -0500)]
utils: Add round up 128 macro
Sebastian Dröge [Fri, 20 Dec 2013 13:30:22 +0000 (14:30 +0100)]
funnel: Setting the PROXY_CAPS flag on the srcpad does not make much sense
funnel outputs whatever one of the upstreams currently outputs, a caps
query to a random upstream does not give the right answer here.
Sebastian Dröge [Fri, 20 Dec 2013 10:37:53 +0000 (11:37 +0100)]
funnel: Proxy CAPS and ALLOCATION queries
Thiago Santos [Mon, 18 Nov 2013 13:46:00 +0000 (10:46 -0300)]
multiqueue: post 100% buffering if single queue is not linked
This makes buffering stop in case a stream switch happens. This is
important for adaptive streams that can disable not-linked streams
to avoid consuming the network bandwidth.
https://bugzilla.gnome.org/show_bug.cgi?id=719575
William Jon McCann [Wed, 18 Dec 2013 10:19:46 +0000 (05:19 -0500)]
docs: fix project links
https://bugzilla.gnome.org/show_bug.cgi?id=720665
David Svensson Fors [Tue, 10 Dec 2013 14:53:54 +0000 (15:53 +0100)]
basesrc: use segment start if DTS for first buffer is unset
https://bugzilla.gnome.org/show_bug.cgi?id=720199
Matthieu Bouron [Thu, 12 Dec 2013 17:17:40 +0000 (17:17 +0000)]
gst-uninstalled: add gstreamer-vaapi paths
https://bugzilla.gnome.org/show_bug.cgi?id=720337
Tim-Philipp Müller [Sat, 14 Dec 2013 21:20:45 +0000 (21:20 +0000)]
tests: add unit test for bitreader, bytereader and bytewriter with no inlining used
Tim-Philipp Müller [Sat, 14 Dec 2013 18:38:41 +0000 (18:38 +0000)]
bytereader: add inline variant of gst_byte_reader_init()
Tim-Philipp Müller [Sat, 14 Dec 2013 18:31:38 +0000 (18:31 +0000)]
docs: fix docs for gst_queue_array_peek_head()
Sebastian Dröge [Sat, 14 Dec 2013 18:08:35 +0000 (19:08 +0100)]
parse: Don't define yyscan_t twice
https://bugzilla.gnome.org/show_bug.cgi?id=720316
Tim-Philipp Müller [Fri, 13 Dec 2013 22:51:32 +0000 (22:51 +0000)]
docs: moving plugins: minor 0.10 -> 1.0 fix
Spotted by Jay Fenlason
Wim Taymans [Wed, 11 Dec 2013 13:42:34 +0000 (14:42 +0100)]
queue: don't ignore event return value
Pass the event return value upstream.
Remove strange goto construct.
Edward Hervey [Tue, 10 Dec 2013 23:30:03 +0000 (18:30 -0500)]
gst-launch: Handle taglist copy failure
If we couldn't copy the tags, just return instead of trying to use bogus
values.
Edward Hervey [Tue, 10 Dec 2013 23:25:22 +0000 (18:25 -0500)]
gst-inspect: Index features are no more
So remove code that will never be used
Edward Hervey [Tue, 10 Dec 2013 22:53:24 +0000 (17:53 -0500)]
gstvalue: Fix comparision of double range
Checking twice the lower bound is great (you never know, it might change
between the two calls by someone using emacs butterfly-mode), but it's a bit
more useful to check the higher bound are also identical.
Detected by Coverity
Edward Hervey [Tue, 10 Dec 2013 22:09:07 +0000 (17:09 -0500)]
controller: Fix out-of-bounds detection
We want to abort if we higher than the maximum *OR* lower than the minimum
accepted value.
Detected by Coverity.
Tim-Philipp Müller [Sat, 7 Dec 2013 19:04:16 +0000 (19:04 +0000)]
tests: add unit test for registering the same category twice
Víctor Manuel Jáquez Leal [Sat, 7 Dec 2013 18:32:58 +0000 (19:32 +0100)]
info: return existing category if a debug category is registered twice
If a category with the same name is found when creating a new
one, the found category is returned instead of an invalid pointer.
Fixes issue with gst-vaapi (which uses an internal copy of the
codec parsers) caused by commit
ccba9130.
https://bugzilla.gnome.org/show_bug.cgi?id=720036
Sebastian Rasmussen [Sat, 7 Dec 2013 14:38:19 +0000 (15:38 +0100)]
docs: Fix typos in function/object descriptions
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=720029
Sebastian Rasmussen [Sat, 7 Dec 2013 14:40:32 +0000 (15:40 +0100)]
Fix some typos in code comments and debug messages
https://bugzilla.gnome.org/show_bug.cgi?id=720029
Stewart Brodie [Fri, 6 Dec 2013 20:50:19 +0000 (20:50 +0000)]
docs: clarify encoding of strings in GstStructures and taglists
https://bugzilla.gnome.org/show_bug.cgi?id=709262
Olivier Crête [Wed, 3 Jul 2013 00:27:59 +0000 (20:27 -0400)]
basesrc: Set format to TIME if do-timestamp is TRUE
https://bugzilla.gnome.org/show_bug.cgi?id=702842
Tim-Philipp Müller [Thu, 5 Dec 2013 00:26:13 +0000 (00:26 +0000)]
tools: gst-launch: don't try to remove already-removed GSource from main loop
It's considered a programming error in recent GLib versions now.
We may already have removed the source by returning FALSE from
the callback if it was fired. Fixes warning with newer GLibs
when interrupting a pipeline with Control-C.
Olivier Crête [Wed, 4 Dec 2013 22:35:18 +0000 (17:35 -0500)]
info: Make sure the same category is not added twice
Olivier Crête [Wed, 4 Dec 2013 22:35:02 +0000 (17:35 -0500)]
info: Protect __categories list in get_category with lock too
Sebastian Rasmussen [Tue, 3 Dec 2013 23:10:36 +0000 (00:10 +0100)]
docs: add missing files for distribution
* add some documentation files in docs/design
* add docs/list-ulink.xsl so check in docs/manual works
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719814
Wim Taymans [Tue, 3 Dec 2013 20:46:19 +0000 (21:46 +0100)]
pad: add ACCEPT_INTERCEPT flag
Make a new flag on the pad that tweaks the default behaviour of the
accept-caps function. By default it will check for a subset of the
query-caps result but this is not always desirable. The query-caps
result contains all the constraints to make a good caps decision
upstream but sometimes, like for parsers, not all the constrained caps
fields are known upstream and then a subset check would fail. Switching
to an intersection makes this work again.
See https://bugzilla.gnome.org/show_bug.cgi?id=705024
https://bugzilla.gnome.org/show_bug.cgi?id=677401
Olivier Crête [Tue, 3 Dec 2013 03:22:36 +0000 (22:22 -0500)]
multiqueue: Wake up on reconfigure event
After patch
bda406c4, the state of the singlequeue was set to OK, but nothing
would then wake up the thread, as the other wakeup functions only look at
singlequeues that are marked as having received as not-linked.
https://bugzilla.gnome.org/show_bug.cgi?id=708200
Sebastian Rasmussen [Sat, 30 Nov 2013 11:15:37 +0000 (12:15 +0100)]
docs: add missing docs, fixing doc errors
* add many missing declarations to sections
* GstController has been removed, update docs
* skip GstIndex when generating documentation
* rephrase so gtkdoc doesn't imagine return value
* add missing argument description for gst_context_new()
* document GstOutputSelectorPadNegotiationMode and move to header-file
https://bugzilla.gnome.org/show_bug.cgi?id=719614
Sebastian Rasmussen [Sat, 30 Nov 2013 13:52:40 +0000 (14:52 +0100)]
docs: cosmetic changes in references/decriptions
* fix typo GstBufferFlag -> GstBufferFlags
* fix typo GstFeatures -> GstCapsFeatures
* fix typo GstAllocatorParams -> GstAllocationParams
* fix typo GstContrlSources -> GstControlSource
* do not refer to gstcheck as an object
* make references gtk_init() and tcase_set_timeout() not be references
* gst_element_get_pad() renamed gst_element_get_static_pad()
* gst_clock_id_wait_async_full() renamed gst_clock_id_wait_async()
* _drop_element() is really gst_queue_array_drop_element()
* gst_pad_accept_caps() was removed, do not refer to it
* separate GST_META_TAG_MEMORY_STR declaration from description
* do not describe removed gst_collect_pads_collect()
* correctly link to GstElementClass' virtual set_context()
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=719614
Olivier Crête [Fri, 29 Nov 2013 19:00:35 +0000 (14:00 -0500)]
parse: Manually insert priv_gst_parse_yyget/set_column prototypes for older flex
Older versions of flex (before 2.5.36) don't add the prototype, so it must
be added manually. We can't check by the version number, because Debian/Ubuntu
patched it into their 2.5.35 at some point.
Thiago Santos [Tue, 19 Nov 2013 14:41:54 +0000 (11:41 -0300)]
gstpad: drop assertion on gst_pad_peer_query_position
It is a 'both' query, so it can be sent both ways
Thiago Santos [Mon, 18 Nov 2013 21:11:56 +0000 (18:11 -0300)]
inputselector: handle gap events
Use gap events to advance the selector's pad position.
This is relevant to keep sync_streams mode working when one of the
streams doesn't have data all the time.
Wim Taymans [Fri, 29 Nov 2013 16:02:41 +0000 (17:02 +0100)]
Revert "ghostpad: copy sticky events to SRC ghostpads"
This reverts commit
8162a583a4dd68582bf186e2e47a8f0d68fa1980.
Automatically copying the sticky events makes it impossible for apps
and elements to filter the events with event probes. This causes
regressions (See #719437). The best option is to let the app/element
copy and filter the events themselves after the ghostpad target is
set.
Fabian Kirsch [Tue, 19 Nov 2013 14:03:35 +0000 (15:03 +0100)]
parse: fix segfaulting prototype-mismatch
Now YYDEBUG is always set, so check it's value
https://bugzilla.gnome.org/show_bug.cgi?id=712679
Jan Schmidt [Wed, 27 Nov 2013 07:32:22 +0000 (18:32 +1100)]
netclock: Fix docstring for round-trip-limit and uninit access warning.
Fix a typo in a doc string - the property is round-trip-limit, not
roundtrip-limit.
Remove a bogus GST_WARNING that can print an uninitialised variable
and is redundant anyway.
Carlos Rafael Giani [Tue, 26 Nov 2013 10:56:46 +0000 (11:56 +0100)]
netclock: Add round-trip-limit parameter
Sometimes, packets might take a very long time to return. Such packets
usually are way too late and destabilize the regression with their
obsolete data. On Wi-Fi, round-trips of over 7 seconds have been observed.
If the limit is set to a nonzero value, packets with a round-trip period
larger than the limit are ignored.
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org>
https://bugzilla.gnome.org/show_bug.cgi?id=712385
Olivier Crête [Tue, 26 Nov 2013 00:04:38 +0000 (19:04 -0500)]
query: Fix gi annotations of gst_structure_new_custom()
Jan Schmidt [Mon, 25 Nov 2013 15:43:54 +0000 (02:43 +1100)]
netclock: Fix C99 comment
Jan Schmidt [Mon, 25 Nov 2013 15:17:36 +0000 (02:17 +1100)]
netclock: Implement rolling-average filter on observations.
Keep a rolling average of the round trip time for network clock
observations, favouring shorter round trips as being more accurate.
Don't pass any clock observation to the clock slaving if it has a
round-trip time greater than 2 times the average.
Actual shifts in the network topology will be noticed after some
time, as the rolling average incorporates the new round trip times.