| Index: content/renderer/media/webmediaplayer_ms.cc
|
| diff --git a/content/renderer/media/webmediaplayer_ms.cc b/content/renderer/media/webmediaplayer_ms.cc
|
| index 9a16a945d4c66aee7cecb37fc48de71b423daf71..8961e133bbc89b60d4093f118d368c2cb3567c2f 100644
|
| --- a/content/renderer/media/webmediaplayer_ms.cc
|
| +++ b/content/renderer/media/webmediaplayer_ms.cc
|
| @@ -481,6 +481,34 @@ bool WebMediaPlayerMS::copyVideoTextureToPlatformTexture(
|
| premultiply_alpha, flip_y);
|
| }
|
|
|
| +bool WebMediaPlayerMS::texImageImpl(const char* functionID,
|
| + unsigned target,
|
| + gpu::gles2::GLES2Interface* gl,
|
| + int level,
|
| + int internalformat,
|
| + unsigned format,
|
| + unsigned type,
|
| + int xoffset,
|
| + int yoffset,
|
| + int zoffset,
|
| + bool flipY,
|
| + bool premultiplyAlpha) {
|
| + TRACE_EVENT0("media", "WebMediaPlayerMS:texImageImpl");
|
| + DCHECK(thread_checker_.CalledOnValidThread());
|
| +
|
| + const scoped_refptr<media::VideoFrame> video_frame =
|
| + compositor_->GetCurrentFrameWithoutUpdatingStatistics();
|
| + if (!video_frame || !video_frame->IsMappable() ||
|
| + video_frame->HasTextures() ||
|
| + media::VideoFrame::NumPlanes(video_frame->format()) != 1) {
|
| + return false;
|
| + }
|
| +
|
| + return media::SkCanvasVideoRenderer::TexImageImpl(
|
| + functionID, target, gl, video_frame.get(), level, internalformat, format,
|
| + type, xoffset, yoffset, zoffset, flipY, premultiplyAlpha);
|
| +}
|
| +
|
| void WebMediaPlayerMS::OnFrameAvailable(
|
| const scoped_refptr<media::VideoFrame>& frame) {
|
| DVLOG(3) << __func__;
|
|
|