diff options
author | Andrew <nifigase@gmail.com> | 2017-02-08 13:36:00 +0000 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2017-02-27 18:23:43 +0200 |
commit | ec1769b0480e60ee42ecf4a1f95ee33c94d0a3af (patch) | |
tree | 8eb003a66531d4697f40c6b9b6f1dee2553db53d /gst/rtpmanager/rtpjitterbuffer.h | |
parent | 5896854c03bc850dfea94ec630ab3bcd97374390 (diff) | |
download | gstreamer-plugins-good-ec1769b0480e60ee42ecf4a1f95ee33c94d0a3af.tar.gz |
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
Diffstat (limited to 'gst/rtpmanager/rtpjitterbuffer.h')
-rw-r--r-- | gst/rtpmanager/rtpjitterbuffer.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gst/rtpmanager/rtpjitterbuffer.h b/gst/rtpmanager/rtpjitterbuffer.h index d04b5fd96..4d3c6fe16 100644 --- a/gst/rtpmanager/rtpjitterbuffer.h +++ b/gst/rtpmanager/rtpjitterbuffer.h @@ -189,7 +189,7 @@ void rtp_jitter_buffer_get_sync (RTPJitterBuffer *jbuf, guint64 *timestamp, guint32 *clock_rate, guint64 *last_rtptime); -GstClockTime rtp_jitter_buffer_calculate_pts (RTPJitterBuffer * jbuf, GstClockTime dts, +GstClockTime rtp_jitter_buffer_calculate_pts (RTPJitterBuffer * jbuf, GstClockTime dts, gboolean estimated_dts, guint32 rtptime, GstClockTime base_time); #endif /* __RTP_JITTER_BUFFER_H__ */ |