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

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

Issue 2686763002: [Mojo Video Capture] Split OnIncomingCapturedVideoFrame() to OnNewBuffer() and OnFrameReadyInBuffer( (Closed)
Patch Set: rebase Created 3 years, 10 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 #ifndef CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_FRAME_RECEIVER_ON_IO_THREAD_H_ 5 #ifndef CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_FRAME_RECEIVER_ON_IO_THREAD_H_
6 #define CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_FRAME_RECEIVER_ON_IO_THREAD_H_ 6 #define CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_FRAME_RECEIVER_ON_IO_THREAD_H_
7 7
8 #include "content/common/content_export.h" 8 #include "content/common/content_export.h"
9 #include "media/capture/video/video_frame_receiver.h" 9 #include "media/capture/video/video_frame_receiver.h"
10 10
11 namespace content { 11 namespace content {
12 12
13 // Decorator for media::VideoFrameReceiver that forwards all incoming calls 13 // Decorator for media::VideoFrameReceiver that forwards all incoming calls
14 // to the Browser IO thread. 14 // to the Browser IO thread.
15 // TODO(chfremer): Change this to VideoFrameReceiverOnTaskRunner and have the 15 // TODO(chfremer): Change this to VideoFrameReceiverOnTaskRunner and have the
16 // target task runner be passed into the constructor. See crbug.com/674190. 16 // target task runner be passed into the constructor. See crbug.com/674190.
17 class CONTENT_EXPORT VideoFrameReceiverOnIOThread 17 class CONTENT_EXPORT VideoFrameReceiverOnIOThread
18 : public media::VideoFrameReceiver { 18 : public media::VideoFrameReceiver {
19 public: 19 public:
20 explicit VideoFrameReceiverOnIOThread( 20 explicit VideoFrameReceiverOnIOThread(
21 const base::WeakPtr<VideoFrameReceiver>& receiver); 21 const base::WeakPtr<VideoFrameReceiver>& receiver);
22 ~VideoFrameReceiverOnIOThread() override; 22 ~VideoFrameReceiverOnIOThread() override;
23 23
24 void OnIncomingCapturedVideoFrame( 24 void OnNewBufferHandle(
25 media::VideoCaptureDevice::Client::Buffer buffer, 25 int buffer_id,
26 scoped_refptr<media::VideoFrame> frame) override; 26 std::unique_ptr<media::VideoCaptureDevice::Client::Buffer::HandleProvider>
27 handle_provider) override;
28 void OnFrameReadyInBuffer(
29 int buffer_id,
30 int frame_feedback_id,
31 std::unique_ptr<
32 media::VideoCaptureDevice::Client::Buffer::ScopedAccessPermission>
33 buffer_read_permission,
34 media::mojom::VideoFrameInfoPtr frame_info) override;
35 void OnBufferRetired(int buffer_id) override;
27 void OnError() override; 36 void OnError() override;
28 void OnLog(const std::string& message) override; 37 void OnLog(const std::string& message) override;
29 void OnBufferRetired(int buffer_id) override;
30 38
31 private: 39 private:
32 base::WeakPtr<VideoFrameReceiver> receiver_; 40 base::WeakPtr<VideoFrameReceiver> receiver_;
33 }; 41 };
34 42
35 } // namespace content 43 } // namespace content
36 44
37 #endif // CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_FRAME_RECEIVER_ON_IO_THREAD _H_ 45 #endif // CONTENT_BROWSER_RENDERER_HOST_MEDIA_VIDEO_FRAME_RECEIVER_ON_IO_THREAD _H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698