Index: media/filters/gpu_video_accelerator_factories.h |
diff --git a/media/filters/gpu_video_decoder_factories.h b/media/filters/gpu_video_accelerator_factories.h |
similarity index 66% |
rename from media/filters/gpu_video_decoder_factories.h |
rename to media/filters/gpu_video_accelerator_factories.h |
index 107e2de8c3b842daa6458bbb0034065cd646aa50..b13887fdf62c8c5a89945ce9b64eda788d84e30d 100644 |
--- a/media/filters/gpu_video_decoder_factories.h |
+++ b/media/filters/gpu_video_accelerator_factories.h |
@@ -2,11 +2,13 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
-#ifndef MEDIA_FILTERS_GPU_VIDEO_DECODER_FACTORIES_H_ |
-#define MEDIA_FILTERS_GPU_VIDEO_DECODER_FACTORIES_H_ |
+#ifndef MEDIA_FILTERS_GPU_VIDEO_ACCELERATOR_FACTORIES_H_ |
+#define MEDIA_FILTERS_GPU_VIDEO_ACCELERATOR_FACTORIES_H_ |
#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" |
namespace base { |
class MessageLoopProxy; |
@@ -18,15 +20,19 @@ class SkBitmap; |
namespace media { |
// Helper interface for specifying factories needed to instantiate a hardware |
-// video decoder. |
-class MEDIA_EXPORT GpuVideoDecoderFactories |
- : public base::RefCountedThreadSafe<GpuVideoDecoderFactories> { |
+// video accelerator. |
+class MEDIA_EXPORT GpuVideoAcceleratorFactories |
+ : public base::RefCountedThreadSafe<GpuVideoAcceleratorFactories> { |
public: |
// Caller owns returned pointer. |
- virtual VideoDecodeAccelerator* CreateVideoDecodeAccelerator( |
+ virtual scoped_ptr<VideoDecodeAccelerator> CreateVideoDecodeAccelerator( |
VideoCodecProfile profile, |
VideoDecodeAccelerator::Client* client) = 0; |
+ // Caller owns returned pointer. |
+ virtual scoped_ptr<VideoEncodeAccelerator> CreateVideoEncodeAccelerator( |
+ VideoEncodeAccelerator::Client* client) = 0; |
+ |
// Allocate & delete native textures. |
virtual uint32 CreateTextures(int32 count, |
const gfx::Size& size, |
@@ -47,7 +53,7 @@ class MEDIA_EXPORT GpuVideoDecoderFactories |
// Close()ing the returned pointer. |
virtual base::SharedMemory* CreateSharedMemory(size_t size) = 0; |
- // Returns the message loop the VideoDecodeAccelerator runs on. |
+ // Returns the message loop the video accelerator runs on. |
virtual scoped_refptr<base::MessageLoopProxy> GetMessageLoop() = 0; |
// Abort any outstanding factory operations and error any future |
@@ -57,11 +63,14 @@ class MEDIA_EXPORT GpuVideoDecoderFactories |
// Returns true if Abort() has been called. |
virtual bool IsAborted() = 0; |
+ // Makes a copy of |this|. |
+ virtual scoped_refptr<GpuVideoAcceleratorFactories> Clone() = 0; |
Ami GONE FROM CHROMIUM
2013/08/02 18:42:40
You missed this comment?
sheu
2013/08/03 01:31:03
Ah, I missed it. Reverted.
|
+ |
protected: |
- friend class base::RefCountedThreadSafe<GpuVideoDecoderFactories>; |
- virtual ~GpuVideoDecoderFactories(); |
+ friend class base::RefCountedThreadSafe<GpuVideoAcceleratorFactories>; |
+ virtual ~GpuVideoAcceleratorFactories(); |
}; |
} // namespace media |
-#endif // MEDIA_FILTERS_GPU_VIDEO_DECODER_FACTORIES_H_ |
+#endif // MEDIA_FILTERS_GPU_VIDEO_ACCELERATOR_FACTORIES_H_ |