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

Side by Side Diff: webrtc/modules/audio_coding/neteq/decision_logic_unittest.cc

Issue 1903043003: WIP: Adding a centralized NetEq Clock (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@neteq-remove-type-param
Patch Set: Created 4 years, 8 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2012 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
11 // Unit tests for DecisionLogic class and derived classes. 11 // Unit tests for DecisionLogic class and derived classes.
12 12
13 #include "testing/gtest/include/gtest/gtest.h" 13 #include "testing/gtest/include/gtest/gtest.h"
14 #include "webrtc/modules/audio_coding/neteq/buffer_level_filter.h" 14 #include "webrtc/modules/audio_coding/neteq/buffer_level_filter.h"
15 #include "webrtc/modules/audio_coding/neteq/decoder_database.h" 15 #include "webrtc/modules/audio_coding/neteq/decoder_database.h"
16 #include "webrtc/modules/audio_coding/neteq/decision_logic.h" 16 #include "webrtc/modules/audio_coding/neteq/decision_logic.h"
17 #include "webrtc/modules/audio_coding/neteq/delay_manager.h" 17 #include "webrtc/modules/audio_coding/neteq/delay_manager.h"
18 #include "webrtc/modules/audio_coding/neteq/delay_peak_detector.h" 18 #include "webrtc/modules/audio_coding/neteq/delay_peak_detector.h"
19 #include "webrtc/modules/audio_coding/neteq/packet_buffer.h" 19 #include "webrtc/modules/audio_coding/neteq/packet_buffer.h"
20 #include "webrtc/modules/audio_coding/neteq/tick_timer.h"
20 21
21 namespace webrtc { 22 namespace webrtc {
22 23
23 TEST(DecisionLogic, CreateAndDestroy) { 24 TEST(DecisionLogic, CreateAndDestroy) {
24 int fs_hz = 8000; 25 int fs_hz = 8000;
25 int output_size_samples = fs_hz / 100; // Samples per 10 ms. 26 int output_size_samples = fs_hz / 100; // Samples per 10 ms.
26 DecoderDatabase decoder_database; 27 DecoderDatabase decoder_database;
27 PacketBuffer packet_buffer(10); 28 TickTimer tick_timer;
28 DelayPeakDetector delay_peak_detector; 29 PacketBuffer packet_buffer(10, tick_timer);
29 DelayManager delay_manager(240, &delay_peak_detector); 30 DelayPeakDetector delay_peak_detector(tick_timer);
31 DelayManager delay_manager(240, &delay_peak_detector, tick_timer);
30 BufferLevelFilter buffer_level_filter; 32 BufferLevelFilter buffer_level_filter;
31 DecisionLogic* logic = DecisionLogic::Create(fs_hz, output_size_samples, 33 DecisionLogic* logic = DecisionLogic::Create(
32 kPlayoutOn, &decoder_database, 34 fs_hz, output_size_samples, kPlayoutOn, &decoder_database, packet_buffer,
33 packet_buffer, &delay_manager, 35 &delay_manager, &buffer_level_filter, tick_timer);
34 &buffer_level_filter);
35 delete logic; 36 delete logic;
36 logic = DecisionLogic::Create(fs_hz, output_size_samples, 37 logic = DecisionLogic::Create(
37 kPlayoutStreaming, 38 fs_hz, output_size_samples, kPlayoutStreaming, &decoder_database,
38 &decoder_database, 39 packet_buffer, &delay_manager, &buffer_level_filter, tick_timer);
39 packet_buffer, &delay_manager,
40 &buffer_level_filter);
41 delete logic; 40 delete logic;
42 logic = DecisionLogic::Create(fs_hz, output_size_samples, 41 logic = DecisionLogic::Create(
43 kPlayoutFax, 42 fs_hz, output_size_samples, kPlayoutFax, &decoder_database, packet_buffer,
44 &decoder_database, 43 &delay_manager, &buffer_level_filter, tick_timer);
45 packet_buffer, &delay_manager,
46 &buffer_level_filter);
47 delete logic; 44 delete logic;
48 logic = DecisionLogic::Create(fs_hz, output_size_samples, 45 logic = DecisionLogic::Create(
49 kPlayoutOff, 46 fs_hz, output_size_samples, kPlayoutOff, &decoder_database, packet_buffer,
50 &decoder_database, 47 &delay_manager, &buffer_level_filter, tick_timer);
51 packet_buffer, &delay_manager,
52 &buffer_level_filter);
53 delete logic; 48 delete logic;
54 } 49 }
55 50
56 // TODO(hlundin): Write more tests. 51 // TODO(hlundin): Write more tests.
57 52
58 } // namespace webrtc 53 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/modules/audio_coding/neteq/decision_logic_normal.cc ('k') | webrtc/modules/audio_coding/neteq/delay_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698