Change the gating of surfacing candidates on ICE transport type change

from a field trial to RTCConfiguration.

The test coverage is also expanded for the underlying feature.

Bug: None
Change-Id: Ic9c1362867e4a956c5453be7a9355083b6a442f5
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138980
Reviewed-by: Steve Anton <steveanton@webrtc.org>
Reviewed-by: Alex Glaznev <glaznev@webrtc.org>
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Amit Hilbuch <amithi@webrtc.org>
Commit-Queue: Qingsi Wang <qingsi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28143}
This commit is contained in:
Qingsi Wang
2019-05-31 16:55:33 -07:00
committed by Commit Bot
parent e86af2c75f
commit 1fe119f12f
11 changed files with 225 additions and 53 deletions

View File

@ -506,6 +506,17 @@ class RTC_EXPORT PeerConnectionInterface : public rtc::RefCountInterface {
// re-determining was removed in ICEbis (ICE v2).
bool redetermine_role_on_ice_restart = true;
// This flag is only effective when |continual_gathering_policy| is
// GATHER_CONTINUALLY.
//
// If true, after the ICE transport type is changed such that new types of
// ICE candidates are allowed by the new transport type, e.g. from
// IceTransportsType::kRelay to IceTransportsType::kAll, candidates that
// have been gathered by the ICE transport but not matching the previous
// transport type and as a result not observed by PeerConnectionObserver,
// will be surfaced to the observer.
bool surface_ice_candidates_on_ice_transport_type_changed = false;
// The following fields define intervals in milliseconds at which ICE
// connectivity checks are sent.
//