summaryrefslogtreecommitdiffstats
path: root/chromeos/audio
diff options
context:
space:
mode:
Diffstat (limited to 'chromeos/audio')
-rw-r--r--chromeos/audio/audio_device.h14
-rw-r--r--chromeos/audio/cras_audio_handler.h2
2 files changed, 16 insertions, 0 deletions
diff --git a/chromeos/audio/audio_device.h b/chromeos/audio/audio_device.h
index 67dca1c..0d1b685 100644
--- a/chromeos/audio/audio_device.h
+++ b/chromeos/audio/audio_device.h
@@ -41,6 +41,20 @@ struct CHROMEOS_EXPORT AudioDevice {
static std::string GetTypeString(chromeos::AudioDeviceType type);
static chromeos::AudioDeviceType GetAudioType(const std::string& node_type);
+ // Indicates that an input or output audio device is for simple usage like
+ // playback or recording for user. In contrast, audio device such as
+ // loopback, always on keyword recognition (AOKR), and keyboard mic are
+ // not for simple usage.
+ bool is_for_simple_usage() const {
+ return (type == AUDIO_TYPE_HEADPHONE ||
+ type == AUDIO_TYPE_INTERNAL_MIC ||
+ type == AUDIO_TYPE_MIC ||
+ type == AUDIO_TYPE_USB ||
+ type == AUDIO_TYPE_BLUETOOTH ||
+ type == AUDIO_TYPE_HDMI ||
+ type == AUDIO_TYPE_INTERNAL_SPEAKER);
+ }
+
bool is_input;
uint64 id;
std::string display_name;
diff --git a/chromeos/audio/cras_audio_handler.h b/chromeos/audio/cras_audio_handler.h
index 10c77a4..5d24973 100644
--- a/chromeos/audio/cras_audio_handler.h
+++ b/chromeos/audio/cras_audio_handler.h
@@ -128,6 +128,8 @@ class CHROMEOS_EXPORT CrasAudioHandler : public CrasAudioClient::Observer,
virtual uint64_t GetPrimaryActiveInputNode() const;
// Gets the audio devices back in |device_list|.
+ // This call can be invoked from I/O thread or UI thread because
+ // it does not need to access CrasAudioClient on DBus.
virtual void GetAudioDevices(AudioDeviceList* device_list) const;
virtual bool GetPrimaryActiveOutputDevice(AudioDevice* device) const;