| Index: media/renderers/default_renderer_factory.cc
|
| diff --git a/media/renderers/default_renderer_factory.cc b/media/renderers/default_renderer_factory.cc
|
| index d50bd1171481a1a986052012f3301ba2c7ef9646..db909137602085a022f9689bdf6b12bf969a3cbc 100644
|
| --- a/media/renderers/default_renderer_factory.cc
|
| +++ b/media/renderers/default_renderer_factory.cc
|
| @@ -87,8 +87,8 @@ ScopedVector<VideoDecoder> DefaultRendererFactory::CreateVideoDecoders(
|
| video_decoders.push_back(
|
| new GpuVideoDecoder(gpu_factories, request_surface_cb));
|
|
|
| -#if !defined(MEDIA_DISABLE_LIBVPX)
|
| std::unique_ptr<GpuMemoryBufferVideoFramePool> gpu_video_frame_pool;
|
| +#if !defined(MEDIA_DISABLE_LIBVPX)
|
| if (gpu_factories &&
|
| gpu_factories->ShouldUseGpuMemoryBuffersForVideoFrames()) {
|
| gpu_video_frame_pool.reset(
|
| @@ -99,7 +99,13 @@ ScopedVector<VideoDecoder> DefaultRendererFactory::CreateVideoDecoders(
|
| #endif
|
|
|
| #if !defined(MEDIA_DISABLE_FFMPEG) && !defined(DISABLE_FFMPEG_VIDEO_DECODERS)
|
| - video_decoders.push_back(new FFmpegVideoDecoder());
|
| + if (gpu_factories &&
|
| + gpu_factories->ShouldUseGpuMemoryBuffersForVideoFrames()) {
|
| + gpu_video_frame_pool.reset(
|
| + new GpuMemoryBufferVideoFramePool(media_task_runner, gpu_factories));
|
| + }
|
| + video_decoders.push_back(
|
| + new FFmpegVideoDecoder(std::move(gpu_video_frame_pool)));
|
| #endif
|
|
|
| return video_decoders;
|
|
|