rtpjitterbuffer: Don't always reset PTS to 0 after a gap
authorAndrew <nifigase@gmail.com>
Wed, 8 Feb 2017 13:36:00 +0000 (13:36 +0000)
committerSebastian Dröge <sebastian@centricular.com>
Sun, 26 Feb 2017 10:41:19 +0000 (12:41 +0200)
commit76792a5c204dab025ea8c2ce0be865bdca430b98
tree7b51c2ecf38af181cbd90b5e1530c4bf02666356
parent16941255e7ffeca772699ef3d5ee59c409557924
rtpjitterbuffer: Don't always reset PTS to 0 after a gap

In function rtp_jitter_buffer_calculate_pts: If gap in incoming RTP
timestamps is more than (3 * jbuf->clock_rate) we call
rtp_jitter_buffer_reset_skew which resets pts to 0. So components down
the pipeline (playes, mixers) just skip frames/samples until pts becomes
equal to pts before gap.

In version 1.10.2 and before this checking was bypassed for packets with
"estimated dts", and gaps were handled correctly.

https://bugzilla.gnome.org/show_bug.cgi?id=778341
gst/rtpmanager/gstrtpjitterbuffer.c
gst/rtpmanager/rtpjitterbuffer.c
gst/rtpmanager/rtpjitterbuffer.h