Index: content/renderer/media/webrtc_audio_device_unittest.cc |
diff --git a/content/renderer/media/webrtc_audio_device_unittest.cc b/content/renderer/media/webrtc_audio_device_unittest.cc |
index 30157b0c0b7235644b10b9e3a46bb5c648e2b0fc..3d058034ce07d6396114d94f2fefb416feb337ab 100644 |
--- a/content/renderer/media/webrtc_audio_device_unittest.cc |
+++ b/content/renderer/media/webrtc_audio_device_unittest.cc |
@@ -30,51 +30,67 @@ namespace { |
const int kRenderViewId = 1; |
-class AudioUtil : public AudioUtilInterface { |
+class RealAudioHardwareConfig : public media::AudioHardwareConfig { |
public: |
- AudioUtil() {} |
+ RealAudioHardwareConfig() {} |
+ virtual ~RealAudioHardwareConfig() {} |
- virtual int GetAudioHardwareSampleRate() OVERRIDE { |
+ virtual int GetOutputBufferSize() OVERRIDE { |
+ return media::GetAudioHardwareBufferSize(); |
+ } |
+ |
+ virtual int GetOutputSampleRate() OVERRIDE { |
return media::GetAudioHardwareSampleRate(); |
} |
- virtual int GetAudioInputHardwareSampleRate( |
- const std::string& device_id) OVERRIDE { |
- return media::GetAudioInputHardwareSampleRate(device_id); |
+ |
+ virtual int GetInputSampleRate() OVERRIDE { |
+ return media::GetAudioInputHardwareSampleRate( |
+ media::AudioManagerBase::kDefaultDeviceId); |
} |
- virtual media::ChannelLayout GetAudioInputHardwareChannelLayout( |
- const std::string& device_id) OVERRIDE { |
- return media::GetAudioInputHardwareChannelLayout(device_id); |
+ |
+ virtual media::ChannelLayout GetInputChannelLayout() OVERRIDE { |
+ return media::GetAudioInputHardwareChannelLayout( |
+ media::AudioManagerBase::kDefaultDeviceId); |
} |
+ |
private: |
- DISALLOW_COPY_AND_ASSIGN(AudioUtil); |
+ DISALLOW_COPY_AND_ASSIGN(RealAudioHardwareConfig); |
}; |
-class AudioUtilNoHardware : public AudioUtilInterface { |
+class FakeAudioHardwareConfig : public media::AudioHardwareConfig { |
public: |
- AudioUtilNoHardware(int output_rate, int input_rate, |
- media::ChannelLayout input_channel_layout) |
- : output_rate_(output_rate), |
+ FakeAudioHardwareConfig(int output_size, int output_rate, int input_rate, |
+ media::ChannelLayout input_channel_layout) |
+ : output_size_(output_size), |
+ output_rate_(output_rate), |
input_rate_(input_rate), |
input_channel_layout_(input_channel_layout) { |
} |
+ virtual ~FakeAudioHardwareConfig() {} |
- virtual int GetAudioHardwareSampleRate() OVERRIDE { |
+ virtual int GetOutputBufferSize() OVERRIDE { |
+ return output_size_; |
+ } |
+ |
+ virtual int GetOutputSampleRate() OVERRIDE { |
return output_rate_; |
} |
- virtual int GetAudioInputHardwareSampleRate( |
- const std::string& device_id) OVERRIDE { |
+ |
+ virtual int GetInputSampleRate() OVERRIDE { |
return input_rate_; |
} |
- virtual media::ChannelLayout GetAudioInputHardwareChannelLayout( |
- const std::string& device_id) OVERRIDE { |
+ |
+ virtual media::ChannelLayout GetInputChannelLayout() OVERRIDE { |
return input_channel_layout_; |
} |
private: |
+ int output_size_; |
int output_rate_; |
int input_rate_; |
media::ChannelLayout input_channel_layout_; |
- DISALLOW_COPY_AND_ASSIGN(AudioUtilNoHardware); |
+ |
+ DISALLOW_COPY_AND_ASSIGN(FakeAudioHardwareConfig); |
}; |
// Return true if at least one element in the array matches |value|. |
@@ -95,8 +111,11 @@ bool HardwareSampleRatesAreValid() { |
int valid_input_rates[] = {16000, 32000, 44100, 48000, 96000}; |
int valid_output_rates[] = {44100, 48000, 96000}; |
+ RendererAudioHardwareConfig* hardware_config = |
+ RenderThreadImpl::current()->GetAudioHardwareConfig(); |
+ |
// Verify the input sample rate. |
- int input_sample_rate = GetAudioInputSampleRate(); |
+ int input_sample_rate = hardware_config->GetInputSampleRate(); |
if (!FindElementInArray(valid_input_rates, arraysize(valid_input_rates), |
input_sample_rate)) { |
@@ -105,7 +124,7 @@ bool HardwareSampleRatesAreValid() { |
} |
// Given that the input rate was OK, verify the output rate as well. |
- int output_sample_rate = GetAudioOutputSampleRate(); |
+ int output_sample_rate = hardware_config->GetOutputSampleRate(); |
if (!FindElementInArray(valid_output_rates, arraysize(valid_output_rates), |
output_sample_rate)) { |
LOG(WARNING) << "Non-supported output sample rate detected."; |
@@ -246,8 +265,9 @@ TEST_F(WebRTCAudioDeviceTest, TestValidOutputRates) { |
// Basic test that instantiates and initializes an instance of |
// WebRtcAudioDeviceImpl. |
TEST_F(WebRTCAudioDeviceTest, Construct) { |
- AudioUtilNoHardware audio_util(48000, 48000, media::CHANNEL_LAYOUT_MONO); |
- SetAudioUtilCallback(&audio_util); |
+ FakeAudioHardwareConfig audio_config( |
+ 480, 48000, 48000, media::CHANNEL_LAYOUT_MONO); |
+ SetAudioHardwareConfig(&audio_config); |
scoped_refptr<WebRtcAudioDeviceImpl> webrtc_audio_device( |
new WebRtcAudioDeviceImpl()); |
@@ -279,8 +299,8 @@ TEST_F(WebRTCAudioDeviceTest, DISABLED_StartPlayout) { |
return; |
} |
- AudioUtil audio_util; |
- SetAudioUtilCallback(&audio_util); |
+ RealAudioHardwareConfig audio_config; |
+ SetAudioHardwareConfig(&audio_config); |
if (!HardwareSampleRatesAreValid()) |
return; |
@@ -357,8 +377,8 @@ TEST_F(WebRTCAudioDeviceTest, StartRecording) { |
return; |
} |
- AudioUtil audio_util; |
- SetAudioUtilCallback(&audio_util); |
+ RealAudioHardwareConfig audio_config; |
+ SetAudioHardwareConfig(&audio_config); |
if (!HardwareSampleRatesAreValid()) |
return; |
@@ -430,8 +450,8 @@ TEST_F(WebRTCAudioDeviceTest, DISABLED_PlayLocalFile) { |
std::string file_path( |
GetTestDataPath(FILE_PATH_LITERAL("speechmusic_mono_16kHz.pcm"))); |
- AudioUtil audio_util; |
- SetAudioUtilCallback(&audio_util); |
+ RealAudioHardwareConfig audio_config; |
+ SetAudioHardwareConfig(&audio_config); |
if (!HardwareSampleRatesAreValid()) |
return; |
@@ -501,8 +521,8 @@ TEST_F(WebRTCAudioDeviceTest, FullDuplexAudioWithAGC) { |
return; |
} |
- AudioUtil audio_util; |
- SetAudioUtilCallback(&audio_util); |
+ RealAudioHardwareConfig audio_config; |
+ SetAudioHardwareConfig(&audio_config); |
if (!HardwareSampleRatesAreValid()) |
return; |