gstreamer/gst/rtpmanager
Havard Graff 87457a862d rtpjitterbuffer: make sure not to drop packets based on skew
One of the jitterbuffers functions is to try and make sense of weird
network behavior.

It is quite unhelpful for the jitterbuffer to start dropping packets
itself when what you are trying to achieve is better network resilience.

In the case of a skew, this could often mean the sender has restarted
in some fashion, and then dropping the very first buffer of this "new"
stream could often mean missing valuable information, like in the case
of video and I-frames.

This patch simply reverts back to the old behavior, prior to 8d955fc32b
and includes the simplest test I could write to demonstrate the behavior,
where a single packet arrives "perfectly", then a 50ms gap happens,
and then two more packets arrive in perfect order after that.

# Conflicts:
#	tests/check/elements/rtpjitterbuffer.c
2019-11-02 23:05:32 +00:00
..
gstrtpbin.c good: Avoid usage of deprecated API 2019-10-16 07:46:58 +00:00
gstrtpbin.h rtpbin: add request-jitterbuffer signal 2019-09-24 15:33:21 +00:00
gstrtpdtmfmux.c docs: Port all docstring to gtk-doc markdown 2019-05-13 10:24:40 -04:00
gstrtpdtmfmux.h rtpmux: Fix FSF address 2012-12-16 16:36:39 +00:00
gstrtpfunnel.c rtpfunnel: forward correct segment when switching pad 2019-08-06 14:02:50 +00:00
gstrtpfunnel.h rtpfunnel: Stop using G_DECLARE_FINAL_TYPE 2018-11-13 00:37:11 +01:00
gstrtpjitterbuffer.c documentation: fix a number of typos 2019-10-05 22:38:11 +00:00
gstrtpjitterbuffer.h rtpjitterbuffer: small optimizations 2014-04-29 16:21:44 +02:00
gstrtpmanager.c Initial commit of GstRtpFunnel 2018-10-15 14:20:58 +02:00
gstrtpmux.c docs: Port all docstring to gtk-doc markdown 2019-05-13 10:24:40 -04:00
gstrtpmux.h doc: Fix some docstrings 2019-05-13 17:00:00 -04:00
gstrtpptdemux.c documentation: fix a number of typos 2019-10-05 22:38:11 +00:00
gstrtpptdemux.h documentation: fix a number of typos 2019-10-05 22:38:11 +00:00
gstrtprtxqueue.c doc: fix element section documentations 2019-05-25 16:57:31 +02:00
gstrtprtxqueue.h rtprtxqueue: implement handling of the max-size-time property 2017-04-11 09:44:33 +03:00
gstrtprtxreceive.c documentation: fix a number of typos 2019-10-05 22:38:11 +00:00
gstrtprtxreceive.h rtprtxreceive: Wait until timeout to clear association requests 2014-05-04 22:36:59 -04:00
gstrtprtxsend.c documentation: fix a number of typos 2019-10-05 22:38:11 +00:00
gstrtprtxsend.h rtprtxsend: run a new GstTask on the src pad 2014-01-21 14:54:01 +01:00
gstrtpsession.c good: Avoid usage of deprecated API 2019-10-16 07:46:58 +00:00
gstrtpsession.h rtpsession: use the correct segment seqnum 2019-02-04 13:14:37 +00:00
gstrtpssrcdemux.c documentation: fix a number of typos 2019-10-05 22:38:11 +00:00
gstrtpssrcdemux.h rtpssrcdemux: Remove unused GstSegment 2013-04-02 23:42:41 -04:00
meson.build rtptimerqueue: Consolidate a data structure for timers 2019-09-27 17:34:04 -04:00
rtpjitterbuffer.c rtpjitterbuffer: make sure not to drop packets based on skew 2019-11-02 23:05:32 +00:00
rtpjitterbuffer.h rtpjitterbuffer: Move item structure outside of the element 2019-09-27 13:02:16 -04:00
rtpsession.c documentation: fix a number of typos 2019-10-05 22:38:11 +00:00
rtpsession.h documentation: fix a number of typos 2019-10-05 22:38:11 +00:00
rtpsource.c documentation: fix a number of typos 2019-10-05 22:38:11 +00:00
rtpsource.h rtpsession: Send as many nack seqnum as possible 2019-04-05 14:53:09 +00:00
rtpstats.c rtpjitterbuffer: don't try and calculate packet-rate if seqnum are jumping 2019-06-12 11:39:31 +02:00
rtpstats.h rtpmanager: consider UDP and IP headers in bandwidth calculation 2019-08-02 17:22:51 +02:00
rtptimerqueue.c rtptimerqueue: Optimize reschedule optations 2019-09-27 17:34:04 -04:00
rtptimerqueue.h rtpjittterbuffer: Port timers array to RtpTimerQueue 2019-09-27 17:34:04 -04:00