mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-07 07:58:51 +00:00
rtpsession: Hack to FIR because Google doesn't set the sender ssrc correctly
https://bugzilla.gnome.org/show_bug.cgi?id=658419
This commit is contained in:
parent
0ad78db0a3
commit
59c028a4ce
1 changed files with 17 additions and 0 deletions
|
@ -2228,6 +2228,23 @@ rtp_session_process_fir (RTPSession * sess, guint32 sender_ssrc,
|
||||||
src = g_hash_table_lookup (sess->ssrcs[sess->mask_idx],
|
src = g_hash_table_lookup (sess->ssrcs[sess->mask_idx],
|
||||||
GINT_TO_POINTER (sender_ssrc));
|
GINT_TO_POINTER (sender_ssrc));
|
||||||
|
|
||||||
|
/* Hack because Google fails to set the sender_ssrc correctly */
|
||||||
|
if (!src && sender_ssrc == 1) {
|
||||||
|
GHashTableIter iter;
|
||||||
|
|
||||||
|
if (sess->stats.sender_sources >
|
||||||
|
RTP_SOURCE_IS_SENDER (sess->source) ? 2 : 1)
|
||||||
|
return;
|
||||||
|
|
||||||
|
g_hash_table_iter_init (&iter, sess->ssrcs[sess->mask_idx]);
|
||||||
|
|
||||||
|
while (g_hash_table_iter_next (&iter, NULL, (gpointer *) & src)) {
|
||||||
|
if (src != sess->source && rtp_source_is_sender (src))
|
||||||
|
break;
|
||||||
|
src = NULL;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (!src)
|
if (!src)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue