Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(738)

Unified Diff: media/audio/audio_manager.h

Issue 2799363005: Removing public access to AudioManager device info interface. (Closed)
Patch Set: rebase Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/audio/audio_low_latency_input_output_unittest.cc ('k') | media/audio/audio_manager_base.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/audio/audio_manager.h
diff --git a/media/audio/audio_manager.h b/media/audio/audio_manager.h
index cd91b399d6d4595ce60faf0131baa65f9cfd8bca..2060e9f510ea8ec569d181d3eb313fc151c4927d 100644
--- a/media/audio/audio_manager.h
+++ b/media/audio/audio_manager.h
@@ -95,43 +95,6 @@ class MEDIA_EXPORT AudioManager {
// like src/chrome.
static AudioManager* Get();
- // Returns true if the OS reports existence of audio devices. This does not
- // guarantee that the existing devices support all formats and sample rates.
- virtual bool HasAudioOutputDevices() = 0;
-
- // Returns true if the OS reports existence of audio recording devices. This
- // does not guarantee that the existing devices support all formats and
- // sample rates.
- virtual bool HasAudioInputDevices() = 0;
-
- // Returns a human readable string for the model/make of the active audio
- // input device for this computer.
- virtual base::string16 GetAudioInputDeviceModel() = 0;
-
- // Opens the platform default audio input settings UI.
- // Note: This could invoke an external application/preferences pane, so
- // ideally must not be called from the UI thread or other time sensitive
- // threads to avoid blocking the rest of the application.
- virtual void ShowAudioInputSettings() = 0;
-
- // Appends a list of available input devices to |device_descriptions|,
- // which must initially be empty. It is not guaranteed that all the
- // devices in the list support all formats and sample rates for
- // recording.
- //
- // Not threadsafe; in production this should only be called from the
- // Audio worker thread (see GetTaskRunner()).
- virtual void GetAudioInputDeviceDescriptions(
- AudioDeviceDescriptions* device_descriptions) = 0;
-
- // Appends a list of available output devices to |device_descriptions|,
- // which must initially be empty.
- //
- // Not threadsafe; in production this should only be called from the
- // Audio worker thread (see GetTaskRunner()).
- virtual void GetAudioOutputDeviceDescriptions(
- AudioDeviceDescriptions* device_descriptions) = 0;
-
// Log callback used for sending log messages from a stream to the object
// that manages the stream.
using LogCallback = base::Callback<void(const std::string&)>;
@@ -213,33 +176,6 @@ class MEDIA_EXPORT AudioManager {
virtual void RemoveOutputDeviceChangeListener(
AudioDeviceListener* listener) = 0;
- // Returns the default output hardware audio parameters for opening output
- // streams. It is a convenience interface to
- // AudioManagerBase::GetPreferredOutputStreamParameters and each AudioManager
- // does not need their own implementation to this interface.
- // TODO(tommi): Remove this method and use GetOutputStreamParameteres instead.
- virtual AudioParameters GetDefaultOutputStreamParameters() = 0;
-
- // Returns the output hardware audio parameters for a specific output device.
- virtual AudioParameters GetOutputStreamParameters(
- const std::string& device_id) = 0;
-
- // Returns the input hardware audio parameters of the specific device
- // for opening input streams. Each AudioManager needs to implement their own
- // version of this interface.
- virtual AudioParameters GetInputStreamParameters(
- const std::string& device_id) = 0;
-
- // Returns the device id of an output device that belongs to the same hardware
- // as the specified input device.
- // If the hardware has only an input device (e.g. a webcam), the return value
- // will be empty (which the caller can then interpret to be the default output
- // device). Implementations that don't yet support this feature, must return
- // an empty string. Must be called on the audio worker thread (see
- // GetTaskRunner()).
- virtual std::string GetAssociatedOutputDeviceID(
- const std::string& input_device_id) = 0;
-
// Create a new AudioLog object for tracking the behavior for one or more
// instances of the given component. See AudioLogFactory for more details.
virtual std::unique_ptr<AudioLog> CreateAudioLog(
@@ -262,6 +198,7 @@ class MEDIA_EXPORT AudioManager {
protected:
FRIEND_TEST_ALL_PREFIXES(AudioManagerTest, AudioDebugRecording);
+ friend class AudioDeviceInfoAccessorForTests;
AudioManager(scoped_refptr<base::SingleThreadTaskRunner> task_runner,
scoped_refptr<base::SingleThreadTaskRunner> worker_task_runner);
@@ -272,9 +209,74 @@ class MEDIA_EXPORT AudioManager {
virtual void InitializeOutputDebugRecording(
scoped_refptr<base::SingleThreadTaskRunner> file_task_runner) = 0;
+ // Returns true if the OS reports existence of audio devices. This does not
+ // guarantee that the existing devices support all formats and sample rates.
+ virtual bool HasAudioOutputDevices() = 0;
+
+ // Returns true if the OS reports existence of audio recording devices. This
+ // does not guarantee that the existing devices support all formats and
+ // sample rates.
+ virtual bool HasAudioInputDevices() = 0;
+
+ // Returns a human readable string for the model/make of the active audio
+ // input device for this computer.
+ virtual base::string16 GetAudioInputDeviceModel() = 0;
+
+ // Opens the platform default audio input settings UI.
+ // Note: This could invoke an external application/preferences pane, so
+ // ideally must not be called from the UI thread or other time sensitive
+ // threads to avoid blocking the rest of the application.
+ virtual void ShowAudioInputSettings() = 0;
+
+ // Appends a list of available input devices to |device_descriptions|,
+ // which must initially be empty. It is not guaranteed that all the
+ // devices in the list support all formats and sample rates for
+ // recording.
+ //
+ // Not threadsafe; in production this should only be called from the
+ // Audio worker thread (see GetTaskRunner()).
+ virtual void GetAudioInputDeviceDescriptions(
+ AudioDeviceDescriptions* device_descriptions) = 0;
+
+ // Appends a list of available output devices to |device_descriptions|,
+ // which must initially be empty.
+ //
+ // Not threadsafe; in production this should only be called from the
+ // Audio worker thread (see GetTaskRunner()).
+ virtual void GetAudioOutputDeviceDescriptions(
+ AudioDeviceDescriptions* device_descriptions) = 0;
+
+ // Returns the default output hardware audio parameters for opening output
+ // streams. It is a convenience interface to
+ // AudioManagerBase::GetPreferredOutputStreamParameters and each AudioManager
+ // does not need their own implementation to this interface.
+ // TODO(tommi): Remove this method and use GetOutputStreamParameteres instead.
+ virtual AudioParameters GetDefaultOutputStreamParameters() = 0;
+
+ // Returns the output hardware audio parameters for a specific output device.
+ virtual AudioParameters GetOutputStreamParameters(
+ const std::string& device_id) = 0;
+
+ // Returns the input hardware audio parameters of the specific device
+ // for opening input streams. Each AudioManager needs to implement their own
+ // version of this interface.
+ virtual AudioParameters GetInputStreamParameters(
+ const std::string& device_id) = 0;
+
+ // Returns the device id of an output device that belongs to the same hardware
+ // as the specified input device.
+ // If the hardware has only an input device (e.g. a webcam), the return value
+ // will be empty (which the caller can then interpret to be the default output
+ // device). Implementations that don't yet support this feature, must return
+ // an empty string. Must be called on the audio worker thread (see
+ // GetTaskRunner()).
+ virtual std::string GetAssociatedOutputDeviceID(
+ const std::string& input_device_id) = 0;
+
private:
friend class base::DeleteHelper<AudioManager>;
friend class AudioManagerDeleter;
+ friend class AudioSystemImpl;
scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
scoped_refptr<base::SingleThreadTaskRunner> worker_task_runner_;
« no previous file with comments | « media/audio/audio_low_latency_input_output_unittest.cc ('k') | media/audio/audio_manager_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698