Index: content/renderer/media/audio_renderer_mixer_manager.cc |
diff --git a/content/renderer/media/audio_renderer_mixer_manager.cc b/content/renderer/media/audio_renderer_mixer_manager.cc |
index 67daf2cbeb9a448f86e2329c295425c1d7f42934..14d6142d6b539d95aec650f7f28d1fa3bdfde50e 100644 |
--- a/content/renderer/media/audio_renderer_mixer_manager.cc |
+++ b/content/renderer/media/audio_renderer_mixer_manager.cc |
@@ -6,7 +6,9 @@ |
#include "base/bind.h" |
#include "base/bind_helpers.h" |
-#include "content/renderer/media/audio_device_factory.h" |
+#include "content/renderer/media/audio_message_filter.h" |
+#include "content/renderer/render_thread_impl.h" |
+#include "media/audio/audio_output_device.h" |
#include "media/base/audio_renderer_mixer.h" |
#include "media/base/audio_renderer_mixer_input.h" |
@@ -30,6 +32,12 @@ media::AudioRendererMixerInput* AudioRendererMixerManager::CreateInput() { |
&AudioRendererMixerManager::RemoveMixer, base::Unretained(this))); |
} |
+media::AudioRendererSink* AudioRendererMixerManager::CreateAudioRendererSink() { |
+ return new media::AudioOutputDevice( |
+ RenderThreadImpl::current()->audio_message_filter(), |
+ RenderThreadImpl::current()->GetIOMessageLoopProxy()); |
+} |
+ |
media::AudioRendererMixer* AudioRendererMixerManager::GetMixer( |
const media::AudioParameters& params) { |
base::AutoLock auto_lock(mixers_lock_); |
@@ -53,7 +61,7 @@ media::AudioRendererMixer* AudioRendererMixerManager::GetMixer( |
output_params = params; |
media::AudioRendererMixer* mixer = new media::AudioRendererMixer( |
- params, output_params, AudioDeviceFactory::NewOutputDevice()); |
+ params, output_params, CreateAudioRendererSink()); |
AudioRendererMixerReference mixer_reference = { mixer, 1 }; |
mixers_[params] = mixer_reference; |