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_CLIENT_GPU_VIDEO_ENCODE_ACCELERATOR_HOST_H_ | 5 #ifndef CONTENT_COMMON_GPU_CLIENT_GPU_VIDEO_ENCODE_ACCELERATOR_HOST_H_ |
6 #define CONTENT_COMMON_GPU_CLIENT_GPU_VIDEO_ENCODE_ACCELERATOR_HOST_H_ | 6 #define CONTENT_COMMON_GPU_CLIENT_GPU_VIDEO_ENCODE_ACCELERATOR_HOST_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/containers/hash_tables.h" | 10 #include "base/containers/hash_tables.h" |
(...skipping 26 matching lines...) Expand all Loading... |
37 : public IPC::Listener, | 37 : public IPC::Listener, |
38 public media::VideoEncodeAccelerator, | 38 public media::VideoEncodeAccelerator, |
39 public CommandBufferProxyImpl::DeletionObserver, | 39 public CommandBufferProxyImpl::DeletionObserver, |
40 public base::NonThreadSafe { | 40 public base::NonThreadSafe { |
41 public: | 41 public: |
42 // |this| is guaranteed not to outlive |channel| and |impl|. (See comments | 42 // |this| is guaranteed not to outlive |channel| and |impl|. (See comments |
43 // for |channel_| and |impl_|.) | 43 // for |channel_| and |impl_|.) |
44 GpuVideoEncodeAcceleratorHost(GpuChannelHost* channel, | 44 GpuVideoEncodeAcceleratorHost(GpuChannelHost* channel, |
45 CommandBufferProxyImpl* impl); | 45 CommandBufferProxyImpl* impl); |
46 | 46 |
47 // Static query for the supported profiles. This query proxies to | |
48 // GpuVideoEncodeAccelerator::GetSupportedProfiles(). | |
49 static std::vector<SupportedProfile> GetSupportedProfiles(); | |
50 | |
51 // IPC::Listener implementation. | 47 // IPC::Listener implementation. |
52 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; | 48 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; |
53 virtual void OnChannelError() OVERRIDE; | 49 virtual void OnChannelError() OVERRIDE; |
54 | 50 |
55 // media::VideoEncodeAccelerator implementation. | 51 // media::VideoEncodeAccelerator implementation. |
| 52 virtual std::vector<SupportedProfile> GetSupportedProfiles() OVERRIDE; |
56 virtual bool Initialize(media::VideoFrame::Format input_format, | 53 virtual bool Initialize(media::VideoFrame::Format input_format, |
57 const gfx::Size& input_visible_size, | 54 const gfx::Size& input_visible_size, |
58 media::VideoCodecProfile output_profile, | 55 media::VideoCodecProfile output_profile, |
59 uint32 initial_bitrate, | 56 uint32 initial_bitrate, |
60 Client* client) OVERRIDE; | 57 Client* client) OVERRIDE; |
61 virtual void Encode(const scoped_refptr<media::VideoFrame>& frame, | 58 virtual void Encode(const scoped_refptr<media::VideoFrame>& frame, |
62 bool force_keyframe) OVERRIDE; | 59 bool force_keyframe) OVERRIDE; |
63 virtual void UseOutputBitstreamBuffer( | 60 virtual void UseOutputBitstreamBuffer( |
64 const media::BitstreamBuffer& buffer) OVERRIDE; | 61 const media::BitstreamBuffer& buffer) OVERRIDE; |
65 virtual void RequestEncodingParametersChange(uint32 bitrate, | 62 virtual void RequestEncodingParametersChange(uint32 bitrate, |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
115 | 112 |
116 // WeakPtr factory for posting tasks back to itself. | 113 // WeakPtr factory for posting tasks back to itself. |
117 base::WeakPtrFactory<GpuVideoEncodeAcceleratorHost> weak_this_factory_; | 114 base::WeakPtrFactory<GpuVideoEncodeAcceleratorHost> weak_this_factory_; |
118 | 115 |
119 DISALLOW_COPY_AND_ASSIGN(GpuVideoEncodeAcceleratorHost); | 116 DISALLOW_COPY_AND_ASSIGN(GpuVideoEncodeAcceleratorHost); |
120 }; | 117 }; |
121 | 118 |
122 } // namespace content | 119 } // namespace content |
123 | 120 |
124 #endif // CONTENT_COMMON_GPU_CLIENT_GPU_VIDEO_ENCODE_ACCELERATOR_HOST_H_ | 121 #endif // CONTENT_COMMON_GPU_CLIENT_GPU_VIDEO_ENCODE_ACCELERATOR_HOST_H_ |
OLD | NEW |