OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/environment.h" | 5 #include "base/environment.h" |
6 #include "base/test/test_timeouts.h" | 6 #include "base/test/test_timeouts.h" |
7 #include "content/renderer/media/audio_hardware.h" | 7 #include "content/renderer/media/audio_hardware.h" |
8 #include "content/renderer/media/webrtc_audio_device_impl.h" | 8 #include "content/renderer/media/webrtc_audio_device_impl.h" |
9 #include "content/test/webrtc_audio_device_test.h" | 9 #include "content/test/webrtc_audio_device_test.h" |
10 #include "media/audio/audio_manager.h" | 10 #include "media/audio/audio_manager.h" |
(...skipping 17 matching lines...) Expand all Loading... |
28 public: | 28 public: |
29 AudioUtil() {} | 29 AudioUtil() {} |
30 | 30 |
31 virtual int GetAudioHardwareSampleRate() OVERRIDE { | 31 virtual int GetAudioHardwareSampleRate() OVERRIDE { |
32 return media::GetAudioHardwareSampleRate(); | 32 return media::GetAudioHardwareSampleRate(); |
33 } | 33 } |
34 virtual int GetAudioInputHardwareSampleRate( | 34 virtual int GetAudioInputHardwareSampleRate( |
35 const std::string& device_id) OVERRIDE { | 35 const std::string& device_id) OVERRIDE { |
36 return media::GetAudioInputHardwareSampleRate(device_id); | 36 return media::GetAudioInputHardwareSampleRate(device_id); |
37 } | 37 } |
38 virtual ChannelLayout GetAudioInputHardwareChannelLayout( | 38 virtual media::ChannelLayout GetAudioInputHardwareChannelLayout( |
39 const std::string& device_id) OVERRIDE { | 39 const std::string& device_id) OVERRIDE { |
40 return media::GetAudioInputHardwareChannelLayout(device_id); | 40 return media::GetAudioInputHardwareChannelLayout(device_id); |
41 } | 41 } |
42 private: | 42 private: |
43 DISALLOW_COPY_AND_ASSIGN(AudioUtil); | 43 DISALLOW_COPY_AND_ASSIGN(AudioUtil); |
44 }; | 44 }; |
45 | 45 |
46 class AudioUtilNoHardware : public AudioUtilInterface { | 46 class AudioUtilNoHardware : public AudioUtilInterface { |
47 public: | 47 public: |
48 AudioUtilNoHardware(int output_rate, int input_rate, | 48 AudioUtilNoHardware(int output_rate, int input_rate, |
49 ChannelLayout input_channel_layout) | 49 media::ChannelLayout input_channel_layout) |
50 : output_rate_(output_rate), | 50 : output_rate_(output_rate), |
51 input_rate_(input_rate), | 51 input_rate_(input_rate), |
52 input_channel_layout_(input_channel_layout) { | 52 input_channel_layout_(input_channel_layout) { |
53 } | 53 } |
54 | 54 |
55 virtual int GetAudioHardwareSampleRate() OVERRIDE { | 55 virtual int GetAudioHardwareSampleRate() OVERRIDE { |
56 return output_rate_; | 56 return output_rate_; |
57 } | 57 } |
58 virtual int GetAudioInputHardwareSampleRate( | 58 virtual int GetAudioInputHardwareSampleRate( |
59 const std::string& device_id) OVERRIDE { | 59 const std::string& device_id) OVERRIDE { |
60 return input_rate_; | 60 return input_rate_; |
61 } | 61 } |
62 virtual ChannelLayout GetAudioInputHardwareChannelLayout( | 62 virtual media::ChannelLayout GetAudioInputHardwareChannelLayout( |
63 const std::string& device_id) OVERRIDE { | 63 const std::string& device_id) OVERRIDE { |
64 return input_channel_layout_; | 64 return input_channel_layout_; |
65 } | 65 } |
66 | 66 |
67 private: | 67 private: |
68 int output_rate_; | 68 int output_rate_; |
69 int input_rate_; | 69 int input_rate_; |
70 ChannelLayout input_channel_layout_; | 70 media::ChannelLayout input_channel_layout_; |
71 DISALLOW_COPY_AND_ASSIGN(AudioUtilNoHardware); | 71 DISALLOW_COPY_AND_ASSIGN(AudioUtilNoHardware); |
72 }; | 72 }; |
73 | 73 |
74 // Return true if at least one element in the array matches |value|. | 74 // Return true if at least one element in the array matches |value|. |
75 bool FindElementInArray(int* array, int size, int value) { | 75 bool FindElementInArray(int* array, int size, int value) { |
76 return (std::find(&array[0], &array[0] + size, value) != &array[size]); | 76 return (std::find(&array[0], &array[0] + size, value) != &array[size]); |
77 } | 77 } |
78 | 78 |
79 // This method returns false if a non-supported rate is detected on the | 79 // This method returns false if a non-supported rate is detected on the |
80 // input or output side. | 80 // input or output side. |
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
214 int invalid_rates[] = {-1, 0, 8000, 11025, 22050, 32000, 192000}; | 214 int invalid_rates[] = {-1, 0, 8000, 11025, 22050, 32000, 192000}; |
215 for (size_t i = 0; i < arraysize(invalid_rates); ++i) { | 215 for (size_t i = 0; i < arraysize(invalid_rates); ++i) { |
216 EXPECT_FALSE(FindElementInArray(valid_rates, arraysize(valid_rates), | 216 EXPECT_FALSE(FindElementInArray(valid_rates, arraysize(valid_rates), |
217 invalid_rates[i])); | 217 invalid_rates[i])); |
218 } | 218 } |
219 } | 219 } |
220 | 220 |
221 // Basic test that instantiates and initializes an instance of | 221 // Basic test that instantiates and initializes an instance of |
222 // WebRtcAudioDeviceImpl. | 222 // WebRtcAudioDeviceImpl. |
223 TEST_F(WebRTCAudioDeviceTest, Construct) { | 223 TEST_F(WebRTCAudioDeviceTest, Construct) { |
224 AudioUtilNoHardware audio_util(48000, 48000, CHANNEL_LAYOUT_MONO); | 224 AudioUtilNoHardware audio_util(48000, 48000, media::CHANNEL_LAYOUT_MONO); |
225 SetAudioUtilCallback(&audio_util); | 225 SetAudioUtilCallback(&audio_util); |
226 scoped_refptr<WebRtcAudioDeviceImpl> webrtc_audio_device( | 226 scoped_refptr<WebRtcAudioDeviceImpl> webrtc_audio_device( |
227 new WebRtcAudioDeviceImpl()); | 227 new WebRtcAudioDeviceImpl()); |
228 | 228 |
229 webrtc_audio_device->SetSessionId(1); | 229 webrtc_audio_device->SetSessionId(1); |
230 | 230 |
231 WebRTCAutoDelete<webrtc::VoiceEngine> engine(webrtc::VoiceEngine::Create()); | 231 WebRTCAutoDelete<webrtc::VoiceEngine> engine(webrtc::VoiceEngine::Create()); |
232 ASSERT_TRUE(engine.valid()); | 232 ASSERT_TRUE(engine.valid()); |
233 | 233 |
234 ScopedWebRTCPtr<webrtc::VoEBase> base(engine.get()); | 234 ScopedWebRTCPtr<webrtc::VoEBase> base(engine.get()); |
(...skipping 276 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
511 MessageLoop::QuitClosure(), | 511 MessageLoop::QuitClosure(), |
512 base::TimeDelta::FromSeconds(2)); | 512 base::TimeDelta::FromSeconds(2)); |
513 message_loop_.Run(); | 513 message_loop_.Run(); |
514 | 514 |
515 EXPECT_EQ(0, base->StopSend(ch)); | 515 EXPECT_EQ(0, base->StopSend(ch)); |
516 EXPECT_EQ(0, base->StopPlayout(ch)); | 516 EXPECT_EQ(0, base->StopPlayout(ch)); |
517 | 517 |
518 EXPECT_EQ(0, base->DeleteChannel(ch)); | 518 EXPECT_EQ(0, base->DeleteChannel(ch)); |
519 EXPECT_EQ(0, base->Terminate()); | 519 EXPECT_EQ(0, base->Terminate()); |
520 } | 520 } |
OLD | NEW |