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 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 #include "ui/gl/gl_implementation.h" | 42 #include "ui/gl/gl_implementation.h" |
43 #include "ui/gl/gl_switches.h" | 43 #include "ui/gl/gl_switches.h" |
44 #include "ui/gl/gpu_switching_manager.h" | 44 #include "ui/gl/gpu_switching_manager.h" |
45 | 45 |
46 #if defined(OS_MACOSX) | 46 #if defined(OS_MACOSX) |
47 #include <ApplicationServices/ApplicationServices.h> | 47 #include <ApplicationServices/ApplicationServices.h> |
48 #endif // OS_MACOSX | 48 #endif // OS_MACOSX |
49 #if defined(OS_WIN) | 49 #if defined(OS_WIN) |
50 #include "base/win/windows_version.h" | 50 #include "base/win/windows_version.h" |
51 #endif // OS_WIN | 51 #endif // OS_WIN |
52 #if defined(OS_ANDROID) | |
53 #include "media/base/media_switches.h" | |
54 #endif | |
55 | 52 |
56 namespace content { | 53 namespace content { |
57 | 54 |
58 namespace { | 55 namespace { |
59 | 56 |
60 enum GpuFeatureStatus { | 57 enum GpuFeatureStatus { |
61 kGpuFeatureEnabled = 0, | 58 kGpuFeatureEnabled = 0, |
62 kGpuFeatureBlacklisted = 1, | 59 kGpuFeatureBlacklisted = 1, |
63 kGpuFeatureDisabled = 2, // disabled by user but not blacklisted | 60 kGpuFeatureDisabled = 2, // disabled by user but not blacklisted |
64 kGpuFeatureNumStatus | 61 kGpuFeatureNumStatus |
(...skipping 673 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
738 } | 735 } |
739 | 736 |
740 if (ShouldDisableAcceleratedVideoDecode(command_line)) { | 737 if (ShouldDisableAcceleratedVideoDecode(command_line)) { |
741 if (gpu_preferences) { | 738 if (gpu_preferences) { |
742 gpu_preferences->disable_accelerated_video_decode = true; | 739 gpu_preferences->disable_accelerated_video_decode = true; |
743 } else { | 740 } else { |
744 command_line->AppendSwitch(switches::kDisableAcceleratedVideoDecode); | 741 command_line->AppendSwitch(switches::kDisableAcceleratedVideoDecode); |
745 } | 742 } |
746 } | 743 } |
747 | 744 |
748 #if defined(OS_ANDROID) | |
749 if (command_line->HasSwitch(switches::kEnableThreadedTextureMailboxes) && | |
750 IsDriverBugWorkaroundActive(gpu::AVDA_NO_EGLIMAGE_FOR_LUMINANCE_TEX)) { | |
751 command_line->AppendSwitch(switches::kDisableUnifiedMediaPipeline); | |
752 } | |
753 #endif | |
754 | |
755 #if defined(OS_WIN) | 745 #if defined(OS_WIN) |
756 if (IsFeatureBlacklisted(gpu::GPU_FEATURE_TYPE_ACCELERATED_VPX_DECODE) && | 746 if (IsFeatureBlacklisted(gpu::GPU_FEATURE_TYPE_ACCELERATED_VPX_DECODE) && |
757 gpu_preferences) { | 747 gpu_preferences) { |
758 gpu_preferences->enable_accelerated_vpx_decode = | 748 gpu_preferences->enable_accelerated_vpx_decode = |
759 gpu::GpuPreferences::VPX_VENDOR_NONE; | 749 gpu::GpuPreferences::VPX_VENDOR_NONE; |
760 } | 750 } |
761 #endif | 751 #endif |
762 | 752 |
763 #if defined(ENABLE_WEBRTC) | 753 #if defined(ENABLE_WEBRTC) |
764 if (IsFeatureBlacklisted(gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_ENCODE) && | 754 if (IsFeatureBlacklisted(gpu::GPU_FEATURE_TYPE_ACCELERATED_VIDEO_ENCODE) && |
(...skipping 540 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1305 gpu_info_.context_info_state = gpu::kCollectInfoFatalFailure; | 1295 gpu_info_.context_info_state = gpu::kCollectInfoFatalFailure; |
1306 #if defined(OS_WIN) | 1296 #if defined(OS_WIN) |
1307 gpu_info_.dx_diagnostics_info_state = gpu::kCollectInfoFatalFailure; | 1297 gpu_info_.dx_diagnostics_info_state = gpu::kCollectInfoFatalFailure; |
1308 #endif | 1298 #endif |
1309 complete_gpu_info_already_requested_ = true; | 1299 complete_gpu_info_already_requested_ = true; |
1310 // Some observers might be waiting. | 1300 // Some observers might be waiting. |
1311 NotifyGpuInfoUpdate(); | 1301 NotifyGpuInfoUpdate(); |
1312 } | 1302 } |
1313 | 1303 |
1314 } // namespace content | 1304 } // namespace content |
OLD | NEW |