Improve NetEq network adaptation in the beginning of the call.
Change the way the forget factor converge to the steady state so that we don't overemphasize the first packets received. The logic is controlled by the delay histogram field trial which has an added parameter to control if emphasis should be even (c=1, default) or put on later packets (c>1) until we reach our steady state forget factor. Bug: webrtc:10411 Change-Id: Ia5d46c22d1a4a66994652f71c8cde664362bfacb Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/137050 Reviewed-by: Minyue Li <minyue@webrtc.org> Reviewed-by: Chen Xing <chxg@google.com> Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org> Cr-Commit-Position: refs/heads/master@{#28039}
This commit is contained in:
committed by
Commit Bot
parent
74b373f04a
commit
e9a2ee2631
@ -168,4 +168,15 @@ TEST(HistogramTest, OverflowTest) {
|
||||
EXPECT_EQ(scaled_buckets, expected_result);
|
||||
}
|
||||
|
||||
TEST(HistogramTest, ReachSteadyStateForgetFactor) {
|
||||
static constexpr int kSteadyStateForgetFactor = (1 << 15) * 0.9993;
|
||||
Histogram histogram(100, kSteadyStateForgetFactor, 1.0);
|
||||
histogram.Reset();
|
||||
int n = (1 << 15) / ((1 << 15) - kSteadyStateForgetFactor);
|
||||
for (int i = 0; i < n; ++i) {
|
||||
histogram.Add(0);
|
||||
}
|
||||
EXPECT_EQ(histogram.forget_factor_for_testing(), kSteadyStateForgetFactor);
|
||||
}
|
||||
|
||||
} // namespace webrtc
|
||||
|
||||
Reference in New Issue
Block a user