summaryrefslogtreecommitdiffstats
path: root/gst/rtpmanager/rtpjitterbuffer.h
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@gmail.com>2008-11-19 09:06:29 +0000
committerWim Taymans <wim.taymans@gmail.com>2008-11-19 09:06:29 +0000
commita944d3f198e584a71f9a9686d0a53dea270e0804 (patch)
tree05d32baefcd0c2a2bea42eed567a279eb85c6998 /gst/rtpmanager/rtpjitterbuffer.h
parenta49918b152aa7b0e998e0f159d4b0128c297c347 (diff)
downloadgst-plugins-bad-a944d3f198e584a71f9a9686d0a53dea270e0804.tar.gz
gst-plugins-bad-a944d3f198e584a71f9a9686d0a53dea270e0804.tar.bz2
gst-plugins-bad-a944d3f198e584a71f9a9686d0a53dea270e0804.zip
gst/rtpmanager/gstrtpbin.c: Remove internal sync pad, use signals instead to get lip-sync notifications.
Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (gst_rtp_bin_associate), (gst_rtp_bin_handle_sync), (create_stream), (free_stream), (new_ssrc_pad_found): Remove internal sync pad, use signals instead to get lip-sync notifications. * gst/rtpmanager/gstrtpjitterbuffer.c: (gst_rtp_jitter_buffer_base_init), (gst_rtp_jitter_buffer_class_init), (gst_rtp_jitter_buffer_internal_links), (create_rtcp_sink), (remove_rtcp_sink), (gst_rtp_jitter_buffer_request_new_pad), (gst_rtp_jitter_buffer_release_pad), (gst_rtp_jitter_buffer_sink_rtcp_event), (gst_rtp_jitter_buffer_chain_rtcp), (gst_rtp_jitter_buffer_get_property): * gst/rtpmanager/gstrtpjitterbuffer.h: Make it possible to send SR packets to the jitterbuffer. Check if the SR timestamps are valid by comparing them to the RTP timestamps. Signal the SR packet and the timing information to listeners. * gst/rtpmanager/gstrtpssrcdemux.c: (create_demux_pad_for_ssrc), (gst_rtp_ssrc_demux_rtcp_chain), (gst_rtp_ssrc_demux_src_query): Remove some unused code. * gst/rtpmanager/rtpjitterbuffer.c: (rtp_jitter_buffer_reset_skew), (calculate_skew), (rtp_jitter_buffer_get_sync): * gst/rtpmanager/rtpjitterbuffer.h: Keep track of the last seen RTP timestamp so that we can filter out invalid SR packets.
Diffstat (limited to 'gst/rtpmanager/rtpjitterbuffer.h')
-rw-r--r--gst/rtpmanager/rtpjitterbuffer.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/gst/rtpmanager/rtpjitterbuffer.h b/gst/rtpmanager/rtpjitterbuffer.h
index 325f8f7b..aa009190 100644
--- a/gst/rtpmanager/rtpjitterbuffer.h
+++ b/gst/rtpmanager/rtpjitterbuffer.h
@@ -59,6 +59,7 @@ struct _RTPJitterBuffer {
guint32 clock_rate;
GstClockTime base_extrtp;
guint64 ext_rtptime;
+ guint64 last_rtptime;
gint64 window[RTP_JITTER_BUFFER_MAX_WINDOW];
guint window_pos;
guint window_size;
@@ -92,7 +93,8 @@ guint rtp_jitter_buffer_num_packets (RTPJitterBuffer *jbuf)
guint32 rtp_jitter_buffer_get_ts_diff (RTPJitterBuffer *jbuf);
void rtp_jitter_buffer_get_sync (RTPJitterBuffer *jbuf, guint64 *rtptime,
- guint64 *timestamp, guint32 *clock_rate);
+ guint64 *timestamp, guint32 *clock_rate,
+ guint64 *last_rtptime);
#endif /* __RTP_JITTER_BUFFER_H__ */