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

Unified Diff: content/renderer/media/audio_device_factory.cc

Issue 1809093003: Moving SwitchOutputDevice out of OutputDevice interface, eliminating OutputDevice (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Replace RestartableAudioRendererSink with SwitchableAudioRendererSink in webmediaplayer_impl unit t… Created 4 years, 9 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
Index: content/renderer/media/audio_device_factory.cc
diff --git a/content/renderer/media/audio_device_factory.cc b/content/renderer/media/audio_device_factory.cc
index e2118fea834f453690dbf80d7c0c1394b53eb861..ea4b3abb79a5cc284b5ff6b156ca6f772f31660c 100644
--- a/content/renderer/media/audio_device_factory.cc
+++ b/content/renderer/media/audio_device_factory.cc
@@ -21,6 +21,18 @@ AudioDeviceFactory* AudioDeviceFactory::factory_ = NULL;
namespace {
+media::AudioOutputDevice* NewOutputDevice(int render_frame_id,
+ int session_id,
+ const std::string& device_id,
+ const url::Origin& security_origin) {
+ AudioMessageFilter* const filter = AudioMessageFilter::Get();
+ media::AudioOutputDevice* device = new media::AudioOutputDevice(
+ filter->CreateAudioOutputIPC(render_frame_id), filter->io_task_runner(),
+ session_id, device_id, security_origin);
+ device->RequestDeviceAuthorization();
+ return device;
+}
+
// This is where we decide which audio will go to mixers and which one to
// AudioOutpuDevice directly.
bool IsMixable(AudioDeviceFactory::SourceType source_type) {
@@ -32,7 +44,7 @@ bool IsMixable(AudioDeviceFactory::SourceType source_type) {
return false;
}
-scoped_refptr<media::RestartableAudioRendererSink> NewMixableSink(
+scoped_refptr<media::SwitchableAudioRendererSink> NewMixableSink(
int render_frame_id,
const std::string& device_id,
const url::Origin& security_origin) {
@@ -47,31 +59,27 @@ scoped_refptr<media::AudioRendererSink> NewUnmixableSink(
int session_id,
const std::string& device_id,
const url::Origin& security_origin) {
- return AudioDeviceFactory::NewOutputDevice(render_frame_id, session_id,
- device_id, security_origin);
+ return NewOutputDevice(render_frame_id, session_id, device_id,
+ security_origin);
}
} // namespace
-// static
-scoped_refptr<media::AudioOutputDevice> AudioDeviceFactory::NewOutputDevice(
+scoped_refptr<media::AudioRendererSink>
+AudioDeviceFactory::NewAudioRendererMixerSink(
int render_frame_id,
int session_id,
const std::string& device_id,
const url::Origin& security_origin) {
if (factory_) {
- media::AudioOutputDevice* const device = factory_->CreateOutputDevice(
- render_frame_id, session_id, device_id, security_origin);
- if (device)
- return device;
+ media::AudioRendererSink* const sink =
+ factory_->CreateAudioRendererMixerSink(render_frame_id, session_id,
+ device_id, security_origin);
+ if (sink)
+ return sink;
}
-
- AudioMessageFilter* const filter = AudioMessageFilter::Get();
- scoped_refptr<media::AudioOutputDevice> device = new media::AudioOutputDevice(
- filter->CreateAudioOutputIPC(render_frame_id), filter->io_task_runner(),
- session_id, device_id, security_origin);
- device->RequestDeviceAuthorization();
- return device;
+ return NewOutputDevice(render_frame_id, session_id, device_id,
+ security_origin);
}
// static
@@ -96,20 +104,20 @@ AudioDeviceFactory::NewAudioRendererSink(SourceType source_type,
}
// static
-scoped_refptr<media::RestartableAudioRendererSink>
-AudioDeviceFactory::NewRestartableAudioRendererSink(
+scoped_refptr<media::SwitchableAudioRendererSink>
+AudioDeviceFactory::NewSwitchableAudioRendererSink(
SourceType source_type,
int render_frame_id,
int session_id,
const std::string& device_id,
const url::Origin& security_origin) {
if (factory_) {
- media::RestartableAudioRendererSink* const device =
- factory_->CreateRestartableAudioRendererSink(
- source_type, render_frame_id, session_id, device_id,
- security_origin);
- if (device)
- return device;
+ media::SwitchableAudioRendererSink* const sink =
+ factory_->CreateSwitchableAudioRendererSink(source_type,
+ render_frame_id, session_id,
+ device_id, security_origin);
+ if (sink)
+ return sink;
}
if (IsMixable(source_type))

Powered by Google App Engine
This is Rietveld 408576698