mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-04-26 04:36:20 +00:00
rtpsession: notify when SSRC changes
Emit a g_object_notify when the SSRc changes because of a collision. Fixes #580144
This commit is contained in:
parent
d45d18c735
commit
63636b1290
1 changed files with 7 additions and 0 deletions
|
@ -1221,6 +1221,8 @@ rtp_session_set_internal_ssrc (RTPSession * sess, guint32 ssrc)
|
||||||
GINT_TO_POINTER (sess->source->ssrc), sess->source);
|
GINT_TO_POINTER (sess->source->ssrc), sess->source);
|
||||||
}
|
}
|
||||||
RTP_SESSION_UNLOCK (sess);
|
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;
|
GList *item;
|
||||||
ReportData data;
|
ReportData data;
|
||||||
RTPSource *own;
|
RTPSource *own;
|
||||||
|
gboolean notify = FALSE;
|
||||||
|
|
||||||
g_return_val_if_fail (RTP_IS_SESSION (sess), GST_FLOW_ERROR);
|
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->bye_reason = NULL;
|
||||||
sess->sent_bye = FALSE;
|
sess->sent_bye = FALSE;
|
||||||
sess->change_ssrc = FALSE;
|
sess->change_ssrc = FALSE;
|
||||||
|
notify = TRUE;
|
||||||
GST_DEBUG ("changed our SSRC to %08x", own->ssrc);
|
GST_DEBUG ("changed our SSRC to %08x", own->ssrc);
|
||||||
}
|
}
|
||||||
RTP_SESSION_UNLOCK (sess);
|
RTP_SESSION_UNLOCK (sess);
|
||||||
|
|
||||||
|
if (notify)
|
||||||
|
g_object_notify (G_OBJECT (sess), "internal-ssrc");
|
||||||
|
|
||||||
/* push out the RTCP packet */
|
/* push out the RTCP packet */
|
||||||
if (data.rtcp) {
|
if (data.rtcp) {
|
||||||
/* close the RTCP packet */
|
/* close the RTCP packet */
|
||||||
|
|
Loading…
Reference in a new issue