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

Side by Side Diff: content/renderer/render_frame_impl.cc

Issue 1666363005: Switching audio clients to using RestartableAudioRendererSink interface as a sink. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: nit fixes Created 4 years, 10 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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/render_frame_impl.h" 5 #include "content/renderer/render_frame_impl.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 #include "content/renderer/external_popup_menu.h" 87 #include "content/renderer/external_popup_menu.h"
88 #include "content/renderer/geolocation_dispatcher.h" 88 #include "content/renderer/geolocation_dispatcher.h"
89 #include "content/renderer/gpu/gpu_benchmarking_extension.h" 89 #include "content/renderer/gpu/gpu_benchmarking_extension.h"
90 #include "content/renderer/history_controller.h" 90 #include "content/renderer/history_controller.h"
91 #include "content/renderer/history_serialization.h" 91 #include "content/renderer/history_serialization.h"
92 #include "content/renderer/image_downloader/image_downloader_impl.h" 92 #include "content/renderer/image_downloader/image_downloader_impl.h"
93 #include "content/renderer/ime_event_guard.h" 93 #include "content/renderer/ime_event_guard.h"
94 #include "content/renderer/internal_document_state_data.h" 94 #include "content/renderer/internal_document_state_data.h"
95 #include "content/renderer/manifest/manifest_manager.h" 95 #include "content/renderer/manifest/manifest_manager.h"
96 #include "content/renderer/media/audio_device_factory.h" 96 #include "content/renderer/media/audio_device_factory.h"
97 #include "content/renderer/media/audio_renderer_mixer_manager.h"
98 #include "content/renderer/media/cdm/render_cdm_factory.h" 97 #include "content/renderer/media/cdm/render_cdm_factory.h"
99 #include "content/renderer/media/media_permission_dispatcher.h" 98 #include "content/renderer/media/media_permission_dispatcher.h"
100 #include "content/renderer/media/media_stream_dispatcher.h" 99 #include "content/renderer/media/media_stream_dispatcher.h"
101 #include "content/renderer/media/media_stream_renderer_factory_impl.h" 100 #include "content/renderer/media/media_stream_renderer_factory_impl.h"
102 #include "content/renderer/media/midi_dispatcher.h" 101 #include "content/renderer/media/midi_dispatcher.h"
103 #include "content/renderer/media/render_media_log.h" 102 #include "content/renderer/media/render_media_log.h"
104 #include "content/renderer/media/renderer_webmediaplayer_delegate.h" 103 #include "content/renderer/media/renderer_webmediaplayer_delegate.h"
105 #include "content/renderer/media/user_media_client_impl.h" 104 #include "content/renderer/media/user_media_client_impl.h"
106 #include "content/renderer/media/webmediaplayer_ms.h" 105 #include "content/renderer/media/webmediaplayer_ms.h"
107 #include "content/renderer/mojo/service_registry_js_wrapper.h" 106 #include "content/renderer/mojo/service_registry_js_wrapper.h"
(...skipping 2359 matching lines...) Expand 10 before | Expand all | Expand 10 after
2467 2466
2468 blink::WebMediaStream web_stream( 2467 blink::WebMediaStream web_stream(
2469 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url)); 2468 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url));
2470 if (!web_stream.isNull()) 2469 if (!web_stream.isNull())
2471 return CreateWebMediaPlayerForMediaStream(client, sink_id, 2470 return CreateWebMediaPlayerForMediaStream(client, sink_id,
2472 frame_->securityOrigin()); 2471 frame_->securityOrigin());
2473 2472
2474 RenderThreadImpl* render_thread = RenderThreadImpl::current(); 2473 RenderThreadImpl* render_thread = RenderThreadImpl::current();
2475 2474
2476 scoped_refptr<media::RestartableAudioRendererSink> audio_renderer_sink = 2475 scoped_refptr<media::RestartableAudioRendererSink> audio_renderer_sink =
2477 render_thread->GetAudioRendererMixerManager()->CreateInput( 2476 AudioDeviceFactory::NewRestartableAudioRendererSink(
2478 routing_id_, sink_id.utf8(), frame_->securityOrigin()); 2477 AudioDeviceFactory::kSourceMediaElement, routing_id_, 0,
2478 sink_id.utf8(), frame_->securityOrigin());
2479 media::WebMediaPlayerParams::Context3DCB context_3d_cb = 2479 media::WebMediaPlayerParams::Context3DCB context_3d_cb =
2480 base::Bind(&GetSharedMainThreadContext3D); 2480 base::Bind(&GetSharedMainThreadContext3D);
2481 2481
2482 scoped_refptr<media::MediaLog> media_log(new RenderMediaLog()); 2482 scoped_refptr<media::MediaLog> media_log(new RenderMediaLog());
2483 media::WebMediaPlayerParams params( 2483 media::WebMediaPlayerParams params(
2484 base::Bind(&ContentRendererClient::DeferMediaLoad, 2484 base::Bind(&ContentRendererClient::DeferMediaLoad,
2485 base::Unretained(GetContentClient()->renderer()), 2485 base::Unretained(GetContentClient()->renderer()),
2486 static_cast<RenderFrame*>(this), 2486 static_cast<RenderFrame*>(this),
2487 GetWebMediaPlayerDelegate()->has_played_media()), 2487 GetWebMediaPlayerDelegate()->has_played_media()),
2488 audio_renderer_sink, media_log, render_thread->GetMediaThreadTaskRunner(), 2488 audio_renderer_sink, media_log, render_thread->GetMediaThreadTaskRunner(),
(...skipping 3587 matching lines...) Expand 10 before | Expand all | Expand 10 after
6076 media_player_delegate_ = new media::RendererWebMediaPlayerDelegate(this); 6076 media_player_delegate_ = new media::RendererWebMediaPlayerDelegate(this);
6077 return media_player_delegate_; 6077 return media_player_delegate_;
6078 } 6078 }
6079 6079
6080 void RenderFrameImpl::checkIfAudioSinkExistsAndIsAuthorized( 6080 void RenderFrameImpl::checkIfAudioSinkExistsAndIsAuthorized(
6081 const blink::WebString& sink_id, 6081 const blink::WebString& sink_id,
6082 const blink::WebSecurityOrigin& security_origin, 6082 const blink::WebSecurityOrigin& security_origin,
6083 blink::WebSetSinkIdCallbacks* web_callbacks) { 6083 blink::WebSetSinkIdCallbacks* web_callbacks) {
6084 media::SwitchOutputDeviceCB callback = 6084 media::SwitchOutputDeviceCB callback =
6085 media::ConvertToSwitchOutputDeviceCB(web_callbacks); 6085 media::ConvertToSwitchOutputDeviceCB(web_callbacks);
6086 scoped_refptr<media::AudioOutputDevice> device = 6086 callback.Run(AudioDeviceFactory::GetOutputDeviceStatus(
6087 AudioDeviceFactory::NewOutputDevice(routing_id_, 0, sink_id.utf8(), 6087 routing_id_, 0, sink_id.utf8(), security_origin));
6088 security_origin);
6089 media::OutputDeviceStatus status = device->GetDeviceStatus();
6090 device->Stop();
6091 callback.Run(status);
6092 } 6088 }
6093 6089
6094 blink::WebPlugin* RenderFrameImpl::GetWebPluginForFind() { 6090 blink::WebPlugin* RenderFrameImpl::GetWebPluginForFind() {
6095 if (!is_main_frame_) 6091 if (!is_main_frame_)
6096 return nullptr; 6092 return nullptr;
6097 6093
6098 if (frame_->document().isPluginDocument()) 6094 if (frame_->document().isPluginDocument())
6099 return frame_->document().to<WebPluginDocument>().plugin(); 6095 return frame_->document().to<WebPluginDocument>().plugin();
6100 6096
6101 #if defined(ENABLE_PLUGINS) 6097 #if defined(ENABLE_PLUGINS)
6102 if (plugin_find_handler_) 6098 if (plugin_find_handler_)
6103 return plugin_find_handler_->container()->plugin(); 6099 return plugin_find_handler_->container()->plugin();
6104 #endif 6100 #endif
6105 6101
6106 return nullptr; 6102 return nullptr;
6107 } 6103 }
6108 6104
6109 void RenderFrameImpl::SendFindReply(int request_id, 6105 void RenderFrameImpl::SendFindReply(int request_id,
6110 int match_count, 6106 int match_count,
6111 int ordinal, 6107 int ordinal,
6112 const WebRect& selection_rect, 6108 const WebRect& selection_rect,
6113 bool final_status_update) { 6109 bool final_status_update) {
6114 Send(new FrameHostMsg_Find_Reply(routing_id_, request_id, match_count, 6110 Send(new FrameHostMsg_Find_Reply(routing_id_, request_id, match_count,
6115 selection_rect, ordinal, 6111 selection_rect, ordinal,
6116 final_status_update)); 6112 final_status_update));
6117 } 6113 }
6118 6114
6119 } // namespace content 6115 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/webrtc_audio_renderer_unittest.cc ('k') | media/base/audio_renderer_mixer_input.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698