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

Side by Side Diff: content/renderer/gpu/gpu_video_decode_accelerator_host.cc

Issue 7021020: Clean up video frame sizes, types in Video Decode API (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: responses to CR Created 9 years, 5 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #include "content/renderer/gpu/gpu_video_decode_accelerator_host.h" 5 #include "content/renderer/gpu/gpu_video_decode_accelerator_host.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "base/shared_memory.h" 10 #include "base/shared_memory.h"
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
96 } 96 }
97 97
98 void GpuVideoDecodeAcceleratorHost::Decode( 98 void GpuVideoDecodeAcceleratorHost::Decode(
99 const media::BitstreamBuffer& bitstream_buffer) { 99 const media::BitstreamBuffer& bitstream_buffer) {
100 DCHECK(CalledOnValidThread()); 100 DCHECK(CalledOnValidThread());
101 Send(new AcceleratedVideoDecoderMsg_Decode( 101 Send(new AcceleratedVideoDecoderMsg_Decode(
102 command_buffer_route_id_, SyncTokens(), bitstream_buffer.handle(), 102 command_buffer_route_id_, SyncTokens(), bitstream_buffer.handle(),
103 bitstream_buffer.id(), bitstream_buffer.size())); 103 bitstream_buffer.id(), bitstream_buffer.size()));
104 } 104 }
105 105
106 void GpuVideoDecodeAcceleratorHost::AssignGLESBuffers( 106 void GpuVideoDecodeAcceleratorHost::AssignPictureBuffers(
107 const std::vector<media::GLESBuffer>& buffers) { 107 const std::vector<media::PictureBuffer>& buffers) {
108 DCHECK(CalledOnValidThread()); 108 DCHECK(CalledOnValidThread());
109 // Rearrange data for IPC command. 109 // Rearrange data for IPC command.
110 std::vector<int32> buffer_ids; 110 std::vector<int32> buffer_ids;
111 std::vector<uint32> texture_ids; 111 std::vector<uint32> texture_ids;
112 std::vector<gfx::Size> sizes; 112 std::vector<gfx::Size> sizes;
113 for (uint32 i = 0; i < buffers.size(); i++) { 113 for (uint32 i = 0; i < buffers.size(); i++) {
114 const media::GLESBuffer& buffer = buffers[i]; 114 const media::PictureBuffer& buffer = buffers[i];
115 texture_ids.push_back(buffer.texture_id()); 115 texture_ids.push_back(buffer.texture_id());
116 buffer_ids.push_back(buffer.id()); 116 buffer_ids.push_back(buffer.id());
117 sizes.push_back(buffer.size()); 117 sizes.push_back(buffer.size());
118 } 118 }
119 Send(new AcceleratedVideoDecoderMsg_AssignGLESBuffers( 119 Send(new AcceleratedVideoDecoderMsg_AssignPictureBuffers(
120 command_buffer_route_id_, SyncTokens(), buffer_ids, texture_ids, sizes)); 120 command_buffer_route_id_, SyncTokens(), buffer_ids, texture_ids, sizes));
121 } 121 }
122 122
123 void GpuVideoDecodeAcceleratorHost::ReusePictureBuffer( 123 void GpuVideoDecodeAcceleratorHost::ReusePictureBuffer(
124 int32 picture_buffer_id) { 124 int32 picture_buffer_id) {
125 DCHECK(CalledOnValidThread()); 125 DCHECK(CalledOnValidThread());
126 Send(new AcceleratedVideoDecoderMsg_ReusePictureBuffer( 126 Send(new AcceleratedVideoDecoderMsg_ReusePictureBuffer(
127 command_buffer_route_id_, SyncTokens(), picture_buffer_id)); 127 command_buffer_route_id_, SyncTokens(), picture_buffer_id));
128 } 128 }
129 129
(...skipping 27 matching lines...) Expand all
157 } 157 }
158 158
159 void GpuVideoDecodeAcceleratorHost::OnBitstreamBufferProcessed( 159 void GpuVideoDecodeAcceleratorHost::OnBitstreamBufferProcessed(
160 int32 bitstream_buffer_id) { 160 int32 bitstream_buffer_id) {
161 DCHECK(CalledOnValidThread()); 161 DCHECK(CalledOnValidThread());
162 client_->NotifyEndOfBitstreamBuffer(bitstream_buffer_id); 162 client_->NotifyEndOfBitstreamBuffer(bitstream_buffer_id);
163 } 163 }
164 164
165 void GpuVideoDecodeAcceleratorHost::OnProvidePictureBuffer( 165 void GpuVideoDecodeAcceleratorHost::OnProvidePictureBuffer(
166 uint32 num_requested_buffers, 166 uint32 num_requested_buffers,
167 const gfx::Size& buffer_size, 167 const gfx::Size& buffer_size) {
168 int32 mem_type) {
169 DCHECK(CalledOnValidThread()); 168 DCHECK(CalledOnValidThread());
170 media::VideoDecodeAccelerator::MemoryType converted_mem_type = 169 client_->ProvidePictureBuffers(num_requested_buffers, buffer_size);
171 static_cast<media::VideoDecodeAccelerator::MemoryType>(mem_type);
172 client_->ProvidePictureBuffers(
173 num_requested_buffers, buffer_size, converted_mem_type);
174 } 170 }
175 171
176 void GpuVideoDecodeAcceleratorHost::OnDismissPictureBuffer( 172 void GpuVideoDecodeAcceleratorHost::OnDismissPictureBuffer(
177 int32 picture_buffer_id) { 173 int32 picture_buffer_id) {
178 DCHECK(CalledOnValidThread()); 174 DCHECK(CalledOnValidThread());
179 client_->DismissPictureBuffer(picture_buffer_id); 175 client_->DismissPictureBuffer(picture_buffer_id);
180 } 176 }
181 177
182 void GpuVideoDecodeAcceleratorHost::OnInitializeDone() { 178 void GpuVideoDecodeAcceleratorHost::OnInitializeDone() {
183 DCHECK(CalledOnValidThread()); 179 DCHECK(CalledOnValidThread());
184 client_->NotifyInitializeDone(); 180 client_->NotifyInitializeDone();
185 } 181 }
186 182
187 void GpuVideoDecodeAcceleratorHost::OnPictureReady( 183 void GpuVideoDecodeAcceleratorHost::OnPictureReady(
188 int32 picture_buffer_id, int32 bitstream_buffer_id, 184 int32 picture_buffer_id, int32 bitstream_buffer_id) {
189 const gfx::Size& visible_size, const gfx::Size& decoded_size) {
190 DCHECK(CalledOnValidThread()); 185 DCHECK(CalledOnValidThread());
191 media::Picture picture( 186 media::Picture picture(picture_buffer_id, bitstream_buffer_id);
192 picture_buffer_id, bitstream_buffer_id, visible_size, decoded_size);
193 client_->PictureReady(picture); 187 client_->PictureReady(picture);
194 } 188 }
195 189
196 void GpuVideoDecodeAcceleratorHost::OnFlushDone() { 190 void GpuVideoDecodeAcceleratorHost::OnFlushDone() {
197 DCHECK(CalledOnValidThread()); 191 DCHECK(CalledOnValidThread());
198 client_->NotifyFlushDone(); 192 client_->NotifyFlushDone();
199 } 193 }
200 194
201 void GpuVideoDecodeAcceleratorHost::OnResetDone() { 195 void GpuVideoDecodeAcceleratorHost::OnResetDone() {
202 DCHECK(CalledOnValidThread()); 196 DCHECK(CalledOnValidThread());
203 client_->NotifyResetDone(); 197 client_->NotifyResetDone();
204 } 198 }
205 199
206 void GpuVideoDecodeAcceleratorHost::OnEndOfStream() { 200 void GpuVideoDecodeAcceleratorHost::OnEndOfStream() {
207 DCHECK(CalledOnValidThread()); 201 DCHECK(CalledOnValidThread());
208 client_->NotifyEndOfStream(); 202 client_->NotifyEndOfStream();
209 } 203 }
210 204
211 void GpuVideoDecodeAcceleratorHost::OnErrorNotification(uint32 error) { 205 void GpuVideoDecodeAcceleratorHost::OnErrorNotification(uint32 error) {
212 DCHECK(CalledOnValidThread()); 206 DCHECK(CalledOnValidThread());
213 client_->NotifyError( 207 client_->NotifyError(
214 static_cast<media::VideoDecodeAccelerator::Error>(error)); 208 static_cast<media::VideoDecodeAccelerator::Error>(error));
215 } 209 }
OLDNEW
« no previous file with comments | « content/renderer/gpu/gpu_video_decode_accelerator_host.h ('k') | content/renderer/pepper_platform_video_decoder_impl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698