Chromium Code Reviews| Index: content/renderer/media/video_capture_impl.cc |
| diff --git a/content/renderer/media/video_capture_impl.cc b/content/renderer/media/video_capture_impl.cc |
| index 9fd3601ba8edbc84af52e984c6a04f8d23943e96..55d8f9e3793dd264e1203cc329e80488e647969a 100644 |
| --- a/content/renderer/media/video_capture_impl.cc |
| +++ b/content/renderer/media/video_capture_impl.cc |
| @@ -254,7 +254,8 @@ void VideoCaptureImpl::OnBufferReceived(int buffer_id, |
| DCHECK_EQ(format.pixel_format, media::PIXEL_FORMAT_I420); |
| if (state_ != VIDEO_CAPTURE_STATE_STARTED || suspended_) { |
| - Send(new VideoCaptureHostMsg_BufferReady(device_id_, buffer_id, 0)); |
| + Send(new VideoCaptureHostMsg_BufferReady( |
| + device_id_, buffer_id, std::vector<uint32>())); |
| return; |
| } |
| @@ -275,18 +276,23 @@ void VideoCaptureImpl::OnBufferReceived(int buffer_id, |
| buffer->buffer_size, |
| buffer->buffer->handle(), |
| timestamp - first_frame_timestamp_, |
| - media::BindToCurrentLoop(base::Bind( |
| - &VideoCaptureImpl::OnClientBufferFinished, |
| - weak_this_factory_.GetWeakPtr(), |
| - buffer_id, |
| - buffer, |
| - base::Passed(scoped_ptr<gpu::MailboxHolder>().Pass())))); |
| + media::BindToCurrentLoop( |
| + base::Bind(&VideoCaptureImpl::OnClientBufferFinished, |
| + weak_this_factory_.GetWeakPtr(), |
| + buffer_id, |
| + buffer, |
| + base::Passed(scoped_ptr<gpu::MailboxHolder>().Pass()), |
| + std::vector<uint32>()))); |
| for (ClientInfo::iterator it = clients_.begin(); it != clients_.end(); ++it) |
| it->first->OnFrameReady(this, frame); |
| } |
| -static void NullReadPixelsCB(const SkBitmap& bitmap) { NOTIMPLEMENTED(); } |
| +// TODO(dshwang): implement it. |
| +static void NullReadPixelsCB(const scoped_refptr<media::VideoFrame>&, |
| + const SkBitmap& bitmap) { |
| + NOTIMPLEMENTED(); |
|
dshwang
2014/03/10 17:38:08
Now GpuVideoAcceleratorFactories::ReadPixels() rec
|
| +} |
| void VideoCaptureImpl::OnMailboxBufferReceived( |
| int buffer_id, |
| @@ -297,7 +303,7 @@ void VideoCaptureImpl::OnMailboxBufferReceived( |
| if (state_ != VIDEO_CAPTURE_STATE_STARTED || suspended_) { |
| Send(new VideoCaptureHostMsg_BufferReady( |
| - device_id_, buffer_id, mailbox_holder.sync_point)); |
| + device_id_, buffer_id, std::vector<uint32>())); |
| return; |
| } |
| @@ -325,10 +331,11 @@ void VideoCaptureImpl::OnMailboxBufferReceived( |
| void VideoCaptureImpl::OnClientBufferFinished( |
| int buffer_id, |
| const scoped_refptr<ClientBuffer>& /* ignored_buffer */, |
| - scoped_ptr<gpu::MailboxHolder> mailbox_holder) { |
| + scoped_ptr<gpu::MailboxHolder> mailbox_holder, |
| + const std::vector<uint32>& release_sync_points) { |
| DCHECK(io_message_loop_proxy_->BelongsToCurrentThread()); |
| - const uint32 sync_point = (mailbox_holder ? mailbox_holder->sync_point : 0); |
| - Send(new VideoCaptureHostMsg_BufferReady(device_id_, buffer_id, sync_point)); |
| + Send(new VideoCaptureHostMsg_BufferReady( |
| + device_id_, buffer_id, release_sync_points)); |
| } |
| void VideoCaptureImpl::OnStateChanged(VideoCaptureState state) { |