None of the clients of VoE use SetNetEQBGNMode(), furthermore, NetEq 4 does not provide an API to change the mode of the background noise.
bug=issue1370 test=trybots Review URL: https://webrtc-codereview.appspot.com/1121007 git-svn-id: http://webrtc.googlecode.com/svn/trunk@3607 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
parent
7881b574dd
commit
24045c5a02
@ -437,18 +437,6 @@ enum NetEqModes // NetEQ playout configurations
|
||||
kNetEqOff = 3,
|
||||
};
|
||||
|
||||
enum NetEqBgnModes // NetEQ Background Noise (BGN) configurations
|
||||
{
|
||||
// BGN is always on and will be generated when the incoming RTP stream
|
||||
// stops (default).
|
||||
kBgnOn = 0,
|
||||
// The BGN is faded to zero (complete silence) after a few seconds.
|
||||
kBgnFade = 1,
|
||||
// BGN is not used at all. Silence is produced after speech extrapolation
|
||||
// has faded.
|
||||
kBgnOff = 2,
|
||||
};
|
||||
|
||||
enum OnHoldModes // On Hold direction
|
||||
{
|
||||
kHoldSendAndPlay = 0, // Put both sending and playing in on-hold state.
|
||||
|
||||
@ -2141,34 +2141,6 @@ Channel::GetNetEQPlayoutMode(NetEqModes& mode)
|
||||
return 0;
|
||||
}
|
||||
|
||||
WebRtc_Word32
|
||||
Channel::SetNetEQBGNMode(NetEqBgnModes mode)
|
||||
{
|
||||
WEBRTC_TRACE(kTraceInfo, kTraceVoice, VoEId(_instanceId,_channelId),
|
||||
"Channel::SetNetEQPlayoutMode()");
|
||||
ACMBackgroundNoiseMode noiseMode(On);
|
||||
switch (mode)
|
||||
{
|
||||
case kBgnOn:
|
||||
noiseMode = On;
|
||||
break;
|
||||
case kBgnFade:
|
||||
noiseMode = Fade;
|
||||
break;
|
||||
case kBgnOff:
|
||||
noiseMode = Off;
|
||||
break;
|
||||
}
|
||||
if (_audioCodingModule.SetBackgroundNoiseMode(noiseMode) != 0)
|
||||
{
|
||||
_engineStatisticsPtr->SetLastError(
|
||||
VE_AUDIO_CODING_MODULE_ERROR, kTraceError,
|
||||
"SetBackgroundNoiseMode() failed to set noise mode");
|
||||
return -1;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
WebRtc_Word32
|
||||
Channel::SetOnHoldStatus(bool enable, OnHoldModes mode)
|
||||
{
|
||||
@ -2250,28 +2222,6 @@ Channel::DeRegisterVoiceEngineObserver()
|
||||
return 0;
|
||||
}
|
||||
|
||||
WebRtc_Word32
|
||||
Channel::GetNetEQBGNMode(NetEqBgnModes& mode)
|
||||
{
|
||||
ACMBackgroundNoiseMode noiseMode(On);
|
||||
_audioCodingModule.BackgroundNoiseMode(&noiseMode);
|
||||
switch (noiseMode)
|
||||
{
|
||||
case On:
|
||||
mode = kBgnOn;
|
||||
break;
|
||||
case Fade:
|
||||
mode = kBgnFade;
|
||||
break;
|
||||
case Off:
|
||||
mode = kBgnOff;
|
||||
break;
|
||||
}
|
||||
WEBRTC_TRACE(kTraceStateInfo, kTraceVoice, VoEId(_instanceId,_channelId),
|
||||
"Channel::GetNetEQBGNMode() => mode=%u", mode);
|
||||
return 0;
|
||||
}
|
||||
|
||||
WebRtc_Word32
|
||||
Channel::GetSendCodec(CodecInst& codec)
|
||||
{
|
||||
|
||||
@ -124,8 +124,6 @@ public:
|
||||
#endif
|
||||
WebRtc_Word32 SetNetEQPlayoutMode(NetEqModes mode);
|
||||
WebRtc_Word32 GetNetEQPlayoutMode(NetEqModes& mode);
|
||||
WebRtc_Word32 SetNetEQBGNMode(NetEqBgnModes mode);
|
||||
WebRtc_Word32 GetNetEQBGNMode(NetEqBgnModes& mode);
|
||||
WebRtc_Word32 SetOnHoldStatus(bool enable, OnHoldModes mode);
|
||||
WebRtc_Word32 GetOnHoldStatus(bool& enabled, OnHoldModes& mode);
|
||||
WebRtc_Word32 RegisterVoiceEngineObserver(VoiceEngineObserver& observer);
|
||||
|
||||
@ -204,12 +204,6 @@ public:
|
||||
// Gets the NetEQ playout mode for a specified |channel| number.
|
||||
virtual int GetNetEQPlayoutMode(int channel, NetEqModes& mode) = 0;
|
||||
|
||||
// Sets the NetEQ background noise mode for a specified |channel| number.
|
||||
virtual int SetNetEQBGNMode(int channel, NetEqBgnModes mode) = 0;
|
||||
|
||||
// Gets the NetEQ background noise mode for a specified |channel| number.
|
||||
virtual int GetNetEQBGNMode(int channel, NetEqBgnModes& mode) = 0;
|
||||
|
||||
protected:
|
||||
VoEBase() {}
|
||||
virtual ~VoEBase() {}
|
||||
|
||||
@ -66,23 +66,6 @@ TEST_F(NetEQTest, SetNetEQPlayoutModeActuallySetsTheModeForTheChannel) {
|
||||
EXPECT_EQ(webrtc::kNetEqStreaming, mode);
|
||||
}
|
||||
|
||||
TEST_F(NetEQTest, GetNetEQBgnModeReturnsBgnOnByDefault) {
|
||||
webrtc::NetEqBgnModes bgn_mode;
|
||||
EXPECT_EQ(0, voe_base_->GetNetEQBGNMode(channel_, bgn_mode));
|
||||
EXPECT_EQ(webrtc::kBgnOn, bgn_mode);
|
||||
}
|
||||
|
||||
TEST_F(NetEQTest, SetNetEQBgnModeActuallySetsTheBgnMode) {
|
||||
webrtc::NetEqBgnModes bgn_mode;
|
||||
EXPECT_EQ(0, voe_base_->SetNetEQBGNMode(channel_, webrtc::kBgnOff));
|
||||
EXPECT_EQ(0, voe_base_->GetNetEQBGNMode(channel_, bgn_mode));
|
||||
EXPECT_EQ(webrtc::kBgnOff, bgn_mode);
|
||||
|
||||
EXPECT_EQ(0, voe_base_->SetNetEQBGNMode(channel_, webrtc::kBgnFade));
|
||||
EXPECT_EQ(0, voe_base_->GetNetEQBGNMode(channel_, bgn_mode));
|
||||
EXPECT_EQ(webrtc::kBgnFade, bgn_mode);
|
||||
}
|
||||
|
||||
TEST_F(NetEQTest, ManualSetEQPlayoutModeStillProducesOkAudio) {
|
||||
EXPECT_EQ(0, voe_base_->SetNetEQPlayoutMode(channel_, webrtc::kNetEqDefault));
|
||||
TEST_LOG("NetEQ default playout mode enabled => should hear OK audio.\n");
|
||||
|
||||
@ -1159,64 +1159,6 @@ int VoEExtendedTest::TestBase() {
|
||||
ANL();
|
||||
ANL();
|
||||
|
||||
//////////////////////////////
|
||||
// SetNetEQBGNMode
|
||||
// GetNetEQBGNMode
|
||||
TEST(SetNetEQBGNMode);
|
||||
ANL();
|
||||
TEST(GetNetEQBGNMode);
|
||||
ANL();
|
||||
|
||||
NetEqBgnModes bgnMode;
|
||||
|
||||
ch = voe_base_->CreateChannel();
|
||||
|
||||
// invalid function calls (should fail)
|
||||
TEST_MUSTPASS(!voe_base_->GetNetEQBGNMode(ch+1, bgnMode));
|
||||
MARK();
|
||||
TEST_MUSTPASS(!voe_base_->SetNetEQBGNMode(ch+1, kBgnOn));
|
||||
MARK();
|
||||
|
||||
// verify default mode (should be kBgnOn)
|
||||
TEST_MUSTPASS(voe_base_->GetNetEQBGNMode(ch, bgnMode));
|
||||
MARK();
|
||||
TEST_MUSTPASS(bgnMode != kBgnOn);
|
||||
voe_base_->DeleteChannel(ch);
|
||||
|
||||
// ensure that default mode is set as soon as new channel is created
|
||||
ch = voe_base_->CreateChannel();
|
||||
TEST_MUSTPASS(voe_base_->GetNetEQBGNMode(ch, bgnMode));
|
||||
MARK();
|
||||
TEST_MUSTPASS(bgnMode != kBgnOn);
|
||||
voe_base_->DeleteChannel(ch);
|
||||
|
||||
// verify Set/Get for all supported modes and max number of channels
|
||||
for (i = 0; i < voe_base_->MaxNumOfChannels(); i++) {
|
||||
ch = voe_base_->CreateChannel();
|
||||
|
||||
// verify Set/Get for all supported modes
|
||||
TEST_MUSTPASS(voe_base_->SetNetEQBGNMode(i, kBgnOn));
|
||||
MARK();
|
||||
TEST_MUSTPASS(voe_base_->GetNetEQBGNMode(i, bgnMode));
|
||||
MARK();
|
||||
TEST_MUSTPASS(bgnMode != kBgnOn);
|
||||
TEST_MUSTPASS(voe_base_->SetNetEQBGNMode(i, kBgnFade));
|
||||
MARK();
|
||||
TEST_MUSTPASS(voe_base_->GetNetEQBGNMode(i, bgnMode));
|
||||
MARK();
|
||||
TEST_MUSTPASS(bgnMode != kBgnFade);
|
||||
TEST_MUSTPASS(voe_base_->SetNetEQBGNMode(i, kBgnOff));
|
||||
MARK();
|
||||
TEST_MUSTPASS(voe_base_->GetNetEQBGNMode(i, bgnMode));
|
||||
MARK();
|
||||
TEST_MUSTPASS(bgnMode != kBgnOff);
|
||||
SleepMs(50);
|
||||
}
|
||||
|
||||
for (i = 0; i < voe_base_->MaxNumOfChannels(); i++) {
|
||||
voe_base_->DeleteChannel(i);
|
||||
}
|
||||
|
||||
// Verify real-time performance for all playout modes in full duplex
|
||||
|
||||
ch = voe_base_->CreateChannel();
|
||||
|
||||
@ -1268,46 +1268,6 @@ int VoEBaseImpl::GetNetEQPlayoutMode(int channel, NetEqModes& mode)
|
||||
return channelPtr->GetNetEQPlayoutMode(mode);
|
||||
}
|
||||
|
||||
int VoEBaseImpl::SetNetEQBGNMode(int channel, NetEqBgnModes mode)
|
||||
{
|
||||
WEBRTC_TRACE(kTraceApiCall, kTraceVoice, VoEId(_shared->instance_id(), -1),
|
||||
"SetNetEQBGNMode(channel=%i, mode=%i)", channel, mode);
|
||||
if (!_shared->statistics().Initialized())
|
||||
{
|
||||
_shared->SetLastError(VE_NOT_INITED, kTraceError);
|
||||
return -1;
|
||||
}
|
||||
voe::ScopedChannel sc(_shared->channel_manager(), channel);
|
||||
voe::Channel* channelPtr = sc.ChannelPtr();
|
||||
if (channelPtr == NULL)
|
||||
{
|
||||
_shared->SetLastError(VE_CHANNEL_NOT_VALID, kTraceError,
|
||||
"SetNetEQBGNMode() failed to locate channel");
|
||||
return -1;
|
||||
}
|
||||
return channelPtr->SetNetEQBGNMode(mode);
|
||||
}
|
||||
|
||||
int VoEBaseImpl::GetNetEQBGNMode(int channel, NetEqBgnModes& mode)
|
||||
{
|
||||
WEBRTC_TRACE(kTraceApiCall, kTraceVoice, VoEId(_shared->instance_id(), -1),
|
||||
"GetNetEQBGNMode(channel=%i, mode=?)", channel);
|
||||
if (!_shared->statistics().Initialized())
|
||||
{
|
||||
_shared->SetLastError(VE_NOT_INITED, kTraceError);
|
||||
return -1;
|
||||
}
|
||||
voe::ScopedChannel sc(_shared->channel_manager(), channel);
|
||||
voe::Channel* channelPtr = sc.ChannelPtr();
|
||||
if (channelPtr == NULL)
|
||||
{
|
||||
_shared->SetLastError(VE_CHANNEL_NOT_VALID, kTraceError,
|
||||
"GetNetEQBGNMode() failed to locate channel");
|
||||
return -1;
|
||||
}
|
||||
return channelPtr->GetNetEQBGNMode(mode);
|
||||
}
|
||||
|
||||
int VoEBaseImpl::SetOnHoldStatus(int channel, bool enable, OnHoldModes mode)
|
||||
{
|
||||
WEBRTC_TRACE(kTraceApiCall, kTraceVoice, VoEId(_shared->instance_id(), -1),
|
||||
|
||||
@ -79,10 +79,6 @@ public:
|
||||
|
||||
virtual int GetNetEQPlayoutMode(int channel, NetEqModes& mode);
|
||||
|
||||
virtual int SetNetEQBGNMode(int channel, NetEqBgnModes mode);
|
||||
|
||||
virtual int GetNetEQBGNMode(int channel, NetEqBgnModes& mode);
|
||||
|
||||
virtual int SetOnHoldStatus(int channel,
|
||||
bool enable,
|
||||
OnHoldModes mode = kHoldSendAndPlay);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user