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

Side by Side Diff: webrtc/modules/audio_processing/vad/standalone_vad_unittest.cc

Issue 1181933002: Pull the Voice Activity Detector out from the AGC (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Remove unused files from isolate Created 5 years, 6 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 #include "webrtc/modules/audio_processing/agc/standalone_vad.h" 11 #include "webrtc/modules/audio_processing/vad/standalone_vad.h"
12 12
13 #include <string.h> 13 #include <string.h>
14 14
15 #include "gtest/gtest.h" 15 #include "testing/gtest/include/gtest/gtest.h"
16 #include "webrtc/base/scoped_ptr.h" 16 #include "webrtc/base/scoped_ptr.h"
17 #include "webrtc/modules/interface/module_common_types.h" 17 #include "webrtc/modules/interface/module_common_types.h"
18 #include "webrtc/test/testsupport/fileutils.h" 18 #include "webrtc/test/testsupport/fileutils.h"
19 19
20 namespace webrtc { 20 namespace webrtc {
21 21
22 TEST(StandaloneVadTest, Api) { 22 TEST(StandaloneVadTest, Api) {
23 rtc::scoped_ptr<StandaloneVad> vad(StandaloneVad::Create()); 23 rtc::scoped_ptr<StandaloneVad> vad(StandaloneVad::Create());
24 int16_t data[kLength10Ms] = { 0 }; 24 int16_t data[kLength10Ms] = {0};
25 25
26 // Valid frame length (for 32 kHz rate), but not what the VAD is expecting. 26 // Valid frame length (for 32 kHz rate), but not what the VAD is expecting.
27 EXPECT_EQ(-1, vad->AddAudio(data, 320)); 27 EXPECT_EQ(-1, vad->AddAudio(data, 320));
28 28
29 const int kMaxNumFrames = 3; 29 const int kMaxNumFrames = 3;
30 double p[kMaxNumFrames]; 30 double p[kMaxNumFrames];
31 for (int n = 0; n < kMaxNumFrames; n++) 31 for (int n = 0; n < kMaxNumFrames; n++)
32 EXPECT_EQ(0, vad->AddAudio(data, kLength10Ms)); 32 EXPECT_EQ(0, vad->AddAudio(data, kLength10Ms));
33 33
34 // Pretend |p| is shorter that it should be. 34 // Pretend |p| is shorter that it should be.
(...skipping 15 matching lines...) Expand all
50 50
51 // Valid mode. 51 // Valid mode.
52 const int kMode = 2; 52 const int kMode = 2;
53 EXPECT_EQ(0, vad->set_mode(kMode)); 53 EXPECT_EQ(0, vad->set_mode(kMode));
54 EXPECT_EQ(kMode, vad->mode()); 54 EXPECT_EQ(kMode, vad->mode());
55 } 55 }
56 56
57 TEST(StandaloneVadTest, ActivityDetection) { 57 TEST(StandaloneVadTest, ActivityDetection) {
58 rtc::scoped_ptr<StandaloneVad> vad(StandaloneVad::Create()); 58 rtc::scoped_ptr<StandaloneVad> vad(StandaloneVad::Create());
59 const size_t kDataLength = kLength10Ms; 59 const size_t kDataLength = kLength10Ms;
60 int16_t data[kDataLength] = { 0 }; 60 int16_t data[kDataLength] = {0};
61 61
62 FILE* pcm_file = 62 FILE* pcm_file =
63 fopen(test::ResourcePath("audio_processing/agc/agc_audio", "pcm").c_str(), 63 fopen(test::ResourcePath("audio_processing/agc/agc_audio", "pcm").c_str(),
64 "rb"); 64 "rb");
65 ASSERT_TRUE(pcm_file != NULL); 65 ASSERT_TRUE(pcm_file != NULL);
66 66
67 FILE* reference_file = fopen( 67 FILE* reference_file = fopen(
68 test::ResourcePath("audio_processing/agc/agc_vad", "dat").c_str(), "rb"); 68 test::ResourcePath("audio_processing/agc/agc_vad", "dat").c_str(), "rb");
69 ASSERT_TRUE(reference_file != NULL); 69 ASSERT_TRUE(reference_file != NULL);
70 70
(...skipping 22 matching lines...) Expand all
93 } else { 93 } else {
94 // When inactive, probabilities are set to 0.01. 94 // When inactive, probabilities are set to 0.01.
95 for (int n = 0; n < kNumVadFramesToProcess; n++) 95 for (int n = 0; n < kNumVadFramesToProcess; n++)
96 EXPECT_EQ(0.01, p[n]); 96 EXPECT_EQ(0.01, p[n]);
97 } 97 }
98 } 98 }
99 } 99 }
100 fclose(reference_file); 100 fclose(reference_file);
101 fclose(pcm_file); 101 fclose(pcm_file);
102 } 102 }
103 } 103 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/modules/audio_processing/vad/standalone_vad.cc ('k') | webrtc/modules/audio_processing/vad/vad_audio_proc.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698