| Index: content/renderer/media/webrtc_audio_renderer.cc
|
| diff --git a/content/renderer/media/webrtc_audio_renderer.cc b/content/renderer/media/webrtc_audio_renderer.cc
|
| index 4c3427e459a2955a1c82af823a794c2924b5dabd..f533586e08167cc8f7e7b0fe97f5981041570ed2 100644
|
| --- a/content/renderer/media/webrtc_audio_renderer.cc
|
| +++ b/content/renderer/media/webrtc_audio_renderer.cc
|
| @@ -7,9 +7,11 @@
|
| #include "base/logging.h"
|
| #include "base/metrics/histogram.h"
|
| #include "base/string_util.h"
|
| -#include "content/renderer/media/audio_device_factory.h"
|
| #include "content/renderer/media/audio_hardware.h"
|
| +#include "content/renderer/media/audio_message_filter.h"
|
| #include "content/renderer/media/webrtc_audio_device_impl.h"
|
| +#include "content/renderer/render_thread_impl.h"
|
| +#include "media/audio/audio_output_device.h"
|
| #include "media/audio/audio_util.h"
|
| #include "media/audio/sample_rates.h"
|
| #if defined(OS_WIN)
|
| @@ -80,8 +82,9 @@ void AddHistogramFramesPerBuffer(int param) {
|
|
|
| } // namespace
|
|
|
| -WebRtcAudioRenderer::WebRtcAudioRenderer()
|
| +WebRtcAudioRenderer::WebRtcAudioRenderer(int source_render_view_id)
|
| : state_(UNINITIALIZED),
|
| + source_render_view_id_(source_render_view_id),
|
| source_(NULL) {
|
| }
|
|
|
| @@ -97,9 +100,6 @@ bool WebRtcAudioRenderer::Initialize(WebRtcAudioRendererSource* source) {
|
| DCHECK(!sink_);
|
| DCHECK(!source_);
|
|
|
| - sink_ = AudioDeviceFactory::NewOutputDevice();
|
| - DCHECK(sink_);
|
| -
|
| // Ask the browser for the default audio output hardware sample-rate.
|
| // This request is based on a synchronous IPC message.
|
| int sample_rate = GetAudioOutputSampleRate();
|
| @@ -190,8 +190,14 @@ bool WebRtcAudioRenderer::Initialize(WebRtcAudioRendererSource* source) {
|
| source->SetRenderFormat(params_);
|
|
|
| // Configure the audio rendering client and start the rendering.
|
| + scoped_refptr<content::AudioMessageFilter> audio_message_filter =
|
| + RenderThreadImpl::current()->audio_message_filter();
|
| + sink_ = new media::AudioOutputDevice(
|
| + audio_message_filter,
|
| + RenderThreadImpl::current()->GetIOMessageLoopProxy());
|
| sink_->Initialize(params_, this);
|
| -
|
| + audio_message_filter->AssociateStreamWithProducer(sink_->stream_id(),
|
| + source_render_view_id_);
|
| sink_->Start();
|
|
|
| state_ = PAUSED;
|
|
|