Index: media/blink/webaudiosourceprovider_impl.cc |
diff --git a/media/blink/webaudiosourceprovider_impl.cc b/media/blink/webaudiosourceprovider_impl.cc |
index d43a16fb5b1b927eab078c7fb7f952b02aafe3b6..ecc548f848782666a49e9b31f6c369c7581efe43 100644 |
--- a/media/blink/webaudiosourceprovider_impl.cc |
+++ b/media/blink/webaudiosourceprovider_impl.cc |
@@ -87,7 +87,7 @@ class WebAudioSourceProviderImpl::TeeFilter |
}; |
WebAudioSourceProviderImpl::WebAudioSourceProviderImpl( |
- const scoped_refptr<RestartableAudioRendererSink>& sink) |
+ const scoped_refptr<SwitchableAudioRendererSink>& sink) |
: volume_(1.0), |
state_(kStopped), |
client_(nullptr), |
@@ -204,6 +204,17 @@ OutputDevice* WebAudioSourceProviderImpl::GetOutputDevice() { |
return sink_->GetOutputDevice(); |
} |
+void WebAudioSourceProviderImpl::SwitchOutputDevice( |
+ const std::string& device_id, |
+ const url::Origin& security_origin, |
+ const SwitchOutputDeviceCB& callback) { |
+ base::AutoLock auto_lock(sink_lock_); |
+ if (sink_) |
Guido Urdaneta
2016/03/17 17:38:24
Shouldn't this one also have the "!client" check t
o1ka
2016/03/18 10:45:40
Agree. Done.
|
+ sink_->SwitchOutputDevice(device_id, security_origin, callback); |
+ else |
+ callback.Run(media::OUTPUT_DEVICE_STATUS_ERROR_INTERNAL); |
+} |
+ |
void WebAudioSourceProviderImpl::Initialize(const AudioParameters& params, |
RenderCallback* renderer) { |
base::AutoLock auto_lock(sink_lock_); |