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

Side by Side Diff: content/browser/renderer_host/media/video_frame_receiver_on_io_thread.cc

Issue 2583603002: [Mojo Video Capture] Split OnIncomingCapturedVideoFrame() to OnNewBuffer() + OnFrameReadyInBuffer() (Closed)
Patch Set: Improve naming and fix Android background issue Created 3 years, 11 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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/browser/renderer_host/media/video_frame_receiver_on_io_thread. h" 5 #include "content/browser/renderer_host/media/video_frame_receiver_on_io_thread. h"
6 6
7 #include "content/public/browser/browser_thread.h" 7 #include "content/public/browser/browser_thread.h"
8 8
9 namespace content { 9 namespace content {
10 10
11 VideoFrameReceiverOnIOThread::VideoFrameReceiverOnIOThread( 11 VideoFrameReceiverOnIOThread::VideoFrameReceiverOnIOThread(
12 const base::WeakPtr<VideoFrameReceiver>& receiver) 12 const base::WeakPtr<VideoFrameReceiver>& receiver)
13 : receiver_(receiver) {} 13 : receiver_(receiver) {}
14 14
15 VideoFrameReceiverOnIOThread::~VideoFrameReceiverOnIOThread() = default; 15 VideoFrameReceiverOnIOThread::~VideoFrameReceiverOnIOThread() = default;
16 16
17 void VideoFrameReceiverOnIOThread::OnIncomingCapturedVideoFrame( 17 void VideoFrameReceiverOnIOThread::OnNewBufferHandle(
18 media::VideoCaptureDevice::Client::Buffer buffer, 18 int buffer_id,
19 scoped_refptr<media::VideoFrame> frame) { 19 std::unique_ptr<media::BufferHandleProvider> handle_provider) {
20 content::BrowserThread::PostTask( 20 content::BrowserThread::PostTask(
21 content::BrowserThread::IO, FROM_HERE, 21 content::BrowserThread::IO, FROM_HERE,
22 base::Bind(&VideoFrameReceiver::OnIncomingCapturedVideoFrame, receiver_, 22 base::Bind(&VideoFrameReceiver::OnNewBufferHandle, receiver_, buffer_id,
23 base::Passed(&buffer), frame)); 23 base::Passed(std::move(handle_provider))));
24 }
25
26 void VideoFrameReceiverOnIOThread::OnFrameReadyInBuffer(
27 int buffer_id,
28 int frame_feedback_id,
29 std::unique_ptr<media::Ownership> buffer_read_permission,
30 media::mojom::VideoFrameInfoPtr frame_info) {
31 content::BrowserThread::PostTask(
32 content::BrowserThread::IO, FROM_HERE,
33 base::Bind(&VideoFrameReceiver::OnFrameReadyInBuffer, receiver_,
34 buffer_id, frame_feedback_id,
35 base::Passed(&buffer_read_permission),
36 base::Passed(&frame_info)));
37 }
38
39 void VideoFrameReceiverOnIOThread::OnBufferRetired(int buffer_id) {
40 content::BrowserThread::PostTask(
41 content::BrowserThread::IO, FROM_HERE,
42 base::Bind(&VideoFrameReceiver::OnBufferRetired, receiver_, buffer_id));
24 } 43 }
25 44
26 void VideoFrameReceiverOnIOThread::OnError() { 45 void VideoFrameReceiverOnIOThread::OnError() {
27 content::BrowserThread::PostTask( 46 content::BrowserThread::PostTask(
28 content::BrowserThread::IO, FROM_HERE, 47 content::BrowserThread::IO, FROM_HERE,
29 base::Bind(&VideoFrameReceiver::OnError, receiver_)); 48 base::Bind(&VideoFrameReceiver::OnError, receiver_));
30 } 49 }
31 50
32 void VideoFrameReceiverOnIOThread::OnLog(const std::string& message) { 51 void VideoFrameReceiverOnIOThread::OnLog(const std::string& message) {
33 content::BrowserThread::PostTask( 52 content::BrowserThread::PostTask(
34 content::BrowserThread::IO, FROM_HERE, 53 content::BrowserThread::IO, FROM_HERE,
35 base::Bind(&VideoFrameReceiver::OnLog, receiver_, message)); 54 base::Bind(&VideoFrameReceiver::OnLog, receiver_, message));
36 } 55 }
37 56
38 void VideoFrameReceiverOnIOThread::OnBufferDestroyed(int buffer_id_to_drop) {
39 content::BrowserThread::PostTask(
40 content::BrowserThread::IO, FROM_HERE,
41 base::Bind(&VideoFrameReceiver::OnBufferDestroyed, receiver_,
42 buffer_id_to_drop));
43 }
44
45 } // namespace content 57 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/renderer_host/media/video_frame_receiver_on_io_thread.h ('k') | media/capture/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698