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

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

Issue 517003002: Remove RenderThreadImpl dependencies from WebMediaPlayerImpl. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 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 9
10 #include "base/auto_reset.h" 10 #include "base/auto_reset.h"
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 #include "content/renderer/dom_automation_controller.h" 59 #include "content/renderer/dom_automation_controller.h"
60 #include "content/renderer/dom_utils.h" 60 #include "content/renderer/dom_utils.h"
61 #include "content/renderer/external_popup_menu.h" 61 #include "content/renderer/external_popup_menu.h"
62 #include "content/renderer/geolocation_dispatcher.h" 62 #include "content/renderer/geolocation_dispatcher.h"
63 #include "content/renderer/history_controller.h" 63 #include "content/renderer/history_controller.h"
64 #include "content/renderer/history_serialization.h" 64 #include "content/renderer/history_serialization.h"
65 #include "content/renderer/image_loading_helper.h" 65 #include "content/renderer/image_loading_helper.h"
66 #include "content/renderer/ime_event_guard.h" 66 #include "content/renderer/ime_event_guard.h"
67 #include "content/renderer/internal_document_state_data.h" 67 #include "content/renderer/internal_document_state_data.h"
68 #include "content/renderer/media/audio_renderer_mixer_manager.h" 68 #include "content/renderer/media/audio_renderer_mixer_manager.h"
69 #include "content/renderer/media/crypto/encrypted_media_player_support_impl.h"
69 #include "content/renderer/media/media_stream_dispatcher.h" 70 #include "content/renderer/media/media_stream_dispatcher.h"
70 #include "content/renderer/media/media_stream_impl.h" 71 #include "content/renderer/media/media_stream_impl.h"
71 #include "content/renderer/media/media_stream_renderer_factory.h" 72 #include "content/renderer/media/media_stream_renderer_factory.h"
72 #include "content/renderer/media/midi_dispatcher.h" 73 #include "content/renderer/media/midi_dispatcher.h"
73 #include "content/renderer/media/render_media_log.h" 74 #include "content/renderer/media/render_media_log.h"
74 #include "content/renderer/media/webcontentdecryptionmodule_impl.h" 75 #include "content/renderer/media/webcontentdecryptionmodule_impl.h"
75 #include "content/renderer/media/webmediaplayer_impl.h" 76 #include "content/renderer/media/webmediaplayer_impl.h"
76 #include "content/renderer/media/webmediaplayer_ms.h" 77 #include "content/renderer/media/webmediaplayer_ms.h"
77 #include "content/renderer/media/webmediaplayer_params.h" 78 #include "content/renderer/media/webmediaplayer_params.h"
78 #include "content/renderer/notification_permission_dispatcher.h" 79 #include "content/renderer/notification_permission_dispatcher.h"
79 #include "content/renderer/notification_provider.h" 80 #include "content/renderer/notification_provider.h"
80 #include "content/renderer/npapi/plugin_channel_host.h" 81 #include "content/renderer/npapi/plugin_channel_host.h"
81 #include "content/renderer/push_messaging_dispatcher.h" 82 #include "content/renderer/push_messaging_dispatcher.h"
82 #include "content/renderer/render_frame_proxy.h" 83 #include "content/renderer/render_frame_proxy.h"
83 #include "content/renderer/render_process.h" 84 #include "content/renderer/render_process.h"
84 #include "content/renderer/render_thread_impl.h" 85 #include "content/renderer/render_thread_impl.h"
85 #include "content/renderer/render_view_impl.h" 86 #include "content/renderer/render_view_impl.h"
86 #include "content/renderer/render_widget_fullscreen_pepper.h" 87 #include "content/renderer/render_widget_fullscreen_pepper.h"
87 #include "content/renderer/renderer_webapplicationcachehost_impl.h" 88 #include "content/renderer/renderer_webapplicationcachehost_impl.h"
88 #include "content/renderer/renderer_webcolorchooser_impl.h" 89 #include "content/renderer/renderer_webcolorchooser_impl.h"
89 #include "content/renderer/screen_orientation/screen_orientation_dispatcher.h" 90 #include "content/renderer/screen_orientation/screen_orientation_dispatcher.h"
90 #include "content/renderer/shared_worker_repository.h" 91 #include "content/renderer/shared_worker_repository.h"
91 #include "content/renderer/v8_value_converter_impl.h" 92 #include "content/renderer/v8_value_converter_impl.h"
92 #include "content/renderer/websharedworker_proxy.h" 93 #include "content/renderer/websharedworker_proxy.h"
93 #include "media/base/audio_renderer_mixer_input.h" 94 #include "media/base/audio_renderer_mixer_input.h"
95 #include "media/filters/gpu_video_accelerator_factories.h"
94 #include "net/base/data_url.h" 96 #include "net/base/data_url.h"
95 #include "net/base/net_errors.h" 97 #include "net/base/net_errors.h"
96 #include "net/base/registry_controlled_domains/registry_controlled_domain.h" 98 #include "net/base/registry_controlled_domains/registry_controlled_domain.h"
97 #include "net/http/http_util.h" 99 #include "net/http/http_util.h"
98 #include "third_party/WebKit/public/platform/WebStorageQuotaCallbacks.h" 100 #include "third_party/WebKit/public/platform/WebStorageQuotaCallbacks.h"
99 #include "third_party/WebKit/public/platform/WebString.h" 101 #include "third_party/WebKit/public/platform/WebString.h"
100 #include "third_party/WebKit/public/platform/WebURL.h" 102 #include "third_party/WebKit/public/platform/WebURL.h"
101 #include "third_party/WebKit/public/platform/WebURLError.h" 103 #include "third_party/WebKit/public/platform/WebURLError.h"
102 #include "third_party/WebKit/public/platform/WebURLResponse.h" 104 #include "third_party/WebKit/public/platform/WebURLResponse.h"
103 #include "third_party/WebKit/public/platform/WebVector.h" 105 #include "third_party/WebKit/public/platform/WebVector.h"
(...skipping 1455 matching lines...) Expand 10 before | Expand all | Expand 10 after
1559 #endif // defined(VIDEO_HOLE) 1561 #endif // defined(VIDEO_HOLE)
1560 1562
1561 blink::WebMediaStream web_stream( 1563 blink::WebMediaStream web_stream(
1562 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url)); 1564 blink::WebMediaStreamRegistry::lookupMediaStreamDescriptor(url));
1563 if (!web_stream.isNull()) 1565 if (!web_stream.isNull())
1564 return CreateWebMediaPlayerForMediaStream(url, client); 1566 return CreateWebMediaPlayerForMediaStream(url, client);
1565 1567
1566 #if defined(OS_ANDROID) 1568 #if defined(OS_ANDROID)
1567 return CreateAndroidWebMediaPlayer(url, client); 1569 return CreateAndroidWebMediaPlayer(url, client);
1568 #else 1570 #else
1569 WebMediaPlayerParams params( 1571 RenderThreadImpl* render_thread = RenderThreadImpl::current();
1572 scoped_ptr<EncryptedMediaPlayerSupport> encrypted_media_player_support(
1573 new EncryptedMediaPlayerSupportImpl(client));
1574 scoped_ptr<WebMediaPlayerParams> params(new WebMediaPlayerParams(
1570 base::Bind(&ContentRendererClient::DeferMediaLoad, 1575 base::Bind(&ContentRendererClient::DeferMediaLoad,
1571 base::Unretained(GetContentClient()->renderer()), 1576 base::Unretained(GetContentClient()->renderer()),
1572 static_cast<RenderFrame*>(this)), 1577 static_cast<RenderFrame*>(this)),
1573 RenderThreadImpl::current()->GetAudioRendererMixerManager()->CreateInput( 1578 render_thread->GetAudioRendererMixerManager()->CreateInput(
1574 render_view_->routing_id_, routing_id_)); 1579 render_view_->routing_id_, routing_id_),
1580 render_thread->GetAudioHardwareConfig(),
1581 new RenderMediaLog(),
1582 render_thread->GetGpuFactories(),
1583 render_thread->GetMediaThreadTaskRunner(),
1584 render_thread->compositor_message_loop_proxy(),
1585 encrypted_media_player_support.Pass()));
1586
1575 return new WebMediaPlayerImpl(frame, client, weak_factory_.GetWeakPtr(), 1587 return new WebMediaPlayerImpl(frame, client, weak_factory_.GetWeakPtr(),
1576 params); 1588 params.Pass());
1577 #endif // defined(OS_ANDROID) 1589 #endif // defined(OS_ANDROID)
1578 } 1590 }
1579 1591
1580 blink::WebContentDecryptionModule* 1592 blink::WebContentDecryptionModule*
1581 RenderFrameImpl::createContentDecryptionModule( 1593 RenderFrameImpl::createContentDecryptionModule(
1582 blink::WebLocalFrame* frame, 1594 blink::WebLocalFrame* frame,
1583 const blink::WebSecurityOrigin& security_origin, 1595 const blink::WebSecurityOrigin& security_origin,
1584 const blink::WebString& key_system) { 1596 const blink::WebString& key_system) {
1585 DCHECK(!frame_ || frame_ == frame); 1597 DCHECK(!frame_ || frame_ == frame);
1586 return WebContentDecryptionModuleImpl::Create( 1598 return WebContentDecryptionModuleImpl::Create(
(...skipping 2229 matching lines...) Expand 10 before | Expand all | Expand 10 after
3816 3828
3817 #if defined(ENABLE_BROWSER_CDMS) 3829 #if defined(ENABLE_BROWSER_CDMS)
3818 RendererCdmManager* RenderFrameImpl::GetCdmManager() { 3830 RendererCdmManager* RenderFrameImpl::GetCdmManager() {
3819 if (!cdm_manager_) 3831 if (!cdm_manager_)
3820 cdm_manager_ = new RendererCdmManager(this); 3832 cdm_manager_ = new RendererCdmManager(this);
3821 return cdm_manager_; 3833 return cdm_manager_;
3822 } 3834 }
3823 #endif // defined(ENABLE_BROWSER_CDMS) 3835 #endif // defined(ENABLE_BROWSER_CDMS)
3824 3836
3825 } // namespace content 3837 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698