| Index: content/common/gpu/media/gpu_video_encode_accelerator.h
|
| diff --git a/content/common/gpu/media/gpu_video_encode_accelerator.h b/content/common/gpu/media/gpu_video_encode_accelerator.h
|
| index f2998610f9a0a81f1099b981558881b95e785aac..27081b6c9279e23b50c1d106700acec0557cc7ac 100644
|
| --- a/content/common/gpu/media/gpu_video_encode_accelerator.h
|
| +++ b/content/common/gpu/media/gpu_video_encode_accelerator.h
|
| @@ -26,6 +26,10 @@ namespace base {
|
| class SharedMemory;
|
| } // namespace base
|
|
|
| +namespace gpu {
|
| +struct GpuPreferences;
|
| +} // namespace gpu
|
| +
|
| namespace content {
|
|
|
| // This class encapsulates the GPU process view of a VideoEncodeAccelerator,
|
| @@ -64,17 +68,25 @@ class GpuVideoEncodeAccelerator
|
| // Static query for supported profiles. This query calls the appropriate
|
| // platform-specific version. The returned supported profiles vector will
|
| // not contain duplicates.
|
| - static gpu::VideoEncodeAcceleratorSupportedProfiles GetSupportedProfiles();
|
| + static gpu::VideoEncodeAcceleratorSupportedProfiles GetSupportedProfiles(
|
| + const gpu::GpuPreferences& gpu_preferences);
|
|
|
| private:
|
| typedef scoped_ptr<media::VideoEncodeAccelerator>(*CreateVEAFp)();
|
|
|
| // Return a set of VEA Create function pointers applicable to the current
|
| // platform.
|
| - static std::vector<CreateVEAFp> CreateVEAFps();
|
| + static std::vector<CreateVEAFp> CreateVEAFps(
|
| + const gpu::GpuPreferences& gpu_preferences);
|
| +#if defined(OS_CHROMEOS) && defined(USE_V4L2_CODEC)
|
| static scoped_ptr<media::VideoEncodeAccelerator> CreateV4L2VEA();
|
| +#endif
|
| +#if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY)
|
| static scoped_ptr<media::VideoEncodeAccelerator> CreateVaapiVEA();
|
| +#endif
|
| +#if defined(OS_ANDROID) && defined(ENABLE_WEBRTC)
|
| static scoped_ptr<media::VideoEncodeAccelerator> CreateAndroidVEA();
|
| +#endif
|
|
|
| // IPC handlers, proxying media::VideoEncodeAccelerator for the renderer
|
| // process.
|
|
|