OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "content/public/browser/gpu_utils.h" | 5 #include "content/public/browser/gpu_utils.h" |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/strings/string_number_conversions.h" | 8 #include "base/strings/string_number_conversions.h" |
9 #include "content/public/common/content_switches.h" | 9 #include "content/public/common/content_switches.h" |
10 #include "gpu/command_buffer/service/gpu_switches.h" | 10 #include "gpu/command_buffer/service/gpu_switches.h" |
11 #include "gpu/config/gpu_switches.h" | 11 #include "gpu/config/gpu_switches.h" |
| 12 #include "media/media_features.h" |
12 #include "ui/gl/gl_switches.h" | 13 #include "ui/gl/gl_switches.h" |
13 | 14 |
14 namespace { | 15 namespace { |
15 | 16 |
16 bool GetUintFromSwitch(const base::CommandLine* command_line, | 17 bool GetUintFromSwitch(const base::CommandLine* command_line, |
17 const base::StringPiece& switch_string, | 18 const base::StringPiece& switch_string, |
18 uint32_t* value) { | 19 uint32_t* value) { |
19 if (!command_line->HasSwitch(switch_string)) | 20 if (!command_line->HasSwitch(switch_string)) |
20 return false; | 21 return false; |
21 std::string switch_value(command_line->GetSwitchValueASCII(switch_string)); | 22 std::string switch_value(command_line->GetSwitchValueASCII(switch_string)); |
(...skipping 14 matching lines...) Expand all Loading... |
36 gpu_preferences.in_process_gpu = | 37 gpu_preferences.in_process_gpu = |
37 command_line->HasSwitch(switches::kInProcessGPU); | 38 command_line->HasSwitch(switches::kInProcessGPU); |
38 gpu_preferences.ui_prioritize_in_gpu_process = | 39 gpu_preferences.ui_prioritize_in_gpu_process = |
39 command_line->HasSwitch(switches::kUIPrioritizeInGpuProcess); | 40 command_line->HasSwitch(switches::kUIPrioritizeInGpuProcess); |
40 gpu_preferences.disable_accelerated_video_decode = | 41 gpu_preferences.disable_accelerated_video_decode = |
41 command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode); | 42 command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode); |
42 #if defined(OS_CHROMEOS) | 43 #if defined(OS_CHROMEOS) |
43 gpu_preferences.disable_vaapi_accelerated_video_encode = | 44 gpu_preferences.disable_vaapi_accelerated_video_encode = |
44 command_line->HasSwitch(switches::kDisableVaapiAcceleratedVideoEncode); | 45 command_line->HasSwitch(switches::kDisableVaapiAcceleratedVideoEncode); |
45 #endif | 46 #endif |
46 #if defined(ENABLE_WEBRTC) | 47 #if BUILDFLAG(ENABLE_WEBRTC) |
47 gpu_preferences.disable_web_rtc_hw_encoding = | 48 gpu_preferences.disable_web_rtc_hw_encoding = |
48 command_line->HasSwitch(switches::kDisableWebRtcHWEncoding) && | 49 command_line->HasSwitch(switches::kDisableWebRtcHWEncoding) && |
49 command_line->GetSwitchValueASCII(switches::kDisableWebRtcHWEncoding) | 50 command_line->GetSwitchValueASCII(switches::kDisableWebRtcHWEncoding) |
50 .empty(); | 51 .empty(); |
51 #endif | 52 #endif |
52 #if defined(OS_WIN) | 53 #if defined(OS_WIN) |
53 uint32_t enable_accelerated_vpx_decode_val = | 54 uint32_t enable_accelerated_vpx_decode_val = |
54 gpu::GpuPreferences::VPX_VENDOR_MICROSOFT; | 55 gpu::GpuPreferences::VPX_VENDOR_MICROSOFT; |
55 if (GetUintFromSwitch(command_line, switches::kEnableAcceleratedVpxDecode, | 56 if (GetUintFromSwitch(command_line, switches::kEnableAcceleratedVpxDecode, |
56 &enable_accelerated_vpx_decode_val)) { | 57 &enable_accelerated_vpx_decode_val)) { |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
108 gpu_preferences.enable_gpu_service_tracing = | 109 gpu_preferences.enable_gpu_service_tracing = |
109 command_line->HasSwitch(switches::kEnableGPUServiceTracing); | 110 command_line->HasSwitch(switches::kEnableGPUServiceTracing); |
110 gpu_preferences.use_passthrough_cmd_decoder = | 111 gpu_preferences.use_passthrough_cmd_decoder = |
111 command_line->HasSwitch(switches::kUsePassthroughCmdDecoder); | 112 command_line->HasSwitch(switches::kUsePassthroughCmdDecoder); |
112 // Some of these preferences are set or adjusted in | 113 // Some of these preferences are set or adjusted in |
113 // GpuDataManagerImplPrivate::AppendGpuCommandLine. | 114 // GpuDataManagerImplPrivate::AppendGpuCommandLine. |
114 return gpu_preferences; | 115 return gpu_preferences; |
115 } | 116 } |
116 | 117 |
117 } // namespace content | 118 } // namespace content |
OLD | NEW |