rtpjitterbuffer: make sure not to drop packets based on skew
authorHavard Graff <havard@pexip.com>
Sun, 20 Oct 2019 10:17:25 +0000 (12:17 +0200)
committerGStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Sat, 2 Nov 2019 23:05:32 +0000 (23:05 +0000)
commit87457a862d3f9e1468553d1e070e16746949a443
treef9a54fa43d6c99b0805a3c7a3c953d2ebd12cad3
parenta195d5a4a6bc638245b052106d260fd241ca7921
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 https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/commit/8d955fc32b552b2db933c67f3cfa31d987f36b81
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
gst/rtpmanager/rtpjitterbuffer.c
tests/check/elements/rtpjitterbuffer.c