Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: gpu/command_buffer/service/gpu_preferences.h

Issue 2105693003: Vp9 decoder mft support for AMD apu/gpu (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase once more to resolve cq issue Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 #ifndef GPU_COMMAND_BUFFER_SERVICE_GPU_PREFERENCES_H_ 5 #ifndef GPU_COMMAND_BUFFER_SERVICE_GPU_PREFERENCES_H_
6 #define GPU_COMMAND_BUFFER_SERVICE_GPU_PREFERENCES_H_ 6 #define GPU_COMMAND_BUFFER_SERVICE_GPU_PREFERENCES_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include "base/macros.h" 10 #include "base/macros.h"
11 #include "build/build_config.h" 11 #include "build/build_config.h"
12 #include "gpu/command_buffer/common/constants.h" 12 #include "gpu/command_buffer/common/constants.h"
13 #include "gpu/gpu_export.h" 13 #include "gpu/gpu_export.h"
14 14
15 namespace gpu { 15 namespace gpu {
16 16
17 struct GPU_EXPORT GpuPreferences { 17 struct GPU_EXPORT GpuPreferences {
18 public: 18 public:
19 GpuPreferences(); 19 GpuPreferences();
20 20
21 GpuPreferences(const GpuPreferences& other); 21 GpuPreferences(const GpuPreferences& other);
22 22
23 ~GpuPreferences(); 23 ~GpuPreferences();
24 24
25 // Support for accelerated vpx decoding for various vendors,
26 // intended to be used as a bitfield.
27 // VPX_VENDOR_ALL should be updated whenever a new entry is added.
28 enum VpxDecodeVendors {
29 VPX_VENDOR_NONE = 0x00,
30 VPX_VENDOR_MICROSOFT = 0x01,
31 VPX_VENDOR_AMD = 0x02,
32 VPX_VENDOR_ALL = 0x03,
33 };
25 // =================================== 34 // ===================================
26 // Settings from //content/public/common/content_switches.h 35 // Settings from //content/public/common/content_switches.h
27 36
28 // Runs the renderer and plugins in the same process as the browser. 37 // Runs the renderer and plugins in the same process as the browser.
29 bool single_process = false; 38 bool single_process = false;
30 39
31 // Run the GPU process as a thread in the browser process. 40 // Run the GPU process as a thread in the browser process.
32 bool in_process_gpu = false; 41 bool in_process_gpu = false;
33 42
34 // Prioritizes the UI's command stream in the GPU process. 43 // Prioritizes the UI's command stream in the GPU process.
35 bool ui_prioritize_in_gpu_process = false; 44 bool ui_prioritize_in_gpu_process = false;
36 45
37 // Disables hardware acceleration of video decode, where available. 46 // Disables hardware acceleration of video decode, where available.
38 bool disable_accelerated_video_decode = false; 47 bool disable_accelerated_video_decode = false;
39 48
40 #if defined(OS_CHROMEOS) 49 #if defined(OS_CHROMEOS)
41 // Disables VA-API accelerated video encode. 50 // Disables VA-API accelerated video encode.
42 bool disable_vaapi_accelerated_video_encode = false; 51 bool disable_vaapi_accelerated_video_encode = false;
43 #endif 52 #endif
44 53
45 #if defined(ENABLE_WEBRTC) 54 #if defined(ENABLE_WEBRTC)
46 // Disables HW encode acceleration for WebRTC. 55 // Disables HW encode acceleration for WebRTC.
47 bool disable_web_rtc_hw_encoding = false; 56 bool disable_web_rtc_hw_encoding = false;
48 #endif 57 #endif
49 58
50 #if defined(OS_WIN) 59 #if defined(OS_WIN)
51 // Enables experimental hardware acceleration for VP8/VP9 video decoding. 60 // Enables experimental hardware acceleration for VP8/VP9 video decoding.
52 bool enable_accelerated_vpx_decode = false; 61 // Bitmask - 0x1=Microsoft, 0x2=AMD, 0x03=Try all.
62 VpxDecodeVendors enable_accelerated_vpx_decode = VPX_VENDOR_NONE;
jbauman 2016/08/22 18:20:50 This should be VPX_VENDOR_MICROSOFT.
53 63
54 // Enables support for avoiding copying DXGI NV12 textures. 64 // Enables support for avoiding copying DXGI NV12 textures.
55 bool enable_zero_copy_dxgi_video = false; 65 bool enable_zero_copy_dxgi_video = false;
56 66
57 // Enables support for outputting NV12 video frames. 67 // Enables support for outputting NV12 video frames.
58 bool enable_nv12_dxgi_video = false; 68 bool enable_nv12_dxgi_video = false;
59 #endif 69 #endif
60 70
61 // =================================== 71 // ===================================
62 // Settings from //gpu/command_buffer/service/gpu_switches.cc 72 // Settings from //gpu/command_buffer/service/gpu_switches.cc
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after
128 bool enable_unsafe_es3_apis = false; 138 bool enable_unsafe_es3_apis = false;
129 139
130 // Use the Pass-through command decoder, skipping all validation and state 140 // Use the Pass-through command decoder, skipping all validation and state
131 // tracking. 141 // tracking.
132 bool use_passthrough_cmd_decoder = false; 142 bool use_passthrough_cmd_decoder = false;
133 }; 143 };
134 144
135 } // namespace gpu 145 } // namespace gpu
136 146
137 #endif // GPU_COMMAND_BUFFER_SERVICE_GPU_PREFERENCES_H_ 147 #endif // GPU_COMMAND_BUFFER_SERVICE_GPU_PREFERENCES_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698