Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1091)

Unified Diff: media/base/audio_renderer_mixer_input.cc

Issue 10698066: Switch to pcm_low_latency and enable resampling. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Comments! Created 8 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/base/audio_renderer_mixer_input.h ('k') | media/base/audio_renderer_mixer_input_unittest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/base/audio_renderer_mixer_input.cc
diff --git a/media/base/audio_renderer_mixer_input.cc b/media/base/audio_renderer_mixer_input.cc
index 8eef689b8bfbecdf4243001c1c0b92bc0e6b68a2..ec0c019a4853ff6d6a3eaa5431cf50ae527d934b 100644
--- a/media/base/audio_renderer_mixer_input.cc
+++ b/media/base/audio_renderer_mixer_input.cc
@@ -10,35 +10,26 @@
namespace media {
AudioRendererMixerInput::AudioRendererMixerInput(
- const scoped_refptr<AudioRendererMixer>& mixer)
+ const GetMixerCB& get_mixer_cb, const RemoveMixerCB& remove_mixer_cb)
: playing_(false),
initialized_(false),
volume_(1.0f),
- mixer_(mixer),
+ get_mixer_cb_(get_mixer_cb),
+ remove_mixer_cb_(remove_mixer_cb),
callback_(NULL) {
}
AudioRendererMixerInput::~AudioRendererMixerInput() {
- if (!initialized_)
- return;
-
- // Clean up |audio_data_|.
- for (size_t i = 0; i < audio_data_.size(); ++i)
- delete [] audio_data_[i];
- audio_data_.clear();
+ // Mixer is no longer safe to use after |remove_mixer_cb_| has been called.
+ remove_mixer_cb_.Run(params_);
}
void AudioRendererMixerInput::Initialize(
const AudioParameters& params,
AudioRendererSink::RenderCallback* callback) {
DCHECK(!initialized_);
-
- // TODO(dalecurtis): If we switch to AVX/SSE optimization, we'll need to
- // allocate these on 32-byte boundaries and ensure they're sized % 32 bytes.
- audio_data_.reserve(params.channels());
- for (int i = 0; i < params.channels(); ++i)
- audio_data_.push_back(new float[params.frames_per_buffer()]);
-
+ params_ = params;
+ mixer_ = get_mixer_cb_.Run(params_);
callback_ = callback;
initialized_ = true;
}
« no previous file with comments | « media/base/audio_renderer_mixer_input.h ('k') | media/base/audio_renderer_mixer_input_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698