diff options
author | ycheo@chromium.org <ycheo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-23 08:57:05 +0000 |
---|---|---|
committer | ycheo@chromium.org <ycheo@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-04-23 08:57:05 +0000 |
commit | 71f4a0c8193841a657f56c23b70dbe85d1aa9acb (patch) | |
tree | d9969f3aff5f9720515c00352ec1712055de1503 /content/renderer/media | |
parent | 0be8fc5087f961212ea387b79ce5fcb2dbd4f619 (diff) | |
download | chromium_src-71f4a0c8193841a657f56c23b70dbe85d1aa9acb.zip chromium_src-71f4a0c8193841a657f56c23b70dbe85d1aa9acb.tar.gz chromium_src-71f4a0c8193841a657f56c23b70dbe85d1aa9acb.tar.bz2 |
Add a flag to use the video overlay for the embedded video forcefully.
This flag is for the purpose to test the hole punching logic in Android WebView.
BUG=329447
Review URL: https://codereview.chromium.org/231643007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@265590 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/renderer/media')
-rw-r--r-- | content/renderer/media/android/webmediaplayer_android.cc | 6 | ||||
-rw-r--r-- | content/renderer/media/android/webmediaplayer_android.h | 4 |
2 files changed, 9 insertions, 1 deletions
diff --git a/content/renderer/media/android/webmediaplayer_android.cc b/content/renderer/media/android/webmediaplayer_android.cc index 58eb622..ff4f62f 100644 --- a/content/renderer/media/android/webmediaplayer_android.cc +++ b/content/renderer/media/android/webmediaplayer_android.cc @@ -17,6 +17,7 @@ #include "base/strings/utf_string_conversions.h" #include "cc/layers/video_layer.h" #include "content/public/common/content_client.h" +#include "content/public/common/content_switches.h" #include "content/public/renderer/render_frame.h" #include "content/renderer/media/android/renderer_demuxer_android.h" #include "content/renderer/media/android/renderer_media_player_manager.h" @@ -130,6 +131,8 @@ WebMediaPlayerAndroid::WebMediaPlayerAndroid( // Defer stream texture creation until we are sure it's necessary. needs_establish_peer_ = false; current_frame_ = VideoFrame::CreateBlackFrame(gfx::Size(1, 1)); + force_use_overlay_embedded_video_ = CommandLine::ForCurrentProcess()-> + HasSwitch(switches::kForceUseOverlayEmbeddedVideo); #endif // defined(VIDEO_HOLE) TryCreateStreamTextureProxyIfNeeded(); } @@ -672,7 +675,8 @@ void WebMediaPlayerAndroid::OnVideoSizeChanged(int width, int height) { #if defined(VIDEO_HOLE) // Use H/W surface for encrypted video. // TODO(qinmin): Change this so that only EME needs the H/W surface - if (media_source_delegate_ && media_source_delegate_->IsVideoEncrypted()) { + if (force_use_overlay_embedded_video_ || + (media_source_delegate_ && media_source_delegate_->IsVideoEncrypted())) { needs_external_surface_ = true; if (!paused() && !manager_->IsInFullscreen(frame_)) manager_->RequestExternalSurface(player_id_, last_computed_rect_); diff --git a/content/renderer/media/android/webmediaplayer_android.h b/content/renderer/media/android/webmediaplayer_android.h index caca767..1dcadb4 100644 --- a/content/renderer/media/android/webmediaplayer_android.h +++ b/content/renderer/media/android/webmediaplayer_android.h @@ -393,6 +393,10 @@ class WebMediaPlayerAndroid : public blink::WebMediaPlayer, // A rectangle represents the geometry of video frame, when computed last // time. gfx::RectF last_computed_rect_; + + // Whether to use the video overlay for all embedded video. + // True only for testing. + bool force_use_overlay_embedded_video_; #endif // defined(VIDEO_HOLE) scoped_ptr<MediaSourceDelegate, |