| Index: webrtc/modules/audio_coding/audio_network_adaptor/smoothing_filter_unittest.cc
|
| diff --git a/webrtc/modules/audio_coding/audio_network_adaptor/smoothing_filter_unittest.cc b/webrtc/modules/audio_coding/audio_network_adaptor/smoothing_filter_unittest.cc
|
| deleted file mode 100644
|
| index af4e8d957b4ed6c793b369d383dc22687b6302d9..0000000000000000000000000000000000000000
|
| --- a/webrtc/modules/audio_coding/audio_network_adaptor/smoothing_filter_unittest.cc
|
| +++ /dev/null
|
| @@ -1,108 +0,0 @@
|
| -/*
|
| - * Copyright (c) 2016 The WebRTC project authors. All Rights Reserved.
|
| - *
|
| - * Use of this source code is governed by a BSD-style license
|
| - * that can be found in the LICENSE file in the root of the source
|
| - * tree. An additional intellectual property rights grant can be found
|
| - * in the file PATENTS. All contributing project authors may
|
| - * be found in the AUTHORS file in the root of the source tree.
|
| - */
|
| -
|
| -#include <memory>
|
| -
|
| -#include "webrtc/modules/audio_coding/audio_network_adaptor/smoothing_filter.h"
|
| -#include "webrtc/test/gtest.h"
|
| -
|
| -namespace webrtc {
|
| -
|
| -namespace {
|
| -
|
| -constexpr int kTimeConstantMs = 1000;
|
| -constexpr float kMaxAbsError = 0.0001f;
|
| -constexpr int64_t kClockInitialTime = 123456;
|
| -
|
| -struct SmoothingFilterStates {
|
| - std::unique_ptr<SimulatedClock> simulated_clock;
|
| - std::unique_ptr<SmoothingFilter> smoothing_filter;
|
| -};
|
| -
|
| -SmoothingFilterStates CreateSmoothingFilter() {
|
| - SmoothingFilterStates states;
|
| - states.simulated_clock.reset(new SimulatedClock(kClockInitialTime));
|
| - states.smoothing_filter.reset(
|
| - new SmoothingFilterImpl(kTimeConstantMs, states.simulated_clock.get()));
|
| - return states;
|
| -}
|
| -
|
| -void CheckOutput(SmoothingFilterStates* states,
|
| - int advance_time_ms,
|
| - float sample,
|
| - float expected_ouput) {
|
| - states->simulated_clock->AdvanceTimeMilliseconds(advance_time_ms);
|
| - states->smoothing_filter->AddSample(sample);
|
| - auto output = states->smoothing_filter->GetAverage();
|
| - EXPECT_TRUE(output);
|
| - EXPECT_NEAR(expected_ouput, *output, kMaxAbsError);
|
| -}
|
| -
|
| -} // namespace
|
| -
|
| -TEST(SmoothingFilterTest, NoOutputWhenNoSampleAdded) {
|
| - auto states = CreateSmoothingFilter();
|
| - EXPECT_FALSE(states.smoothing_filter->GetAverage());
|
| -}
|
| -
|
| -// Python script to calculate the reference values used in this test.
|
| -// import math
|
| -//
|
| -// class ExpFilter:
|
| -// alpha = 0.0
|
| -// old_value = 0.0
|
| -// def calc(self, new_value):
|
| -// self.old_value = self.old_value * self.alpha
|
| -// + (1.0 - self.alpha) * new_value
|
| -// return self.old_value
|
| -//
|
| -// delta_t = 100.0
|
| -// filter = ExpFilter()
|
| -// total_t = 100.0
|
| -// filter.alpha = math.exp(-delta_t/ total_t)
|
| -// print filter.calc(1.0)
|
| -// total_t = 200.0
|
| -// filter.alpha = math.exp(-delta_t/ total_t)
|
| -// print filter.calc(0.0)
|
| -// total_t = 300.0
|
| -// filter.alpha = math.exp(-delta_t/ total_t)
|
| -// print filter.calc(1.0)
|
| -TEST(SmoothingFilterTest, CheckBehaviorBeforeInitialized) {
|
| - // Adding three samples, all added before |kTimeConstantMs| is reached.
|
| - constexpr int kTimeIntervalMs = 100;
|
| - auto states = CreateSmoothingFilter();
|
| - states.smoothing_filter->AddSample(0.0);
|
| - CheckOutput(&states, kTimeIntervalMs, 1.0, 0.63212f);
|
| - CheckOutput(&states, kTimeIntervalMs, 0.0, 0.38340f);
|
| - CheckOutput(&states, kTimeIntervalMs, 1.0, 0.55818f);
|
| -}
|
| -
|
| -// Python script to calculate the reference value used in this test.
|
| -// (after defining ExpFilter as for CheckBehaviorBeforeInitialized)
|
| -// time_constant_ms = 1000.0
|
| -// filter = ExpFilter()
|
| -// delta_t = 1100.0
|
| -// filter.alpha = math.exp(-delta_t/ time_constant_ms)
|
| -// print filter.calc(1.0)
|
| -// delta_t = 100.0
|
| -// filter.alpha = math.exp(-delta_t/ time_constant_ms)
|
| -// print filter.calc(0.0)
|
| -// print filter.calc(1.0)
|
| -TEST(SmoothingFilterTest, CheckBehaviorAfterInitialized) {
|
| - constexpr int kTimeIntervalMs = 100;
|
| - auto states = CreateSmoothingFilter();
|
| - states.smoothing_filter->AddSample(0.0);
|
| - states.simulated_clock->AdvanceTimeMilliseconds(kTimeConstantMs);
|
| - CheckOutput(&states, kTimeIntervalMs, 1.0, 0.66713f);
|
| - CheckOutput(&states, kTimeIntervalMs, 0.0, 0.60364f);
|
| - CheckOutput(&states, kTimeIntervalMs, 1.0, 0.64136f);
|
| -}
|
| -
|
| -} // namespace webrtc
|
|
|