Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2405)

Unified Diff: content/common/gpu/media/video_decode_accelerator_unittest.cc

Issue 10392141: Plumb texture target to VideoDecodeAccelerator::Client (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 =

Powered by Google App Engine
This is Rietveld 408576698