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

Unified Diff: media/filters/gpu_video_accelerator_factories.h

Issue 170843004: Pass Client pointer in Initialize() for VDA/VEA (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: 48f212da fischman@ comments. Created 6 years, 10 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_accelerator_factories.h
diff --git a/media/filters/gpu_video_accelerator_factories.h b/media/filters/gpu_video_accelerator_factories.h
index 88d74b57aef2b3fdcedb2448dc3fe1d44dd84a8c..18daa30e997c604eff28b136de7a7ebbbda53008 100644
--- a/media/filters/gpu_video_accelerator_factories.h
+++ b/media/filters/gpu_video_accelerator_factories.h
@@ -5,10 +5,12 @@
#ifndef MEDIA_FILTERS_GPU_VIDEO_ACCELERATOR_FACTORIES_H_
#define MEDIA_FILTERS_GPU_VIDEO_ACCELERATOR_FACTORIES_H_
+#include <vector>
+
#include "base/memory/ref_counted.h"
#include "base/memory/scoped_ptr.h"
-#include "media/video/video_decode_accelerator.h"
-#include "media/video/video_encode_accelerator.h"
+#include "gpu/command_buffer/common/mailbox.h"
+#include "media/base/video_decoder_config.h"
namespace base {
class SingleThreadTaskRunner;
@@ -19,6 +21,9 @@ class SkBitmap;
namespace media {
+class VideoDecodeAccelerator;
+class VideoEncodeAccelerator;
+
// Helper interface for specifying factories needed to instantiate a hardware
// video accelerator.
// Threading model:
@@ -30,14 +35,16 @@ namespace media {
class MEDIA_EXPORT GpuVideoAcceleratorFactories
: public base::RefCountedThreadSafe<GpuVideoAcceleratorFactories> {
public:
- // Caller owns returned pointer.
+ // Caller owns returned pointer, but should call Destroy() on it (instead of
+ // directly deleting) for proper destruction, as per the
+ // VideoDecodeAccelerator interface.
virtual scoped_ptr<VideoDecodeAccelerator> CreateVideoDecodeAccelerator(
- VideoCodecProfile profile,
- VideoDecodeAccelerator::Client* client) = 0;
+ VideoCodecProfile profile) = 0;
- // Caller owns returned pointer.
- virtual scoped_ptr<VideoEncodeAccelerator> CreateVideoEncodeAccelerator(
- VideoEncodeAccelerator::Client* client) = 0;
+ // Caller owns returned pointer, but should call Destroy() on it (instead of
+ // directly deleting) for proper destruction, as per the
+ // VideoEncodeAccelerator interface.
+ virtual scoped_ptr<VideoEncodeAccelerator> CreateVideoEncodeAccelerator() = 0;
// Allocate & delete native textures.
virtual uint32 CreateTextures(int32 count,

Powered by Google App Engine
This is Rietveld 408576698