gstreamer/gst
Havard Graff 8ed7ab178b rtpjitterbuffer: don't try and calculate packet-rate if seqnum are jumping
Turns out that the "big-gap"-logic of the jitterbuffer has been horribly
broken.

For people using lost-events, an RTP-stream with a gap in sequencenumbers,
would produce exactly that many lost-events immediately.
So if your sequence-numbers jumped 20000, you would get 20000 lost-events
in your pipeline...

The test that looks after this logic "test_push_big_gap", basically
incremented the DTS of the buffer equal to the gap that was introduced,
so that in fact this would be more of a "large pause" test, than an
actual gap/discontinuity in the sequencenumbers.

Once the test was modified to not increment DTS (buffer arrival time) with
a similar gap, all sorts of crazy started happening, including adding
thousands of timers, and the logic that should have kicked in, the
"handle_big_gap_buffer"-logic, was not called at all, why?

Because the number max_dropout is calculated using the packet-rate, and
the packet-rate logic would, in this particular test, report that
the new packet rate was over 400000 packets per second!!!

I believe the right fix is to don't try and update the packet-rate if
there is any jumps in the sequence-numbers, and only do these calculations
for nice, sequential streams.
2019-06-12 11:39:31 +02:00
..
alpha doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
apetag doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
audiofx doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
audioparsers doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
auparse doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
autodetect doc: remove xml from comments 2019-05-29 22:20:40 +02:00
avi doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
cutter doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
debugutils doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
deinterlace doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
dtmf doc: remove xml from comments 2019-05-29 22:20:40 +02:00
effectv doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
equalizer doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
flv doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
flx doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
goom doc: Fix some docstrings 2019-05-13 17:00:00 -04:00
goom2k1 doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
icydemux doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
id3demux doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
imagefreeze doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
interleave doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
isomp4 qtdemux: Provide a 2 frames lead-in for audio decoders 2019-06-05 23:13:33 +03:00
law doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
level doc: remove xml from comments 2019-05-29 22:20:40 +02:00
matroska matroskamux: fix typo in property description 2019-06-05 07:37:17 +01:00
monoscope doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
multifile splitmuxsrc: Protect initial pad configuration with the object lock 2019-06-12 02:46:48 +10:00
multipart doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
replaygain doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
rtp doc: remove xml from comments 2019-05-29 22:20:40 +02:00
rtpmanager rtpjitterbuffer: don't try and calculate packet-rate if seqnum are jumping 2019-06-12 11:39:31 +02:00
rtsp rtspsrc: Remove uneeded keep-alive hack 2019-05-27 16:04:23 +02:00
shapewipe doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
smpte doc: fix element section documentations 2019-05-25 16:57:31 +02:00
spectrum doc: remove xml from comments 2019-05-29 22:20:40 +02:00
udp meson: Bump minimal GLib version to 2.44 2019-06-03 16:18:55 +00:00
videobox doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
videocrop doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
videofilter doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
videomixer videomixer: the documentation for GstVideoMixer2Pad is not exposed 2019-05-25 17:25:02 +02:00
wavenc doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
wavparse doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
y4m doc: Port documentation to hotdoc 2019-05-13 11:34:56 -04:00
Makefile.am
meson.build meson: Add feature options for all plugins 2018-07-27 18:42:54 +05:30