gstreamer/gst/rtpmanager
Havard Graff f440b074b1 rtpjitterbuffer: improved rtx-rtt averaging
The basic idea is this:
1. For *larger* rtx-rtt, weigh a new measurement as before
2. For *smaller* rtx-rtt, be a bit more conservative and weigh a bit less
3. For very large measurements, consider them "outliers"
   and count them a lot less

The idea being that reducing the rtx-rtt is much more harmful then
increasing it, since we don't want to be underestimating the rtt of the
network, and when using this number to estimate the latency you need for
you jitterbuffer, you would rather want it to be a bit larger then a bit
smaller, potentially losing rtx-packets. The "outlier-detector" is there
to prevent a single skewed measurement to affect the outcome too much.
On wireless networks, these are surprisingly common.

https://bugzilla.gnome.org/show_bug.cgi?id=769768
2016-09-14 19:37:50 -04:00
..
gstrtpbin.c rtpbin: introduce max-streams property 2016-08-26 11:57:06 -04:00
gstrtpbin.h rtpbin: introduce max-streams property 2016-08-26 11:57:06 -04:00
gstrtpdtmfmux.c good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
gstrtpdtmfmux.h rtpmux: Fix FSF address 2012-12-16 16:36:39 +00:00
gstrtpjitterbuffer.c rtpjitterbuffer: improved rtx-rtt averaging 2016-09-14 19:37:50 -04:00
gstrtpjitterbuffer.h rtpjitterbuffer: small optimizations 2014-04-29 16:21:44 +02:00
gstrtpmanager.c rtpmanager: add new rtprtxsend / rtprtxreceive elements 2014-01-03 20:47:59 +01:00
gstrtpmux.c Revert "rtpmux: fix PROP_TIMESTAMP_OFFSET range problems" 2016-08-26 12:06:51 -04:00
gstrtpmux.h Revert "rtpmux: fix PROP_TIMESTAMP_OFFSET range problems" 2016-08-26 12:06:51 -04:00
gstrtpptdemux.c good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
gstrtpptdemux.h Fix FSF address 2012-11-04 00:07:18 +00:00
gstrtprtxqueue.c good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
gstrtprtxqueue.h rtxqueue: add property to configure queue size 2013-08-23 15:47:25 +02:00
gstrtprtxreceive.c rtxreceive: Set buffer flag for retransmitted packets 2016-09-14 19:37:50 -04:00
gstrtprtxreceive.h rtprtxreceive: Wait until timeout to clear association requests 2014-05-04 22:36:59 -04:00
gstrtprtxsend.c good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
gstrtprtxsend.h rtprtxsend: run a new GstTask on the src pad 2014-01-21 14:54:01 +01:00
gstrtpsession.c gstrtpsession: refactor duplicate code into a function 2016-08-23 15:09:03 -04:00
gstrtpsession.h rtpmanager: add new on-new-sender-ssrc, on-sender-ssrc-active signals 2015-10-02 16:39:29 +03:00
gstrtpssrcdemux.c good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
gstrtpssrcdemux.h rtpssrcdemux: Remove unused GstSegment 2013-04-02 23:42:41 -04:00
Makefile.am rtpmanager: It's GST_LIBS, not GST_LIBS_LIBS 2016-04-11 10:44:56 +03:00
meson.build Add support for Meson as alternative/parallel build system 2016-08-20 11:21:12 +01:00
rtpjitterbuffer.c rtpjitterbuffer: Don't warn for duplicate packets 2016-08-10 19:39:42 +02:00
rtpjitterbuffer.h rtpjitterbuffer: fix RTPJitterBufferMode documentation 2016-06-17 15:16:45 +03:00
rtpsession.c rtpsession: degrade g_warning to GST_ERROR 2016-08-26 11:53:22 -04:00
rtpsession.h rtpsession: Add new signal 'on-app-rtcp' 2016-03-30 15:42:01 +03:00
rtpsource.c rtpsource: reordered packets are very normal, and should not be a warning 2016-08-26 11:53:22 -04:00
rtpsource.h rtpmanager: Take into account packet rate for max-dropout and max-misorder calculations 2015-10-07 12:07:18 +01:00
rtpstats.c rtpjitterbuffer: Actually calculate the packet rate for max-dropout and max-misorder calculations. 2016-08-10 19:49:27 +02:00
rtpstats.h rtpmanager: Take into account packet rate for max-dropout and max-misorder calculations 2015-10-07 12:07:18 +01:00