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

Unified Diff: content/renderer/render_frame_impl.cc

Issue 1133033003: Eliminate MediaPlayer & MediaPlayerClient abstractions (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixed review comments Created 5 years, 5 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
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | media/blink/encrypted_media_player_support.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/renderer/render_frame_impl.cc
diff --git a/content/renderer/render_frame_impl.cc b/content/renderer/render_frame_impl.cc
index 7005fdd66b83c004a1b45dac7c53f7973f5d4082..13254e518f13228216f970b626aa3fbd195a9e26 100644
--- a/content/renderer/render_frame_impl.cc
+++ b/content/renderer/render_frame_impl.cc
@@ -116,6 +116,7 @@
#include "net/base/net_errors.h"
#include "net/base/registry_controlled_domains/registry_controlled_domain.h"
#include "net/http/http_util.h"
+#include "third_party/WebKit/public/platform/WebMediaPlayerClient.h"
#include "third_party/WebKit/public/platform/WebStorageQuotaCallbacks.h"
#include "third_party/WebKit/public/platform/WebString.h"
#include "third_party/WebKit/public/platform/WebURL.h"
@@ -191,6 +192,7 @@
#include "content/renderer/vr/vr_dispatcher.h"
#endif
+using blink::WebContentDecryptionModule;
using blink::WebContextMenuData;
using blink::WebData;
using blink::WebDataSource;
@@ -206,6 +208,7 @@ using blink::WebHTTPBody;
using blink::WebLocalFrame;
using blink::WebMediaPlayer;
using blink::WebMediaPlayerClient;
+using blink::WebMediaPlayerEncryptedMediaClient;
using blink::WebNavigationPolicy;
using blink::WebNavigationType;
using blink::WebNode;
@@ -1961,8 +1964,17 @@ blink::WebPlugin* RenderFrameImpl::createPlugin(
blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer(
blink::WebLocalFrame* frame,
const blink::WebURL& url,
- blink::WebMediaPlayerClient* client,
- blink::WebContentDecryptionModule* initial_cdm) {
+ WebMediaPlayerClient* client,
+ WebContentDecryptionModule* initial_cdm) {
+ return createMediaPlayer(frame, url, client, client, initial_cdm);
+}
+
+blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer(
+ blink::WebLocalFrame* frame,
+ const blink::WebURL& url,
+ WebMediaPlayerClient* client,
+ WebMediaPlayerEncryptedMediaClient* encrypted_client,
+ WebContentDecryptionModule* initial_cdm) {
#if defined(VIDEO_HOLE)
if (!contains_media_player_) {
render_view_->RegisterVideoHoleFrame(this);
@@ -1976,7 +1988,8 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer(
return CreateWebMediaPlayerForMediaStream(client);
#if defined(OS_ANDROID)
- return CreateAndroidWebMediaPlayer(client, GetMediaPermission(), initial_cdm);
+ return CreateAndroidWebMediaPlayer(client, encrypted_client,
+ GetMediaPermission(), initial_cdm);
#else
scoped_refptr<media::MediaLog> media_log(new RenderMediaLog());
@@ -2007,8 +2020,8 @@ blink::WebMediaPlayer* RenderFrameImpl::createMediaPlayer(
#endif // defined(ENABLE_MOJO_MEDIA)
return new media::WebMediaPlayerImpl(
- frame, client, weak_factory_.GetWeakPtr(), media_renderer_factory.Pass(),
- GetCdmFactory(), params);
+ frame, client, encrypted_client, weak_factory_.GetWeakPtr(),
+ media_renderer_factory.Pass(), GetCdmFactory(), params);
#endif // defined(OS_ANDROID)
}
@@ -3784,18 +3797,18 @@ blink::WebVRClient* RenderFrameImpl::webVRClient() {
}
#endif
-void RenderFrameImpl::DidPlay(blink::WebMediaPlayer* player) {
+void RenderFrameImpl::DidPlay(WebMediaPlayer* player) {
Send(new FrameHostMsg_MediaPlayingNotification(
routing_id_, reinterpret_cast<int64>(player), player->hasVideo(),
player->hasAudio(), player->isRemote()));
}
-void RenderFrameImpl::DidPause(blink::WebMediaPlayer* player) {
+void RenderFrameImpl::DidPause(WebMediaPlayer* player) {
Send(new FrameHostMsg_MediaPausedNotification(
routing_id_, reinterpret_cast<int64>(player)));
}
-void RenderFrameImpl::PlayerGone(blink::WebMediaPlayer* player) {
+void RenderFrameImpl::PlayerGone(WebMediaPlayer* player) {
DidPause(player);
}
@@ -4913,9 +4926,9 @@ NavigationState* RenderFrameImpl::CreateNavigationStateFromPending() {
WebMediaPlayer* RenderFrameImpl::CreateAndroidWebMediaPlayer(
WebMediaPlayerClient* client,
+ WebMediaPlayerEncryptedMediaClient* encrypted_client,
media::MediaPermission* media_permission,
- blink::WebContentDecryptionModule* initial_cdm) {
-
+ WebContentDecryptionModule* initial_cdm) {
scoped_refptr<StreamTextureFactory> stream_texture_factory;
if (SynchronousCompositorFactory* factory =
SynchronousCompositorFactory::GetInstance()) {
@@ -4943,8 +4956,9 @@ WebMediaPlayer* RenderFrameImpl::CreateAndroidWebMediaPlayer(
}
return new WebMediaPlayerAndroid(
- frame_, client, weak_factory_.GetWeakPtr(), GetMediaPlayerManager(),
- GetCdmFactory(), media_permission, initial_cdm, stream_texture_factory,
+ frame_, client, encrypted_client, weak_factory_.GetWeakPtr(),
+ GetMediaPlayerManager(), GetCdmFactory(), media_permission, initial_cdm,
+ stream_texture_factory,
RenderThreadImpl::current()->GetMediaThreadTaskRunner(),
new RenderMediaLog());
}
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | media/blink/encrypted_media_player_support.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698