OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. | 2 * Copyright (c) 2013 The WebRTC project authors. All Rights Reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
(...skipping 14 matching lines...) Expand all Loading... |
25 RTC_DCHECK_GT(length, 0); | 25 RTC_DCHECK_GT(length, 0); |
26 for (size_t i = 0; i < length; ++i) { | 26 for (size_t i = 0; i < length; ++i) { |
27 queue_.push(0.0); | 27 queue_.push(0.0); |
28 } | 28 } |
29 } | 29 } |
30 | 30 |
31 MovingMoments::~MovingMoments() {} | 31 MovingMoments::~MovingMoments() {} |
32 | 32 |
33 void MovingMoments::CalculateMoments(const float* in, size_t in_length, | 33 void MovingMoments::CalculateMoments(const float* in, size_t in_length, |
34 float* first, float* second) { | 34 float* first, float* second) { |
35 RTC_DCHECK(in && in_length > 0 && first && second); | 35 RTC_DCHECK(in); |
| 36 RTC_DCHECK_GT(in_length, 0); |
| 37 RTC_DCHECK(first); |
| 38 RTC_DCHECK(second); |
36 | 39 |
37 for (size_t i = 0; i < in_length; ++i) { | 40 for (size_t i = 0; i < in_length; ++i) { |
38 const float old_value = queue_.front(); | 41 const float old_value = queue_.front(); |
39 queue_.pop(); | 42 queue_.pop(); |
40 queue_.push(in[i]); | 43 queue_.push(in[i]); |
41 | 44 |
42 sum_ += in[i] - old_value; | 45 sum_ += in[i] - old_value; |
43 sum_of_squares_ += in[i] * in[i] - old_value * old_value; | 46 sum_of_squares_ += in[i] * in[i] - old_value * old_value; |
44 first[i] = sum_ / length_; | 47 first[i] = sum_ / length_; |
45 second[i] = sum_of_squares_ / length_; | 48 second[i] = sum_of_squares_ / length_; |
46 } | 49 } |
47 } | 50 } |
48 | 51 |
49 } // namespace webrtc | 52 } // namespace webrtc |
OLD | NEW |