| Index: media/video/gpu_memory_buffer_video_frame_pool.cc
|
| diff --git a/media/video/gpu_memory_buffer_video_frame_pool.cc b/media/video/gpu_memory_buffer_video_frame_pool.cc
|
| index cc85d0f8ab2beecefeea5c6d2c96a8839b68feb8..d3fe528237a4a065a37d41eb1d63e831914b5212 100644
|
| --- a/media/video/gpu_memory_buffer_video_frame_pool.cc
|
| +++ b/media/video/gpu_memory_buffer_video_frame_pool.cc
|
| @@ -600,9 +600,6 @@ void GpuMemoryBufferVideoFramePool::PoolImpl::
|
| output_format_, mailbox_holders, release_mailbox_callback, coded_size,
|
| gfx::Rect(visible_size), video_frame->natural_size(),
|
| video_frame->timestamp());
|
| - if (frame &&
|
| - video_frame->metadata()->IsTrue(VideoFrameMetadata::ALLOW_OVERLAY))
|
| - frame->metadata()->SetBoolean(VideoFrameMetadata::ALLOW_OVERLAY, true);
|
|
|
| if (!frame) {
|
| release_mailbox_callback.Run(gpu::SyncToken());
|
| @@ -610,6 +607,22 @@ void GpuMemoryBufferVideoFramePool::PoolImpl::
|
| return;
|
| }
|
|
|
| + bool allow_overlay = false;
|
| + switch (output_format_) {
|
| + case PIXEL_FORMAT_I420:
|
| + allow_overlay =
|
| + video_frame->metadata()->IsTrue(VideoFrameMetadata::ALLOW_OVERLAY);
|
| + break;
|
| + case PIXEL_FORMAT_NV12:
|
| + case PIXEL_FORMAT_UYVY:
|
| + allow_overlay = true;
|
| + break;
|
| + default:
|
| + break;
|
| + }
|
| + frame->metadata()->SetBoolean(VideoFrameMetadata::ALLOW_OVERLAY,
|
| + allow_overlay);
|
| +
|
| base::TimeTicks render_time;
|
| if (video_frame->metadata()->GetTimeTicks(VideoFrameMetadata::REFERENCE_TIME,
|
| &render_time)) {
|
|
|