| Index: media/gpu/ipc/service/gpu_video_encode_accelerator.h
|
| diff --git a/media/gpu/ipc/service/gpu_video_encode_accelerator.h b/media/gpu/ipc/service/gpu_video_encode_accelerator.h
|
| index c928d6e985862415ea134e3475ae7e8c3c024982..821ffbe623dab470e6b59c84982cc9eec574ec6e 100644
|
| --- a/media/gpu/ipc/service/gpu_video_encode_accelerator.h
|
| +++ b/media/gpu/ipc/service/gpu_video_encode_accelerator.h
|
| @@ -74,28 +74,11 @@ class GpuVideoEncodeAccelerator
|
| const gpu::GpuPreferences& gpu_preferences);
|
|
|
| private:
|
| - typedef std::unique_ptr<VideoEncodeAccelerator> (*CreateVEAFp)();
|
| -
|
| - // Return a set of VEA Create function pointers applicable to the current
|
| - // platform.
|
| - static std::vector<CreateVEAFp> CreateVEAFps(
|
| + // Returns a vector of VEAFactoryFunctions for the current platform.
|
| + using VEAFactoryFunction =
|
| + base::Callback<std::unique_ptr<VideoEncodeAccelerator>()>;
|
| + static std::vector<VEAFactoryFunction> GetVEAFactoryFunctions(
|
| const gpu::GpuPreferences& gpu_preferences);
|
| -#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC)
|
| - static std::unique_ptr<VideoEncodeAccelerator> CreateV4L2VEA();
|
| -#endif
|
| -#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
| - static std::unique_ptr<VideoEncodeAccelerator> CreateVaapiVEA();
|
| -#endif
|
| -#if defined(OS_ANDROID) && defined(ENABLE_WEBRTC)
|
| - static std::unique_ptr<VideoEncodeAccelerator> CreateAndroidVEA();
|
| -#endif
|
| -#if defined(OS_MACOSX)
|
| - static std::unique_ptr<VideoEncodeAccelerator> CreateVTVEA();
|
| -#endif
|
| -#if defined(OS_WIN)
|
| - static std::unique_ptr<media::VideoEncodeAccelerator>
|
| - CreateMediaFoundationVEA();
|
| -#endif
|
|
|
| // IPC handlers, proxying VideoEncodeAccelerator for the renderer
|
| // process.
|
|
|