From 0ad14d0a455f335b9af00cc629ad07e189d8fa4c Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Thu, 13 Nov 2008 15:48:54 +0000 Subject: gst/rtpmanager/: Small cleanups and some more debug info. Original commit message from CVS: * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_jitter_buffer_sink_parse_caps), (gst_rtp_jitter_buffer_flush_stop), (gst_rtp_jitter_buffer_chain): * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), (calculate_skew): Small cleanups and some more debug info. --- gst/rtpmanager/gstrtpjitterbuffer.c | 13 +++++++------ gst/rtpmanager/rtpjitterbuffer.c | 7 ++++++- 2 files changed, 13 insertions(+), 7 deletions(-) (limited to 'gst') diff --git a/gst/rtpmanager/gstrtpjitterbuffer.c b/gst/rtpmanager/gstrtpjitterbuffer.c index 43e758f9..779ee5de 100644 --- a/gst/rtpmanager/gstrtpjitterbuffer.c +++ b/gst/rtpmanager/gstrtpjitterbuffer.c @@ -571,6 +571,7 @@ gst_rtp_jitter_buffer_flush_stop (GstRtpJitterBuffer * jitterbuffer) priv->next_in_seqnum = -1; priv->clock_rate = -1; priv->eos = FALSE; + GST_DEBUG_OBJECT (jitterbuffer, "flush and reset jitterbuffer"); rtp_jitter_buffer_flush (priv->jbuf); rtp_jitter_buffer_reset_skew (priv->jbuf); JBUF_UNLOCK (priv); @@ -836,6 +837,7 @@ gst_rtp_jitter_buffer_chain (GstPad * pad, GstBuffer * buffer) GstClockTime timestamp; guint64 latency_ts; gboolean tail; + guint8 pt; jitterbuffer = GST_RTP_JITTER_BUFFER (gst_pad_get_parent (pad)); @@ -844,10 +846,12 @@ gst_rtp_jitter_buffer_chain (GstPad * pad, GstBuffer * buffer) priv = jitterbuffer->priv; - if (G_UNLIKELY (priv->last_pt != gst_rtp_buffer_get_payload_type (buffer))) { + pt = gst_rtp_buffer_get_payload_type (buffer); + + if (G_UNLIKELY (priv->last_pt != pt)) { GstCaps *caps; - priv->last_pt = gst_rtp_buffer_get_payload_type (buffer); + priv->last_pt = pt; /* reset clock-rate so that we get a new one */ priv->clock_rate = -1; /* Try to get the clock-rate from the caps first if we can. If there are no @@ -858,11 +862,7 @@ gst_rtp_jitter_buffer_chain (GstPad * pad, GstBuffer * buffer) } if (G_UNLIKELY (priv->clock_rate == -1)) { - guint8 pt; - /* no clock rate given on the caps, try to get one with the signal */ - pt = gst_rtp_buffer_get_payload_type (buffer); - gst_rtp_jitter_buffer_get_clock_rate (jitterbuffer, pt); if (G_UNLIKELY (priv->clock_rate == -1)) goto not_negotiated; @@ -912,6 +912,7 @@ gst_rtp_jitter_buffer_chain (GstPad * pad, GstBuffer * buffer) } } if (G_UNLIKELY (reset)) { + GST_DEBUG_OBJECT (jitterbuffer, "flush and reset jitterbuffer"); rtp_jitter_buffer_flush (priv->jbuf); rtp_jitter_buffer_reset_skew (priv->jbuf); priv->last_popped_seqnum = -1; diff --git a/gst/rtpmanager/rtpjitterbuffer.c b/gst/rtpmanager/rtpjitterbuffer.c index 54075c46..de3247fd 100644 --- a/gst/rtpmanager/rtpjitterbuffer.c +++ b/gst/rtpmanager/rtpjitterbuffer.c @@ -111,6 +111,7 @@ rtp_jitter_buffer_reset_skew (RTPJitterBuffer * jbuf) jbuf->window_min = 0; jbuf->skew = 0; jbuf->prev_send_diff = -1; + GST_DEBUG ("reset skew correction"); } /* For the clock skew we use a windowed low point averaging algorithm as can be @@ -187,11 +188,15 @@ calculate_skew (RTPJitterBuffer * jbuf, guint32 rtptime, GstClockTime time, gstrtptime = gst_util_uint64_scale_int (ext_rtptime, GST_SECOND, clock_rate); /* first time, lock on to time and gstrtptime */ - if (G_UNLIKELY (jbuf->base_time == -1)) + if (G_UNLIKELY (jbuf->base_time == -1)) { jbuf->base_time = time; + GST_DEBUG ("Taking new base time %" GST_TIME_FORMAT, GST_TIME_ARGS (time)); + } if (G_UNLIKELY (jbuf->base_rtptime == -1)) { jbuf->base_rtptime = gstrtptime; jbuf->base_extrtp = ext_rtptime; + GST_DEBUG ("Taking new base rtptime %" GST_TIME_FORMAT, + GST_TIME_ARGS (gstrtptime)); } if (G_LIKELY (gstrtptime >= jbuf->base_rtptime)) -- cgit v1.2.1