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

Unified Diff: content/common/gpu/media/gpu_video_decode_accelerator_factory_impl.cc

Issue 1859403002: Avoid GpuPreferences exposed in content public gpu interface (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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: content/common/gpu/media/gpu_video_decode_accelerator_factory_impl.cc
diff --git a/content/common/gpu/media/gpu_video_decode_accelerator_factory_impl.cc b/content/common/gpu/media/gpu_video_decode_accelerator_factory_impl.cc
index c3cd7ee1e710b27e8f37e27b6a0043f45e34adb4..6822c7e230801acb716d9b172cc80c1e2155356c 100644
--- a/content/common/gpu/media/gpu_video_decode_accelerator_factory_impl.cc
+++ b/content/common/gpu/media/gpu_video_decode_accelerator_factory_impl.cc
@@ -5,6 +5,7 @@
#include "content/common/gpu/media/gpu_video_accelerator_util.h"
#include "content/common/gpu/media/gpu_video_decode_accelerator.h"
#include "content/common/gpu/media/gpu_video_decode_accelerator_factory_impl.h"
+#include "content/gpu/gpu_child_thread.h"
#include "gpu/command_buffer/service/gpu_preferences.h"
#if defined(OS_WIN)
@@ -34,7 +35,17 @@ static base::WeakPtr<gpu::gles2::GLES2Decoder> GetEmptyGLES2Decoder() {
NOTREACHED() << "VDA requests a GLES2Decoder, but client did not provide it";
return base::WeakPtr<gpu::gles2::GLES2Decoder>();
}
+
+const gpu::GpuPreferences GetGpuPreferences() {
+ GpuChildThread* gpu_child_thread = GpuChildThread::current();
+
+ // No GpuChildThread if unit test.
+ if (!gpu_child_thread)
+ return gpu::GpuPreferences();
+
+ return gpu_child_thread->gpu_preferences();
}
+} // namespace
// static
scoped_ptr<GpuVideoDecodeAcceleratorFactoryImpl>
@@ -61,8 +72,8 @@ GpuVideoDecodeAcceleratorFactoryImpl::CreateWithGLES2Decoder(
// static
gpu::VideoDecodeAcceleratorCapabilities
-GpuVideoDecodeAcceleratorFactoryImpl::GetDecoderCapabilities(
- const gpu::GpuPreferences& gpu_preferences) {
+GpuVideoDecodeAcceleratorFactoryImpl::GetDecoderCapabilities() {
+ const gpu::GpuPreferences gpu_preferences = GetGpuPreferences();
media::VideoDecodeAccelerator::Capabilities capabilities;
if (gpu_preferences.disable_accelerated_video_decode)
return gpu::VideoDecodeAcceleratorCapabilities();
@@ -106,9 +117,9 @@ GpuVideoDecodeAcceleratorFactoryImpl::GetDecoderCapabilities(
scoped_ptr<media::VideoDecodeAccelerator>
GpuVideoDecodeAcceleratorFactoryImpl::CreateVDA(
media::VideoDecodeAccelerator::Client* client,
- const media::VideoDecodeAccelerator::Config& config,
- const gpu::GpuPreferences& gpu_preferences) {
+ const media::VideoDecodeAccelerator::Config& config) {
DCHECK(thread_checker_.CalledOnValidThread());
+ const gpu::GpuPreferences gpu_preferences = GetGpuPreferences();
if (gpu_preferences.disable_accelerated_video_decode)
return nullptr;

Powered by Google App Engine
This is Rietveld 408576698