Index: media/audio/audio_manager_base.h |
diff --git a/media/audio/audio_manager_base.h b/media/audio/audio_manager_base.h |
index b56d9dc631fe38c868cace4822b27b7ed01908fc..4dc3fd3fd727f3a820e9c07ae5c03213f1f188da 100644 |
--- a/media/audio/audio_manager_base.h |
+++ b/media/audio/audio_manager_base.h |
@@ -16,6 +16,7 @@ |
#include "base/observer_list.h" |
#include "base/threading/thread.h" |
#include "build/build_config.h" |
+#include "media/audio/audio_device_name.h" |
#include "media/audio/audio_manager.h" |
#include "media/audio/audio_output_dispatcher.h" |
@@ -35,8 +36,12 @@ class MEDIA_EXPORT AudioManagerBase : public AudioManager { |
// AudioManager: |
base::string16 GetAudioInputDeviceModel() override; |
void ShowAudioInputSettings() override; |
- void GetAudioInputDeviceNames(AudioDeviceNames* device_names) override; |
- void GetAudioOutputDeviceNames(AudioDeviceNames* device_names) override; |
+ |
+ void GetAudioInputDeviceDescriptions( |
+ AudioDeviceDescriptions* device_descriptions) final; |
+ void GetAudioOutputDeviceDescriptions( |
+ AudioDeviceDescriptions* device_descriptions) final; |
+ |
AudioOutputStream* MakeAudioOutputStream( |
const AudioParameters& params, |
const std::string& device_id, |
@@ -94,9 +99,6 @@ class MEDIA_EXPORT AudioManagerBase : public AudioManager { |
const std::string& device_id, |
const LogCallback& log_callback) = 0; |
- std::string GetGroupIDOutput(const std::string& output_device_id) override; |
- std::string GetGroupIDInput(const std::string& input_device_id) override; |
- |
// Get number of input or output streams. |
int input_stream_count() const { |
return static_cast<int>(input_streams_.size()); |
@@ -124,7 +126,7 @@ class MEDIA_EXPORT AudioManagerBase : public AudioManager { |
// Returns user buffer size as specified on the command line or 0 if no buffer |
// size has been specified. |
- int GetUserBufferSize(); |
+ static int GetUserBufferSize(); |
// Returns the preferred hardware audio output parameters for opening output |
// streams. If the users inject a valid |input_params|, each AudioManager |
@@ -137,6 +139,14 @@ class MEDIA_EXPORT AudioManagerBase : public AudioManager { |
const std::string& output_device_id, |
const AudioParameters& input_params) = 0; |
+ // Appends a list of available input devices to |device_names|, |
+ // which must initially be empty. |
+ virtual void GetAudioInputDeviceNames(AudioDeviceNames* device_names); |
+ |
+ // Appends a list of available output devices to |device_names|, |
+ // which must initially be empty. |
+ virtual void GetAudioOutputDeviceNames(AudioDeviceNames* device_names); |
+ |
// Returns the ID of the default audio output device. |
// Implementations that don't yet support this should return an empty string. |
virtual std::string GetDefaultOutputDeviceID(); |
@@ -147,6 +157,13 @@ class MEDIA_EXPORT AudioManagerBase : public AudioManager { |
class CompareByParams; |
+ // These functions assign group ids to devices based on their device ids. |
+ // The default implementation is an attempt to do this based on |
+ // GetAssociatedOutputDeviceID. Must be called on the audio worker thread |
+ // (see GetTaskRunner()). |
+ std::string GetGroupIDOutput(const std::string& output_device_id); |
+ std::string GetGroupIDInput(const std::string& input_device_id); |
+ |
// Max number of open output streams, modified by |
// SetMaxOutputStreamsAllowed(). |
int max_num_output_streams_; |