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

Unified Diff: webrtc/video_engine/overuse_frame_detector.h

Issue 1250593002: Remove unused overuse detection metric (capture jitter). (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: rebase Created 5 years, 3 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
« no previous file with comments | « no previous file | webrtc/video_engine/overuse_frame_detector.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/video_engine/overuse_frame_detector.h
diff --git a/webrtc/video_engine/overuse_frame_detector.h b/webrtc/video_engine/overuse_frame_detector.h
index 4791cee2f50fcda115eaba8b99b0ad757e87b441..323c057876cd2c7fe3fd2726c9aa7a8f048f2eb8 100644
--- a/webrtc/video_engine/overuse_frame_detector.h
+++ b/webrtc/video_engine/overuse_frame_detector.h
@@ -38,35 +38,19 @@ class CpuOveruseObserver {
struct CpuOveruseOptions {
CpuOveruseOptions()
- : enable_capture_jitter_method(false),
- low_capture_jitter_threshold_ms(20.0f),
- high_capture_jitter_threshold_ms(30.0f),
- enable_encode_usage_method(true),
+ : enable_encode_usage_method(true),
low_encode_usage_threshold_percent(55),
high_encode_usage_threshold_percent(85),
- low_encode_time_rsd_threshold(-1),
- high_encode_time_rsd_threshold(-1),
enable_extended_processing_usage(true),
frame_timeout_interval_ms(1500),
min_frame_samples(120),
min_process_count(3),
high_threshold_consecutive_count(2) {}
- // Method based on inter-arrival jitter of captured frames.
- bool enable_capture_jitter_method;
- float low_capture_jitter_threshold_ms; // Threshold for triggering underuse.
- float high_capture_jitter_threshold_ms; // Threshold for triggering overuse.
// Method based on encode time of frames.
bool enable_encode_usage_method;
int low_encode_usage_threshold_percent; // Threshold for triggering underuse.
int high_encode_usage_threshold_percent; // Threshold for triggering overuse.
- // TODO(asapersson): Remove options, not used.
- int low_encode_time_rsd_threshold; // Additional threshold for triggering
- // underuse (used in addition to
- // threshold above if configured).
- int high_encode_time_rsd_threshold; // Additional threshold for triggering
- // overuse (used in addition to
- // threshold above if configured).
bool enable_extended_processing_usage; // Include a larger time span (in
// addition to encode time) for
// measuring the processing time of a
@@ -80,36 +64,13 @@ struct CpuOveruseOptions {
int high_threshold_consecutive_count; // The number of consecutive checks
// above the high threshold before
// triggering an overuse.
-
- bool Equals(const CpuOveruseOptions& o) const {
- return enable_capture_jitter_method == o.enable_capture_jitter_method &&
- low_capture_jitter_threshold_ms == o.low_capture_jitter_threshold_ms &&
- high_capture_jitter_threshold_ms ==
- o.high_capture_jitter_threshold_ms &&
- enable_encode_usage_method == o.enable_encode_usage_method &&
- low_encode_usage_threshold_percent ==
- o.low_encode_usage_threshold_percent &&
- high_encode_usage_threshold_percent ==
- o.high_encode_usage_threshold_percent &&
- low_encode_time_rsd_threshold == o.low_encode_time_rsd_threshold &&
- high_encode_time_rsd_threshold == o.high_encode_time_rsd_threshold &&
- enable_extended_processing_usage ==
- o.enable_extended_processing_usage &&
- frame_timeout_interval_ms == o.frame_timeout_interval_ms &&
- min_frame_samples == o.min_frame_samples &&
- min_process_count == o.min_process_count &&
- high_threshold_consecutive_count == o.high_threshold_consecutive_count;
- }
};
struct CpuOveruseMetrics {
CpuOveruseMetrics()
- : capture_jitter_ms(-1),
- avg_encode_time_ms(-1),
+ : avg_encode_time_ms(-1),
encode_usage_percent(-1) {}
- int capture_jitter_ms; // The current estimated jitter in ms based on
- // incoming captured frames.
int avg_encode_time_ms; // The average encode time in ms.
int encode_usage_percent; // The average encode time divided by the average
// time difference between incoming captured frames.
@@ -121,30 +82,9 @@ class CpuOveruseMetricsObserver {
virtual void CpuOveruseMetricsUpdated(const CpuOveruseMetrics& metrics) = 0;
};
-// TODO(pbos): Move this somewhere appropriate.
-class Statistics {
- public:
- explicit Statistics(const CpuOveruseOptions& options);
-
- void AddSample(float sample_ms);
- void Reset();
-
- float Mean() const;
- float StdDev() const;
- uint64_t Count() const;
-
- private:
- float InitialMean() const;
- float InitialVariance() const;
-
- float sum_;
- uint64_t count_;
- const CpuOveruseOptions options_;
- rtc::scoped_ptr<rtc::ExpFilter> filtered_samples_;
- rtc::scoped_ptr<rtc::ExpFilter> filtered_variance_;
-};
-// Use to detect system overuse based on jitter in incoming frames.
+// Use to detect system overuse based on the send-side processing time of
+// incoming frames.
class OveruseFrameDetector : public Module {
public:
OveruseFrameDetector(Clock* clock,
@@ -212,7 +152,6 @@ class OveruseFrameDetector : public Module {
int64_t next_process_time_; // Only accessed on the processing thread.
int64_t num_process_times_ GUARDED_BY(crit_);
- Statistics capture_deltas_ GUARDED_BY(crit_);
int64_t last_capture_time_ GUARDED_BY(crit_);
// These six members are only accessed on the processing thread.
« no previous file with comments | « no previous file | webrtc/video_engine/overuse_frame_detector.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698