summaryrefslogtreecommitdiffstats
path: root/media/audio/virtual_audio_input_stream.h
diff options
context:
space:
mode:
authordalecurtis@google.com <dalecurtis@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2013-03-28 00:18:38 +0000
committerdalecurtis@google.com <dalecurtis@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2013-03-28 00:18:38 +0000
commit7ee0860469bdfaa6662f6a6cb0298519bd0d9918 (patch)
tree5f95fcbe50b846d8b18a1538f616fb37b49b8935 /media/audio/virtual_audio_input_stream.h
parentb28bdd2b44770d34aed29327d4d079a85a2c9fca (diff)
downloadchromium_src-7ee0860469bdfaa6662f6a6cb0298519bd0d9918.zip
chromium_src-7ee0860469bdfaa6662f6a6cb0298519bd0d9918.tar.gz
chromium_src-7ee0860469bdfaa6662f6a6cb0298519bd0d9918.tar.bz2
Refactor VirtualAudioInputStream to use FakeAudioConsumer.
We have too many different audio timing implementations, I've already merged FakeAudioOutputStream and NullAudioSink to use FakeAudioConsumer, time to bind the last one. BUG=none TEST=media_unittests. Review URL: https://codereview.chromium.org/13093009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@191073 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/audio/virtual_audio_input_stream.h')
-rw-r--r--media/audio/virtual_audio_input_stream.h13
1 files changed, 6 insertions, 7 deletions
diff --git a/media/audio/virtual_audio_input_stream.h b/media/audio/virtual_audio_input_stream.h
index 339e633..72ca86c 100644
--- a/media/audio/virtual_audio_input_stream.h
+++ b/media/audio/virtual_audio_input_stream.h
@@ -8,11 +8,11 @@
#include <map>
#include <set>
-#include "base/cancelable_callback.h"
#include "base/gtest_prod_util.h"
#include "base/memory/scoped_ptr.h"
#include "media/audio/audio_io.h"
#include "media/audio/audio_parameters.h"
+#include "media/audio/fake_audio_consumer.h"
#include "media/base/audio_converter.h"
namespace base {
@@ -72,7 +72,7 @@ class MEDIA_EXPORT VirtualAudioInputStream : public AudioInputStream {
// When Start() is called on this class, we continuously schedule this
// callback to render audio using any attached VirtualAudioOutputStreams until
// Stop() is called.
- void ReadAudio();
+ void ReadAudio(AudioBus* audio_bus);
const scoped_refptr<base::MessageLoopProxy> message_loop_;
@@ -81,12 +81,8 @@ class MEDIA_EXPORT VirtualAudioInputStream : public AudioInputStream {
AudioInputCallback* callback_;
// Non-const for testing.
- base::TimeDelta buffer_duration_;
- base::Time next_read_time_;
- scoped_array<uint8> buffer_;
+ scoped_ptr<uint8[]> buffer_;
AudioParameters params_;
- scoped_ptr<AudioBus> audio_bus_;
- base::CancelableClosure on_more_data_cb_;
// AudioConverters associated with the attached VirtualAudioOutputStreams,
// partitioned by common AudioParameters.
@@ -99,6 +95,9 @@ class MEDIA_EXPORT VirtualAudioInputStream : public AudioInputStream {
// Number of currently attached VirtualAudioOutputStreams.
int num_attached_output_streams_;
+ // Handles callback timing for consumption of audio data.
+ FakeAudioConsumer fake_consumer_;
+
DISALLOW_COPY_AND_ASSIGN(VirtualAudioInputStream);
};