summaryrefslogtreecommitdiffstats
path: root/media/audio/audio_output.h
diff options
context:
space:
mode:
Diffstat (limited to 'media/audio/audio_output.h')
-rw-r--r--media/audio/audio_output.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/media/audio/audio_output.h b/media/audio/audio_output.h
index a12742e..4793e71 100644
--- a/media/audio/audio_output.h
+++ b/media/audio/audio_output.h
@@ -91,7 +91,9 @@ class AudioOutputStream {
// Starts playing audio and generating AudioSourceCallback::OnMoreData().
// Since implementor of AudioOutputStream may have internal buffers, right
- // after calling this method initial buffers are fetched.
+ // after calling this method initial buffers are fetched. User of this
+ // object should prepare |AudioOutputStream::GetNumBuffers()| before calling
+ // AudioOutputStream::Start().
//
// The output stream does not take ownership of this callback.
virtual void Start(AudioSourceCallback* callback) = 0;
@@ -112,6 +114,11 @@ class AudioOutputStream {
// After calling this method, the object should not be used anymore.
virtual void Close() = 0;
+ // Gets the number of internal buffers used in this output stream. This
+ // method is useful for providing information about how user of this object
+ // should prepare initial buffers before calling AudioOutputStream::Start().
+ virtual size_t GetNumBuffers() = 0;
+
protected:
virtual ~AudioOutputStream() {}
};
@@ -157,6 +164,11 @@ class AudioManager {
virtual void MuteAll() = 0;
virtual void UnMuteAll() = 0;
+ // For testing purposes only. Returns the internal buffer of the last
+ // AUDIO_MOCK AudioOutputStream closed. Returns NULL if none closed yet.
+ // The buffer size is the same as passed to AudioOutputStream::Open().
+ virtual const void* GetLastMockBuffer() = 0;
+
// Get AudioManager singleton.
// TODO(cpu): Define threading requirements for interacting with AudioManager.
static AudioManager* GetAudioManager();