summaryrefslogtreecommitdiff
path: root/ext/webrtc/gstwebrtcice.c
diff options
context:
space:
mode:
authorMatthew Waters <matthew@centricular.com>2021-02-22 16:59:25 +1100
committerGStreamer Merge Bot <gitlab-merge-bot@gstreamer-foundation.org>2021-03-01 10:00:06 +0000
commitb6038523c1c5c019f93aed5966f01cbaf70aa15e (patch)
tree27364bf84a303ad3fdf6c9c538d840cc4a5c0440 /ext/webrtc/gstwebrtcice.c
parent552007f839a3d9d508a8f1e725b5230d56025c7c (diff)
downloadgstreamer-plugins-bad-b6038523c1c5c019f93aed5966f01cbaf70aa15e.tar.gz
webrtcbin: use regular ice nomination by default
1. We don't currently deal with an a=ice-options in the SDP which means we currently violate https://tools.ietf.org/html/rfc5245#section-8.1.1 which states: "If its peer is using ICE options (present in an ice-options attribute from the peer) that the agent does not understand, the agent MUST use a regular nomination algorithm." 2. The recommendation is default to regular nomination in both RFC5245 and RFC8445. libnice change for this is https://gitlab.freedesktop.org/libnice/libnice/-/merge_requests/125 which requires an API break in libnice. Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2031>
Diffstat (limited to 'ext/webrtc/gstwebrtcice.c')
-rw-r--r--ext/webrtc/gstwebrtcice.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/ext/webrtc/gstwebrtcice.c b/ext/webrtc/gstwebrtcice.c
index c780ab2bb..c782f7d6f 100644
--- a/ext/webrtc/gstwebrtcice.c
+++ b/ext/webrtc/gstwebrtcice.c
@@ -1056,11 +1056,15 @@ static void
gst_webrtc_ice_constructed (GObject * object)
{
GstWebRTCICE *ice = GST_WEBRTC_ICE (object);
+ NiceAgentOption options = 0;
_start_thread (ice);
+ options |= NICE_AGENT_OPTION_ICE_TRICKLE;
+ options |= NICE_AGENT_OPTION_REGULAR_NOMINATION;
+
ice->priv->nice_agent = nice_agent_new_full (ice->priv->main_context,
- NICE_COMPATIBILITY_RFC5245, NICE_AGENT_OPTION_ICE_TRICKLE);
+ NICE_COMPATIBILITY_RFC5245, options);
g_signal_connect (ice->priv->nice_agent, "new-candidate-full",
G_CALLBACK (_on_new_candidate), ice);