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 <memory> | 7 #include <memory> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 30 matching lines...) Expand all Loading... | |
| 41 #include "ui/gl/gl_implementation.h" | 41 #include "ui/gl/gl_implementation.h" |
| 42 #include "ui/gl/gl_switches.h" | 42 #include "ui/gl/gl_switches.h" |
| 43 #include "ui/gl/gpu_switching_manager.h" | 43 #include "ui/gl/gpu_switching_manager.h" |
| 44 | 44 |
| 45 #if defined(OS_MACOSX) | 45 #if defined(OS_MACOSX) |
| 46 #include <ApplicationServices/ApplicationServices.h> | 46 #include <ApplicationServices/ApplicationServices.h> |
| 47 #endif // OS_MACOSX | 47 #endif // OS_MACOSX |
| 48 #if defined(OS_WIN) | 48 #if defined(OS_WIN) |
| 49 #include "base/win/windows_version.h" | 49 #include "base/win/windows_version.h" |
| 50 #endif // OS_WIN | 50 #endif // OS_WIN |
| 51 #if defined(OS_ANDROID) | |
| 52 #include "media/base/media_switches.h" | |
| 53 #endif | |
| 51 | 54 |
| 52 namespace content { | 55 namespace content { |
| 53 | 56 |
| 54 namespace { | 57 namespace { |
| 55 | 58 |
| 56 enum GpuFeatureStatus { | 59 enum GpuFeatureStatus { |
| 57 kGpuFeatureEnabled = 0, | 60 kGpuFeatureEnabled = 0, |
| 58 kGpuFeatureBlacklisted = 1, | 61 kGpuFeatureBlacklisted = 1, |
| 59 kGpuFeatureDisabled = 2, // disabled by user but not blacklisted | 62 kGpuFeatureDisabled = 2, // disabled by user but not blacklisted |
| 60 kGpuFeatureNumStatus | 63 kGpuFeatureNumStatus |
| (...skipping 676 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 737 } | 740 } |
| 738 | 741 |
| 739 if (ShouldDisableAcceleratedVideoDecode(command_line)) { | 742 if (ShouldDisableAcceleratedVideoDecode(command_line)) { |
| 740 if (gpu_preferences) { | 743 if (gpu_preferences) { |
| 741 gpu_preferences->disable_accelerated_video_decode = true; | 744 gpu_preferences->disable_accelerated_video_decode = true; |
| 742 } else { | 745 } else { |
| 743 command_line->AppendSwitch(switches::kDisableAcceleratedVideoDecode); | 746 command_line->AppendSwitch(switches::kDisableAcceleratedVideoDecode); |
| 744 } | 747 } |
| 745 } | 748 } |
| 746 | 749 |
| 750 #if defined(OS_ANDROID) | |
| 751 if (command_line->HasSwitch(switches::kEnableThreadedTextureMailboxes) && | |
|
Ken Russell (switch to Gerrit)
2016/08/26 00:22:15
Question: is this the key flag which distinguishes
| |
| 752 IsDriverBugWorkaroundActive(gpu::AVDA_NO_EGLIMAGE_FOR_LUMINANCE_TEX)) { | |
| 753 command_line->AppendSwitch(switches::kDisableUnifiedMediaPipeline); | |
| 754 } | |
| 755 #endif | |
| 756 | |
| 747 #if defined(OS_WIN) | 757 #if defined(OS_WIN) |
| 748 if (IsFeatureBlacklisted(gpu::GPU_FEATURE_TYPE_ACCELERATED_VPX_DECODE) && | 758 if (IsFeatureBlacklisted(gpu::GPU_FEATURE_TYPE_ACCELERATED_VPX_DECODE) && |
| 749 gpu_preferences) { | 759 gpu_preferences) { |
| 750 gpu_preferences->enable_accelerated_vpx_decode = | 760 gpu_preferences->enable_accelerated_vpx_decode = |
| 751 gpu::GpuPreferences::VPX_VENDOR_NONE; | 761 gpu::GpuPreferences::VPX_VENDOR_NONE; |
| 752 } | 762 } |
| 753 #endif | 763 #endif |
| 754 | 764 |
| 755 #if defined(ENABLE_WEBRTC) | 765 #if defined(ENABLE_WEBRTC) |
| 756 if (IsFeatureBlacklisted(gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_ENCODE) && | 766 if (IsFeatureBlacklisted(gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_ENCODE) && |
| (...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 1303 gpu_info_.context_info_state = gpu::kCollectInfoFatalFailure; | 1313 gpu_info_.context_info_state = gpu::kCollectInfoFatalFailure; |
| 1304 #if defined(OS_WIN) | 1314 #if defined(OS_WIN) |
| 1305 gpu_info_.dx_diagnostics_info_state = gpu::kCollectInfoFatalFailure; | 1315 gpu_info_.dx_diagnostics_info_state = gpu::kCollectInfoFatalFailure; |
| 1306 #endif | 1316 #endif |
| 1307 complete_gpu_info_already_requested_ = true; | 1317 complete_gpu_info_already_requested_ = true; |
| 1308 // Some observers might be waiting. | 1318 // Some observers might be waiting. |
| 1309 NotifyGpuInfoUpdate(); | 1319 NotifyGpuInfoUpdate(); |
| 1310 } | 1320 } |
| 1311 | 1321 |
| 1312 } // namespace content | 1322 } // namespace content |
| OLD | NEW |