Set actual transport overhead in rtp_rtcp

BUG=webrtc:6557

Review-Url: https://codereview.webrtc.org/2437503004
Cr-Commit-Position: refs/heads/master@{#14968}
diff --git a/webrtc/call/call.cc b/webrtc/call/call.cc
index d727217..ebc1aeb 100644
--- a/webrtc/call/call.cc
+++ b/webrtc/call/call.cc
@@ -111,6 +111,9 @@
 
   void SignalChannelNetworkState(MediaType media, NetworkState state) override;
 
+  void OnTransportOverheadChanged(MediaType media,
+                                  int transport_overhead_per_packet) override;
+
   void OnNetworkRouteChanged(const std::string& transport_name,
                              const rtc::NetworkRoute& network_route) override;
 
@@ -736,6 +739,30 @@
   }
 }
 
+void Call::OnTransportOverheadChanged(MediaType media,
+                                      int transport_overhead_per_packet) {
+  switch (media) {
+    case MediaType::AUDIO: {
+      ReadLockScoped read_lock(*send_crit_);
+      for (auto& kv : audio_send_ssrcs_) {
+        kv.second->SetTransportOverhead(transport_overhead_per_packet);
+      }
+      break;
+    }
+    case MediaType::VIDEO: {
+      ReadLockScoped read_lock(*send_crit_);
+      for (auto& kv : video_send_ssrcs_) {
+        kv.second->SetTransportOverhead(transport_overhead_per_packet);
+      }
+      break;
+    }
+    case MediaType::ANY:
+    case MediaType::DATA:
+      RTC_NOTREACHED();
+      break;
+  }
+}
+
 // TODO(honghaiz): Add tests for this method.
 void Call::OnNetworkRouteChanged(const std::string& transport_name,
                                  const rtc::NetworkRoute& network_route) {