diff --git a/webrtc/examples/objc/AppRTCMobile/ios/ARDAppDelegate.m b/webrtc/examples/objc/AppRTCMobile/ios/ARDAppDelegate.m index 3cdccd9de0..6081d60c69 100644 --- a/webrtc/examples/objc/AppRTCMobile/ios/ARDAppDelegate.m +++ b/webrtc/examples/objc/AppRTCMobile/ios/ARDAppDelegate.m @@ -25,7 +25,7 @@ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { - RTCInitFieldTrials(RTCFieldTrialOptionsSendSideBwe); + RTCInitFieldTrials(RTCFieldTrialOptionsImprovedBitrateEstimate); RTCInitializeSSL(); RTCSetupInternalTracer(); _window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; diff --git a/webrtc/sdk/objc/Framework/Classes/RTCFieldTrials.mm b/webrtc/sdk/objc/Framework/Classes/RTCFieldTrials.mm index 6e4230de88..ff76133ab7 100644 --- a/webrtc/sdk/objc/Framework/Classes/RTCFieldTrials.mm +++ b/webrtc/sdk/objc/Framework/Classes/RTCFieldTrials.mm @@ -16,12 +16,20 @@ #include "webrtc/system_wrappers/include/field_trial_default.h" +static NSString * const kRTCEnableImprovedBitrateEstimateString = + @"WebRTC-ImprovedBitrateEstimate/Enabled/"; + static std::unique_ptr gFieldTrialInitString; void RTCInitFieldTrials(RTCFieldTrialOptions options) { NSMutableString *fieldTrialInitString = [NSMutableString string]; size_t len = fieldTrialInitString.length + 1; gFieldTrialInitString.reset(new char[len]); + + if (options & RTCFieldTrialOptionsImprovedBitrateEstimate) { + [fieldTrialInitString appendString:kRTCEnableImprovedBitrateEstimateString]; + } + if (![fieldTrialInitString getCString:gFieldTrialInitString.get() maxLength:len encoding:NSUTF8StringEncoding]) { diff --git a/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h b/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h index 7e7c1c4480..10f84b302a 100644 --- a/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h +++ b/webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h @@ -14,7 +14,7 @@ typedef NS_OPTIONS(NSUInteger, RTCFieldTrialOptions) { RTCFieldTrialOptionsNone = 0, - RTCFieldTrialOptionsSendSideBwe = 1 << 0, + RTCFieldTrialOptionsImprovedBitrateEstimate = 1 << 0, }; /** Must be called before any other call into WebRTC. See: