OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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 #ifndef MEDIA_GPU_IPC_SERVICE_GPU_VIDEO_ENCODE_ACCELERATOR_H_ | 5 #ifndef MEDIA_GPU_IPC_SERVICE_GPU_VIDEO_ENCODE_ACCELERATOR_H_ |
6 #define MEDIA_GPU_IPC_SERVICE_GPU_VIDEO_ENCODE_ACCELERATOR_H_ | 6 #define MEDIA_GPU_IPC_SERVICE_GPU_VIDEO_ENCODE_ACCELERATOR_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 #endif | 85 #endif |
86 #if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) | 86 #if defined(OS_CHROMEOS) && defined(ARCH_CPU_X86_FAMILY) |
87 static std::unique_ptr<VideoEncodeAccelerator> CreateVaapiVEA(); | 87 static std::unique_ptr<VideoEncodeAccelerator> CreateVaapiVEA(); |
88 #endif | 88 #endif |
89 #if defined(OS_ANDROID) && defined(ENABLE_WEBRTC) | 89 #if defined(OS_ANDROID) && defined(ENABLE_WEBRTC) |
90 static std::unique_ptr<VideoEncodeAccelerator> CreateAndroidVEA(); | 90 static std::unique_ptr<VideoEncodeAccelerator> CreateAndroidVEA(); |
91 #endif | 91 #endif |
92 #if defined(OS_MACOSX) | 92 #if defined(OS_MACOSX) |
93 static std::unique_ptr<VideoEncodeAccelerator> CreateVTVEA(); | 93 static std::unique_ptr<VideoEncodeAccelerator> CreateVTVEA(); |
94 #endif | 94 #endif |
| 95 #if defined(OS_WIN) |
| 96 static std::unique_ptr<media::VideoEncodeAccelerator> |
| 97 CreateMediaFoundationVEA(); |
| 98 #endif |
95 | 99 |
96 // IPC handlers, proxying VideoEncodeAccelerator for the renderer | 100 // IPC handlers, proxying VideoEncodeAccelerator for the renderer |
97 // process. | 101 // process. |
98 void OnEncode(const AcceleratedVideoEncoderMsg_Encode_Params& params); | 102 void OnEncode(const AcceleratedVideoEncoderMsg_Encode_Params& params); |
99 void OnEncode2(const AcceleratedVideoEncoderMsg_Encode_Params2& params); | 103 void OnEncode2(const AcceleratedVideoEncoderMsg_Encode_Params2& params); |
100 void OnUseOutputBitstreamBuffer(int32_t buffer_id, | 104 void OnUseOutputBitstreamBuffer(int32_t buffer_id, |
101 base::SharedMemoryHandle buffer_handle, | 105 base::SharedMemoryHandle buffer_handle, |
102 uint32_t buffer_size); | 106 uint32_t buffer_size); |
103 void OnRequestEncodingParametersChange(uint32_t bitrate, uint32_t framerate); | 107 void OnRequestEncodingParametersChange(uint32_t bitrate, uint32_t framerate); |
104 | 108 |
(...skipping 23 matching lines...) Expand all Loading... |
128 | 132 |
129 // Weak pointer for VideoFrames that refer back to |this|. | 133 // Weak pointer for VideoFrames that refer back to |this|. |
130 base::WeakPtrFactory<GpuVideoEncodeAccelerator> weak_this_factory_; | 134 base::WeakPtrFactory<GpuVideoEncodeAccelerator> weak_this_factory_; |
131 | 135 |
132 DISALLOW_COPY_AND_ASSIGN(GpuVideoEncodeAccelerator); | 136 DISALLOW_COPY_AND_ASSIGN(GpuVideoEncodeAccelerator); |
133 }; | 137 }; |
134 | 138 |
135 } // namespace media | 139 } // namespace media |
136 | 140 |
137 #endif // MEDIA_GPU_IPC_SERVICE_GPU_VIDEO_ENCODE_ACCELERATOR_H_ | 141 #endif // MEDIA_GPU_IPC_SERVICE_GPU_VIDEO_ENCODE_ACCELERATOR_H_ |
OLD | NEW |