Index: webrtc/media/engine/webrtcvoiceengine.cc |
diff --git a/webrtc/media/engine/webrtcvoiceengine.cc b/webrtc/media/engine/webrtcvoiceengine.cc |
index 996bc5accc482f459b86a61bd55125a02799d87a..ae4867883acd97c5c474efe85b60d8c6edae9dc7 100644 |
--- a/webrtc/media/engine/webrtcvoiceengine.cc |
+++ b/webrtc/media/engine/webrtcvoiceengine.cc |
@@ -962,11 +962,12 @@ void WebRtcVoiceEngine::SetDefaultDevices() { |
#endif // !WEBRTC_IOS |
} |
+// TODO(solenberg): Remove, once AudioMonitor is gone. |
int WebRtcVoiceEngine::GetInputLevel() { |
RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
- unsigned int ulevel; |
- return (voe_wrapper_->volume()->GetSpeechInputLevel(ulevel) != -1) ? |
- static_cast<int>(ulevel) : -1; |
+ int8_t level = transmit_mixer()->AudioLevel(); |
+ RTC_DCHECK_LE(0, level); |
+ return level; |
} |
const std::vector<AudioCodec>& WebRtcVoiceEngine::send_codecs() const { |
@@ -1577,6 +1578,12 @@ class WebRtcVoiceMediaChannel::WebRtcAudioReceiveStream { |
return stream_->GetStats(); |
} |
+ int GetOutputLevel() const { |
+ RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
+ RTC_DCHECK(stream_); |
+ return stream_->GetOutputLevel(); |
+ } |
+ |
int channel() const { |
RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
return config_.voe_channel_id; |
@@ -2341,12 +2348,13 @@ bool WebRtcVoiceMediaChannel::SetLocalSource(uint32_t ssrc, |
return true; |
} |
+// TODO(solenberg): Remove, once AudioMonitor is gone. |
bool WebRtcVoiceMediaChannel::GetActiveStreams( |
AudioInfo::StreamList* actives) { |
RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
actives->clear(); |
for (const auto& ch : recv_streams_) { |
- int level = GetOutputLevel(ch.second->channel()); |
+ int level = ch.second->GetOutputLevel(); |
if (level > 0) { |
actives->push_back(std::make_pair(ch.first, level)); |
} |
@@ -2354,11 +2362,12 @@ bool WebRtcVoiceMediaChannel::GetActiveStreams( |
return true; |
} |
+// TODO(solenberg): Remove, once AudioMonitor is gone. |
int WebRtcVoiceMediaChannel::GetOutputLevel() { |
RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
int highest = 0; |
for (const auto& ch : recv_streams_) { |
- highest = std::max(GetOutputLevel(ch.second->channel()), highest); |
+ highest = std::max(ch.second->GetOutputLevel(), highest); |
} |
return highest; |
} |
@@ -2657,12 +2666,6 @@ void WebRtcVoiceMediaChannel::SetRawAudioSink( |
it->second->SetRawAudioSink(std::move(sink)); |
} |
-int WebRtcVoiceMediaChannel::GetOutputLevel(int channel) { |
- unsigned int ulevel = 0; |
- int ret = engine()->voe()->volume()->GetSpeechOutputLevel(channel, ulevel); |
- return (ret == 0) ? static_cast<int>(ulevel) : -1; |
-} |
- |
int WebRtcVoiceMediaChannel::GetReceiveChannelId(uint32_t ssrc) const { |
RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
const auto it = recv_streams_.find(ssrc); |