Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(195)

Unified Diff: webrtc/voice_engine/channel_proxy.cc

Issue 2669153004: Remove remaining calls to VoE APIs from Audio[Send|Receive]Stream. (Closed)
Patch Set: fix Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webrtc/voice_engine/channel_proxy.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/voice_engine/channel_proxy.cc
diff --git a/webrtc/voice_engine/channel_proxy.cc b/webrtc/voice_engine/channel_proxy.cc
index b3c3a98507939914a414a487d1c9683e3b86a859..e5e3804b71c5ee0a6282be87865a3579c6768b08 100644
--- a/webrtc/voice_engine/channel_proxy.cc
+++ b/webrtc/voice_engine/channel_proxy.cc
@@ -297,6 +297,74 @@ void ChannelProxy::SetRtcpRttStats(RtcpRttStats* rtcp_rtt_stats) {
channel()->SetRtcpRttStats(rtcp_rtt_stats);
}
+bool ChannelProxy::GetRecCodec(CodecInst* codec_inst) const {
+ RTC_DCHECK(thread_checker_.CalledOnValidThread());
+ return channel()->GetRecCodec(*codec_inst) == 0;
+}
+
+bool ChannelProxy::GetSendCodec(CodecInst* codec_inst) const {
+ RTC_DCHECK(thread_checker_.CalledOnValidThread());
+ return channel()->GetSendCodec(*codec_inst) == 0;
+}
+
+bool ChannelProxy::SetVADStatus(bool enable) {
+ RTC_DCHECK(thread_checker_.CalledOnValidThread());
+ return channel()->SetVADStatus(enable, VADNormal, false) == 0;
+}
+
+bool ChannelProxy::SetCodecFECStatus(bool enable) {
+ RTC_DCHECK(thread_checker_.CalledOnValidThread());
+ return channel()->SetCodecFECStatus(enable) == 0;
+}
+
+bool ChannelProxy::SetOpusDtx(bool enable) {
+ RTC_DCHECK(thread_checker_.CalledOnValidThread());
+ return channel()->SetOpusDtx(enable) == 0;
+}
+
+bool ChannelProxy::SetOpusMaxPlaybackRate(int frequency_hz) {
+ RTC_DCHECK(thread_checker_.CalledOnValidThread());
+ return channel()->SetOpusMaxPlaybackRate(frequency_hz) == 0;
+}
+
+bool ChannelProxy::SetSendCodec(const CodecInst& codec_inst) {
+ RTC_DCHECK(thread_checker_.CalledOnValidThread());
+ // Validation code copied from VoECodecImpl::SetSendCodec().
+ if ((STR_CASE_CMP(codec_inst.plname, "L16") == 0) &&
+ (codec_inst.pacsize >= 960)) {
+ return false;
+ }
+ if (!STR_CASE_CMP(codec_inst.plname, "CN") ||
+ !STR_CASE_CMP(codec_inst.plname, "TELEPHONE-EVENT") ||
+ !STR_CASE_CMP(codec_inst.plname, "RED")) {
+ return false;
+ }
+ if ((codec_inst.channels != 1) && (codec_inst.channels != 2)) {
+ return false;
+ }
+ if (!AudioCodingModule::IsCodecValid(codec_inst)) {
+ return false;
+ }
+ return channel()->SetSendCodec(codec_inst) == 0;
+}
+
+bool ChannelProxy::SetSendCNPayloadType(int type,
+ PayloadFrequencies frequency) {
+ RTC_DCHECK(thread_checker_.CalledOnValidThread());
+ // Validation code copied from VoECodecImpl::SetSendCNPayloadType().
ossu 2017/02/06 14:07:00 Not directly related to this CL, as the code is ta
the sun 2017/02/06 19:35:28 Acknowledged.
+ if (type < 96 || type > 127) {
+ // Only allow dynamic range: 96 to 127
+ return false;
+ }
+ if ((frequency != kFreq16000Hz) && (frequency != kFreq32000Hz)) {
+ // It is not possible to modify the payload type for CN/8000.
+ // We only allow modification of the CN payload type for CN/16000
+ // and CN/32000.
+ return false;
+ }
+ return channel()->SetSendCNPayloadType(type, frequency) == 0;
+}
+
Channel* ChannelProxy::channel() const {
RTC_DCHECK(channel_owner_.channel());
return channel_owner_.channel();
« no previous file with comments | « webrtc/voice_engine/channel_proxy.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698