diff options
author | Olivier Crete <olivier.crete@collabora.co.uk> | 2009-04-27 11:06:01 +0200 |
---|---|---|
committer | Tim-Philipp Müller <tim.muller@collabora.co.uk> | 2009-08-11 02:30:41 +0100 |
commit | 63636b12907bd0c603cff9251bdba69ff1e0496a (patch) | |
tree | c8b1701becef2efe9ed15ffd27e44e6b61f4f9ed /gst/rtpmanager/rtpsession.c | |
parent | d45d18c735065ef13de3b7d55b1e4799f808e81d (diff) |
rtpsession: notify when SSRC changes
Emit a g_object_notify when the SSRc changes because of a collision.
Fixes #580144
Diffstat (limited to 'gst/rtpmanager/rtpsession.c')
-rw-r--r-- | gst/rtpmanager/rtpsession.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/gst/rtpmanager/rtpsession.c b/gst/rtpmanager/rtpsession.c index bd72ed98..219aacf1 100644 --- a/gst/rtpmanager/rtpsession.c +++ b/gst/rtpmanager/rtpsession.c @@ -1221,6 +1221,8 @@ rtp_session_set_internal_ssrc (RTPSession * sess, guint32 ssrc) GINT_TO_POINTER (sess->source->ssrc), sess->source); } RTP_SESSION_UNLOCK (sess); + + g_object_notify (G_OBJECT (sess), "internal-ssrc"); } /** @@ -2435,6 +2437,7 @@ rtp_session_on_timeout (RTPSession * sess, GstClockTime current_time, GList *item; ReportData data; RTPSource *own; + gboolean notify = FALSE; g_return_val_if_fail (RTP_IS_SESSION (sess), GST_FLOW_ERROR); @@ -2521,10 +2524,14 @@ rtp_session_on_timeout (RTPSession * sess, GstClockTime current_time, sess->bye_reason = NULL; sess->sent_bye = FALSE; sess->change_ssrc = FALSE; + notify = TRUE; GST_DEBUG ("changed our SSRC to %08x", own->ssrc); } RTP_SESSION_UNLOCK (sess); + if (notify) + g_object_notify (G_OBJECT (sess), "internal-ssrc"); + /* push out the RTCP packet */ if (data.rtcp) { /* close the RTCP packet */ |