Index: content/renderer/media/audio_device_factory.h |
diff --git a/content/renderer/media/audio_device_factory.h b/content/renderer/media/audio_device_factory.h |
index b15e96701c94e67eb3c232d4361dbc9139a307ad..14433ce91b7bc12115691ff654ed2cf558427367 100644 |
--- a/content/renderer/media/audio_device_factory.h |
+++ b/content/renderer/media/audio_device_factory.h |
@@ -12,6 +12,8 @@ namespace media { |
class AudioRendererSink; |
} |
+class AudioInputDevice; |
+ |
namespace content { |
// A factory for creating AudioRendererSinks. There is a global factory |
@@ -23,15 +25,23 @@ class CONTENT_EXPORT AudioDeviceFactory { |
// Creates an AudioRendererSink using the currently registered factory, |
// or the default one if no factory is registered. Ownership of the returned |
// pointer will be passed to the caller. |
- static media::AudioRendererSink* Create(); |
+ static media::AudioRendererSink* NewOutputDevice(); |
+ |
+ // TODO(henrika): Update AudioInputDevice to inherit from an interface |
+ // similar to AudioRendererSink, but for input. Same for the callback |
+ // interfaces. |
+ static AudioInputDevice* NewInputDevice(); |
protected: |
AudioDeviceFactory(); |
virtual ~AudioDeviceFactory(); |
- // You can derive from this class and specify an implementation for this |
- // function to create a different kind of AudioRendererSink for testing. |
- virtual media::AudioRendererSink* CreateAudioDevice() = 0; |
+ // You can derive from this class and specify an implementation for these |
+ // functions to provide alternate audio device implementations. |
+ // If the return value of either of these function is NULL, we fall back |
+ // on the default implementation. |
+ virtual media::AudioRendererSink* CreateOutputDevice() = 0; |
+ virtual AudioInputDevice* CreateInputDevice() = 0; |
private: |
// The current globally registered factory. This is NULL when we should |