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 CONTENT_COMMON_GPU_MEDIA_GPU_VIDEO_ENCODE_ACCELERATOR_H_ | 5 #ifndef CONTENT_COMMON_GPU_MEDIA_GPU_VIDEO_ENCODE_ACCELERATOR_H_ |
6 #define CONTENT_COMMON_GPU_MEDIA_GPU_VIDEO_ENCODE_ACCELERATOR_H_ | 6 #define CONTENT_COMMON_GPU_MEDIA_GPU_VIDEO_ENCODE_ACCELERATOR_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
54 bool key_frame) override; | 54 bool key_frame) override; |
55 void NotifyError(media::VideoEncodeAccelerator::Error error) override; | 55 void NotifyError(media::VideoEncodeAccelerator::Error error) override; |
56 | 56 |
57 // GpuCommandBufferStub::DestructionObserver implementation. | 57 // GpuCommandBufferStub::DestructionObserver implementation. |
58 void OnWillDestroyStub() override; | 58 void OnWillDestroyStub() override; |
59 | 59 |
60 // Static query for supported profiles. This query calls the appropriate | 60 // Static query for supported profiles. This query calls the appropriate |
61 // platform-specific version. | 61 // platform-specific version. |
62 static std::vector<gpu::VideoEncodeAcceleratorSupportedProfile> | 62 static std::vector<gpu::VideoEncodeAcceleratorSupportedProfile> |
63 GetSupportedProfiles(); | 63 GetSupportedProfiles(); |
64 static std::vector<gpu::VideoEncodeAcceleratorSupportedProfile> | |
65 ConvertMediaToGpuProfiles(const std::vector< | |
66 media::VideoEncodeAccelerator::SupportedProfile>& media_profiles); | |
67 | 64 |
68 private: | 65 private: |
69 typedef scoped_ptr<media::VideoEncodeAccelerator>(*CreateVEAFp)(); | 66 typedef scoped_ptr<media::VideoEncodeAccelerator>(*CreateVEAFp)(); |
70 | 67 |
71 // Return a set of VEA Create function pointers applicable to the current | 68 // Return a set of VEA Create function pointers applicable to the current |
72 // platform. | 69 // platform. |
73 static std::vector<CreateVEAFp> CreateVEAFps(); | 70 static std::vector<CreateVEAFp> CreateVEAFps(); |
74 static scoped_ptr<media::VideoEncodeAccelerator> CreateV4L2VEA(); | 71 static scoped_ptr<media::VideoEncodeAccelerator> CreateV4L2VEA(); |
75 static scoped_ptr<media::VideoEncodeAccelerator> CreateVaapiVEA(); | 72 static scoped_ptr<media::VideoEncodeAccelerator> CreateVaapiVEA(); |
76 static scoped_ptr<media::VideoEncodeAccelerator> CreateAndroidVEA(); | 73 static scoped_ptr<media::VideoEncodeAccelerator> CreateAndroidVEA(); |
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
115 | 112 |
116 // Weak pointer for media::VideoFrames that refer back to |this|. | 113 // Weak pointer for media::VideoFrames that refer back to |this|. |
117 base::WeakPtrFactory<GpuVideoEncodeAccelerator> weak_this_factory_; | 114 base::WeakPtrFactory<GpuVideoEncodeAccelerator> weak_this_factory_; |
118 | 115 |
119 DISALLOW_COPY_AND_ASSIGN(GpuVideoEncodeAccelerator); | 116 DISALLOW_COPY_AND_ASSIGN(GpuVideoEncodeAccelerator); |
120 }; | 117 }; |
121 | 118 |
122 } // namespace content | 119 } // namespace content |
123 | 120 |
124 #endif // CONTENT_COMMON_GPU_MEDIA_GPU_VIDEO_ENCODE_ACCELERATOR_H_ | 121 #endif // CONTENT_COMMON_GPU_MEDIA_GPU_VIDEO_ENCODE_ACCELERATOR_H_ |
OLD | NEW |