| Index: webrtc/media/engine/webrtcvoiceengine_unittest.cc
|
| diff --git a/webrtc/media/engine/webrtcvoiceengine_unittest.cc b/webrtc/media/engine/webrtcvoiceengine_unittest.cc
|
| index b6f3eae0a2457daa855d2089c0a70b8b5c13aec4..aa041dda3785cf43eaedbd86a40dd22a58894132 100644
|
| --- a/webrtc/media/engine/webrtcvoiceengine_unittest.cc
|
| +++ b/webrtc/media/engine/webrtcvoiceengine_unittest.cc
|
| @@ -28,6 +28,7 @@
|
| #include "webrtc/modules/audio_coding/codecs/builtin_audio_decoder_factory.h"
|
| #include "webrtc/modules/audio_coding/codecs/mock/mock_audio_decoder_factory.h"
|
| #include "webrtc/modules/audio_device/include/mock_audio_device.h"
|
| +#include "webrtc/modules/audio_processing/include/mock_audio_processing.h"
|
|
|
| using testing::Return;
|
| using testing::StrictMock;
|
| @@ -74,7 +75,11 @@ TEST(WebRtcVoiceEngineTestStubLibrary, StartupShutdown) {
|
| EXPECT_CALL(adm, BuiltInAECIsAvailable()).WillOnce(Return(false));
|
| EXPECT_CALL(adm, BuiltInAGCIsAvailable()).WillOnce(Return(false));
|
| EXPECT_CALL(adm, BuiltInNSIsAvailable()).WillOnce(Return(false));
|
| - cricket::FakeWebRtcVoiceEngine voe;
|
| + StrictMock<webrtc::test::MockAudioProcessing> apm;
|
| + EXPECT_CALL(apm, ApplyConfig(testing::_));
|
| + EXPECT_CALL(apm, SetExtraOptions(testing::_));
|
| + EXPECT_CALL(apm, Initialize()).WillOnce(Return(0));
|
| + cricket::FakeWebRtcVoiceEngine voe(&apm);
|
| EXPECT_FALSE(voe.IsInited());
|
| {
|
| cricket::WebRtcVoiceEngine engine(
|
| @@ -99,7 +104,7 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| WebRtcVoiceEngineTestFake() : WebRtcVoiceEngineTestFake("") {}
|
|
|
| explicit WebRtcVoiceEngineTestFake(const char* field_trials)
|
| - : call_(webrtc::Call::Config(&event_log_)),
|
| + : call_(webrtc::Call::Config(&event_log_)), voe_(&apm_),
|
| override_field_trials_(field_trials) {
|
| auto factory = webrtc::MockAudioDecoderFactory::CreateUnusedFactory();
|
| EXPECT_CALL(adm_, AddRef()).WillOnce(Return(0));
|
| @@ -107,6 +112,9 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| EXPECT_CALL(adm_, BuiltInAECIsAvailable()).WillOnce(Return(false));
|
| EXPECT_CALL(adm_, BuiltInAGCIsAvailable()).WillOnce(Return(false));
|
| EXPECT_CALL(adm_, BuiltInNSIsAvailable()).WillOnce(Return(false));
|
| + EXPECT_CALL(apm_, ApplyConfig(testing::_));
|
| + EXPECT_CALL(apm_, SetExtraOptions(testing::_));
|
| + EXPECT_CALL(apm_, Initialize()).WillOnce(Return(0));
|
| engine_.reset(new cricket::WebRtcVoiceEngine(&adm_, factory,
|
| new FakeVoEWrapper(&voe_)));
|
| send_parameters_.codecs.push_back(kPcmuCodec);
|
| @@ -114,6 +122,8 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| }
|
|
|
| bool SetupChannel() {
|
| + EXPECT_CALL(apm_, ApplyConfig(testing::_));
|
| + EXPECT_CALL(apm_, SetExtraOptions(testing::_));
|
| channel_ = engine_->CreateChannel(&call_, cricket::MediaConfig(),
|
| cricket::AudioOptions());
|
| return (channel_ != nullptr);
|
| @@ -133,6 +143,7 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| if (!channel_->AddSendStream(cricket::StreamParams::CreateLegacy(kSsrc1))) {
|
| return false;
|
| }
|
| + EXPECT_CALL(apm_, set_output_will_be_muted(false));
|
| return channel_->SetAudioSend(kSsrc1, true, nullptr, &fake_source_);
|
| }
|
|
|
| @@ -179,14 +190,29 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| return GetRecvStream(ssrc).GetConfig();
|
| }
|
|
|
| - void SetSend(cricket::VoiceMediaChannel* channel, bool enable) {
|
| - ASSERT_TRUE(channel);
|
| + void SetSend(bool enable) {
|
| + ASSERT_TRUE(channel_);
|
| if (enable) {
|
| EXPECT_CALL(adm_, RecordingIsInitialized()).WillOnce(Return(false));
|
| EXPECT_CALL(adm_, Recording()).WillOnce(Return(false));
|
| EXPECT_CALL(adm_, InitRecording()).WillOnce(Return(0));
|
| + EXPECT_CALL(apm_, ApplyConfig(testing::_));
|
| + EXPECT_CALL(apm_, SetExtraOptions(testing::_));
|
| }
|
| - channel->SetSend(enable);
|
| + channel_->SetSend(enable);
|
| + }
|
| +
|
| + void SetSendParameters(const cricket::AudioSendParameters& params) {
|
| + EXPECT_CALL(apm_, ApplyConfig(testing::_));
|
| + EXPECT_CALL(apm_, SetExtraOptions(testing::_));
|
| + ASSERT_TRUE(channel_);
|
| + EXPECT_TRUE(channel_->SetSendParameters(params));
|
| + }
|
| +
|
| + void SetAudioSend(uint32_t ssrc, bool enable, cricket::AudioSource* source) {
|
| + EXPECT_CALL(apm_, set_output_will_be_muted(!enable));
|
| + ASSERT_TRUE(channel_);
|
| + EXPECT_TRUE(channel_->SetAudioSend(ssrc, enable, nullptr, source));
|
| }
|
|
|
| void TestInsertDtmf(uint32_t ssrc, bool caller) {
|
| @@ -199,12 +225,12 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| }
|
|
|
| // Test we can only InsertDtmf when the other side supports telephone-event.
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| - SetSend(channel_, true);
|
| + SetSendParameters(send_parameters_);
|
| + SetSend(true);
|
| EXPECT_FALSE(channel_->CanInsertDtmf());
|
| EXPECT_FALSE(channel_->InsertDtmf(ssrc, 1, 111));
|
| send_parameters_.codecs.push_back(kTelephoneEventCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_TRUE(channel_->CanInsertDtmf());
|
|
|
| if (!caller) {
|
| @@ -240,7 +266,11 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(codec);
|
| parameters.max_bandwidth_bps = max_bitrate;
|
| - EXPECT_EQ(expected_result, channel_->SetSendParameters(parameters));
|
| + if (expected_result) {
|
| + SetSendParameters(parameters);
|
| + } else {
|
| + EXPECT_FALSE(channel_->SetSendParameters(parameters));
|
| + }
|
| EXPECT_EQ(expected_bitrate, GetCodecBitrate(kSsrc1));
|
| }
|
|
|
| @@ -253,11 +283,11 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| return channel_->SetRtpSendParameters(ssrc, parameters);
|
| }
|
|
|
| - bool SetGlobalMaxBitrate(const cricket::AudioCodec& codec, int bitrate) {
|
| + void SetGlobalMaxBitrate(const cricket::AudioCodec& codec, int bitrate) {
|
| cricket::AudioSendParameters send_parameters;
|
| send_parameters.codecs.push_back(codec);
|
| send_parameters.max_bandwidth_bps = bitrate;
|
| - return channel_->SetSendParameters(send_parameters);
|
| + SetSendParameters(send_parameters);
|
| }
|
|
|
| void CheckSendCodec(int32_t ssrc,
|
| @@ -299,7 +329,7 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| EXPECT_TRUE(SetMaxBitrateForStream(kSsrc1, -1));
|
|
|
| // Attempt to set the requested bitrate limits.
|
| - EXPECT_TRUE(SetGlobalMaxBitrate(codec, global_max));
|
| + SetGlobalMaxBitrate(codec, global_max);
|
| EXPECT_EQ(expected_result, SetMaxBitrateForStream(kSsrc1, stream_max));
|
|
|
| // Verify that reading back the parameters gives results
|
| @@ -323,18 +353,18 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| // Ensure unknown extensions won't cause an error.
|
| send_parameters_.extensions.push_back(
|
| webrtc::RtpExtension("urn:ietf:params:unknownextention", 1));
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_EQ(0u, GetSendStreamConfig(kSsrc1).rtp.extensions.size());
|
|
|
| // Ensure extensions stay off with an empty list of headers.
|
| send_parameters_.extensions.clear();
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_EQ(0u, GetSendStreamConfig(kSsrc1).rtp.extensions.size());
|
|
|
| // Ensure extension is set properly.
|
| const int id = 1;
|
| send_parameters_.extensions.push_back(webrtc::RtpExtension(ext, id));
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_EQ(1u, GetSendStreamConfig(kSsrc1).rtp.extensions.size());
|
| EXPECT_EQ(ext, GetSendStreamConfig(kSsrc1).rtp.extensions[0].uri);
|
| EXPECT_EQ(id, GetSendStreamConfig(kSsrc1).rtp.extensions[0].id);
|
| @@ -351,7 +381,7 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
| // Ensure all extensions go back off with an empty list.
|
| send_parameters_.codecs.push_back(kPcmuCodec);
|
| send_parameters_.extensions.clear();
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_EQ(0u, GetSendStreamConfig(kSsrc1).rtp.extensions.size());
|
| EXPECT_EQ(0u, GetSendStreamConfig(kSsrc2).rtp.extensions.size());
|
| }
|
| @@ -513,6 +543,7 @@ class WebRtcVoiceEngineTestFake : public testing::Test {
|
|
|
| protected:
|
| StrictMock<webrtc::test::MockAudioDeviceModule> adm_;
|
| + StrictMock<webrtc::test::MockAudioProcessing> apm_;
|
| webrtc::RtcEventLogNullImpl event_log_;
|
| cricket::FakeCall call_;
|
| cricket::FakeWebRtcVoiceEngine voe_;
|
| @@ -863,7 +894,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetMaxSendBandwidthMultiRateAsCallee) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs = engine_->send_codecs();
|
| parameters.max_bandwidth_bps = kDesiredBitrate;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
|
|
| EXPECT_TRUE(channel_->AddSendStream(
|
| cricket::StreamParams::CreateLegacy(kSsrc1)));
|
| @@ -878,11 +909,11 @@ TEST_F(WebRtcVoiceEngineTestFake, SetMaxSendBandwidthCbr) {
|
| EXPECT_TRUE(SetupSendStream());
|
|
|
| // PCMU, default bitrate == 64000.
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_EQ(64000, GetCodecBitrate(kSsrc1));
|
|
|
| send_parameters_.max_bandwidth_bps = 128000;
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_EQ(64000, GetCodecBitrate(kSsrc1));
|
|
|
| send_parameters_.max_bandwidth_bps = 128;
|
| @@ -947,7 +978,7 @@ TEST_F(WebRtcVoiceEngineTestFake,
|
| // inactive through SetRtpSendParameters.
|
| TEST_F(WebRtcVoiceEngineTestFake, SetRtpParametersEncodingsActive) {
|
| EXPECT_TRUE(SetupSendStream());
|
| - SetSend(channel_, true);
|
| + SetSend(true);
|
| EXPECT_TRUE(GetSendStream(kSsrc1).IsSending());
|
| // Get current parameters and change "active" to false.
|
| webrtc::RtpParameters parameters = channel_->GetRtpSendParameters(kSsrc1);
|
| @@ -975,7 +1006,7 @@ TEST_F(WebRtcVoiceEngineTestFake, RtpParametersArePerStream) {
|
| // Configure one stream to be limited by the stream config, another to be
|
| // limited by the global max, and the third one with no per-stream limit
|
| // (still subject to the global limit).
|
| - EXPECT_TRUE(SetGlobalMaxBitrate(kOpusCodec, 64000));
|
| + SetGlobalMaxBitrate(kOpusCodec, 64000);
|
| EXPECT_TRUE(SetMaxBitrateForStream(kSsrcs4[0], 48000));
|
| EXPECT_TRUE(SetMaxBitrateForStream(kSsrcs4[1], 96000));
|
| EXPECT_TRUE(SetMaxBitrateForStream(kSsrcs4[2], -1));
|
| @@ -986,7 +1017,7 @@ TEST_F(WebRtcVoiceEngineTestFake, RtpParametersArePerStream) {
|
|
|
| // Remove the global cap; the streams should switch to their respective
|
| // maximums (or remain unchanged if there was no other limit on them.)
|
| - EXPECT_TRUE(SetGlobalMaxBitrate(kOpusCodec, -1));
|
| + SetGlobalMaxBitrate(kOpusCodec, -1);
|
| EXPECT_EQ(48000, GetCodecBitrate(kSsrcs4[0]));
|
| EXPECT_EQ(96000, GetCodecBitrate(kSsrcs4[1]));
|
| EXPECT_EQ(64000, GetCodecBitrate(kSsrcs4[2]));
|
| @@ -998,7 +1029,7 @@ TEST_F(WebRtcVoiceEngineTestFake, GetRtpSendParametersCodecs) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kIsacCodec);
|
| parameters.codecs.push_back(kPcmuCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
|
|
| webrtc::RtpParameters rtp_parameters = channel_->GetRtpSendParameters(kSsrc1);
|
| ASSERT_EQ(2u, rtp_parameters.codecs.size());
|
| @@ -1012,7 +1043,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetAndGetRtpSendParameters) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kIsacCodec);
|
| parameters.codecs.push_back(kPcmuCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
|
|
| webrtc::RtpParameters initial_params = channel_->GetRtpSendParameters(kSsrc1);
|
|
|
| @@ -1069,7 +1100,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecs) {
|
| parameters.codecs[0].id = 96;
|
| parameters.codecs[0].bitrate = 48000;
|
| const int initial_num = call_.GetNumCreatedSendStreams();
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(initial_num + 1, call_.GetNumCreatedSendStreams());
|
| const auto& send_codec_spec = GetSendStreamConfig(kSsrc1).send_codec_spec;
|
| EXPECT_EQ(96, send_codec_spec.codec_inst.pltype);
|
| @@ -1092,11 +1123,11 @@ TEST_F(WebRtcVoiceEngineTestFake, DontResetSetSendCodec) {
|
| parameters.codecs[0].id = 96;
|
| parameters.codecs[0].bitrate = 48000;
|
| const int initial_num = call_.GetNumCreatedSendStreams();
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(initial_num + 1, call_.GetNumCreatedSendStreams());
|
| // Calling SetSendCodec again with same codec which is already set.
|
| // In this case media channel shouldn't send codec to VoE.
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(initial_num + 1, call_.GetNumCreatedSendStreams());
|
| }
|
|
|
| @@ -1105,7 +1136,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecG722) {
|
| EXPECT_TRUE(SetupSendStream());
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kG722CodecSdp);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_STREQ("G722", gcodec.plname);
|
| EXPECT_EQ(1, gcodec.channels);
|
| @@ -1182,7 +1213,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusGood0BitrateNoStereo) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 0;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 1, 32000);
|
| }
|
|
|
| @@ -1194,7 +1225,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusGood0Bitrate0Stereo) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 0;
|
| parameters.codecs[0].params["stereo"] = "0";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 1, 32000);
|
| }
|
|
|
| @@ -1207,11 +1238,11 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusGoodXBitrate0Stereo) {
|
| parameters.codecs[0].params["stereo"] = "0";
|
| // bitrate that's out of the range between 6000 and 510000 will be clamped.
|
| parameters.codecs[0].bitrate = 5999;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 1, 6000);
|
|
|
| parameters.codecs[0].bitrate = 510001;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 1, 510000);
|
| }
|
|
|
| @@ -1223,7 +1254,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusGood0Bitrate1Stereo) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 0;
|
| parameters.codecs[0].params["stereo"] = "1";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 2, 64000);
|
| }
|
|
|
| @@ -1236,11 +1267,11 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusGoodXBitrate1Stereo) {
|
| parameters.codecs[0].params["stereo"] = "1";
|
| // bitrate that's out of the range between 6000 and 510000 will be clamped.
|
| parameters.codecs[0].bitrate = 5999;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 2, 6000);
|
|
|
| parameters.codecs[0].bitrate = 510001;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 2, 510000);
|
| }
|
|
|
| @@ -1251,7 +1282,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusGoodNBitrateNoStereo) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 96000;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(111, gcodec.pltype);
|
| EXPECT_EQ(96000, gcodec.rate);
|
| @@ -1268,7 +1299,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusGoodNBitrate0Stereo) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 30000;
|
| parameters.codecs[0].params["stereo"] = "0";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 1, 30000);
|
| }
|
|
|
| @@ -1279,7 +1310,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusGoodNBitrateNoParameters) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 30000;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 1, 30000);
|
| }
|
|
|
| @@ -1291,7 +1322,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusGoodNBitrate1Stereo) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 30000;
|
| parameters.codecs[0].params["stereo"] = "1";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 2, 30000);
|
| }
|
|
|
| @@ -1305,16 +1336,16 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusMaxAverageBitrate) {
|
| parameters.codecs[0].bitrate = 30000;
|
| // Ignore if less than 6000.
|
| parameters.codecs[0].params["maxaveragebitrate"] = "5999";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(6000, GetCodecBitrate(kSsrc1));
|
|
|
| // Ignore if larger than 510000.
|
| parameters.codecs[0].params["maxaveragebitrate"] = "510001";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(510000, GetCodecBitrate(kSsrc1));
|
|
|
| parameters.codecs[0].params["maxaveragebitrate"] = "200000";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(200000, GetCodecBitrate(kSsrc1));
|
| }
|
|
|
| @@ -1327,7 +1358,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecEnableNackAsCaller) {
|
| cricket::FeedbackParam(cricket::kRtcpFbParamNack,
|
| cricket::kParamValueEmpty));
|
| EXPECT_EQ(0, GetSendStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(kRtpHistoryMs, GetSendStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
| }
|
|
|
| @@ -1340,7 +1371,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecEnableNackAsCallee) {
|
| cricket::FeedbackParam(cricket::kRtcpFbParamNack,
|
| cricket::kParamValueEmpty));
|
| EXPECT_EQ(0, GetRecvStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| // NACK should be enabled even with no send stream.
|
| EXPECT_EQ(kRtpHistoryMs, GetRecvStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
|
|
| @@ -1360,7 +1391,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecEnableNackRecvStreams) {
|
| cricket::kParamValueEmpty));
|
| EXPECT_EQ(0, GetSendStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
| EXPECT_EQ(0, GetRecvStreamConfig(kSsrc2).rtp.nack.rtp_history_ms);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(kRtpHistoryMs, GetSendStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
| EXPECT_EQ(kRtpHistoryMs, GetRecvStreamConfig(kSsrc2).rtp.nack.rtp_history_ms);
|
| }
|
| @@ -1373,12 +1404,12 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecDisableNack) {
|
| parameters.codecs[0].AddFeedbackParam(
|
| cricket::FeedbackParam(cricket::kRtcpFbParamNack,
|
| cricket::kParamValueEmpty));
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(kRtpHistoryMs, GetSendStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
|
|
| parameters.codecs.clear();
|
| parameters.codecs.push_back(kOpusCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(0, GetSendStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
| }
|
|
|
| @@ -1391,13 +1422,13 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecDisableNackRecvStreams) {
|
| parameters.codecs[0].AddFeedbackParam(
|
| cricket::FeedbackParam(cricket::kRtcpFbParamNack,
|
| cricket::kParamValueEmpty));
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(kRtpHistoryMs, GetSendStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
| EXPECT_EQ(kRtpHistoryMs, GetRecvStreamConfig(kSsrc2).rtp.nack.rtp_history_ms);
|
|
|
| parameters.codecs.clear();
|
| parameters.codecs.push_back(kOpusCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(0, GetSendStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
| EXPECT_EQ(0, GetRecvStreamConfig(kSsrc2).rtp.nack.rtp_history_ms);
|
| }
|
| @@ -1411,7 +1442,7 @@ TEST_F(WebRtcVoiceEngineTestFake, AddRecvStreamEnableNack) {
|
| parameters.codecs[0].AddFeedbackParam(
|
| cricket::FeedbackParam(cricket::kRtcpFbParamNack,
|
| cricket::kParamValueEmpty));
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(kRtpHistoryMs, GetSendStreamConfig(kSsrc1).rtp.nack.rtp_history_ms);
|
|
|
| EXPECT_TRUE(AddRecvStream(kSsrc2));
|
| @@ -1425,7 +1456,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecNoOpusFec) {
|
| EXPECT_TRUE(SetupSendStream());
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kOpusCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_FALSE(GetCodecFec(kSsrc1));
|
| }
|
|
|
| @@ -1436,7 +1467,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusDisableFec) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 0;
|
| parameters.codecs[0].params["useinbandfec"] = "0";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| CheckSendCodec(kSsrc1, "opus", 1, 32000);
|
| }
|
|
|
| @@ -1447,7 +1478,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusEnableFec) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 0;
|
| parameters.codecs[0].params["useinbandfec"] = "1";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_TRUE(GetCodecFec(kSsrc1));
|
| CheckSendCodec(kSsrc1, "opus", 1, 32000);
|
| }
|
| @@ -1460,7 +1491,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecOpusEnableFecStereo) {
|
| parameters.codecs[0].bitrate = 0;
|
| parameters.codecs[0].params["stereo"] = "1";
|
| parameters.codecs[0].params["useinbandfec"] = "1";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_TRUE(GetCodecFec(kSsrc1));
|
| CheckSendCodec(kSsrc1, "opus", 2, 64000);
|
| }
|
| @@ -1470,7 +1501,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecIsacNoFec) {
|
| EXPECT_TRUE(SetupSendStream());
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kIsacCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_FALSE(GetCodecFec(kSsrc1));
|
| }
|
|
|
| @@ -1480,7 +1511,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecIsacWithParamNoFec) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kIsacCodec);
|
| parameters.codecs[0].params["useinbandfec"] = "1";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_FALSE(GetCodecFec(kSsrc1));
|
| }
|
|
|
| @@ -1489,11 +1520,11 @@ TEST_F(WebRtcVoiceEngineTestFake, ChangeOpusFecStatus) {
|
| EXPECT_TRUE(SetupSendStream());
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kOpusCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_FALSE(GetCodecFec(kSsrc1));
|
|
|
| parameters.codecs[0].params["useinbandfec"] = "1";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_TRUE(GetCodecFec(kSsrc1));
|
| }
|
|
|
| @@ -1502,7 +1533,7 @@ TEST_F(WebRtcVoiceEngineTestFake, TransportCcCanBeEnabledAndDisabled) {
|
| cricket::AudioSendParameters send_parameters;
|
| send_parameters.codecs.push_back(kOpusCodec);
|
| EXPECT_TRUE(send_parameters.codecs[0].feedback_params.params().empty());
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters));
|
| + SetSendParameters(send_parameters);
|
|
|
| cricket::AudioRecvParameters recv_parameters;
|
| recv_parameters.codecs.push_back(kIsacCodec);
|
| @@ -1513,7 +1544,7 @@ TEST_F(WebRtcVoiceEngineTestFake, TransportCcCanBeEnabledAndDisabled) {
|
| call_.GetAudioReceiveStream(kSsrc1)->GetConfig().rtp.transport_cc);
|
|
|
| send_parameters.codecs = engine_->send_codecs();
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters));
|
| + SetSendParameters(send_parameters);
|
| ASSERT_TRUE(call_.GetAudioReceiveStream(kSsrc1) != nullptr);
|
| EXPECT_TRUE(
|
| call_.GetAudioReceiveStream(kSsrc1)->GetConfig().rtp.transport_cc);
|
| @@ -1526,12 +1557,12 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOpusMaxPlaybackRateNb) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 0;
|
| parameters.codecs[0].SetParam(cricket::kCodecParamMaxPlaybackRate, 8000);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(8000, GetOpusMaxPlaybackRate(kSsrc1));
|
| EXPECT_EQ(12000, GetCodecBitrate(kSsrc1));
|
|
|
| parameters.codecs[0].SetParam(cricket::kCodecParamStereo, "1");
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(24000, GetCodecBitrate(kSsrc1));
|
| }
|
|
|
| @@ -1542,12 +1573,12 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOpusMaxPlaybackRateMb) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 0;
|
| parameters.codecs[0].SetParam(cricket::kCodecParamMaxPlaybackRate, 8001);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(8001, GetOpusMaxPlaybackRate(kSsrc1));
|
| EXPECT_EQ(20000, GetCodecBitrate(kSsrc1));
|
|
|
| parameters.codecs[0].SetParam(cricket::kCodecParamStereo, "1");
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(40000, GetCodecBitrate(kSsrc1));
|
| }
|
|
|
| @@ -1558,12 +1589,12 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOpusMaxPlaybackRateWb) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 0;
|
| parameters.codecs[0].SetParam(cricket::kCodecParamMaxPlaybackRate, 12001);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(12001, GetOpusMaxPlaybackRate(kSsrc1));
|
| EXPECT_EQ(20000, GetCodecBitrate(kSsrc1));
|
|
|
| parameters.codecs[0].SetParam(cricket::kCodecParamStereo, "1");
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(40000, GetCodecBitrate(kSsrc1));
|
| }
|
|
|
| @@ -1574,12 +1605,12 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOpusMaxPlaybackRateSwb) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 0;
|
| parameters.codecs[0].SetParam(cricket::kCodecParamMaxPlaybackRate, 16001);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(16001, GetOpusMaxPlaybackRate(kSsrc1));
|
| EXPECT_EQ(32000, GetCodecBitrate(kSsrc1));
|
|
|
| parameters.codecs[0].SetParam(cricket::kCodecParamStereo, "1");
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(64000, GetCodecBitrate(kSsrc1));
|
| }
|
|
|
| @@ -1590,12 +1621,12 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOpusMaxPlaybackRateFb) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].bitrate = 0;
|
| parameters.codecs[0].SetParam(cricket::kCodecParamMaxPlaybackRate, 24001);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(24001, GetOpusMaxPlaybackRate(kSsrc1));
|
| EXPECT_EQ(32000, GetCodecBitrate(kSsrc1));
|
|
|
| parameters.codecs[0].SetParam(cricket::kCodecParamStereo, "1");
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(64000, GetCodecBitrate(kSsrc1));
|
| }
|
|
|
| @@ -1604,7 +1635,7 @@ TEST_F(WebRtcVoiceEngineTestFake, DefaultOpusMaxPlaybackRate) {
|
| EXPECT_TRUE(SetupSendStream());
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kOpusCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(48000, GetOpusMaxPlaybackRate(kSsrc1));
|
| }
|
|
|
| @@ -1614,7 +1645,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetNonOpusMaxPlaybackRate) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kIsacCodec);
|
| parameters.codecs[0].SetParam(cricket::kCodecParamMaxPlaybackRate, 32000);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(0, GetOpusMaxPlaybackRate(kSsrc1));
|
| }
|
|
|
| @@ -1623,11 +1654,11 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOpusMaxPlaybackRateOnTwoStreams) {
|
| EXPECT_TRUE(SetupSendStream());
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kOpusCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(48000, GetOpusMaxPlaybackRate(kSsrc1));
|
|
|
| parameters.codecs[0].SetParam(cricket::kCodecParamMaxPlaybackRate, 8000);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(8000, GetOpusMaxPlaybackRate(kSsrc1));
|
|
|
| channel_->AddSendStream(cricket::StreamParams::CreateLegacy(kSsrc2));
|
| @@ -1640,7 +1671,7 @@ TEST_F(WebRtcVoiceEngineTestFake, DisableOpusDtxOnOpus) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].params["usedtx"] = "0";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_FALSE(GetOpusDtx(kSsrc1));
|
| }
|
|
|
| @@ -1650,7 +1681,7 @@ TEST_F(WebRtcVoiceEngineTestFake, EnableOpusDtxOnOpus) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].params["usedtx"] = "1";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_TRUE(GetOpusDtx(kSsrc1));
|
| }
|
|
|
| @@ -1661,7 +1692,7 @@ TEST_F(WebRtcVoiceEngineTestFake, EnableOpusDtxOnOpusStereo) {
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].params["usedtx"] = "1";
|
| parameters.codecs[0].params["stereo"] = "1";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_TRUE(GetOpusDtx(kSsrc1));
|
| }
|
|
|
| @@ -1671,7 +1702,7 @@ TEST_F(WebRtcVoiceEngineTestFake, CannotEnableOpusDtxOnNonOpus) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kIsacCodec);
|
| parameters.codecs[0].params["usedtx"] = "1";
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_FALSE(GetOpusDtx(kSsrc1));
|
| }
|
|
|
| @@ -1681,7 +1712,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsIsacOpusSwitching) {
|
|
|
| cricket::AudioSendParameters opus_parameters;
|
| opus_parameters.codecs.push_back(kOpusCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(opus_parameters));
|
| + SetSendParameters(opus_parameters);
|
| {
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(111, gcodec.pltype);
|
| @@ -1692,14 +1723,14 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsIsacOpusSwitching) {
|
| isac_parameters.codecs.push_back(kIsacCodec);
|
| isac_parameters.codecs.push_back(kCn16000Codec);
|
| isac_parameters.codecs.push_back(kOpusCodec);
|
| - EXPECT_TRUE(channel_->SetSendParameters(isac_parameters));
|
| + SetSendParameters(isac_parameters);
|
| {
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(103, gcodec.pltype);
|
| EXPECT_STREQ("ISAC", gcodec.plname);
|
| }
|
|
|
| - EXPECT_TRUE(channel_->SetSendParameters(opus_parameters));
|
| + SetSendParameters(opus_parameters);
|
| {
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(111, gcodec.pltype);
|
| @@ -1712,7 +1743,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsBitrate) {
|
| EXPECT_TRUE(SetupSendStream());
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kIsacCodec); // bitrate == 32000
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| {
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(103, gcodec.pltype);
|
| @@ -1721,7 +1752,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsBitrate) {
|
| }
|
|
|
| parameters.codecs[0].bitrate = 0; // bitrate == default
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| {
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(103, gcodec.pltype);
|
| @@ -1729,7 +1760,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsBitrate) {
|
| EXPECT_EQ(-1, gcodec.rate);
|
| }
|
| parameters.codecs[0].bitrate = 28000; // bitrate == 28000
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| {
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(103, gcodec.pltype);
|
| @@ -1738,7 +1769,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsBitrate) {
|
| }
|
|
|
| parameters.codecs[0] = kPcmuCodec; // bitrate == 64000
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| {
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(0, gcodec.pltype);
|
| @@ -1747,7 +1778,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsBitrate) {
|
| }
|
|
|
| parameters.codecs[0].bitrate = 0; // bitrate == default
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| {
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(0, gcodec.pltype);
|
| @@ -1757,7 +1788,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsBitrate) {
|
|
|
| parameters.codecs[0] = kOpusCodec;
|
| parameters.codecs[0].bitrate = 0; // bitrate == default
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| {
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(111, gcodec.pltype);
|
| @@ -1772,26 +1803,26 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsPTimeAsPacketSize) {
|
| cricket::AudioSendParameters parameters;
|
| parameters.codecs.push_back(kOpusCodec);
|
| parameters.codecs[0].SetParam(cricket::kCodecParamPTime, 40); // Within range.
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(1920, GetCodecPacSize(kSsrc1)); // Opus gets 40ms.
|
|
|
| parameters.codecs[0].SetParam(cricket::kCodecParamPTime, 5); // Below range.
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(480, GetCodecPacSize(kSsrc1)); // Opus gets 10ms.
|
|
|
| parameters.codecs[0].SetParam(cricket::kCodecParamPTime, 80); // Beyond range.
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(2880, GetCodecPacSize(kSsrc1)); // Opus gets 60ms.
|
|
|
| parameters.codecs[0] = kIsacCodec; // Also try Isac, with unsupported size.
|
| parameters.codecs[0].SetParam(cricket::kCodecParamPTime, 40); // Within range.
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(480, GetCodecPacSize(
|
| kSsrc1)); // Isac gets 30ms as the next smallest value.
|
|
|
| parameters.codecs[0] = kG722CodecSdp; // Try G722 @8kHz as negotiated in SDP.
|
| parameters.codecs[0].SetParam(cricket::kCodecParamPTime, 40);
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_EQ(640, GetCodecPacSize(
|
| kSsrc1)); // G722 gets 40ms @16kHz as defined in VoE.
|
| }
|
| @@ -1813,7 +1844,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsDTMFOnTop) {
|
| parameters.codecs.push_back(kPcmuCodec);
|
| parameters.codecs[0].id = 98; // DTMF
|
| parameters.codecs[1].id = 96;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| const auto& gcodec = GetSendStreamConfig(kSsrc1).send_codec_spec.codec_inst;
|
| EXPECT_EQ(96, gcodec.pltype);
|
| EXPECT_STREQ("ISAC", gcodec.plname);
|
| @@ -1828,13 +1859,13 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsDTMFPayloadTypeOutOfRange) {
|
| parameters.codecs.push_back(kIsacCodec);
|
| parameters.codecs[0].id = 0; // DTMF
|
| parameters.codecs[1].id = 96;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_TRUE(channel_->CanInsertDtmf());
|
| parameters.codecs[0].id = 128; // DTMF
|
| EXPECT_FALSE(channel_->SetSendParameters(parameters));
|
| EXPECT_FALSE(channel_->CanInsertDtmf());
|
| parameters.codecs[0].id = 127;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_TRUE(channel_->CanInsertDtmf());
|
| parameters.codecs[0].id = -1; // DTMF
|
| EXPECT_FALSE(channel_->SetSendParameters(parameters));
|
| @@ -1851,7 +1882,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsCNOnTop) {
|
| parameters.codecs.push_back(kPcmuCodec);
|
| parameters.codecs[0].id = 98; // wideband CN
|
| parameters.codecs[1].id = 96;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| const auto& send_codec_spec = GetSendStreamConfig(kSsrc1).send_codec_spec;
|
| EXPECT_EQ(96, send_codec_spec.codec_inst.pltype);
|
| EXPECT_STREQ("ISAC", send_codec_spec.codec_inst.plname);
|
| @@ -1872,7 +1903,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsCNandDTMFAsCaller) {
|
| parameters.codecs[0].id = 96;
|
| parameters.codecs[2].id = 97; // wideband CN
|
| parameters.codecs[4].id = 98; // DTMF
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| const auto& send_codec_spec = GetSendStreamConfig(kSsrc1).send_codec_spec;
|
| EXPECT_EQ(96, send_codec_spec.codec_inst.pltype);
|
| EXPECT_STREQ("ISAC", send_codec_spec.codec_inst.plname);
|
| @@ -1896,7 +1927,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsCNandDTMFAsCallee) {
|
| parameters.codecs[0].id = 96;
|
| parameters.codecs[2].id = 97; // wideband CN
|
| parameters.codecs[4].id = 98; // DTMF
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| EXPECT_TRUE(channel_->AddSendStream(
|
| cricket::StreamParams::CreateLegacy(kSsrc1)));
|
|
|
| @@ -1919,7 +1950,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsCNNoMatch) {
|
| parameters.codecs.push_back(kIsacCodec);
|
| parameters.codecs.push_back(kCn16000Codec);
|
| parameters.codecs[1].id = 97;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| {
|
| const auto& send_codec_spec = GetSendStreamConfig(kSsrc1).send_codec_spec;
|
| EXPECT_STREQ("ISAC", send_codec_spec.codec_inst.plname);
|
| @@ -1930,7 +1961,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsCNNoMatch) {
|
| }
|
| // Set PCMU(8K) and CN(16K). VAD should not be activated.
|
| parameters.codecs[0] = kPcmuCodec;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| {
|
| const auto& send_codec_spec = GetSendStreamConfig(kSsrc1).send_codec_spec;
|
| EXPECT_STREQ("PCMU", send_codec_spec.codec_inst.plname);
|
| @@ -1938,7 +1969,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsCNNoMatch) {
|
| }
|
| // Set PCMU(8K) and CN(8K). VAD should be activated.
|
| parameters.codecs[1] = kCn8000Codec;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| {
|
| const auto& send_codec_spec = GetSendStreamConfig(kSsrc1).send_codec_spec;
|
| EXPECT_STREQ("PCMU", send_codec_spec.codec_inst.plname);
|
| @@ -1949,7 +1980,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsCNNoMatch) {
|
| }
|
| // Set ISAC(16K) and CN(8K). VAD should not be activated.
|
| parameters.codecs[0] = kIsacCodec;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| {
|
| const auto& send_codec_spec = GetSendStreamConfig(kSsrc1).send_codec_spec;
|
| EXPECT_STREQ("ISAC", send_codec_spec.codec_inst.plname);
|
| @@ -1970,7 +2001,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsCaseInsensitive) {
|
| parameters.codecs[0].id = 96;
|
| parameters.codecs[2].id = 97; // wideband CN
|
| parameters.codecs[4].id = 98; // DTMF
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| const auto& send_codec_spec = GetSendStreamConfig(kSsrc1).send_codec_spec;
|
| EXPECT_EQ(96, send_codec_spec.codec_inst.pltype);
|
| EXPECT_STREQ("ISAC", send_codec_spec.codec_inst.plname);
|
| @@ -2020,10 +2051,10 @@ TEST_F(WebRtcVoiceEngineTestFake, RecvAbsoluteSendTimeHeaderExtensions) {
|
| // Test that we can create a channel and start sending on it.
|
| TEST_F(WebRtcVoiceEngineTestFake, Send) {
|
| EXPECT_TRUE(SetupSendStream());
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| - SetSend(channel_, true);
|
| + SetSendParameters(send_parameters_);
|
| + SetSend(true);
|
| EXPECT_TRUE(GetSendStream(kSsrc1).IsSending());
|
| - SetSend(channel_, false);
|
| + SetSend(false);
|
| EXPECT_FALSE(GetSendStream(kSsrc1).IsSending());
|
| }
|
|
|
| @@ -2031,24 +2062,24 @@ TEST_F(WebRtcVoiceEngineTestFake, Send) {
|
| // for sending.
|
| TEST_F(WebRtcVoiceEngineTestFake, SendStateWithAndWithoutSource) {
|
| EXPECT_TRUE(SetupSendStream());
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| - EXPECT_TRUE(channel_->SetAudioSend(kSsrc1, true, nullptr, nullptr));
|
| - SetSend(channel_, true);
|
| + SetSendParameters(send_parameters_);
|
| + SetAudioSend(kSsrc1, true, nullptr);
|
| + SetSend(true);
|
| EXPECT_FALSE(GetSendStream(kSsrc1).IsSending());
|
| - EXPECT_TRUE(channel_->SetAudioSend(kSsrc1, true, nullptr, &fake_source_));
|
| + SetAudioSend(kSsrc1, true, &fake_source_);
|
| EXPECT_TRUE(GetSendStream(kSsrc1).IsSending());
|
| - EXPECT_TRUE(channel_->SetAudioSend(kSsrc1, true, nullptr, nullptr));
|
| + SetAudioSend(kSsrc1, true, nullptr);
|
| EXPECT_FALSE(GetSendStream(kSsrc1).IsSending());
|
| }
|
|
|
| // Test that a channel is muted/unmuted.
|
| TEST_F(WebRtcVoiceEngineTestFake, SendStateMuteUnmute) {
|
| EXPECT_TRUE(SetupSendStream());
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_FALSE(GetSendStream(kSsrc1).muted());
|
| - EXPECT_TRUE(channel_->SetAudioSend(kSsrc1, true, nullptr, nullptr));
|
| + SetAudioSend(kSsrc1, true, nullptr);
|
| EXPECT_FALSE(GetSendStream(kSsrc1).muted());
|
| - EXPECT_TRUE(channel_->SetAudioSend(kSsrc1, false, nullptr, nullptr));
|
| + SetAudioSend(kSsrc1, false, nullptr);
|
| EXPECT_TRUE(GetSendStream(kSsrc1).muted());
|
| }
|
|
|
| @@ -2058,22 +2089,22 @@ TEST_F(WebRtcVoiceEngineTestFake, SendStateWhenStreamsAreRecreated) {
|
| EXPECT_FALSE(GetSendStream(kSsrc1).IsSending());
|
|
|
| // Turn on sending.
|
| - SetSend(channel_, true);
|
| + SetSend(true);
|
| EXPECT_TRUE(GetSendStream(kSsrc1).IsSending());
|
|
|
| // Changing RTP header extensions will recreate the AudioSendStream.
|
| send_parameters_.extensions.push_back(
|
| webrtc::RtpExtension(webrtc::RtpExtension::kAudioLevelUri, 12));
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_TRUE(GetSendStream(kSsrc1).IsSending());
|
|
|
| // Turn off sending.
|
| - SetSend(channel_, false);
|
| + SetSend(false);
|
| EXPECT_FALSE(GetSendStream(kSsrc1).IsSending());
|
|
|
| // Changing RTP header extensions will recreate the AudioSendStream.
|
| send_parameters_.extensions.clear();
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_FALSE(GetSendStream(kSsrc1).IsSending());
|
| }
|
|
|
| @@ -2092,12 +2123,12 @@ TEST_F(WebRtcVoiceEngineTestFake, CreateAndDeleteMultipleSendStreams) {
|
| SetupForMultiSendStream();
|
|
|
| // Set the global state for sending.
|
| - SetSend(channel_, true);
|
| + SetSend(true);
|
|
|
| for (uint32_t ssrc : kSsrcs4) {
|
| EXPECT_TRUE(channel_->AddSendStream(
|
| cricket::StreamParams::CreateLegacy(ssrc)));
|
| - EXPECT_TRUE(channel_->SetAudioSend(ssrc, true, nullptr, &fake_source_));
|
| + SetAudioSend(ssrc, true, &fake_source_);
|
| // Verify that we are in a sending state for all the created streams.
|
| EXPECT_TRUE(GetSendStream(ssrc).IsSending());
|
| }
|
| @@ -2127,7 +2158,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsWithMultipleSendStreams) {
|
| parameters.codecs.push_back(kIsacCodec);
|
| parameters.codecs.push_back(kCn16000Codec);
|
| parameters.codecs[1].id = 97;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
|
|
| // Verify ISAC and VAD are corrected configured on all send channels.
|
| for (uint32_t ssrc : kSsrcs4) {
|
| @@ -2143,7 +2174,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendCodecsWithMultipleSendStreams) {
|
|
|
| // Change to PCMU(8K) and CN(16K).
|
| parameters.codecs[0] = kPcmuCodec;
|
| - EXPECT_TRUE(channel_->SetSendParameters(parameters));
|
| + SetSendParameters(parameters);
|
| for (uint32_t ssrc : kSsrcs4) {
|
| ASSERT_TRUE(call_.GetAudioSendStream(ssrc) != nullptr);
|
| const auto& send_codec_spec =
|
| @@ -2163,19 +2194,19 @@ TEST_F(WebRtcVoiceEngineTestFake, SetSendWithMultipleSendStreams) {
|
| for (uint32_t ssrc : kSsrcs4) {
|
| EXPECT_TRUE(channel_->AddSendStream(
|
| cricket::StreamParams::CreateLegacy(ssrc)));
|
| - EXPECT_TRUE(channel_->SetAudioSend(ssrc, true, nullptr, &fake_source_));
|
| + SetAudioSend(ssrc, true, &fake_source_);
|
| EXPECT_FALSE(GetSendStream(ssrc).IsSending());
|
| }
|
|
|
| // Set the global state for starting sending.
|
| - SetSend(channel_, true);
|
| + SetSend(true);
|
| for (uint32_t ssrc : kSsrcs4) {
|
| // Verify that we are in a sending state for all the send streams.
|
| EXPECT_TRUE(GetSendStream(ssrc).IsSending());
|
| }
|
|
|
| // Set the global state for stopping sending.
|
| - SetSend(channel_, false);
|
| + SetSend(false);
|
| for (uint32_t ssrc : kSsrcs4) {
|
| // Verify that we are in a stop state for all the send streams.
|
| EXPECT_FALSE(GetSendStream(ssrc).IsSending());
|
| @@ -2197,7 +2228,7 @@ TEST_F(WebRtcVoiceEngineTestFake, GetStatsWithMultipleSendStreams) {
|
| EXPECT_TRUE(AddRecvStream(kSsrc2));
|
|
|
| // We need send codec to be set to get all stats.
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_TRUE(channel_->SetRecvParameters(recv_parameters_));
|
| SetAudioSendStreamStats();
|
|
|
| @@ -2245,12 +2276,12 @@ TEST_F(WebRtcVoiceEngineTestFake, PlayoutWithMultipleStreams) {
|
| EXPECT_TRUE(SetupSendStream());
|
|
|
| // Start playout without a receive stream.
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| channel_->SetPlayout(true);
|
|
|
| // Adding another stream should enable playout on the new stream only.
|
| EXPECT_TRUE(AddRecvStream(kSsrc2));
|
| - SetSend(channel_, true);
|
| + SetSend(true);
|
| EXPECT_TRUE(GetSendStream(kSsrc1).IsSending());
|
|
|
| // Make sure only the new stream is played out.
|
| @@ -2262,7 +2293,7 @@ TEST_F(WebRtcVoiceEngineTestFake, PlayoutWithMultipleStreams) {
|
| EXPECT_TRUE(GetRecvStream(kSsrc3).started());
|
|
|
| // Stop sending.
|
| - SetSend(channel_, false);
|
| + SetSend(false);
|
| EXPECT_FALSE(GetSendStream(kSsrc1).IsSending());
|
|
|
| // Stop playout.
|
| @@ -2290,12 +2321,12 @@ TEST_F(WebRtcVoiceEngineTestFake, CodianSend) {
|
| EXPECT_EQ(0, voe_.GetAgcConfig(agc_config));
|
| EXPECT_EQ(0, agc_config.targetLeveldBOv);
|
| send_parameters_.options = options_adjust_agc;
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| - SetSend(channel_, true);
|
| + SetSendParameters(send_parameters_);
|
| + SetSend(true);
|
| EXPECT_TRUE(GetSendStream(kSsrc1).IsSending());
|
| EXPECT_EQ(0, voe_.GetAgcConfig(agc_config));
|
| EXPECT_EQ(agc_config.targetLeveldBOv, 10); // level was attenuated
|
| - SetSend(channel_, false);
|
| + SetSend(false);
|
| EXPECT_FALSE(GetSendStream(kSsrc1).IsSending());
|
| EXPECT_EQ(0, voe_.GetAgcConfig(agc_config));
|
| }
|
| @@ -2312,7 +2343,7 @@ TEST_F(WebRtcVoiceEngineTestFake, TxAgcConfigViaOptions) {
|
| rtc::Optional<uint16_t>(9);
|
| send_parameters_.options.tx_agc_limiter = rtc::Optional<bool>(true);
|
| send_parameters_.options.auto_gain_control = rtc::Optional<bool>(true);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_EQ(0, voe_.GetAgcConfig(agc_config));
|
| EXPECT_EQ(3, agc_config.targetLeveldBOv);
|
| EXPECT_EQ(9, agc_config.digitalCompressionGaindB);
|
| @@ -2321,7 +2352,7 @@ TEST_F(WebRtcVoiceEngineTestFake, TxAgcConfigViaOptions) {
|
| // Check interaction with adjust_agc_delta. Both should be respected, for
|
| // backwards compatibility.
|
| send_parameters_.options.adjust_agc_delta = rtc::Optional<int>(-10);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_EQ(0, voe_.GetAgcConfig(agc_config));
|
| EXPECT_EQ(13, agc_config.targetLeveldBOv);
|
| }
|
| @@ -2333,7 +2364,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SampleRatesViaOptions) {
|
| send_parameters_.options.recording_sample_rate =
|
| rtc::Optional<uint32_t>(48000);
|
| send_parameters_.options.playout_sample_rate = rtc::Optional<uint32_t>(44100);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| }
|
|
|
| // Test that we can set the outgoing SSRC properly.
|
| @@ -2349,7 +2380,7 @@ TEST_F(WebRtcVoiceEngineTestFake, GetStats) {
|
| // SetupSendStream adds a send stream with kSsrc1, so the receive
|
| // stream has to use a different SSRC.
|
| EXPECT_TRUE(AddRecvStream(kSsrc2));
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_TRUE(channel_->SetRecvParameters(recv_parameters_));
|
| SetAudioSendStreamStats();
|
|
|
| @@ -2369,7 +2400,7 @@ TEST_F(WebRtcVoiceEngineTestFake, GetStats) {
|
| // Start sending - this affects some reported stats.
|
| {
|
| cricket::VoiceMediaInfo info;
|
| - SetSend(channel_, true);
|
| + SetSend(true);
|
| EXPECT_EQ(true, channel_->GetStats(&info));
|
| VerifyVoiceSenderInfo(info.senders[0], true);
|
| }
|
| @@ -2595,7 +2626,7 @@ TEST_F(WebRtcVoiceEngineTestFake, AddRecvStreamUnsupportedCodec) {
|
| // not explicitly removed.
|
| TEST_F(WebRtcVoiceEngineTestFake, StreamCleanup) {
|
| EXPECT_TRUE(SetupSendStream());
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_TRUE(AddRecvStream(1));
|
| EXPECT_TRUE(AddRecvStream(2));
|
| EXPECT_EQ(3, voe_.GetNumChannels()); // default channel + 2 added
|
| @@ -2687,7 +2718,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetAudioOptions) {
|
|
|
| // Nothing set in AudioOptions, so everything should be as default.
|
| send_parameters_.options = cricket::AudioOptions();
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| voe_.GetEcStatus(ec_enabled, ec_mode);
|
| voe_.GetAecmMode(aecm_mode, cng_enabled);
|
| voe_.GetAgcStatus(agc_enabled, agc_mode);
|
| @@ -2712,14 +2743,14 @@ TEST_F(WebRtcVoiceEngineTestFake, SetAudioOptions) {
|
|
|
| // Turn echo cancellation off
|
| send_parameters_.options.echo_cancellation = rtc::Optional<bool>(false);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| voe_.GetEcStatus(ec_enabled, ec_mode);
|
| EXPECT_FALSE(ec_enabled);
|
|
|
| // Turn echo cancellation back on, with settings, and make sure
|
| // nothing else changed.
|
| send_parameters_.options.echo_cancellation = rtc::Optional<bool>(true);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| voe_.GetEcStatus(ec_enabled, ec_mode);
|
| voe_.GetAecmMode(aecm_mode, cng_enabled);
|
| voe_.GetAgcStatus(agc_enabled, agc_mode);
|
| @@ -2742,7 +2773,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetAudioOptions) {
|
| // Turn on delay agnostic aec and make sure nothing change w.r.t. echo
|
| // control.
|
| send_parameters_.options.delay_agnostic_aec = rtc::Optional<bool>(true);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| voe_.GetEcStatus(ec_enabled, ec_mode);
|
| voe_.GetAecmMode(aecm_mode, cng_enabled);
|
| EXPECT_TRUE(ec_enabled);
|
| @@ -2753,12 +2784,12 @@ TEST_F(WebRtcVoiceEngineTestFake, SetAudioOptions) {
|
| send_parameters_.options.delay_agnostic_aec = rtc::Optional<bool>(false);
|
| send_parameters_.options.extended_filter_aec = rtc::Optional<bool>(false);
|
| send_parameters_.options.echo_cancellation = rtc::Optional<bool>(false);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| voe_.GetEcStatus(ec_enabled, ec_mode);
|
| EXPECT_FALSE(ec_enabled);
|
| // Turning delay agnostic aec back on should also turn on echo cancellation.
|
| send_parameters_.options.delay_agnostic_aec = rtc::Optional<bool>(true);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| voe_.GetEcStatus(ec_enabled, ec_mode);
|
| EXPECT_TRUE(ec_enabled);
|
| EXPECT_TRUE(voe_.ec_metrics_enabled());
|
| @@ -2766,14 +2797,14 @@ TEST_F(WebRtcVoiceEngineTestFake, SetAudioOptions) {
|
|
|
| // Turn off AGC
|
| send_parameters_.options.auto_gain_control = rtc::Optional<bool>(false);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| voe_.GetAgcStatus(agc_enabled, agc_mode);
|
| EXPECT_FALSE(agc_enabled);
|
|
|
| // Turn AGC back on
|
| send_parameters_.options.auto_gain_control = rtc::Optional<bool>(true);
|
| send_parameters_.options.adjust_agc_delta = rtc::Optional<int>();
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| voe_.GetAgcStatus(agc_enabled, agc_mode);
|
| EXPECT_TRUE(agc_enabled);
|
| voe_.GetAgcConfig(agc_config);
|
| @@ -2784,7 +2815,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetAudioOptions) {
|
| send_parameters_.options.highpass_filter = rtc::Optional<bool>(false);
|
| send_parameters_.options.typing_detection = rtc::Optional<bool>(false);
|
| send_parameters_.options.stereo_swapping = rtc::Optional<bool>(true);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| voe_.GetNsStatus(ns_enabled, ns_mode);
|
| highpass_filter_enabled = voe_.IsHighPassFilterEnabled();
|
| stereo_swapping_enabled = voe_.IsStereoChannelSwappingEnabled();
|
| @@ -2795,7 +2826,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetAudioOptions) {
|
| EXPECT_TRUE(stereo_swapping_enabled);
|
|
|
| // Set options again to ensure it has no impact.
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| voe_.GetEcStatus(ec_enabled, ec_mode);
|
| voe_.GetNsStatus(ns_enabled, ns_mode);
|
| EXPECT_TRUE(ec_enabled);
|
| @@ -2854,6 +2885,12 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOptionOverridesViaChannels) {
|
| BuiltInAGCIsAvailable()).Times(9).WillRepeatedly(Return(false));
|
| EXPECT_CALL(adm_,
|
| BuiltInNSIsAvailable()).Times(9).WillRepeatedly(Return(false));
|
| + EXPECT_CALL(adm_,
|
| + RecordingIsInitialized()).Times(2).WillRepeatedly(Return(false));
|
| + EXPECT_CALL(adm_, Recording()).Times(2).WillRepeatedly(Return(false));
|
| + EXPECT_CALL(adm_, InitRecording()).Times(2).WillRepeatedly(Return(0));
|
| + EXPECT_CALL(apm_, ApplyConfig(testing::_)).Times(10);
|
| + EXPECT_CALL(apm_, SetExtraOptions(testing::_)).Times(10);
|
|
|
| std::unique_ptr<cricket::WebRtcVoiceMediaChannel> channel1(
|
| static_cast<cricket::WebRtcVoiceMediaChannel*>(engine_->CreateChannel(
|
| @@ -2875,16 +2912,16 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOptionOverridesViaChannels) {
|
| parameters_options_all.options.echo_cancellation = rtc::Optional<bool>(true);
|
| parameters_options_all.options.auto_gain_control = rtc::Optional<bool>(true);
|
| parameters_options_all.options.noise_suppression = rtc::Optional<bool>(true);
|
| - ASSERT_TRUE(channel1->SetSendParameters(parameters_options_all));
|
| + EXPECT_TRUE(channel1->SetSendParameters(parameters_options_all));
|
| EXPECT_EQ(parameters_options_all.options, channel1->options());
|
| - ASSERT_TRUE(channel2->SetSendParameters(parameters_options_all));
|
| + EXPECT_TRUE(channel2->SetSendParameters(parameters_options_all));
|
| EXPECT_EQ(parameters_options_all.options, channel2->options());
|
|
|
| // unset NS
|
| cricket::AudioSendParameters parameters_options_no_ns = send_parameters_;
|
| parameters_options_no_ns.options.noise_suppression =
|
| rtc::Optional<bool>(false);
|
| - ASSERT_TRUE(channel1->SetSendParameters(parameters_options_no_ns));
|
| + EXPECT_TRUE(channel1->SetSendParameters(parameters_options_no_ns));
|
| cricket::AudioOptions expected_options = parameters_options_all.options;
|
| expected_options.echo_cancellation = rtc::Optional<bool>(true);
|
| expected_options.auto_gain_control = rtc::Optional<bool>(true);
|
| @@ -2895,13 +2932,13 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOptionOverridesViaChannels) {
|
| cricket::AudioSendParameters parameters_options_no_agc = send_parameters_;
|
| parameters_options_no_agc.options.auto_gain_control =
|
| rtc::Optional<bool>(false);
|
| - ASSERT_TRUE(channel2->SetSendParameters(parameters_options_no_agc));
|
| + EXPECT_TRUE(channel2->SetSendParameters(parameters_options_no_agc));
|
| expected_options.echo_cancellation = rtc::Optional<bool>(true);
|
| expected_options.auto_gain_control = rtc::Optional<bool>(false);
|
| expected_options.noise_suppression = rtc::Optional<bool>(true);
|
| EXPECT_EQ(expected_options, channel2->options());
|
|
|
| - ASSERT_TRUE(channel_->SetSendParameters(parameters_options_all));
|
| + EXPECT_TRUE(channel_->SetSendParameters(parameters_options_all));
|
| bool ec_enabled;
|
| webrtc::EcModes ec_mode;
|
| bool agc_enabled;
|
| @@ -2915,7 +2952,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOptionOverridesViaChannels) {
|
| EXPECT_TRUE(agc_enabled);
|
| EXPECT_TRUE(ns_enabled);
|
|
|
| - SetSend(channel1.get(), true);
|
| + channel1->SetSend(true);
|
| voe_.GetEcStatus(ec_enabled, ec_mode);
|
| voe_.GetAgcStatus(agc_enabled, agc_mode);
|
| voe_.GetNsStatus(ns_enabled, ns_mode);
|
| @@ -2923,7 +2960,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOptionOverridesViaChannels) {
|
| EXPECT_TRUE(agc_enabled);
|
| EXPECT_FALSE(ns_enabled);
|
|
|
| - SetSend(channel2.get(), true);
|
| + channel2->SetSend(true);
|
| voe_.GetEcStatus(ec_enabled, ec_mode);
|
| voe_.GetAgcStatus(agc_enabled, agc_mode);
|
| voe_.GetNsStatus(ns_enabled, ns_mode);
|
| @@ -2932,7 +2969,9 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOptionOverridesViaChannels) {
|
| EXPECT_TRUE(ns_enabled);
|
|
|
| // Make sure settings take effect while we are sending.
|
| - ASSERT_TRUE(channel_->SetSendParameters(parameters_options_all));
|
| + EXPECT_TRUE(channel_->SetSendParameters(parameters_options_all));
|
| + EXPECT_CALL(apm_, ApplyConfig(testing::_));
|
| + EXPECT_CALL(apm_, SetExtraOptions(testing::_));
|
| cricket::AudioSendParameters parameters_options_no_agc_nor_ns =
|
| send_parameters_;
|
| parameters_options_no_agc_nor_ns.options.auto_gain_control =
|
| @@ -2940,7 +2979,7 @@ TEST_F(WebRtcVoiceEngineTestFake, SetOptionOverridesViaChannels) {
|
| parameters_options_no_agc_nor_ns.options.noise_suppression =
|
| rtc::Optional<bool>(false);
|
| channel2->SetSend(true);
|
| - channel2->SetSendParameters(parameters_options_no_agc_nor_ns);
|
| + EXPECT_TRUE(channel2->SetSendParameters(parameters_options_no_agc_nor_ns));
|
| expected_options.echo_cancellation = rtc::Optional<bool>(true);
|
| expected_options.auto_gain_control = rtc::Optional<bool>(false);
|
| expected_options.noise_suppression = rtc::Optional<bool>(false);
|
| @@ -2960,6 +2999,9 @@ TEST_F(WebRtcVoiceEngineTestFake, TestSetDscpOptions) {
|
| cricket::MediaConfig config;
|
| std::unique_ptr<cricket::VoiceMediaChannel> channel;
|
|
|
| + EXPECT_CALL(apm_, ApplyConfig(testing::_)).Times(3);
|
| + EXPECT_CALL(apm_, SetExtraOptions(testing::_)).Times(3);
|
| +
|
| channel.reset(
|
| engine_->CreateChannel(&call_, config, cricket::AudioOptions()));
|
| channel->SetInterface(&network_interface);
|
| @@ -3068,11 +3110,9 @@ TEST_F(WebRtcVoiceEngineTestFake, ConfiguresAudioReceiveStreamRtpExtensions) {
|
| ssrcs.push_back(224);
|
|
|
| EXPECT_TRUE(SetupSendStream());
|
| - cricket::WebRtcVoiceMediaChannel* media_channel =
|
| - static_cast<cricket::WebRtcVoiceMediaChannel*>(channel_);
|
| - EXPECT_TRUE(media_channel->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| for (uint32_t ssrc : ssrcs) {
|
| - EXPECT_TRUE(media_channel->AddRecvStream(
|
| + EXPECT_TRUE(channel_->AddRecvStream(
|
| cricket::StreamParams::CreateLegacy(ssrc)));
|
| }
|
|
|
| @@ -3127,7 +3167,7 @@ TEST_F(WebRtcVoiceEngineTestFake, DeliverAudioPacket_Call) {
|
| EXPECT_TRUE(SetupSendStream());
|
| cricket::WebRtcVoiceMediaChannel* media_channel =
|
| static_cast<cricket::WebRtcVoiceMediaChannel*>(channel_);
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| EXPECT_TRUE(media_channel->AddRecvStream(
|
| cricket::StreamParams::CreateLegacy(kAudioSsrc)));
|
|
|
| @@ -3145,7 +3185,7 @@ TEST_F(WebRtcVoiceEngineTestFake, DeliverAudioPacket_Call) {
|
| // since they do not send RTCP SR.
|
| TEST_F(WebRtcVoiceEngineTestFake, AssociateFirstSendChannel) {
|
| EXPECT_TRUE(SetupSendStream());
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
| int default_channel = voe_.GetLastChannel();
|
| EXPECT_TRUE(AddRecvStream(1));
|
| int recv_ch = voe_.GetLastChannel();
|
| @@ -3161,7 +3201,7 @@ TEST_F(WebRtcVoiceEngineTestFake, AssociateFirstSendChannel) {
|
|
|
| TEST_F(WebRtcVoiceEngineTestFake, AssociateChannelResetUponDeleteChannnel) {
|
| EXPECT_TRUE(SetupSendStream());
|
| - EXPECT_TRUE(channel_->SetSendParameters(send_parameters_));
|
| + SetSendParameters(send_parameters_);
|
|
|
| EXPECT_TRUE(AddRecvStream(1));
|
| int recv_ch = voe_.GetLastChannel();
|
|
|