Revert 5775 "Modify bitrate controller to update bitrate based o..."

This triggered an occasional TSAN failure in
CallTest.ReceivesPliAndRecoversWithNack e.g.:
http://build.chromium.org/p/client.webrtc/builders/Linux%20Tsan/builds/1444/steps/memory%20test%3A%20video_engine_tests/logs/stdio

I managed to reproduce this locally and verified that reverting this CL
corrected it.

> Modify bitrate controller to update bitrate based on process call and not
> only whenever a RTCP receiver block is received.
> 
> Additionally:
>  Add condition to only start rampup after a receiver block is received. This was same as old behaviour but now an explicit check is needed to verify process does not ramps up before the first block.
> 
>  Fix logic around capping max bitrate increase at 8% per second. Before it was only increasing once every 1 second and each increase would be as high as 8%. If receiver blocks had a different interval before it would lose an update or waste an update slot and not ramp up as much as a 8% (e.g. if RTCP received < 1 second).
> 
>  Did not touch decrease logic, however since it can be triggered more often it
>  may decrease much faster and closer to the original written cap of once every
>  300ms + rtt.
> 
> Note:
>  rampup_tests.cc don't seem to be affected by this since there is no packet loss or REMB that go higher than expected cap.
>  bitrate_controller_unittests.cc are don't really simulate a clock and the process thread, but trigger update by inserting an rtcp block.
> 
> BUG=3065
> R=stefan@webrtc.org, mflodman@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/10529004

TBR=andresp@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/10079005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5785 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/webrtc/modules/bitrate_controller/bitrate_controller_impl.cc b/webrtc/modules/bitrate_controller/bitrate_controller_impl.cc
index e31aafb..d777536 100644
--- a/webrtc/modules/bitrate_controller/bitrate_controller_impl.cc
+++ b/webrtc/modules/bitrate_controller/bitrate_controller_impl.cc
@@ -78,22 +78,13 @@
 };
 
 BitrateController* BitrateController::CreateBitrateController(
-    Clock* clock,
     bool enforce_min_bitrate) {
-  return new BitrateControllerImpl(clock, enforce_min_bitrate);
+  return new BitrateControllerImpl(enforce_min_bitrate);
 }
 
-BitrateControllerImpl::BitrateControllerImpl(Clock* clock,
-                                             bool enforce_min_bitrate)
-    : clock_(clock),
-      last_bitrate_update_ms_(clock_->TimeInMilliseconds()),
-      critsect_(CriticalSectionWrapper::CreateCriticalSection()),
-      enforce_min_bitrate_(enforce_min_bitrate),
-      last_bitrate_bps_(0),
-      last_fraction_loss_(0),
-      last_rtt_ms_(0),
-      last_enforce_min_bitrate_(enforce_min_bitrate_),
-      bitrate_observers_modified_(false) {}
+BitrateControllerImpl::BitrateControllerImpl(bool enforce_min_bitrate)
+    : critsect_(CriticalSectionWrapper::CreateCriticalSection()),
+      enforce_min_bitrate_(enforce_min_bitrate) {}
 
 BitrateControllerImpl::~BitrateControllerImpl() {
   BitrateObserverConfList::iterator it =
@@ -202,26 +193,6 @@
   MaybeTriggerOnNetworkChanged();
 }
 
-int32_t BitrateControllerImpl::TimeUntilNextProcess() {
-  enum { kBitrateControllerUpdateIntervalMs = 25 };
-  CriticalSectionScoped cs(critsect_);
-  int time_since_update_ms =
-      clock_->TimeInMilliseconds() - last_bitrate_update_ms_;
-  return std::max(0, kBitrateControllerUpdateIntervalMs - time_since_update_ms);
-}
-
-int32_t BitrateControllerImpl::Process() {
-  if (TimeUntilNextProcess() > 0)
-    return 0;
-  {
-    CriticalSectionScoped cs(critsect_);
-    bandwidth_estimation_.UpdateEstimate(clock_->TimeInMilliseconds());
-    MaybeTriggerOnNetworkChanged();
-  }
-  last_bitrate_update_ms_ = clock_->TimeInMilliseconds();
-  return 0;
-}
-
 void BitrateControllerImpl::OnReceivedRtcpReceiverReport(
     const uint8_t fraction_loss,
     const uint32_t rtt,
@@ -239,12 +210,12 @@
   uint32_t rtt;
   bandwidth_estimation_.CurrentEstimate(&bitrate, &fraction_loss, &rtt);
 
-  if (bitrate_observers_modified_ || bitrate != last_bitrate_bps_ ||
-      fraction_loss != last_fraction_loss_ || rtt != last_rtt_ms_ ||
+  if (bitrate_observers_modified_ || bitrate != last_bitrate_ ||
+      fraction_loss != last_fraction_loss_ || rtt != last_rtt_ ||
       last_enforce_min_bitrate_ != enforce_min_bitrate_) {
-    last_bitrate_bps_ = bitrate;
+    last_bitrate_ = bitrate;
     last_fraction_loss_ = fraction_loss;
-    last_rtt_ms_ = rtt;
+    last_rtt_ = rtt;
     last_enforce_min_bitrate_ = enforce_min_bitrate_;
     bitrate_observers_modified_ = false;
     OnNetworkChanged(bitrate, fraction_loss, rtt);