(Auto)update libjingle 73794259-> 73891518

git-svn-id: http://webrtc.googlecode.com/svn/trunk/talk@6955 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/app/webrtc/mediaconstraintsinterface.cc b/app/webrtc/mediaconstraintsinterface.cc
index c94cbfa..d59716e 100644
--- a/app/webrtc/mediaconstraintsinterface.cc
+++ b/app/webrtc/mediaconstraintsinterface.cc
@@ -93,8 +93,6 @@
 const char MediaConstraintsInterface::kEnableIPv6[] = "googIPv6";
 const char MediaConstraintsInterface::kEnableVideoSuspendBelowMinBitrate[] =
     "googSuspendBelowMinBitrate";
-const char MediaConstraintsInterface::kImprovedWifiBwe[] =
-    "googImprovedWifiBwe";
 const char MediaConstraintsInterface::kNumUnsignalledRecvStreams[] =
     "googNumUnsignalledRecvStreams";
 const char MediaConstraintsInterface::kScreencastMinBitrate[] =
diff --git a/app/webrtc/mediaconstraintsinterface.h b/app/webrtc/mediaconstraintsinterface.h
index bfe15eb..d74ffab 100644
--- a/app/webrtc/mediaconstraintsinterface.h
+++ b/app/webrtc/mediaconstraintsinterface.h
@@ -115,7 +115,6 @@
   // Temporary constraint to enable suspend below min bitrate feature.
   static const char kEnableVideoSuspendBelowMinBitrate[];
       // googSuspendBelowMinBitrate
-  static const char kImprovedWifiBwe[];  // googImprovedWifiBwe
   static const char kNumUnsignalledRecvStreams[];
       // googNumUnsignalledRecvStreams
   static const char kScreencastMinBitrate[];  // googScreencastMinBitrate
diff --git a/app/webrtc/webrtcsession.cc b/app/webrtc/webrtcsession.cc
index 0963b32..6d57afb 100644
--- a/app/webrtc/webrtcsession.cc
+++ b/app/webrtc/webrtcsession.cc
@@ -579,18 +579,6 @@
       MediaConstraintsInterface::kPayloadPadding,
       &video_options_.use_payload_padding);
 
-  // Find improved wifi bwe constraint.
-  if (FindConstraint(
-        constraints,
-        MediaConstraintsInterface::kImprovedWifiBwe,
-        &value,
-        NULL)) {
-    video_options_.use_improved_wifi_bandwidth_estimator.Set(value);
-  } else {
-    // Enable by default if the constraint is not set.
-    video_options_.use_improved_wifi_bandwidth_estimator.Set(true);
-  }
-
   SetOptionFromOptionalConstraint(constraints,
       MediaConstraintsInterface::kNumUnsignalledRecvStreams,
       &video_options_.unsignalled_recv_stream_limit);
diff --git a/media/base/mediachannel.h b/media/base/mediachannel.h
index 782973f..62d6b61 100644
--- a/media/base/mediachannel.h
+++ b/media/base/mediachannel.h
@@ -329,8 +329,6 @@
     unsignalled_recv_stream_limit.SetFrom(change.unsignalled_recv_stream_limit);
     use_simulcast_adapter.SetFrom(change.use_simulcast_adapter);
     screencast_min_bitrate.SetFrom(change.screencast_min_bitrate);
-    use_improved_wifi_bandwidth_estimator.SetFrom(
-        change.use_improved_wifi_bandwidth_estimator);
     use_payload_padding.SetFrom(change.use_payload_padding);
   }
 
@@ -367,8 +365,6 @@
         unsignalled_recv_stream_limit == o.unsignalled_recv_stream_limit &&
         use_simulcast_adapter == o.use_simulcast_adapter &&
         screencast_min_bitrate == o.screencast_min_bitrate &&
-        use_improved_wifi_bandwidth_estimator ==
-            o.use_improved_wifi_bandwidth_estimator &&
         use_payload_padding == o.use_payload_padding;
   }
 
