Chromium Code Reviews| Index: webkit/media/android/webmediaplayer_android.cc |
| diff --git a/webkit/media/android/webmediaplayer_android.cc b/webkit/media/android/webmediaplayer_android.cc |
| index 5b00e5dbd3c31626a8eb0ff1563c1f33463dccee..175c72b73fae4a49d7ea0874170424e3887b3db7 100644 |
| --- a/webkit/media/android/webmediaplayer_android.cc |
| +++ b/webkit/media/android/webmediaplayer_android.cc |
| @@ -8,6 +8,7 @@ |
| #include "base/files/file_path.h" |
| #include "base/logging.h" |
| #include "cc/layers/video_layer.h" |
| +#include "gpu/GLES2/gl2extchromium.h" |
| #include "media/base/android/media_player_bridge.h" |
| #include "media/base/video_frame.h" |
| #include "net/base/mime_util.h" |
| @@ -246,6 +247,34 @@ void WebMediaPlayerAndroid::paint(WebKit::WebCanvas* canvas, |
| NOTIMPLEMENTED(); |
| } |
| +bool WebMediaPlayerAndroid::copyVideoTextureToPlatformTexture( |
| + WebKit::WebGraphicsContext3D* web_graphics_context, |
| + unsigned int texture, |
| + unsigned int level, |
| + unsigned int internal_format, |
| + bool premultiply_alpha, |
| + bool flip_y) { |
| + if (!texture_id_) |
| + return false; |
| + |
| + // The video is stored in a unmultiplied format, so premultiply if |
|
xhwang
2013/04/16 17:51:36
nit: s/a/an/
hkuang1
2013/04/18 01:05:07
Done.
|
| + // necessary. |
| + web_graphics_context->pixelStorei(GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM, |
| + premultiply_alpha); |
| + |
| + // Application itself needs to take care of setting the right flip_y |
| + // value down to get the expected result. |
| + // flip_y==true means to reverse the video orientation while |
| + // flip_y==false means to keep the intrinsic orientation. |
| + web_graphics_context->pixelStorei(GL_UNPACK_FLIP_Y_CHROMIUM, flip_y); |
| + web_graphics_context->copyTextureCHROMIUM(GL_TEXTURE_2D, texture_id_, |
| + texture, level, internal_format); |
| + web_graphics_context->pixelStorei(GL_UNPACK_FLIP_Y_CHROMIUM, false); |
| + web_graphics_context->pixelStorei(GL_UNPACK_PREMULTIPLY_ALPHA_CHROMIUM, |
| + false); |
|
xhwang
2013/04/16 17:51:36
We have web_graphics_context->flush() for better p
hkuang1
2013/04/18 01:05:07
This may bring some performance gain on desktop pl
|
| + return true; |
| +} |
| + |
| bool WebMediaPlayerAndroid::hasSingleSecurityOrigin() const { |
| return false; |
| } |