Index: media/audio/audio_output_controller.h |
diff --git a/media/audio/audio_output_controller.h b/media/audio/audio_output_controller.h |
index 3dae719856508cd6a25e28dc22cd84305a35dd58..ef6e61c5b93d19528c671a8a4ae5b7feb66968a1 100644 |
--- a/media/audio/audio_output_controller.h |
+++ b/media/audio/audio_output_controller.h |
@@ -63,6 +63,10 @@ class MessageLoop; |
namespace media { |
+// TODO(miu): STUB |
+class DivertedAudioOutputStream : public AudioOutputStream { |
+}; |
+ |
class MEDIA_EXPORT AudioOutputController |
: public base::RefCountedThreadSafe<AudioOutputController>, |
public AudioOutputStream::AudioSourceCallback, |
@@ -158,6 +162,15 @@ class MEDIA_EXPORT AudioOutputController |
// to being called. |
virtual void OnDeviceChange() OVERRIDE; |
+ // Creates a DivertedAudioOutputStream and diverts audio data to it, away from |
+ // the existing AudioOutputStream. A call to Revert() restores the previous, |
+ // normal audio data flow. |
+ DivertedAudioOutputStream* Divert(); |
+ |
+ // Restores the previous, normal audio data flow (i.e., the state of the |
+ // stream before Divert() was called). |aos| is destroyed. |
+ void Revert(DivertedAudioOutputStream* aos); |
+ |
protected: |
// Internal state of the source. |
enum State { |