@@ -409,8 +405,6 @@
                          unsignalled_recv_stream_limit);
     ost << ToStringIfSet("use simulcast adapter", use_simulcast_adapter);
     ost << ToStringIfSet("screencast min bitrate", screencast_min_bitrate);
-    ost << ToStringIfSet("improved wifi bwe",
-                         use_improved_wifi_bandwidth_estimator);
     ost << ToStringIfSet("payload padding", use_payload_padding);
     ost << "}";
     return ost.str();
@@ -483,8 +477,6 @@
   Settable<bool> use_simulcast_adapter;
   // Force screencast to use a minimum bitrate
   Settable<int> screencast_min_bitrate;
-  // Enable improved bandwidth estiamtor on wifi.
-  Settable<bool> use_improved_wifi_bandwidth_estimator;
   // Enable payload padding.
   Settable<bool> use_payload_padding;
 };
diff --git a/media/webrtc/fakewebrtcvideoengine.h b/media/webrtc/fakewebrtcvideoengine.h
index 3a9e411..5cba380 100644
--- a/media/webrtc/fakewebrtcvideoengine.h
+++ b/media/webrtc/fakewebrtcvideoengine.h
@@ -908,6 +908,9 @@
   WEBRTC_STUB(SetMTU, (int, unsigned int));
   WEBRTC_STUB(ReceivedBWEPacket, (const int, int64_t, int,
       const webrtc::RTPHeader&));
+  virtual bool SetBandwidthEstimationConfig(int, const webrtc::Config&) {
+    return true;
+  }
 
   // webrtc::ViERender
   WEBRTC_STUB(RegisterVideoRenderModule, (webrtc::VideoRender&));
diff --git a/media/webrtc/webrtcvideoengine.cc b/media/webrtc/webrtcvideoengine.cc
index 6ba48a7..83b1177 100644
--- a/media/webrtc/webrtcvideoengine.cc
+++ b/media/webrtc/webrtcvideoengine.cc
@@ -2958,11 +2958,6 @@
     conference_mode_turned_off = true;
   }
 
-  bool improved_wifi_bwe_changed =
-      options.use_improved_wifi_bandwidth_estimator.IsSet() &&
-      options_.use_improved_wifi_bandwidth_estimator !=
-          options.use_improved_wifi_bandwidth_estimator;
-
 #ifdef USE_WEBRTC_DEV_BRANCH
   bool payload_padding_changed = options.use_payload_padding.IsSet() &&
       options_.use_payload_padding != options.use_payload_padding;
@@ -3070,18 +3065,6 @@
       LOG(LS_WARNING) << "Cannot disable video suspension once it is enabled";
     }
   }
-  if (improved_wifi_bwe_changed) {
-    LOG(LS_INFO) << "Improved WIFI BWE called.";
-    webrtc::Config config;
-    config.Set(new webrtc::AimdRemoteRateControl(
-        options_.use_improved_wifi_bandwidth_estimator
-          .GetWithDefaultIfUnset(false)));
-    for (SendChannelMap::iterator it = send_channels_.begin();
-            it != send_channels_.end(); ++it) {
-      engine()->vie()->network()->SetBandwidthEstimationConfig(
-          it->second->channel_id(), config);
-    }
-  }
 #ifdef USE_WEBRTC_DEV_BRANCH
   if (payload_padding_changed) {
     LOG(LS_INFO) << "Payload-based padding called.";
@@ -3602,6 +3585,16 @@
     return false;
   }
 
+  // Enable improved WiFi Bandwidth Estimation
+  {
+    webrtc::Config config;
+    config.Set(new webrtc::AimdRemoteRateControl(true));
+    if (!engine()->vie()->network()->SetBandwidthEstimationConfig(channel_id,
+                                                                  config)) {
+      return false;
+    }
+  }
+
   send_channels_[local_ssrc_key] = send_channel.release();
 
   return true;