Remove legacy delay manger field trial and update default config.
Bug: webrtc:10333 Change-Id: I20e55d8d111d93657d1afe556fe3a325337c074c Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/232820 Reviewed-by: Ivo Creusen <ivoc@webrtc.org> Commit-Queue: Jakob Ivarsson <jakobi@webrtc.org> Cr-Commit-Position: refs/heads/main@{#35321}
This commit is contained in:
committed by
WebRTC LUCI CQ
parent
28c7180999
commit
93849d4b2a
@ -44,8 +44,8 @@ class DelayManagerTest : public ::testing::Test {
|
||||
absl::optional<int> InsertNextPacket();
|
||||
void IncreaseTime(int inc_ms);
|
||||
|
||||
DelayManager dm_;
|
||||
TickTimer tick_timer_;
|
||||
DelayManager dm_;
|
||||
uint32_t ts_;
|
||||
};
|
||||
|
||||
@ -74,39 +74,18 @@ TEST_F(DelayManagerTest, CreateAndDestroy) {
|
||||
}
|
||||
|
||||
TEST_F(DelayManagerTest, UpdateNormal) {
|
||||
// First packet arrival.
|
||||
InsertNextPacket();
|
||||
// Advance time by one frame size.
|
||||
IncreaseTime(kFrameSizeMs);
|
||||
// Second packet arrival.
|
||||
InsertNextPacket();
|
||||
for (int i = 0; i < 50; ++i) {
|
||||
InsertNextPacket();
|
||||
IncreaseTime(kFrameSizeMs);
|
||||
}
|
||||
EXPECT_EQ(20, dm_.TargetDelayMs());
|
||||
}
|
||||
|
||||
TEST_F(DelayManagerTest, UpdateLongInterArrivalTime) {
|
||||
// First packet arrival.
|
||||
InsertNextPacket();
|
||||
// Advance time by two frame size.
|
||||
IncreaseTime(2 * kFrameSizeMs);
|
||||
// Second packet arrival.
|
||||
InsertNextPacket();
|
||||
EXPECT_EQ(40, dm_.TargetDelayMs());
|
||||
}
|
||||
|
||||
TEST_F(DelayManagerTest, MaxDelay) {
|
||||
const int kExpectedTarget = 5 * kFrameSizeMs;
|
||||
// First packet arrival.
|
||||
InsertNextPacket();
|
||||
// Second packet arrival.
|
||||
IncreaseTime(kExpectedTarget);
|
||||
InsertNextPacket();
|
||||
|
||||
// No limit is set.
|
||||
EXPECT_EQ(kExpectedTarget, dm_.TargetDelayMs());
|
||||
|
||||
const int kMaxDelayMs = 3 * kFrameSizeMs;
|
||||
const int kMaxDelayMs = 60;
|
||||
EXPECT_GT(dm_.TargetDelayMs(), kMaxDelayMs);
|
||||
EXPECT_TRUE(dm_.SetMaximumDelay(kMaxDelayMs));
|
||||
IncreaseTime(kFrameSizeMs);
|
||||
InsertNextPacket();
|
||||
EXPECT_EQ(kMaxDelayMs, dm_.TargetDelayMs());
|
||||
|
||||
@ -115,17 +94,9 @@ TEST_F(DelayManagerTest, MaxDelay) {
|
||||
}
|
||||
|
||||
TEST_F(DelayManagerTest, MinDelay) {
|
||||
const int kExpectedTarget = 5 * kFrameSizeMs;
|
||||
// First packet arrival.
|
||||
InsertNextPacket();
|
||||
// Second packet arrival.
|
||||
IncreaseTime(kExpectedTarget);
|
||||
InsertNextPacket();
|
||||
|
||||
// No limit is applied.
|
||||
EXPECT_EQ(kExpectedTarget, dm_.TargetDelayMs());
|
||||
|
||||
int kMinDelayMs = 7 * kFrameSizeMs;
|
||||
EXPECT_LT(dm_.TargetDelayMs(), kMinDelayMs);
|
||||
dm_.SetMinimumDelay(kMinDelayMs);
|
||||
IncreaseTime(kFrameSizeMs);
|
||||
InsertNextPacket();
|
||||
@ -251,48 +222,11 @@ TEST_F(DelayManagerTest, MinimumDelayMemorization) {
|
||||
}
|
||||
|
||||
TEST_F(DelayManagerTest, BaseMinimumDelay) {
|
||||
const int kExpectedTarget = 5 * kFrameSizeMs;
|
||||
// First packet arrival.
|
||||
InsertNextPacket();
|
||||
// Second packet arrival.
|
||||
IncreaseTime(kExpectedTarget);
|
||||
InsertNextPacket();
|
||||
|
||||
// No limit is applied.
|
||||
EXPECT_EQ(kExpectedTarget, dm_.TargetDelayMs());
|
||||
|
||||
constexpr int kBaseMinimumDelayMs = 7 * kFrameSizeMs;
|
||||
EXPECT_TRUE(dm_.SetBaseMinimumDelay(kBaseMinimumDelayMs));
|
||||
EXPECT_EQ(dm_.GetBaseMinimumDelay(), kBaseMinimumDelayMs);
|
||||
|
||||
IncreaseTime(kFrameSizeMs);
|
||||
InsertNextPacket();
|
||||
EXPECT_EQ(dm_.GetBaseMinimumDelay(), kBaseMinimumDelayMs);
|
||||
EXPECT_EQ(kBaseMinimumDelayMs, dm_.TargetDelayMs());
|
||||
}
|
||||
|
||||
TEST_F(DelayManagerTest, BaseMinimumDelayAffectsTargetDelay) {
|
||||
const int kExpectedTarget = 5;
|
||||
const int kTimeIncrement = kExpectedTarget * kFrameSizeMs;
|
||||
// First packet arrival.
|
||||
InsertNextPacket();
|
||||
// Second packet arrival.
|
||||
IncreaseTime(kTimeIncrement);
|
||||
InsertNextPacket();
|
||||
|
||||
// No limit is applied.
|
||||
EXPECT_EQ(kTimeIncrement, dm_.TargetDelayMs());
|
||||
|
||||
// Minimum delay is lower than base minimum delay, that is why base minimum
|
||||
// delay is used to calculate target level.
|
||||
constexpr int kMinimumDelayPackets = kExpectedTarget + 1;
|
||||
constexpr int kBaseMinimumDelayPackets = kExpectedTarget + 2;
|
||||
|
||||
constexpr int kMinimumDelayMs = kMinimumDelayPackets * kFrameSizeMs;
|
||||
constexpr int kBaseMinimumDelayMs = kBaseMinimumDelayPackets * kFrameSizeMs;
|
||||
|
||||
EXPECT_TRUE(kMinimumDelayMs < kBaseMinimumDelayMs);
|
||||
EXPECT_TRUE(dm_.SetMinimumDelay(kMinimumDelayMs));
|
||||
EXPECT_LT(dm_.TargetDelayMs(), kBaseMinimumDelayMs);
|
||||
EXPECT_TRUE(dm_.SetBaseMinimumDelay(kBaseMinimumDelayMs));
|
||||
EXPECT_EQ(dm_.GetBaseMinimumDelay(), kBaseMinimumDelayMs);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user