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

Side by Side Diff: content/common/gpu/client/gpu_channel_host.h

Issue 1016773002: MJPEG acceleration for video capture using VAAPI (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: reuse VASurface Created 5 years, 7 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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_CHANNEL_HOST_H_ 5 #ifndef CONTENT_COMMON_GPU_CLIENT_GPU_CHANNEL_HOST_H_
6 #define CONTENT_COMMON_GPU_CLIENT_GPU_CHANNEL_HOST_H_ 6 #define CONTENT_COMMON_GPU_CLIENT_GPU_CHANNEL_HOST_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 26 matching lines...) Expand all
37 class MessageLoop; 37 class MessageLoop;
38 class MessageLoopProxy; 38 class MessageLoopProxy;
39 class WaitableEvent; 39 class WaitableEvent;
40 } 40 }
41 41
42 namespace IPC { 42 namespace IPC {
43 class SyncMessageFilter; 43 class SyncMessageFilter;
44 } 44 }
45 45
46 namespace media { 46 namespace media {
47 class JpegDecodeAccelerator;
47 class VideoDecodeAccelerator; 48 class VideoDecodeAccelerator;
48 class VideoEncodeAccelerator; 49 class VideoEncodeAccelerator;
49 } 50 }
50 51
51 namespace gpu { 52 namespace gpu {
52 class GpuMemoryBufferManager; 53 class GpuMemoryBufferManager;
53 } 54 }
54 55
55 namespace content { 56 namespace content {
56 class CommandBufferProxyImpl; 57 class CommandBufferProxyImpl;
57 class GpuChannelHost; 58 class GpuChannelHost;
59 class GpuJpegDecodeAcceleratorHost;
58 60
59 struct GpuListenerInfo { 61 struct GpuListenerInfo {
60 GpuListenerInfo(); 62 GpuListenerInfo();
61 ~GpuListenerInfo(); 63 ~GpuListenerInfo();
62 64
63 base::WeakPtr<IPC::Listener> listener; 65 base::WeakPtr<IPC::Listener> listener;
64 scoped_refptr<base::MessageLoopProxy> loop; 66 scoped_refptr<base::MessageLoopProxy> loop;
65 }; 67 };
66 68
67 struct ProxyFlushInfo { 69 struct ProxyFlushInfo {
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 const GURL& active_url, 142 const GURL& active_url,
141 gfx::GpuPreference gpu_preference); 143 gfx::GpuPreference gpu_preference);
142 144
143 // Creates a video decoder in the GPU process. 145 // Creates a video decoder in the GPU process.
144 scoped_ptr<media::VideoDecodeAccelerator> CreateVideoDecoder( 146 scoped_ptr<media::VideoDecodeAccelerator> CreateVideoDecoder(
145 int command_buffer_route_id); 147 int command_buffer_route_id);
146 148
147 // Creates a video encoder in the GPU process. 149 // Creates a video encoder in the GPU process.
148 scoped_ptr<media::VideoEncodeAccelerator> CreateVideoEncoder( 150 scoped_ptr<media::VideoEncodeAccelerator> CreateVideoEncoder(
149 int command_buffer_route_id); 151 int command_buffer_route_id);
150 152
wuchengli 2015/05/06 07:59:18 // Creates a JPEG decoder in the GPU process. Also
kcwu 2015/05/08 14:42:42 Acknowledged. Revised to use jpeg thread and no re
153 scoped_ptr<media::JpegDecodeAccelerator> CreateJpegDecoder(
154 scoped_refptr<base::MessageLoopProxy> reply_loop);
155
151 // Destroy a command buffer created by this channel. 156 // Destroy a command buffer created by this channel.
152 void DestroyCommandBuffer(CommandBufferProxyImpl* command_buffer); 157 void DestroyCommandBuffer(CommandBufferProxyImpl* command_buffer);
153 158
154 // Destroy this channel. 159 // Destroy this channel.
155 void DestroyChannel(); 160 void DestroyChannel();
156 161
157 // Add a route for the current message loop. 162 // Add a route for the current message loop.
158 void AddRoute(int route_id, base::WeakPtr<IPC::Listener> listener); 163 void AddRoute(int route_id, base::WeakPtr<IPC::Listener> listener);
159 void RemoveRoute(int route_id); 164 void RemoveRoute(int route_id);
160 165
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
269 typedef base::hash_map<int, CommandBufferProxyImpl*> ProxyMap; 274 typedef base::hash_map<int, CommandBufferProxyImpl*> ProxyMap;
270 ProxyMap proxies_; 275 ProxyMap proxies_;
271 ProxyFlushInfo flush_info_; 276 ProxyFlushInfo flush_info_;
272 277
273 DISALLOW_COPY_AND_ASSIGN(GpuChannelHost); 278 DISALLOW_COPY_AND_ASSIGN(GpuChannelHost);
274 }; 279 };
275 280
276 } // namespace content 281 } // namespace content
277 282
278 #endif // CONTENT_COMMON_GPU_CLIENT_GPU_CHANNEL_HOST_H_ 283 #endif // CONTENT_COMMON_GPU_CLIENT_GPU_CHANNEL_HOST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698