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

Unified Diff: media/filters/gpu_video_decoder.cc

Issue 1942123002: Plumb decoded video pixel format from GPU process to renderer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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: media/filters/gpu_video_decoder.cc
diff --git a/media/filters/gpu_video_decoder.cc b/media/filters/gpu_video_decoder.cc
index 41f697368edf6b6401c25b34d2e7c7f560104c7f..f2204e4d668b89b387644afb73660de1289b5cdd 100644
--- a/media/filters/gpu_video_decoder.cc
+++ b/media/filters/gpu_video_decoder.cc
@@ -562,9 +562,14 @@ void GpuVideoDecoder::PictureReady(const media::Picture& picture) {
IsOpaque(config_.format()) ? PIXEL_FORMAT_XRGB : PIXEL_FORMAT_ARGB;
}
- scoped_refptr<VideoFrame> frame(VideoFrame::WrapNativeTexture(
- pixel_format, gpu::MailboxHolder(pb.texture_mailbox(0), gpu::SyncToken(),
- decoder_texture_target_),
+ gpu::MailboxHolder mailbox_holders[VideoFrame::kMaxPlanes];
+ for (size_t i = 0; i < pb.texture_ids().size(); ++i) {
+ mailbox_holders[i] = gpu::MailboxHolder(
+ pb.texture_mailbox(i), gpu::SyncToken(), decoder_texture_target_);
+ }
+
+ scoped_refptr<VideoFrame> frame(VideoFrame::WrapNativeTextures(
+ pixel_format, mailbox_holders,
base::Bind(&ReleaseMailboxTrampoline, factories_->GetTaskRunner(),
base::Bind(&GpuVideoDecoder::ReleaseMailbox,
weak_factory_.GetWeakPtr(), factories_,

Powered by Google App Engine
This is Rietveld 408576698