From 0dbb6f57fcf8f9433dfc0d8e4faada03f475dc7b Mon Sep 17 00:00:00 2001 From: ivoc Date: Tue, 22 Nov 2016 03:36:50 -0800 Subject: [PATCH] Fix the standard deviation calculation in the level controller perf tests. BUG=webrtc:5920 Review-Url: https://codereview.webrtc.org/2518523002 Cr-Commit-Position: refs/heads/master@{#15186} --- .../level_controller_complexity_unittest.cc | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/webrtc/modules/audio_processing/level_controller/level_controller_complexity_unittest.cc b/webrtc/modules/audio_processing/level_controller/level_controller_complexity_unittest.cc index ed26020975..5f321cee8a 100644 --- a/webrtc/modules/audio_processing/level_controller/level_controller_complexity_unittest.cc +++ b/webrtc/modules/audio_processing/level_controller/level_controller_complexity_unittest.cc @@ -135,11 +135,11 @@ class SubmodulePerformanceTimer { RTC_DCHECK(!timestamps_us_.empty()); double average_duration = GetDurationAverage(); - int64_t variance = - std::accumulate(timestamps_us_.begin(), timestamps_us_.end(), 0, - [average_duration](const int64_t& a, const int64_t& b) { - return a + (b - average_duration); - }); + double variance = std::accumulate( + timestamps_us_.begin(), timestamps_us_.end(), 0.0, + [average_duration](const double& a, const int64_t& b) { + return a + (b - average_duration) * (b - average_duration); + }); return sqrt(variance / timestamps_us_.size()); }