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

Unified Diff: content/renderer/media/renderer_gpu_video_decoder_factories.h

Issue 14199002: Send hardware video frames with mailboxes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Ifdefed Created 7 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: content/renderer/media/renderer_gpu_video_decoder_factories.h
diff --git a/content/renderer/media/renderer_gpu_video_decoder_factories.h b/content/renderer/media/renderer_gpu_video_decoder_factories.h
index de5f19f03e850e5a31b266eac5711860a4a518ae..96f8b61506309865e4b57ea4d73f25150c63a0d5 100644
--- a/content/renderer/media/renderer_gpu_video_decoder_factories.h
+++ b/content/renderer/media/renderer_gpu_video_decoder_factories.h
@@ -50,8 +50,14 @@ class CONTENT_EXPORT RendererGpuVideoDecoderFactories
media::VideoDecodeAccelerator::Client* client) OVERRIDE;
virtual bool CreateTextures(int32 count, const gfx::Size& size,
std::vector<uint32>* texture_ids,
+ std::vector<gpu::Mailbox>* texture_mailboxes,
uint32 texture_target) OVERRIDE;
virtual void DeleteTexture(uint32 texture_id) OVERRIDE;
+ virtual uint32 ProduceTextureToMailbox(const gpu::Mailbox& mailbox,
+ uint32 texture_id) OVERRIDE;
+ virtual void ConsumeMailboxToTexture(const gpu::Mailbox& mailbox,
+ uint32 texture_id,
+ uint32 sync_point) OVERRIDE;
virtual void ReadPixels(uint32 texture_id,
uint32 texture_target,
const gfx::Size& size,
@@ -83,6 +89,12 @@ class CONTENT_EXPORT RendererGpuVideoDecoderFactories
void AsyncCreateTextures(int32 count, const gfx::Size& size,
uint32 texture_target);
void AsyncDeleteTexture(uint32 texture_id);
+ void AsyncProduceTextureToMailbox(const gpu::Mailbox& mailbox,
+ uint32 texture_id,
+ uint32* sync_point);
+ void AsyncConsumeMailboxToTexture(const gpu::Mailbox& mailbox,
+ uint32 texture_id,
+ uint32 sync_point);
void AsyncReadPixels(uint32 texture_id, uint32 texture_target,
const gfx::Size& size);
void AsyncCreateSharedMemory(size_t size);
@@ -111,6 +123,7 @@ class CONTENT_EXPORT RendererGpuVideoDecoderFactories
// Textures returned by the CreateTexture() function.
std::vector<uint32> created_textures_;
+ std::vector<gpu::Mailbox> created_texture_mailboxes_;
DISALLOW_IMPLICIT_CONSTRUCTORS(RendererGpuVideoDecoderFactories);
};

Powered by Google App Engine
This is Rietveld 408576698