Chromium Code Reviews| Index: content/common/gpu/media/gpu_video_decode_accelerator.cc |
| diff --git a/content/common/gpu/media/gpu_video_decode_accelerator.cc b/content/common/gpu/media/gpu_video_decode_accelerator.cc |
| index 9ef0a537f2b9e63ac72cea9b39f80adf50e9e1e6..06174d822b0c2c18bb982a82b7cfad5ea12247a9 100644 |
| --- a/content/common/gpu/media/gpu_video_decode_accelerator.cc |
| +++ b/content/common/gpu/media/gpu_video_decode_accelerator.cc |
| @@ -341,7 +341,11 @@ scoped_ptr<media::VideoDecodeAccelerator> |
| GpuVideoDecodeAccelerator::CreateVaapiVDA() { |
| scoped_ptr<media::VideoDecodeAccelerator> decoder; |
| #if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) |
| - decoder.reset(new VaapiVideoDecodeAccelerator(make_context_current_)); |
| + gpu::gles2::GLES2Decoder* command_decoder = stub_->decoder(); |
| + gpu::gles2::TextureManager* texture_manager = |
| + command_decoder->GetContextGroup()->texture_manager(); |
| + decoder.reset( |
| + new VaapiVideoDecodeAccelerator(make_context_current_, texture_manager)); |
| #endif |
| return decoder.Pass(); |
| } |
| @@ -475,8 +479,8 @@ void GpuVideoDecodeAccelerator::OnAssignPictureBuffers( |
| NotifyError(media::VideoDecodeAccelerator::PLATFORM_FAILURE); |
| return; |
| } |
| - buffers.push_back(media::PictureBuffer( |
| - buffer_ids[i], texture_dimensions_, service_texture_id)); |
| + buffers.push_back(media::PictureBuffer(buffer_ids[i], texture_dimensions_, |
| + service_texture_id, texture_ids[i])); |
|
Pawel Osciak
2015/01/21 13:07:07
Could you please explain the difference between se
achaulk
2015/01/21 17:10:03
texture_id[] is the client-side (browser) texture
piman
2015/01/21 23:58:22
If you have the TextureRef, you can get the servic
achaulk
2015/01/22 18:13:47
Yes, but if I pass only the client ID instead, all
|
| textures.push_back(texture_ref); |
| } |
| video_decode_accelerator_->AssignPictureBuffers(buffers); |