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

Side by Side Diff: content/common/gpu/media/vt_video_decode_accelerator.cc

Issue 426873004: Pass decoded picture size from VDA to client (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fix android build Created 6 years, 4 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 <CoreVideo/CoreVideo.h> 5 #include <CoreVideo/CoreVideo.h>
6 #include <OpenGL/CGLIOSurface.h> 6 #include <OpenGL/CGLIOSurface.h>
7 7
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/sys_byteorder.h" 10 #include "base/sys_byteorder.h"
(...skipping 358 matching lines...) Expand 10 before | Expand all | Expand 10 after
369 GL_TEXTURE_RECTANGLE_ARB, // target 369 GL_TEXTURE_RECTANGLE_ARB, // target
370 GL_RGB, // internal_format 370 GL_RGB, // internal_format
371 texture_size_.width(), // width 371 texture_size_.width(), // width
372 texture_size_.height(), // height 372 texture_size_.height(), // height
373 GL_YCBCR_422_APPLE, // format 373 GL_YCBCR_422_APPLE, // format
374 GL_UNSIGNED_SHORT_8_8_APPLE, // type 374 GL_UNSIGNED_SHORT_8_8_APPLE, // type
375 surface, // io_surface 375 surface, // io_surface
376 0)); // plane 376 0)); // plane
377 377
378 picture_bindings_[picture_id] = frame.image_buffer; 378 picture_bindings_[picture_id] = frame.image_buffer;
379 client_->PictureReady(media::Picture(picture_id, frame.bitstream_id)); 379 client_->PictureReady(media::Picture(
380 picture_id, frame.bitstream_id, gfx::Rect(texture_size_)));
380 client_->NotifyEndOfBitstreamBuffer(frame.bitstream_id); 381 client_->NotifyEndOfBitstreamBuffer(frame.bitstream_id);
381 } 382 }
382 383
383 glDisable(GL_TEXTURE_RECTANGLE_ARB); 384 glDisable(GL_TEXTURE_RECTANGLE_ARB);
384 } 385 }
385 386
386 void VTVideoDecodeAccelerator::Flush() { 387 void VTVideoDecodeAccelerator::Flush() {
387 DCHECK(CalledOnValidThread()); 388 DCHECK(CalledOnValidThread());
388 // TODO(sandersd): Trigger flush, sending frames. 389 // TODO(sandersd): Trigger flush, sending frames.
389 } 390 }
390 391
391 void VTVideoDecodeAccelerator::Reset() { 392 void VTVideoDecodeAccelerator::Reset() {
392 DCHECK(CalledOnValidThread()); 393 DCHECK(CalledOnValidThread());
393 // TODO(sandersd): Trigger flush, discarding frames. 394 // TODO(sandersd): Trigger flush, discarding frames.
394 } 395 }
395 396
396 void VTVideoDecodeAccelerator::Destroy() { 397 void VTVideoDecodeAccelerator::Destroy() {
397 DCHECK(CalledOnValidThread()); 398 DCHECK(CalledOnValidThread());
398 // TODO(sandersd): Trigger flush, discarding frames, and wait for them. 399 // TODO(sandersd): Trigger flush, discarding frames, and wait for them.
399 delete this; 400 delete this;
400 } 401 }
401 402
402 bool VTVideoDecodeAccelerator::CanDecodeOnIOThread() { 403 bool VTVideoDecodeAccelerator::CanDecodeOnIOThread() {
403 return false; 404 return false;
404 } 405 }
405 406
406 } // namespace content 407 } // namespace content
OLDNEW
« no previous file with comments | « content/common/gpu/media/vaapi_video_decode_accelerator.cc ('k') | content/renderer/media/rtc_video_decoder.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698