diff options
Diffstat (limited to 'media/base/audio_hardware_config.cc')
-rw-r--r-- | media/base/audio_hardware_config.cc | 79 |
1 files changed, 53 insertions, 26 deletions
diff --git a/media/base/audio_hardware_config.cc b/media/base/audio_hardware_config.cc index eaacc69..d72fce7 100644 --- a/media/base/audio_hardware_config.cc +++ b/media/base/audio_hardware_config.cc @@ -4,50 +4,77 @@ #include "media/base/audio_hardware_config.h" +using base::AutoLock; +using media::AudioParameters; + namespace media { AudioHardwareConfig::AudioHardwareConfig( - int output_buffer_size, int output_sample_rate, - int input_sample_rate, ChannelLayout input_channel_layout) - : output_buffer_size_(output_buffer_size), - output_sample_rate_(output_sample_rate), - input_sample_rate_(input_sample_rate), - input_channel_layout_(input_channel_layout) { + const AudioParameters& input_params, + const AudioParameters& output_params) + : input_params_(input_params), + output_params_(output_params) { } AudioHardwareConfig::~AudioHardwareConfig() {} -int AudioHardwareConfig::GetOutputBufferSize() { - base::AutoLock auto_lock(config_lock_); - return output_buffer_size_; +int AudioHardwareConfig::GetOutputBufferSize() const { + AutoLock auto_lock(config_lock_); + return output_params_.frames_per_buffer(); +} + +int AudioHardwareConfig::GetOutputSampleRate() const { + AutoLock auto_lock(config_lock_); + return output_params_.sample_rate(); +} + +ChannelLayout AudioHardwareConfig::GetOutputChannelLayout() const { + AutoLock auto_lock(config_lock_); + return output_params_.channel_layout(); +} + +int AudioHardwareConfig::GetOutputChannels() const { + AutoLock auto_lock(config_lock_); + return output_params_.channels(); +} + +int AudioHardwareConfig::GetInputSampleRate() const { + AutoLock auto_lock(config_lock_); + return input_params_.sample_rate(); +} + +ChannelLayout AudioHardwareConfig::GetInputChannelLayout() const { + AutoLock auto_lock(config_lock_); + return input_params_.channel_layout(); } -int AudioHardwareConfig::GetOutputSampleRate() { - base::AutoLock auto_lock(config_lock_); - return output_sample_rate_; +int AudioHardwareConfig::GetInputChannels() const { + AutoLock auto_lock(config_lock_); + return input_params_.channels(); } -int AudioHardwareConfig::GetInputSampleRate() { - base::AutoLock auto_lock(config_lock_); - return input_sample_rate_; +media::AudioParameters +AudioHardwareConfig::GetInputConfig() const { + AutoLock auto_lock(config_lock_); + return input_params_; } -ChannelLayout AudioHardwareConfig::GetInputChannelLayout() { - base::AutoLock auto_lock(config_lock_); - return input_channel_layout_; +media::AudioParameters +AudioHardwareConfig::GetOutputConfig() const { + AutoLock auto_lock(config_lock_); + return output_params_; } void AudioHardwareConfig::UpdateInputConfig( - int sample_rate, media::ChannelLayout channel_layout) { - base::AutoLock auto_lock(config_lock_); - input_sample_rate_ = sample_rate; - input_channel_layout_ = channel_layout; + const AudioParameters& input_params) { + AutoLock auto_lock(config_lock_); + input_params_ = input_params; } -void AudioHardwareConfig::UpdateOutputConfig(int buffer_size, int sample_rate) { - base::AutoLock auto_lock(config_lock_); - output_buffer_size_ = buffer_size; - output_sample_rate_ = sample_rate; +void AudioHardwareConfig::UpdateOutputConfig( + const AudioParameters& output_params) { + AutoLock auto_lock(config_lock_); + output_params_ = output_params; } } // namespace media |