Use ChannelProxy for most calls on voe::Channel in Audio[Receive|Send]Stream.

BUG=webrtc:4690

Review URL: https://codereview.webrtc.org/1482703002

Cr-Commit-Position: refs/heads/master@{#10828}
diff --git a/webrtc/audio/audio_send_stream.cc b/webrtc/audio/audio_send_stream.cc
index 04d3a25..4dd9522 100644
--- a/webrtc/audio/audio_send_stream.cc
+++ b/webrtc/audio/audio_send_stream.cc
@@ -66,21 +66,11 @@
   channel_proxy_->SetRTCPStatus(true);
   channel_proxy_->SetLocalSSRC(config.rtp.ssrc);
   channel_proxy_->SetRTCP_CNAME(config.rtp.c_name);
-
-  const int channel_id = config.voe_channel_id;
-  ScopedVoEInterface<VoERTP_RTCP> rtp(voice_engine());
   for (const auto& extension : config.rtp.extensions) {
-    // One-byte-extension local identifiers are in the range 1-14 inclusive.
-    RTC_DCHECK_GE(extension.id, 1);
-    RTC_DCHECK_LE(extension.id, 14);
     if (extension.name == RtpExtension::kAbsSendTime) {
-      int error = rtp->SetSendAbsoluteSenderTimeStatus(channel_id, true,
-                                                       extension.id);
-      RTC_DCHECK_EQ(0, error);
+      channel_proxy_->SetSendAbsoluteSenderTimeStatus(true, extension.id);
     } else if (extension.name == RtpExtension::kAudioLevel) {
-      int error = rtp->SetSendAudioLevelIndicationStatus(channel_id, true,
-                                                         extension.id);
-      RTC_DCHECK_EQ(0, error);
+      channel_proxy_->SetSendAudioLevelIndicationStatus(true, extension.id);
     } else {
       RTC_NOTREACHED() << "Registering unsupported RTP extension.";
     }
@@ -118,12 +108,9 @@
   stats.local_ssrc = config_.rtp.ssrc;
   ScopedVoEInterface<VoEAudioProcessing> processing(voice_engine());
   ScopedVoEInterface<VoECodec> codec(voice_engine());
-  ScopedVoEInterface<VoERTP_RTCP> rtp(voice_engine());
   ScopedVoEInterface<VoEVolumeControl> volume(voice_engine());
 
-  webrtc::CallStatistics call_stats = {0};
-  int error = rtp->GetRTCPStatistics(config_.voe_channel_id, call_stats);
-  RTC_DCHECK_EQ(0, error);
+  webrtc::CallStatistics call_stats = channel_proxy_->GetRTCPStatistics();
   stats.bytes_sent = call_stats.bytesSent;
   stats.packets_sent = call_stats.packetsSent;
   // RTT isn't known until a RTCP report is received. Until then, VoiceEngine
@@ -141,10 +128,7 @@
     stats.codec_name = codec_inst.plname;
 
     // Get data from the last remote RTCP report.
-    std::vector<webrtc::ReportBlock> blocks;
-    error = rtp->GetRemoteRTCPReportBlocks(config_.voe_channel_id, &blocks);
-    RTC_DCHECK_EQ(0, error);
-    for (const webrtc::ReportBlock& block : blocks) {
+    for (const auto& block : channel_proxy_->GetRemoteRTCPReportBlocks()) {
       // Lookup report for send ssrc only.
       if (block.source_SSRC == stats.local_ssrc) {
         stats.packets_lost = block.cumulative_num_packets_lost;
@@ -163,13 +147,13 @@
   // Local speech level.
   {
     unsigned int level = 0;
-    error = volume->GetSpeechInputLevelFullRange(level);
+    int error = volume->GetSpeechInputLevelFullRange(level);
     RTC_DCHECK_EQ(0, error);
     stats.audio_level = static_cast<int32_t>(level);
   }
 
   bool echo_metrics_on = false;
-  error = processing->GetEcMetricsStatus(echo_metrics_on);
+  int error = processing->GetEcMetricsStatus(echo_metrics_on);
   RTC_DCHECK_EQ(0, error);
   if (echo_metrics_on) {
     // These can also be negative, but in practice -1 is only used to signal