diff options
Diffstat (limited to 'media/audio/fake_audio_input_stream.cc')
-rw-r--r-- | media/audio/fake_audio_input_stream.cc | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/media/audio/fake_audio_input_stream.cc b/media/audio/fake_audio_input_stream.cc index b9b271b..f1284f1 100644 --- a/media/audio/fake_audio_input_stream.cc +++ b/media/audio/fake_audio_input_stream.cc @@ -5,26 +5,26 @@ #include "media/audio/fake_audio_input_stream.h" #include "base/bind.h" +#include "media/audio/audio_manager_base.h" using base::Time; using base::TimeDelta; AudioInputStream* FakeAudioInputStream::MakeFakeStream( + AudioManagerBase* manager, const AudioParameters& params) { - return new FakeAudioInputStream(params); + return new FakeAudioInputStream(manager, params); } -FakeAudioInputStream::FakeAudioInputStream(const AudioParameters& params) - : callback_(NULL), +FakeAudioInputStream::FakeAudioInputStream(AudioManagerBase* manager, + const AudioParameters& params) + : audio_manager_(manager), + callback_(NULL), buffer_size_((params.channels * params.bits_per_sample * params.samples_per_packet) / 8), thread_("FakeAudioRecordingThread"), callback_interval_(base::TimeDelta::FromMilliseconds( (params.samples_per_packet * 1000) / params.sample_rate)) { - // This object is ref counted (so that it can be used with Thread, PostTask) - // but the caller expects a plain pointer. So we take a reference here and - // will Release() ourselves in Close(). - AddRef(); } FakeAudioInputStream::~FakeAudioInputStream() {} @@ -42,7 +42,7 @@ void FakeAudioInputStream::Start(AudioInputCallback* callback) { thread_.Start(); thread_.message_loop()->PostDelayedTask( FROM_HERE, - base::Bind(&FakeAudioInputStream::DoCallback, this), + base::Bind(&FakeAudioInputStream::DoCallback, base::Unretained(this)), callback_interval_); } @@ -62,7 +62,7 @@ void FakeAudioInputStream::DoCallback() { last_callback_time_ = now; thread_.message_loop()->PostDelayedTask( FROM_HERE, - base::Bind(&FakeAudioInputStream::DoCallback, this), + base::Bind(&FakeAudioInputStream::DoCallback, base::Unretained(this)), next_callback_time); } @@ -75,7 +75,7 @@ void FakeAudioInputStream::Close() { callback_->OnClose(this); callback_ = NULL; } - Release(); // Destoys this object. + audio_manager_->ReleaseInputStream(this); } double FakeAudioInputStream::GetMaxVolume() { |