| Index: webrtc/audio/audio_receive_stream.cc
|
| diff --git a/webrtc/audio/audio_receive_stream.cc b/webrtc/audio/audio_receive_stream.cc
|
| index dd3f3c4794134cb059faf53b897f318c0236fe61..87cb215bae6fa4473fd7588b85acfad4c124ae49 100644
|
| --- a/webrtc/audio/audio_receive_stream.cc
|
| +++ b/webrtc/audio/audio_receive_stream.cc
|
| @@ -79,24 +79,14 @@ AudioReceiveStream::AudioReceiveStream(
|
| VoiceEngineImpl* voe_impl = static_cast<VoiceEngineImpl*>(voice_engine());
|
| channel_proxy_ = voe_impl->GetChannelProxy(config_.voe_channel_id);
|
| channel_proxy_->SetLocalSSRC(config.rtp.local_ssrc);
|
| -
|
| - 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::kAudioLevel) {
|
| - int error = rtp->SetReceiveAudioLevelIndicationStatus(channel_id, true,
|
| - extension.id);
|
| - RTC_DCHECK_EQ(0, error);
|
| + channel_proxy_->SetReceiveAudioLevelIndicationStatus(true, extension.id);
|
| bool registered = rtp_header_parser_->RegisterRtpHeaderExtension(
|
| kRtpExtensionAudioLevel, extension.id);
|
| RTC_DCHECK(registered);
|
| } else if (extension.name == RtpExtension::kAbsSendTime) {
|
| - int error = rtp->SetReceiveAbsoluteSenderTimeStatus(channel_id, true,
|
| - extension.id);
|
| - RTC_DCHECK_EQ(0, error);
|
| + channel_proxy_->SetReceiveAbsoluteSenderTimeStatus(true, extension.id);
|
| bool registered = rtp_header_parser_->RegisterRtpHeaderExtension(
|
| kRtpExtensionAbsoluteSendTime, extension.id);
|
| RTC_DCHECK(registered);
|
| @@ -168,14 +158,8 @@ webrtc::AudioReceiveStream::Stats AudioReceiveStream::GetStats() const {
|
| webrtc::AudioReceiveStream::Stats stats;
|
| stats.remote_ssrc = config_.rtp.remote_ssrc;
|
| ScopedVoEInterface<VoECodec> codec(voice_engine());
|
| - ScopedVoEInterface<VoENetEqStats> neteq(voice_engine());
|
| - ScopedVoEInterface<VoERTP_RTCP> rtp(voice_engine());
|
| - ScopedVoEInterface<VoEVideoSync> sync(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();
|
| webrtc::CodecInst codec_inst = {0};
|
| if (codec->GetRecCodec(config_.voe_channel_id, codec_inst) == -1) {
|
| return stats;
|
| @@ -193,25 +177,11 @@ webrtc::AudioReceiveStream::Stats AudioReceiveStream::GetStats() const {
|
| if (codec_inst.plfreq / 1000 > 0) {
|
| stats.jitter_ms = call_stats.jitterSamples / (codec_inst.plfreq / 1000);
|
| }
|
| - {
|
| - int jitter_buffer_delay_ms = 0;
|
| - int playout_buffer_delay_ms = 0;
|
| - sync->GetDelayEstimate(config_.voe_channel_id, &jitter_buffer_delay_ms,
|
| - &playout_buffer_delay_ms);
|
| - stats.delay_estimate_ms = jitter_buffer_delay_ms + playout_buffer_delay_ms;
|
| - }
|
| - {
|
| - unsigned int level = 0;
|
| - error = volume->GetSpeechOutputLevelFullRange(config_.voe_channel_id,
|
| - level);
|
| - RTC_DCHECK_EQ(0, error);
|
| - stats.audio_level = static_cast<int32_t>(level);
|
| - }
|
| + stats.delay_estimate_ms = channel_proxy_->GetDelayEstimate();
|
| + stats.audio_level = channel_proxy_->GetSpeechOutputLevelFullRange();
|
|
|
| // Get jitter buffer and total delay (alg + jitter + playout) stats.
|
| - webrtc::NetworkStatistics ns = {0};
|
| - error = neteq->GetNetworkStatistics(config_.voe_channel_id, ns);
|
| - RTC_DCHECK_EQ(0, error);
|
| + auto ns = channel_proxy_->GetNetworkStatistics();
|
| stats.jitter_buffer_ms = ns.currentBufferSize;
|
| stats.jitter_buffer_preferred_ms = ns.preferredBufferSize;
|
| stats.expand_rate = Q14ToFloat(ns.currentExpandRate);
|
| @@ -220,9 +190,7 @@ webrtc::AudioReceiveStream::Stats AudioReceiveStream::GetStats() const {
|
| stats.accelerate_rate = Q14ToFloat(ns.currentAccelerateRate);
|
| stats.preemptive_expand_rate = Q14ToFloat(ns.currentPreemptiveRate);
|
|
|
| - webrtc::AudioDecodingCallStats ds;
|
| - error = neteq->GetDecodingCallStatistics(config_.voe_channel_id, &ds);
|
| - RTC_DCHECK_EQ(0, error);
|
| + auto ds = channel_proxy_->GetDecodingCallStatistics();
|
| stats.decoding_calls_to_silence_generator = ds.calls_to_silence_generator;
|
| stats.decoding_calls_to_neteq = ds.calls_to_neteq;
|
| stats.decoding_normal = ds.decoded_normal;
|
|
|