OLD | NEW |
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 "TwoWayCommunication.h" | 11 #include "TwoWayCommunication.h" |
12 | 12 |
13 #include <ctype.h> | 13 #include <ctype.h> |
14 #include <stdio.h> | 14 #include <stdio.h> |
15 #include <string.h> | 15 #include <string.h> |
16 | 16 |
17 #include <memory> | 17 #include <memory> |
18 | 18 |
19 #ifdef WIN32 | 19 #ifdef WIN32 |
20 #include <Windows.h> | 20 #include <Windows.h> |
21 #endif | 21 #endif |
22 | 22 |
23 #include "webrtc/common_types.h" | 23 #include "webrtc/common_types.h" |
| 24 #include "webrtc/modules/audio_coding/codecs/audio_format_conversion.h" |
24 #include "webrtc/modules/audio_coding/codecs/builtin_audio_decoder_factory.h" | 25 #include "webrtc/modules/audio_coding/codecs/builtin_audio_decoder_factory.h" |
25 #include "webrtc/modules/audio_coding/test/PCMFile.h" | 26 #include "webrtc/modules/audio_coding/test/PCMFile.h" |
26 #include "webrtc/modules/audio_coding/test/utility.h" | 27 #include "webrtc/modules/audio_coding/test/utility.h" |
27 #include "webrtc/system_wrappers/include/trace.h" | 28 #include "webrtc/system_wrappers/include/trace.h" |
28 #include "webrtc/test/gtest.h" | 29 #include "webrtc/test/gtest.h" |
29 #include "webrtc/test/testsupport/fileutils.h" | 30 #include "webrtc/test/testsupport/fileutils.h" |
30 #include "webrtc/voice_engine_configurations.h" | 31 #include "webrtc/voice_engine_configurations.h" |
31 | 32 |
32 namespace webrtc { | 33 namespace webrtc { |
33 | 34 |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
90 ChooseCodec(&codecID_A, &codecID_B); | 91 ChooseCodec(&codecID_A, &codecID_B); |
91 CodecInst codecInst_A; | 92 CodecInst codecInst_A; |
92 CodecInst codecInst_B; | 93 CodecInst codecInst_B; |
93 CodecInst dummyCodec; | 94 CodecInst dummyCodec; |
94 EXPECT_EQ(0, _acmA->Codec(codecID_A, &codecInst_A)); | 95 EXPECT_EQ(0, _acmA->Codec(codecID_A, &codecInst_A)); |
95 EXPECT_EQ(0, _acmB->Codec(codecID_B, &codecInst_B)); | 96 EXPECT_EQ(0, _acmB->Codec(codecID_B, &codecInst_B)); |
96 EXPECT_EQ(0, _acmA->Codec(6, &dummyCodec)); | 97 EXPECT_EQ(0, _acmA->Codec(6, &dummyCodec)); |
97 | 98 |
98 //--- Set A codecs | 99 //--- Set A codecs |
99 EXPECT_EQ(0, _acmA->RegisterSendCodec(codecInst_A)); | 100 EXPECT_EQ(0, _acmA->RegisterSendCodec(codecInst_A)); |
100 EXPECT_EQ(0, _acmA->RegisterReceiveCodec(codecInst_B)); | 101 EXPECT_EQ(true, _acmA->RegisterReceiveCodec(codecInst_B.pltype, |
| 102 CodecInstToSdp(codecInst_B))); |
101 //--- Set ref-A codecs | 103 //--- Set ref-A codecs |
102 EXPECT_EQ(0, _acmRefA->RegisterSendCodec(codecInst_A)); | 104 EXPECT_EQ(0, _acmRefA->RegisterSendCodec(codecInst_A)); |
103 EXPECT_EQ(0, _acmRefA->RegisterReceiveCodec(codecInst_B)); | 105 EXPECT_EQ(true, _acmRefA->RegisterReceiveCodec(codecInst_B.pltype, |
| 106 CodecInstToSdp(codecInst_B))); |
104 | 107 |
105 //--- Set B codecs | 108 //--- Set B codecs |
106 EXPECT_EQ(0, _acmB->RegisterSendCodec(codecInst_B)); | 109 EXPECT_EQ(0, _acmB->RegisterSendCodec(codecInst_B)); |
107 EXPECT_EQ(0, _acmB->RegisterReceiveCodec(codecInst_A)); | 110 EXPECT_EQ(true, _acmB->RegisterReceiveCodec(codecInst_A.pltype, |
| 111 CodecInstToSdp(codecInst_A))); |
108 | 112 |
109 //--- Set ref-B codecs | 113 //--- Set ref-B codecs |
110 EXPECT_EQ(0, _acmRefB->RegisterSendCodec(codecInst_B)); | 114 EXPECT_EQ(0, _acmRefB->RegisterSendCodec(codecInst_B)); |
111 EXPECT_EQ(0, _acmRefB->RegisterReceiveCodec(codecInst_A)); | 115 EXPECT_EQ(true, _acmRefB->RegisterReceiveCodec(codecInst_A.pltype, |
| 116 CodecInstToSdp(codecInst_A))); |
112 | 117 |
113 uint16_t frequencyHz; | 118 uint16_t frequencyHz; |
114 | 119 |
115 //--- Input A | 120 //--- Input A |
116 std::string in_file_name = webrtc::test::ResourcePath( | 121 std::string in_file_name = webrtc::test::ResourcePath( |
117 "audio_coding/testfile32kHz", "pcm"); | 122 "audio_coding/testfile32kHz", "pcm"); |
118 frequencyHz = 32000; | 123 frequencyHz = 32000; |
119 printf("Enter input file at side A [%s]: ", in_file_name.c_str()); | 124 printf("Enter input file at side A [%s]: ", in_file_name.c_str()); |
120 PCMFile::ChooseFile(&in_file_name, 499, &frequencyHz); | 125 PCMFile::ChooseFile(&in_file_name, 499, &frequencyHz); |
121 _inFileA.Open(in_file_name, frequencyHz, "rb"); | 126 _inFileA.Open(in_file_name, frequencyHz, "rb"); |
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
167 CodecInst codecInst_A; | 172 CodecInst codecInst_A; |
168 CodecInst codecInst_B; | 173 CodecInst codecInst_B; |
169 CodecInst dummyCodec; | 174 CodecInst dummyCodec; |
170 | 175 |
171 EXPECT_EQ(0, _acmA->Codec("ISAC", &codecInst_A, 16000, 1)); | 176 EXPECT_EQ(0, _acmA->Codec("ISAC", &codecInst_A, 16000, 1)); |
172 EXPECT_EQ(0, _acmB->Codec("L16", &codecInst_B, 8000, 1)); | 177 EXPECT_EQ(0, _acmB->Codec("L16", &codecInst_B, 8000, 1)); |
173 EXPECT_EQ(0, _acmA->Codec(6, &dummyCodec)); | 178 EXPECT_EQ(0, _acmA->Codec(6, &dummyCodec)); |
174 | 179 |
175 //--- Set A codecs | 180 //--- Set A codecs |
176 EXPECT_EQ(0, _acmA->RegisterSendCodec(codecInst_A)); | 181 EXPECT_EQ(0, _acmA->RegisterSendCodec(codecInst_A)); |
177 EXPECT_EQ(0, _acmA->RegisterReceiveCodec(codecInst_B)); | 182 EXPECT_EQ(true, _acmA->RegisterReceiveCodec(codecInst_B.pltype, |
| 183 CodecInstToSdp(codecInst_B))); |
178 | 184 |
179 //--- Set ref-A codecs | 185 //--- Set ref-A codecs |
180 EXPECT_GT(_acmRefA->RegisterSendCodec(codecInst_A), -1); | 186 EXPECT_GT(_acmRefA->RegisterSendCodec(codecInst_A), -1); |
181 EXPECT_GT(_acmRefA->RegisterReceiveCodec(codecInst_B), -1); | 187 EXPECT_EQ(true, _acmRefA->RegisterReceiveCodec(codecInst_B.pltype, |
| 188 CodecInstToSdp(codecInst_B))); |
182 | 189 |
183 //--- Set B codecs | 190 //--- Set B codecs |
184 EXPECT_GT(_acmB->RegisterSendCodec(codecInst_B), -1); | 191 EXPECT_GT(_acmB->RegisterSendCodec(codecInst_B), -1); |
185 EXPECT_GT(_acmB->RegisterReceiveCodec(codecInst_A), -1); | 192 EXPECT_EQ(true, _acmB->RegisterReceiveCodec(codecInst_A.pltype, |
| 193 CodecInstToSdp(codecInst_A))); |
186 | 194 |
187 //--- Set ref-B codecs | 195 //--- Set ref-B codecs |
188 EXPECT_EQ(0, _acmRefB->RegisterSendCodec(codecInst_B)); | 196 EXPECT_EQ(0, _acmRefB->RegisterSendCodec(codecInst_B)); |
189 EXPECT_EQ(0, _acmRefB->RegisterReceiveCodec(codecInst_A)); | 197 EXPECT_EQ(true, _acmRefB->RegisterReceiveCodec(codecInst_A.pltype, |
| 198 CodecInstToSdp(codecInst_A))); |
190 | 199 |
191 uint16_t frequencyHz; | 200 uint16_t frequencyHz; |
192 | 201 |
193 //--- Input A and B | 202 //--- Input A and B |
194 std::string in_file_name = webrtc::test::ResourcePath( | 203 std::string in_file_name = webrtc::test::ResourcePath( |
195 "audio_coding/testfile32kHz", "pcm"); | 204 "audio_coding/testfile32kHz", "pcm"); |
196 frequencyHz = 16000; | 205 frequencyHz = 16000; |
197 _inFileA.Open(in_file_name, frequencyHz, "rb"); | 206 _inFileA.Open(in_file_name, frequencyHz, "rb"); |
198 _inFileB.Open(in_file_name, frequencyHz, "rb"); | 207 _inFileB.Open(in_file_name, frequencyHz, "rb"); |
199 | 208 |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
285 // Re-register send codec on side B. | 294 // Re-register send codec on side B. |
286 if (((secPassed % 5) == 4) && (msecPassed >= 990)) { | 295 if (((secPassed % 5) == 4) && (msecPassed >= 990)) { |
287 EXPECT_EQ(0, _acmB->RegisterSendCodec(*codecInst_B)); | 296 EXPECT_EQ(0, _acmB->RegisterSendCodec(*codecInst_B)); |
288 EXPECT_TRUE(_acmB->SendCodec()); | 297 EXPECT_TRUE(_acmB->SendCodec()); |
289 } | 298 } |
290 // Initialize receiver on side A. | 299 // Initialize receiver on side A. |
291 if (((secPassed % 7) == 6) && (msecPassed == 0)) | 300 if (((secPassed % 7) == 6) && (msecPassed == 0)) |
292 EXPECT_EQ(0, _acmA->InitializeReceiver()); | 301 EXPECT_EQ(0, _acmA->InitializeReceiver()); |
293 // Re-register codec on side A. | 302 // Re-register codec on side A. |
294 if (((secPassed % 7) == 6) && (msecPassed >= 990)) { | 303 if (((secPassed % 7) == 6) && (msecPassed >= 990)) { |
295 EXPECT_EQ(0, _acmA->RegisterReceiveCodec(*codecInst_B)); | 304 EXPECT_EQ(true, _acmA->RegisterReceiveCodec( |
| 305 codecInst_B->pltype, CodecInstToSdp(*codecInst_B))); |
296 } | 306 } |
297 } | 307 } |
298 } | 308 } |
299 | 309 |
300 } // namespace webrtc | 310 } // namespace webrtc |
OLD | NEW |