 Chromium Code Reviews
 Chromium Code Reviews Issue 2121043002:
  16 bpp video stream capture, render and WebGL usage - Realsense R200 & SR300 support. 
  Base URL: https://chromium.googlesource.com/chromium/src.git@master
    
  
    Issue 2121043002:
  16 bpp video stream capture, render and WebGL usage - Realsense R200 & SR300 support. 
  Base URL: https://chromium.googlesource.com/chromium/src.git@master| Index: cc/layers/video_layer_impl.cc | 
| diff --git a/cc/layers/video_layer_impl.cc b/cc/layers/video_layer_impl.cc | 
| index 299c446ff609f621438cd36d0536f804f3b56460..0e2191bb609fe4acbcccd19b55655f335a0e63aa 100644 | 
| --- a/cc/layers/video_layer_impl.cc | 
| +++ b/cc/layers/video_layer_impl.cc | 
| @@ -12,6 +12,7 @@ | 
| #include "cc/layers/video_frame_provider_client_impl.h" | 
| #include "cc/quads/stream_video_draw_quad.h" | 
| #include "cc/quads/texture_draw_quad.h" | 
| +#include "cc/quads/y_video_draw_quad.h" | 
| #include "cc/quads/yuv_video_draw_quad.h" | 
| #include "cc/resources/resource_provider.h" | 
| #include "cc/resources/single_release_callback_impl.h" | 
| @@ -309,6 +310,24 @@ void VideoLayerImpl::AppendQuads(RenderPass* render_pass, | 
| ValidateQuadResources(texture_quad); | 
| break; | 
| } | 
| + case VideoFrameExternalResources::Y16_RESOURCE: { | 
| + // TODO(astojilj) TextureDrawQuad could be used with nearest_neighbor set | 
| + // - evaluate if it is required to add YVideoDrawQuad for Y16 and Y8. | 
| + // For now it desnt't look like YVideoDrawQuad is required as the plan | 
| + // is to render RG or R in original form. | 
| + DCHECK_EQ(frame_resources_.size(), 1u); | 
| + if (frame_resources_.size() < 1u) | 
| + break; | 
| + gfx::PointF uv_top_left(0.f, 0.f); | 
| + gfx::PointF uv_bottom_right(tex_width_scale, tex_height_scale); | 
| + YVideoDrawQuad* y_video_quad = | 
| 
dshwang
2016/07/04 18:23:16
IMO, existing TextureDrawQuad can handle it.
 
aleksandar.stojiljkovic
2016/07/05 19:54:17
Done.
 | 
| + render_pass->CreateAndAppendDrawQuad<YVideoDrawQuad>(); | 
| + y_video_quad->SetNew(shared_quad_state, quad_rect, opaque_rect, | 
| + visible_quad_rect, frame_resources_[0].id, uv_top_left, | 
| + uv_bottom_right); | 
| + ValidateQuadResources(y_video_quad); | 
| + break; | 
| + } | 
| case VideoFrameExternalResources::STREAM_TEXTURE_RESOURCE: { | 
| DCHECK_EQ(frame_resources_.size(), 1u); | 
| if (frame_resources_.size() < 1u) |