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_features.h" |
9 #include "content/public/common/content_switches.h" | 10 #include "content/public/common/content_switches.h" |
10 #include "gpu/command_buffer/service/gpu_switches.h" | 11 #include "gpu/command_buffer/service/gpu_switches.h" |
11 #include "gpu/config/gpu_switches.h" | 12 #include "gpu/config/gpu_switches.h" |
12 #include "media/media_features.h" | 13 #include "media/media_features.h" |
13 #include "ui/gl/gl_switches.h" | 14 #include "ui/gl/gl_switches.h" |
14 | 15 |
15 namespace { | 16 namespace { |
16 | 17 |
17 bool GetUintFromSwitch(const base::CommandLine* command_line, | 18 bool GetUintFromSwitch(const base::CommandLine* command_line, |
18 const base::StringPiece& switch_string, | 19 const base::StringPiece& switch_string, |
(...skipping 20 matching lines...) Expand all Loading... |
39 gpu_preferences.ui_prioritize_in_gpu_process = | 40 gpu_preferences.ui_prioritize_in_gpu_process = |
40 command_line->HasSwitch(switches::kUIPrioritizeInGpuProcess); | 41 command_line->HasSwitch(switches::kUIPrioritizeInGpuProcess); |
41 gpu_preferences.disable_accelerated_video_decode = | 42 gpu_preferences.disable_accelerated_video_decode = |
42 command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode); | 43 command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode); |
43 #if defined(OS_CHROMEOS) | 44 #if defined(OS_CHROMEOS) |
44 gpu_preferences.disable_vaapi_accelerated_video_encode = | 45 gpu_preferences.disable_vaapi_accelerated_video_encode = |
45 command_line->HasSwitch(switches::kDisableVaapiAcceleratedVideoEncode); | 46 command_line->HasSwitch(switches::kDisableVaapiAcceleratedVideoEncode); |
46 #endif | 47 #endif |
47 #if BUILDFLAG(ENABLE_WEBRTC) | 48 #if BUILDFLAG(ENABLE_WEBRTC) |
48 gpu_preferences.disable_web_rtc_hw_encoding = | 49 gpu_preferences.disable_web_rtc_hw_encoding = |
49 command_line->HasSwitch(switches::kDisableWebRtcHWEncoding) && | 50 command_line->HasSwitch(switches::kDisableWebRtcHWVP8Encoding) && |
50 command_line->GetSwitchValueASCII(switches::kDisableWebRtcHWEncoding) | 51 !base::FeatureList::IsEnabled(features::kWebRtcHWH264Encoding); |
51 .empty(); | |
52 #endif | 52 #endif |
53 #if defined(OS_WIN) | 53 #if defined(OS_WIN) |
54 uint32_t enable_accelerated_vpx_decode_val = | 54 uint32_t enable_accelerated_vpx_decode_val = |
55 gpu::GpuPreferences::VPX_VENDOR_MICROSOFT; | 55 gpu::GpuPreferences::VPX_VENDOR_MICROSOFT; |
56 if (GetUintFromSwitch(command_line, switches::kEnableAcceleratedVpxDecode, | 56 if (GetUintFromSwitch(command_line, switches::kEnableAcceleratedVpxDecode, |
57 &enable_accelerated_vpx_decode_val)) { | 57 &enable_accelerated_vpx_decode_val)) { |
58 gpu_preferences.enable_accelerated_vpx_decode = | 58 gpu_preferences.enable_accelerated_vpx_decode = |
59 static_cast<gpu::GpuPreferences::VpxDecodeVendors>( | 59 static_cast<gpu::GpuPreferences::VpxDecodeVendors>( |
60 enable_accelerated_vpx_decode_val); | 60 enable_accelerated_vpx_decode_val); |
61 } | 61 } |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
109 gpu_preferences.enable_gpu_service_tracing = | 109 gpu_preferences.enable_gpu_service_tracing = |
110 command_line->HasSwitch(switches::kEnableGPUServiceTracing); | 110 command_line->HasSwitch(switches::kEnableGPUServiceTracing); |
111 gpu_preferences.use_passthrough_cmd_decoder = | 111 gpu_preferences.use_passthrough_cmd_decoder = |
112 command_line->HasSwitch(switches::kUsePassthroughCmdDecoder); | 112 command_line->HasSwitch(switches::kUsePassthroughCmdDecoder); |
113 // Some of these preferences are set or adjusted in | 113 // Some of these preferences are set or adjusted in |
114 // GpuDataManagerImplPrivate::AppendGpuCommandLine. | 114 // GpuDataManagerImplPrivate::AppendGpuCommandLine. |
115 return gpu_preferences; | 115 return gpu_preferences; |
116 } | 116 } |
117 | 117 |
118 } // namespace content | 118 } // namespace content |
OLD | NEW |