From 23883be047f94d8bde7094b6210277e92e9df11c Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Wed, 25 Apr 2007 08:30:48 +0000 Subject: gst/rtpmanager/gstrtpbin.c: fix for pad name change Original commit message from CVS: * gst/rtpmanager/gstrtpbin.c: (create_rtcp): fix for pad name change * gst/rtpmanager/gstrtpsession.c: (rtcp_thread), (gst_rtp_session_send_rtcp), (gst_rtp_session_clock_rate): Fix for renamed methods. * gst/rtpmanager/rtpsession.c: (rtp_session_init), (rtp_session_finalize), (rtp_session_set_cname), (rtp_session_get_cname), (rtp_session_set_name), (rtp_session_get_name), (rtp_session_set_email), (rtp_session_get_email), (rtp_session_set_phone), (rtp_session_get_phone), (rtp_session_set_location), (rtp_session_get_location), (rtp_session_set_tool), (rtp_session_get_tool), (rtp_session_set_note), (rtp_session_get_note), (source_push_rtp), (obtain_source), (rtp_session_add_source), (rtp_session_get_source_by_ssrc), (rtp_session_create_source), (rtp_session_process_rtp), (rtp_session_process_sr), (rtp_session_process_sdes), (rtp_session_process_rtcp), (rtp_session_send_rtp), (rtp_session_get_reporting_interval), (session_report_blocks), (session_sdes), (rtp_session_perform_reporting): * gst/rtpmanager/rtpsession.h: Prepare for implementing SSRC sampling. Create SSRC for the session. Add methods to set the SDES entries. fix accounting of senders/receivers. Implement SR/RR/SDES RTCP reporting. * gst/rtpmanager/rtpsource.c: (rtp_source_init), (init_seq), (rtp_source_process_rtp), (rtp_source_process_sr): * gst/rtpmanager/rtpsource.h: Implement extended sequence number. * gst/rtpmanager/rtpstats.c: (rtp_stats_calculate_rtcp_interval): * gst/rtpmanager/rtpstats.h: Rename some fields. --- gst/rtpmanager/rtpsession.h | 36 +++++++++++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-) (limited to 'gst/rtpmanager/rtpsession.h') diff --git a/gst/rtpmanager/rtpsession.h b/gst/rtpmanager/rtpsession.h index 46062c99..493387fa 100644 --- a/gst/rtpmanager/rtpsession.h +++ b/gst/rtpmanager/rtpsession.h @@ -143,9 +143,24 @@ struct _RTPSession { GMutex *lock; guint header_len; + guint mtu; RTPSource *source; - GHashTable *ssrcs; + + /* info for creating reports */ + gchar *cname; + gchar *name; + gchar *email; + gchar *phone; + gchar *location; + gchar *tool; + gchar *note; + + /* for sender/receiver counting */ + guint32 key; + guint32 mask_idx; + guint32 mask; + GHashTable *ssrcs[32]; GHashTable *cnames; guint total_sources; @@ -184,6 +199,21 @@ gdouble rtp_session_get_bandwidth (RTPSession *sess); void rtp_session_set_rtcp_fraction (RTPSession *sess, gdouble fraction); gdouble rtp_session_get_rtcp_fraction (RTPSession *sess); +void rtp_session_set_cname (RTPSession *sess, const gchar *cname); +gchar* rtp_session_get_cname (RTPSession *sess); +void rtp_session_set_name (RTPSession *sess, const gchar *name); +gchar* rtp_session_get_name (RTPSession *sess); +void rtp_session_set_email (RTPSession *sess, const gchar *email); +gchar* rtp_session_get_email (RTPSession *sess); +void rtp_session_set_phone (RTPSession *sess, const gchar *phone); +gchar* rtp_session_get_phone (RTPSession *sess); +void rtp_session_set_location (RTPSession *sess, const gchar *location); +gchar* rtp_session_get_location (RTPSession *sess); +void rtp_session_set_tool (RTPSession *sess, const gchar *tool); +gchar* rtp_session_get_tool (RTPSession *sess); +void rtp_session_set_note (RTPSession *sess, const gchar *note); +gchar* rtp_session_get_note (RTPSession *sess); + /* handling sources */ gboolean rtp_session_add_source (RTPSession *sess, RTPSource *src); gint rtp_session_get_num_sources (RTPSession *sess); @@ -200,7 +230,7 @@ GstFlowReturn rtp_session_process_rtcp (RTPSession *sess, GstBuffer GstFlowReturn rtp_session_send_rtp (RTPSession *sess, GstBuffer *buffer); /* get interval for next RTCP interval */ -gdouble rtp_session_get_rtcp_interval (RTPSession *sess); -GstFlowReturn rtp_session_produce_rtcp (RTPSession *sess); +gdouble rtp_session_get_reporting_interval (RTPSession *sess); +GstFlowReturn rtp_session_perform_reporting (RTPSession *sess); #endif /* __RTP_SESSION_H__ */ -- cgit