Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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/browser/gpu/gpu_data_manager_impl_private.h" | 5 #include "content/browser/gpu/gpu_data_manager_impl_private.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/metrics/field_trial.h" | 10 #include "base/metrics/field_trial.h" |
| (...skipping 915 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 926 const std::string group_name = base::FieldTrialList::FindFullName( | 926 const std::string group_name = base::FieldTrialList::FindFullName( |
| 927 "DisableAcceleratedVideoDecode"); | 927 "DisableAcceleratedVideoDecode"); |
| 928 if (command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode)) { | 928 if (command_line->HasSwitch(switches::kDisableAcceleratedVideoDecode)) { |
| 929 // It was already disabled on the command line. | 929 // It was already disabled on the command line. |
| 930 return false; | 930 return false; |
| 931 } | 931 } |
| 932 if (IsFeatureBlacklisted(gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_DECODE)) | 932 if (IsFeatureBlacklisted(gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_DECODE)) |
| 933 return true; | 933 return true; |
| 934 if (group_name == "Disabled") | 934 if (group_name == "Disabled") |
| 935 return true; | 935 return true; |
| 936 | |
| 937 // Accelerated decode is never available with --disable-gpu. It is also | |
| 938 // currently non-functional with --single-process and --in-process-gpu, but | |
| 939 // these should be fixable. We set the --disable-accelerated-video-decode flag | |
| 940 // in these cases so that the renderer can be aware. (Which is important on | |
| 941 // Android where there is no fallback once WMPI is selected.) | |
| 942 // | |
| 943 // TODO(sandersd): Enable support for accelerated decode with | |
| 944 // --in-process-gpu, at least on Android (necessary to support WebView). | |
|
DaleCurtis
2016/01/06 22:54:40
Does WebView only use --in-process-gpu and not --s
sandersd (OOO until July 31)
2016/01/07 00:08:38
WebView may use either, depending on other setting
| |
| 945 // http://crbug.com/574935. | |
| 946 if (command_line->HasSwitch(switches::kDisableGpu) || | |
| 947 command_line->HasSwitch(switches::kSingleProcess) || | |
| 948 command_line->HasSwitch(switches::kInProcessGPU)) { | |
| 949 return true; | |
| 950 } | |
| 951 | |
| 936 return false; | 952 return false; |
| 937 } | 953 } |
| 938 | 954 |
| 939 void GpuDataManagerImplPrivate::GetDisabledExtensions( | 955 void GpuDataManagerImplPrivate::GetDisabledExtensions( |
| 940 std::string* disabled_extensions) const { | 956 std::string* disabled_extensions) const { |
| 941 DCHECK(disabled_extensions); | 957 DCHECK(disabled_extensions); |
| 942 *disabled_extensions = disabled_extensions_; | 958 *disabled_extensions = disabled_extensions_; |
| 943 } | 959 } |
| 944 | 960 |
| 945 void GpuDataManagerImplPrivate::BlockDomainFrom3DAPIs( | 961 void GpuDataManagerImplPrivate::BlockDomainFrom3DAPIs( |
| (...skipping 280 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1226 gpu_info_.context_info_state = gpu::kCollectInfoFatalFailure; | 1242 gpu_info_.context_info_state = gpu::kCollectInfoFatalFailure; |
| 1227 #if defined(OS_WIN) | 1243 #if defined(OS_WIN) |
| 1228 gpu_info_.dx_diagnostics_info_state = gpu::kCollectInfoFatalFailure; | 1244 gpu_info_.dx_diagnostics_info_state = gpu::kCollectInfoFatalFailure; |
| 1229 #endif | 1245 #endif |
| 1230 complete_gpu_info_already_requested_ = true; | 1246 complete_gpu_info_already_requested_ = true; |
| 1231 // Some observers might be waiting. | 1247 // Some observers might be waiting. |
| 1232 NotifyGpuInfoUpdate(); | 1248 NotifyGpuInfoUpdate(); |
| 1233 } | 1249 } |
| 1234 | 1250 |
| 1235 } // namespace content | 1251 } // namespace content |
| OLD | NEW |