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:
@ -140,6 +140,18 @@ RTC_OBJC_EXPORT
|
||||
*/
|
||||
@property(nonatomic, assign) BOOL shouldPresumeWritableWhenFullyRelayed;
|
||||
|
||||
/* This flag is only effective when |continualGatheringPolicy| is
|
||||
* RTCContinualGatheringPolicyGatherContinually.
|
||||
*
|
||||
* If YES, after the ICE transport type is changed such that new types of
|
||||
* ICE candidates are allowed by the new transport type, e.g. from
|
||||
* RTCIceTransportPolicyRelay to RTCIceTransportPolicyAll, candidates that
|
||||
* have been gathered by the ICE transport but not matching the previous
|
||||
* transport type and as a result not observed by PeerConnectionDelegateAdapter,
|
||||
* will be surfaced to the delegate.
|
||||
*/
|
||||
@property(nonatomic, assign) BOOL shouldSurfaceIceCandidatesOnIceTransportTypeChanged;
|
||||
|
||||
/** If set to non-nil, controls the minimal interval between consecutive ICE
|
||||
* check packets.
|
||||
*/
|
||||
|
||||
@ -45,6 +45,8 @@
|
||||
@synthesize shouldPruneTurnPorts = _shouldPruneTurnPorts;
|
||||
@synthesize shouldPresumeWritableWhenFullyRelayed =
|
||||
_shouldPresumeWritableWhenFullyRelayed;
|
||||
@synthesize shouldSurfaceIceCandidatesOnIceTransportTypeChanged =
|
||||
_shouldSurfaceIceCandidatesOnIceTransportTypeChanged;
|
||||
@synthesize iceCheckMinInterval = _iceCheckMinInterval;
|
||||
@synthesize iceRegatherIntervalRange = _iceRegatherIntervalRange;
|
||||
@synthesize sdpSemantics = _sdpSemantics;
|
||||
@ -109,6 +111,8 @@
|
||||
_shouldPruneTurnPorts = config.prune_turn_ports;
|
||||
_shouldPresumeWritableWhenFullyRelayed =
|
||||
config.presume_writable_when_fully_relayed;
|
||||
_shouldSurfaceIceCandidatesOnIceTransportTypeChanged =
|
||||
config.surface_ice_candidates_on_ice_transport_type_changed;
|
||||
if (config.ice_check_min_interval) {
|
||||
_iceCheckMinInterval =
|
||||
[NSNumber numberWithInt:*config.ice_check_min_interval];
|
||||
@ -160,6 +164,7 @@
|
||||
_iceCandidatePoolSize,
|
||||
_shouldPruneTurnPorts,
|
||||
_shouldPresumeWritableWhenFullyRelayed,
|
||||
_shouldSurfaceIceCandidatesOnIceTransportTypeChanged,
|
||||
_iceCheckMinInterval,
|
||||
_iceRegatherIntervalRange,
|
||||
_disableLinkLocalNetworks,
|
||||
@ -239,6 +244,8 @@
|
||||
nativeConfig->prune_turn_ports = _shouldPruneTurnPorts ? true : false;
|
||||
nativeConfig->presume_writable_when_fully_relayed =
|
||||
_shouldPresumeWritableWhenFullyRelayed ? true : false;
|
||||
nativeConfig->surface_ice_candidates_on_ice_transport_type_changed =
|
||||
_shouldSurfaceIceCandidatesOnIceTransportTypeChanged ? true : false;
|
||||
if (_iceCheckMinInterval != nil) {
|
||||
nativeConfig->ice_check_min_interval = absl::optional<int>(_iceCheckMinInterval.intValue);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user