Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(547)

Unified Diff: webrtc/video_engine/overuse_frame_detector_unittest.cc

Issue 1250593002: Remove unused overuse detection metric (capture jitter). (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/video_engine/overuse_frame_detector_unittest.cc
diff --git a/webrtc/video_engine/overuse_frame_detector_unittest.cc b/webrtc/video_engine/overuse_frame_detector_unittest.cc
index 0abce08f9c928c291068900922573cf8091b35ea..a73e7005f5d537c5e805c05ef04469894f33e039 100644
--- a/webrtc/video_engine/overuse_frame_detector_unittest.cc
+++ b/webrtc/video_engine/overuse_frame_detector_unittest.cc
@@ -22,6 +22,7 @@ namespace {
const int kHeight = 480;
const int kFrameInterval33ms = 33;
const int kProcessIntervalMs = 5000;
+ const int kProcessTime5ms = 5;
} // namespace
class MockCpuOveruseObserver : public CpuOveruseObserver {
@@ -53,8 +54,6 @@ class OveruseFrameDetectorTest : public ::testing::Test,
virtual void SetUp() {
clock_.reset(new SimulatedClock(1234));
observer_.reset(new MockCpuOveruseObserver());
- options_.low_capture_jitter_threshold_ms = 10.0f;
- options_.high_capture_jitter_threshold_ms = 15.0f;
options_.min_process_count = 0;
ReinitializeOveruseDetector();
}
@@ -68,11 +67,6 @@ class OveruseFrameDetectorTest : public ::testing::Test,
metrics_ = metrics;
}
- int InitialJitter() {
- return ((options_.low_capture_jitter_threshold_ms +
- options_.high_capture_jitter_threshold_ms) / 2.0f) + 0.5;
- }
-
int InitialUsage() {
return ((options_.low_encode_usage_threshold_percent +
options_.high_encode_usage_threshold_percent) / 2.0f) + 0.5;
@@ -100,19 +94,6 @@ class OveruseFrameDetectorTest : public ::testing::Test,
}
void TriggerOveruse(int num_times) {
- for (int i = 0; i < num_times; ++i) {
- InsertFramesWithInterval(200, kFrameInterval33ms, kWidth, kHeight);
- InsertFramesWithInterval(50, 110, kWidth, kHeight);
- overuse_detector_->Process();
- }
- }
-
- void TriggerUnderuse() {
- InsertFramesWithInterval(900, kFrameInterval33ms, kWidth, kHeight);
- overuse_detector_->Process();
- }
-
- void TriggerOveruseWithProcessingUsage(int num_times) {
const int kDelayMs = 32;
for (int i = 0; i < num_times; ++i) {
InsertAndSendFramesWithInterval(
@@ -121,7 +102,7 @@ class OveruseFrameDetectorTest : public ::testing::Test,
}
}
- void TriggerUnderuseWithProcessingUsage() {
+ void TriggerUnderuse() {
const int kDelayMs1 = 5;
const int kDelayMs2 = 6;
InsertAndSendFramesWithInterval(
@@ -131,8 +112,6 @@ class OveruseFrameDetectorTest : public ::testing::Test,
overuse_detector_->Process();
}
- int CaptureJitterMs() { return metrics_.capture_jitter_ms; }
-
int AvgEncodeTimeMs() { return metrics_.avg_encode_time_ms; }
int UsagePercent() { return metrics_.encode_usage_percent; }
@@ -144,35 +123,31 @@ class OveruseFrameDetectorTest : public ::testing::Test,
CpuOveruseMetrics metrics_;
};
-// enable_capture_jitter_method = true;
-// CaptureJitterMs() > high_capture_jitter_threshold_ms => overuse.
-// CaptureJitterMs() < low_capture_jitter_threshold_ms => underuse.
+
+// enable_encode_usage_method = true;
+// enable_extended_processing_usage = false;
+// UsagePercent() > high_encode_usage_threshold_percent => overuse.
+// UsagePercent() < low_encode_usage_threshold_percent => underuse.
TEST_F(OveruseFrameDetectorTest, TriggerOveruse) {
- options_.enable_capture_jitter_method = true;
- options_.enable_encode_usage_method = false;
options_.enable_extended_processing_usage = false;
ReinitializeOveruseDetector();
- // capture_jitter > high => overuse
+ // usage > high => overuse
EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(1);
TriggerOveruse(options_.high_threshold_consecutive_count);
}
TEST_F(OveruseFrameDetectorTest, OveruseAndRecover) {
- options_.enable_capture_jitter_method = true;
- options_.enable_encode_usage_method = false;
options_.enable_extended_processing_usage = false;
ReinitializeOveruseDetector();
- // capture_jitter > high => overuse
+ // usage > high => overuse
EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(1);
TriggerOveruse(options_.high_threshold_consecutive_count);
- // capture_jitter < low => underuse
+ // usage < low => underuse
EXPECT_CALL(*(observer_.get()), NormalUsage()).Times(testing::AtLeast(1));
TriggerUnderuse();
}
TEST_F(OveruseFrameDetectorTest, OveruseAndRecoverWithNoObserver) {
- options_.enable_capture_jitter_method = true;
- options_.enable_encode_usage_method = false;
options_.enable_extended_processing_usage = false;
overuse_detector_.reset(
new OveruseFrameDetector(clock_.get(), options_, nullptr, this));
@@ -183,7 +158,6 @@ TEST_F(OveruseFrameDetectorTest, OveruseAndRecoverWithNoObserver) {
}
TEST_F(OveruseFrameDetectorTest, OveruseAndRecoverWithMethodDisabled) {
- options_.enable_capture_jitter_method = false;
options_.enable_encode_usage_method = false;
options_.enable_extended_processing_usage = false;
ReinitializeOveruseDetector();
@@ -194,8 +168,6 @@ TEST_F(OveruseFrameDetectorTest, OveruseAndRecoverWithMethodDisabled) {
}
TEST_F(OveruseFrameDetectorTest, DoubleOveruseAndRecover) {
- options_.enable_capture_jitter_method = true;
- options_.enable_encode_usage_method = false;
options_.enable_extended_processing_usage = false;
ReinitializeOveruseDetector();
EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(2);
@@ -206,14 +178,13 @@ TEST_F(OveruseFrameDetectorTest, DoubleOveruseAndRecover) {
}
TEST_F(OveruseFrameDetectorTest, TriggerUnderuseWithMinProcessCount) {
- options_.enable_capture_jitter_method = true;
- options_.enable_encode_usage_method = false;
options_.enable_extended_processing_usage = false;
options_.min_process_count = 1;
CpuOveruseObserverImpl overuse_observer;
overuse_detector_.reset(new OveruseFrameDetector(clock_.get(), options_,
&overuse_observer, this));
- InsertFramesWithInterval(1200, kFrameInterval33ms, kWidth, kHeight);
+ InsertAndSendFramesWithInterval(
+ 1200, kFrameInterval33ms, kWidth, kHeight, kProcessTime5ms);
overuse_detector_->Process();
EXPECT_EQ(0, overuse_observer.normaluse_);
clock_->AdvanceTimeMilliseconds(kProcessIntervalMs);
@@ -222,8 +193,6 @@ TEST_F(OveruseFrameDetectorTest, TriggerUnderuseWithMinProcessCount) {
}
TEST_F(OveruseFrameDetectorTest, ConstantOveruseGivesNoNormalUsage) {
- options_.enable_capture_jitter_method = true;
- options_.enable_encode_usage_method = false;
options_.enable_extended_processing_usage = false;
ReinitializeOveruseDetector();
EXPECT_CALL(*(observer_.get()), NormalUsage()).Times(0);
@@ -235,8 +204,6 @@ TEST_F(OveruseFrameDetectorTest, ConstantOveruseGivesNoNormalUsage) {
TEST_F(OveruseFrameDetectorTest, ConsecutiveCountTriggersOveruse) {
EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(1);
- options_.enable_capture_jitter_method = true;
- options_.enable_encode_usage_method = false;
options_.enable_extended_processing_usage = false;
options_.high_threshold_consecutive_count = 2;
ReinitializeOveruseDetector();
@@ -245,47 +212,57 @@ TEST_F(OveruseFrameDetectorTest, ConsecutiveCountTriggersOveruse) {
TEST_F(OveruseFrameDetectorTest, IncorrectConsecutiveCountTriggersNoOveruse) {
EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(0);
- options_.enable_capture_jitter_method = true;
- options_.enable_encode_usage_method = false;
options_.enable_extended_processing_usage = false;
options_.high_threshold_consecutive_count = 2;
ReinitializeOveruseDetector();
TriggerOveruse(1);
}
-TEST_F(OveruseFrameDetectorTest, CaptureJitter) {
- EXPECT_EQ(InitialJitter(), CaptureJitterMs());
- InsertFramesWithInterval(1000, kFrameInterval33ms, kWidth, kHeight);
- EXPECT_NE(InitialJitter(), CaptureJitterMs());
+TEST_F(OveruseFrameDetectorTest, ProcessingUsage) {
+ InsertAndSendFramesWithInterval(
+ 1000, kFrameInterval33ms, kWidth, kHeight, kProcessTime5ms);
+ EXPECT_EQ(kProcessTime5ms * 100 / kFrameInterval33ms, UsagePercent());
}
-TEST_F(OveruseFrameDetectorTest, CaptureJitterResetAfterResolutionChange) {
- EXPECT_EQ(InitialJitter(), CaptureJitterMs());
- InsertFramesWithInterval(1000, kFrameInterval33ms, kWidth, kHeight);
- EXPECT_NE(InitialJitter(), CaptureJitterMs());
+TEST_F(OveruseFrameDetectorTest, ResetAfterResolutionChange) {
+ EXPECT_EQ(InitialUsage(), UsagePercent());
+ InsertAndSendFramesWithInterval(
+ 1000, kFrameInterval33ms, kWidth, kHeight, kProcessTime5ms);
+ EXPECT_NE(InitialUsage(), UsagePercent());
// Verify reset.
- InsertFramesWithInterval(1, kFrameInterval33ms, kWidth, kHeight + 1);
- EXPECT_EQ(InitialJitter(), CaptureJitterMs());
+ InsertAndSendFramesWithInterval(
+ 1, kFrameInterval33ms, kWidth, kHeight + 1, kProcessTime5ms);
+ EXPECT_EQ(InitialUsage(), UsagePercent());
}
-TEST_F(OveruseFrameDetectorTest, CaptureJitterResetAfterFrameTimeout) {
- EXPECT_EQ(InitialJitter(), CaptureJitterMs());
- InsertFramesWithInterval(1000, kFrameInterval33ms, kWidth, kHeight);
- EXPECT_NE(InitialJitter(), CaptureJitterMs());
- InsertFramesWithInterval(
- 1, options_.frame_timeout_interval_ms, kWidth, kHeight);
- EXPECT_NE(InitialJitter(), CaptureJitterMs());
+TEST_F(OveruseFrameDetectorTest, ResetAfterFrameTimeout) {
+ EXPECT_EQ(InitialUsage(), UsagePercent());
+ InsertAndSendFramesWithInterval(
+ 1000, kFrameInterval33ms, kWidth, kHeight, kProcessTime5ms);
+ EXPECT_NE(InitialUsage(), UsagePercent());
+ InsertAndSendFramesWithInterval(
+ 2, options_.frame_timeout_interval_ms, kWidth, kHeight, kProcessTime5ms);
+ EXPECT_NE(InitialUsage(), UsagePercent());
// Verify reset.
- InsertFramesWithInterval(
- 1, options_.frame_timeout_interval_ms + 1, kWidth, kHeight);
- EXPECT_EQ(InitialJitter(), CaptureJitterMs());
+ InsertAndSendFramesWithInterval(
+ 2, options_.frame_timeout_interval_ms + 1, kWidth, kHeight,
+ kProcessTime5ms);
+ EXPECT_EQ(InitialUsage(), UsagePercent());
}
-TEST_F(OveruseFrameDetectorTest, MinFrameSamplesBeforeUpdatingCaptureJitter) {
+TEST_F(OveruseFrameDetectorTest, MinFrameSamplesBeforeUpdating) {
options_.min_frame_samples = 40;
ReinitializeOveruseDetector();
- InsertFramesWithInterval(40, kFrameInterval33ms, kWidth, kHeight);
- EXPECT_EQ(InitialJitter(), CaptureJitterMs());
+ InsertAndSendFramesWithInterval(
+ 40, kFrameInterval33ms, kWidth, kHeight, kProcessTime5ms);
+ EXPECT_EQ(InitialUsage(), UsagePercent());
+ InsertAndSendFramesWithInterval(
+ 1, kFrameInterval33ms, kWidth, kHeight, kProcessTime5ms);
+ EXPECT_NE(InitialUsage(), UsagePercent());
+}
+
+TEST_F(OveruseFrameDetectorTest, InitialProcessingUsage) {
+ EXPECT_EQ(InitialUsage(), UsagePercent());
}
TEST_F(OveruseFrameDetectorTest, FrameDelay_OneFrameDisabled) {
@@ -398,96 +375,40 @@ TEST_F(OveruseFrameDetectorTest, EncodedFrame) {
EXPECT_EQ(2, AvgEncodeTimeMs());
}
-TEST_F(OveruseFrameDetectorTest, InitialProcessingUsage) {
- EXPECT_EQ(InitialUsage(), UsagePercent());
-}
-
-TEST_F(OveruseFrameDetectorTest, ProcessingUsage) {
- const int kProcessingTimeMs = 5;
- InsertAndSendFramesWithInterval(
- 1000, kFrameInterval33ms, kWidth, kHeight, kProcessingTimeMs);
- EXPECT_EQ(kProcessingTimeMs * 100 / kFrameInterval33ms, UsagePercent());
-}
-
// enable_encode_usage_method = true;
-// UsagePercent() > high_encode_usage_threshold_percent => overuse.
-// UsagePercent() < low_encode_usage_threshold_percent => underuse.
-TEST_F(OveruseFrameDetectorTest, TriggerOveruseWithProcessingUsage) {
- options_.enable_capture_jitter_method = false;
- options_.enable_encode_usage_method = true;
- options_.enable_extended_processing_usage = false;
- ReinitializeOveruseDetector();
- // usage > high => overuse
- EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(1);
- TriggerOveruseWithProcessingUsage(options_.high_threshold_consecutive_count);
-}
-
-TEST_F(OveruseFrameDetectorTest, OveruseAndRecoverWithProcessingUsage) {
- options_.enable_capture_jitter_method = false;
- options_.enable_encode_usage_method = true;
- options_.enable_extended_processing_usage = false;
- ReinitializeOveruseDetector();
- // usage > high => overuse
- EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(1);
- TriggerOveruseWithProcessingUsage(options_.high_threshold_consecutive_count);
- // usage < low => underuse
- EXPECT_CALL(*(observer_.get()), NormalUsage()).Times(testing::AtLeast(1));
- TriggerUnderuseWithProcessingUsage();
-}
-
-TEST_F(OveruseFrameDetectorTest,
- OveruseAndRecoverWithProcessingUsageMethodDisabled) {
- options_.enable_capture_jitter_method = false;
- options_.enable_encode_usage_method = false;
- options_.enable_extended_processing_usage = false;
- ReinitializeOveruseDetector();
- // usage > high => overuse
- EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(0);
- TriggerOveruseWithProcessingUsage(options_.high_threshold_consecutive_count);
- // usage < low => underuse
- EXPECT_CALL(*(observer_.get()), NormalUsage()).Times(0);
- TriggerUnderuseWithProcessingUsage();
-}
-
// enable_extended_processing_usage = true;
-// enable_encode_usage_method = true;
// UsagePercent() > high_encode_usage_threshold_percent => overuse.
// UsagePercent() < low_encode_usage_threshold_percent => underuse.
TEST_F(OveruseFrameDetectorTest, TriggerOveruseWithExtendedProcessingUsage) {
- options_.enable_capture_jitter_method = false;
- options_.enable_encode_usage_method = true;
options_.enable_extended_processing_usage = true;
ReinitializeOveruseDetector();
// usage > high => overuse
EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(1);
- TriggerOveruseWithProcessingUsage(options_.high_threshold_consecutive_count);
+ TriggerOveruse(options_.high_threshold_consecutive_count);
}
TEST_F(OveruseFrameDetectorTest, OveruseAndRecoverWithExtendedProcessingUsage) {
- options_.enable_capture_jitter_method = false;
- options_.enable_encode_usage_method = true;
options_.enable_extended_processing_usage = true;
ReinitializeOveruseDetector();
// usage > high => overuse
EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(1);
- TriggerOveruseWithProcessingUsage(options_.high_threshold_consecutive_count);
+ TriggerOveruse(options_.high_threshold_consecutive_count);
// usage < low => underuse
EXPECT_CALL(*(observer_.get()), NormalUsage()).Times(testing::AtLeast(1));
- TriggerUnderuseWithProcessingUsage();
+ TriggerUnderuse();
}
TEST_F(OveruseFrameDetectorTest,
OveruseAndRecoverWithExtendedProcessingUsageMethodDisabled) {
- options_.enable_capture_jitter_method = false;
options_.enable_encode_usage_method = false;
options_.enable_extended_processing_usage = true;
ReinitializeOveruseDetector();
// usage > high => overuse
EXPECT_CALL(*(observer_.get()), OveruseDetected()).Times(0);
- TriggerOveruseWithProcessingUsage(options_.high_threshold_consecutive_count);
+ TriggerOveruse(options_.high_threshold_consecutive_count);
// usage < low => underuse
EXPECT_CALL(*(observer_.get()), NormalUsage()).Times(0);
- TriggerUnderuseWithProcessingUsage();
+ TriggerUnderuse();
}
} // namespace webrtc

Powered by Google App Engine
This is Rietveld 408576698