Remove SendPacer from ViEEncoder and make sure SendPacer starts at a valid bitrate

This reverts commit e30c27205148b34ba421184efe65f6a0780b436d (https://codereview.webrtc.org/1958053002/)

Original reverted cl is in patch set #1.
Changes in following patch sets.

The cl now also make sure SendPacer starts with the configured bitrate provided in a call to CongestionController::SetBweBitrates)()

It turns out that the failing tests in 609816 is due to a bug in the current code that runs the proper at 300kbit regardless of configured start bitrate.

Original cl description:
Remove SendPacer from ViEEncoder
This CL moves the logic where the ViEEncoder pause if the pacer is full to the BitrateController. If the queue is full, the controller reports a bitrate of zero to  Call (and BitrateAllocator)

BUG=chromium:609816, webrtc:5687
TBR=mflodman@webrtc.org
NOTRY=True  // Due to bug  in android_x86 cq builder....

Review-Url: https://codereview.webrtc.org/1958113003
Cr-Commit-Position: refs/heads/master@{#12688}
diff --git a/webrtc/call/bitrate_allocator_unittest.cc b/webrtc/call/bitrate_allocator_unittest.cc
index 6e0cdd4..63149ac 100644
--- a/webrtc/call/bitrate_allocator_unittest.cc
+++ b/webrtc/call/bitrate_allocator_unittest.cc
@@ -96,6 +96,12 @@
   allocator_->OnNetworkChanged(1500000, 0, 50);
   EXPECT_EQ(600000u, bitrate_observer_1.last_bitrate_);
   EXPECT_EQ(600000u, bitrate_observer_2.last_bitrate_);
+
+  // Verify that if the bandwidth estimate is set to zero, the allocated rate is
+  // zero.
+  allocator_->OnNetworkChanged(0, 0, 50);
+  EXPECT_EQ(0u, bitrate_observer_1.last_bitrate_);
+  EXPECT_EQ(0u, bitrate_observer_2.last_bitrate_);
 }
 
 class BitrateAllocatorTestNoEnforceMin : public ::testing::Test {
@@ -171,6 +177,13 @@
   EXPECT_EQ(0u, bitrate_observer_2.last_bitrate_);
   EXPECT_EQ(0u, bitrate_observer_3.last_bitrate_);
 
+  allocator_->OnNetworkChanged(0, 0, 0);
+  // Verify that zero estimated bandwidth, means that that all gets zero,
+  // regardless of set min bitrate.
+  EXPECT_EQ(0u, bitrate_observer_1.last_bitrate_);
+  EXPECT_EQ(0u, bitrate_observer_2.last_bitrate_);
+  EXPECT_EQ(0u, bitrate_observer_3.last_bitrate_);
+
   allocator_->RemoveObserver(&bitrate_observer_1);
   allocator_->RemoveObserver(&bitrate_observer_2);
   allocator_->RemoveObserver(&bitrate_observer_3);