Extend delay estimation window in AEC to 500 ms on all platforms
On non-Android the delay estimator in audio_processing/aec has solely been used for logging purposes. The maximum possible observed delay has been 236 ms. We have seen longer delays for which the delay estimate at best ends up at 236 ms, but can also be 'random'. reported delays are clamped to 500 ms. This cl extends the delay estimation window to match that. BUG=4086, 3504, 4113 TESTED=locally on Linux and trybots R=kwiberg@webrtc.org Review URL: https://webrtc-codereview.appspot.com/36569004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@7989 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
parent
9eacb8cc59
commit
bac0012120
@ -24,20 +24,14 @@ enum {
|
||||
};
|
||||
static const int kNormalNumPartitions = 12;
|
||||
|
||||
// Delay estimator constants, used for logging.
|
||||
enum {
|
||||
kMaxDelayBlocks = 60
|
||||
};
|
||||
// Delay estimator constants, used for logging and delay compensation if
|
||||
// if reported delays are disabled.
|
||||
enum {
|
||||
kLookaheadBlocks = 15
|
||||
};
|
||||
enum {
|
||||
#ifdef WEBRTC_ANDROID
|
||||
// 500 ms for 16 kHz which is equivalent with the limit of reported delays.
|
||||
kHistorySizeBlocks = 125
|
||||
#else
|
||||
kHistorySizeBlocks = kMaxDelayBlocks + kLookaheadBlocks
|
||||
#endif
|
||||
};
|
||||
|
||||
// Extended filter adaptation parameters.
|
||||
|
@ -826,6 +826,7 @@ TEST_F(ApmTest, EchoCancellation) {
|
||||
}
|
||||
|
||||
TEST_F(ApmTest, DISABLED_EchoCancellationReportsCorrectDelays) {
|
||||
// TODO(bjornv): Fix this test to work with DA-AEC.
|
||||
// Enable AEC only.
|
||||
EXPECT_EQ(apm_->kNoError,
|
||||
apm_->echo_cancellation()->enable_drift_compensation(false));
|
||||
|
Loading…
Reference in New Issue
Block a user