Index: content/common/gpu/media/video_decode_accelerator_unittest.cc |
diff --git a/content/common/gpu/media/video_decode_accelerator_unittest.cc b/content/common/gpu/media/video_decode_accelerator_unittest.cc |
index e9f1219fce541ba6ad8d13ce1eaae670334ee570..c4c8bfbcfbaa88c546fa14af546c26745c09ae4a 100644 |
--- a/content/common/gpu/media/video_decode_accelerator_unittest.cc |
+++ b/content/common/gpu/media/video_decode_accelerator_unittest.cc |
@@ -216,7 +216,8 @@ class EglRenderingVDAClient : public VideoDecodeAccelerator::Client { |
// The heart of the Client. |
virtual void ProvidePictureBuffers( |
uint32 requested_num_of_buffers, |
- const gfx::Size& dimensions); |
+ const gfx::Size& dimensions, |
+ media::VideoDecodeAccelerator::TextureTarget texture_target); |
virtual void DismissPictureBuffer(int32 picture_buffer_id); |
virtual void PictureReady(const media::Picture& picture); |
// Simple state changes. |
@@ -343,9 +344,22 @@ void EglRenderingVDAClient::CreateDecoder() { |
profile, gfx::Size(frame_width_, frame_height_), avc_data)); |
} |
+static int ToGLTextureTarget( |
Ami GONE FROM CHROMIUM
2012/05/23 23:42:33
Hopefully can drop.
sail
2012/05/29 18:58:09
Done.
|
+ media::VideoDecodeAccelerator::TextureTarget texture_target) { |
+ switch (texture_target) { |
+ case media::VideoDecodeAccelerator::TEXTURE_TARGET_2D: |
+ return GL_TEXTURE_2D; |
+ case media::VideoDecodeAccelerator::TEXTURE_TARGET_ARB: |
+ return GL_TEXTURE_RECTANGLE_ARB; |
+ } |
+ NOTREACHED(); |
+ return GL_TEXTURE_2D; |
+} |
+ |
void EglRenderingVDAClient::ProvidePictureBuffers( |
uint32 requested_num_of_buffers, |
- const gfx::Size& dimensions) { |
+ const gfx::Size& dimensions, |
+ media::VideoDecodeAccelerator::TextureTarget texture_target) { |
if (decoder_deleted()) |
return; |
std::vector<media::PictureBuffer> buffers; |
@@ -354,7 +368,9 @@ void EglRenderingVDAClient::ProvidePictureBuffers( |
uint32 id = picture_buffers_by_id_.size(); |
uint32 texture_id; |
base::WaitableEvent done(false, false); |
- rendering_helper_->CreateTexture(rendering_window_id_, &texture_id, &done); |
+ rendering_helper_->CreateTexture( |
+ rendering_window_id_, ToGLTextureTarget(texture_target), &texture_id, |
+ &done); |
done.Wait(); |
CHECK(outstanding_texture_ids_.insert(texture_id).second); |
media::PictureBuffer* buffer = |