Chromium Code Reviews| Index: media/audio/pulse/audio_manager_pulse.cc |
| diff --git a/media/audio/pulse/audio_manager_pulse.cc b/media/audio/pulse/audio_manager_pulse.cc |
| index dcdd32822280dee3442c1f492850da1662216786..386a029d2ac0d11016d37db0f058c16c5a19111b 100644 |
| --- a/media/audio/pulse/audio_manager_pulse.cc |
| +++ b/media/audio/pulse/audio_manager_pulse.cc |
| @@ -66,19 +66,13 @@ AudioManagerPulse::~AudioManagerPulse() { |
| // Implementation of AudioManager. |
| bool AudioManagerPulse::HasAudioOutputDevices() { |
| - DCHECK(input_mainloop_); |
| - DCHECK(input_context_); |
| - media::AudioDeviceNames devices; |
| - AutoPulseLock auto_lock(input_mainloop_); |
| - devices_ = &devices; |
| - pa_operation* operation = pa_context_get_sink_info_list( |
| - input_context_, OutputDevicesInfoCallback, this); |
| - WaitForOperationCompletion(input_mainloop_, operation); |
| + AudioDeviceNames devices; |
| + GetAudioOutputDeviceNames(&devices); |
| return !devices.empty(); |
| } |
| bool AudioManagerPulse::HasAudioInputDevices() { |
| - media::AudioDeviceNames devices; |
| + AudioDeviceNames devices; |
| GetAudioInputDeviceNames(&devices); |
| return !devices.empty(); |
| } |
| @@ -88,7 +82,7 @@ void AudioManagerPulse::ShowAudioInputSettings() { |
| } |
| void AudioManagerPulse::GetAudioInputDeviceNames( |
| - media::AudioDeviceNames* device_names) { |
| + AudioDeviceNames* device_names) { |
| DCHECK(device_names->empty()); |
| DCHECK(input_mainloop_); |
| DCHECK(input_context_); |
| @@ -106,6 +100,18 @@ void AudioManagerPulse::GetAudioInputDeviceNames( |
| } |
| } |
| +void AudioManagerPulse::GetAudioOutputDeviceNames( |
| + AudioDeviceNames* device_names) { |
| + DCHECK(device_names); |
| + DCHECK(input_mainloop_); |
| + DCHECK(input_context_); |
| + AutoPulseLock auto_lock(input_mainloop_); |
| + devices_ = device_names; |
| + pa_operation* operation = pa_context_get_sink_info_list( |
| + input_context_, OutputDevicesInfoCallback, this); |
| + WaitForOperationCompletion(input_mainloop_, operation); |
|
tommi (sloooow) - chröme
2013/09/03 15:57:15
I think we should also add the default device when
Jói
2013/09/04 09:11:04
Done.
|
| +} |
| + |
| AudioParameters AudioManagerPulse::GetInputStreamParameters( |
| const std::string& device_id) { |
| static const int kDefaultInputBufferSize = 1024; |
| @@ -286,8 +292,8 @@ void AudioManagerPulse::InputDevicesInfoCallback(pa_context* context, |
| // Exclude the output devices. |
| if (info->monitor_of_sink == PA_INVALID_INDEX) { |
| - manager->devices_->push_back(media::AudioDeviceName(info->description, |
| - info->name)); |
| + manager->devices_->push_back(AudioDeviceName(info->description, |
| + info->name)); |
| } |
| } |
| @@ -302,8 +308,8 @@ void AudioManagerPulse::OutputDevicesInfoCallback(pa_context* context, |
| return; |
| } |
| - manager->devices_->push_back(media::AudioDeviceName(info->description, |
| - info->name)); |
| + manager->devices_->push_back(AudioDeviceName(info->description, |
| + info->name)); |
| } |
| void AudioManagerPulse::SampleRateInfoCallback(pa_context* context, |