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

Side by Side Diff: remoting/protocol/webrtc_video_renderer_adapter.h

Issue 1809623002: Replace all uses of webrtc::VideoRendererInterface by rtc::VideoSinkInterface. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Address nit. Created 4 years, 9 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 REMOTING_PROTOCOL_WEBRTC_VIDEO_RENDERER_ADAPTER_H_ 5 #ifndef REMOTING_PROTOCOL_WEBRTC_VIDEO_RENDERER_ADAPTER_H_
6 #define REMOTING_PROTOCOL_WEBRTC_VIDEO_RENDERER_ADAPTER_H_ 6 #define REMOTING_PROTOCOL_WEBRTC_VIDEO_RENDERER_ADAPTER_H_
7 7
8 #include "base/memory/ref_counted.h" 8 #include "base/memory/ref_counted.h"
9 #include "base/memory/weak_ptr.h" 9 #include "base/memory/weak_ptr.h"
10 #include "third_party/webrtc/api/mediastreaminterface.h" 10 #include "third_party/webrtc/api/mediastreaminterface.h"
11 #include "third_party/webrtc/media/base/videosinkinterface.h"
11 12
12 namespace base { 13 namespace base {
13 class SingleThreadTaskRunner; 14 class SingleThreadTaskRunner;
14 } // namespace base 15 } // namespace base
15 16
16 namespace webrtc { 17 namespace webrtc {
17 class DesktopFrame; 18 class DesktopFrame;
18 } // namespace webrtc 19 } // namespace webrtc
19 20
21 namespace cricket {
22 class VideoFrame;
23 } // namespace cricket
24
20 namespace remoting { 25 namespace remoting {
21 namespace protocol { 26 namespace protocol {
22 27
23 class FrameConsumer; 28 class FrameConsumer;
24 29
25 class WebrtcVideoRendererAdapter : public webrtc::VideoRendererInterface { 30 class WebrtcVideoRendererAdapter
31 : public rtc::VideoSinkInterface<cricket::VideoFrame> {
26 public: 32 public:
27 WebrtcVideoRendererAdapter( 33 WebrtcVideoRendererAdapter(
28 scoped_refptr<webrtc::MediaStreamInterface> media_stream, 34 scoped_refptr<webrtc::MediaStreamInterface> media_stream,
29 FrameConsumer* frame_consumer); 35 FrameConsumer* frame_consumer);
30 ~WebrtcVideoRendererAdapter() override; 36 ~WebrtcVideoRendererAdapter() override;
31 37
32 std::string label() const { return media_stream_->label(); } 38 std::string label() const { return media_stream_->label(); }
33 39
34 // webrtc::VideoRendererInterface implementation. 40 // rtc::VideoSinkInterface implementation.
35 void RenderFrame(const cricket::VideoFrame* frame) override; 41 void OnFrame(const cricket::VideoFrame& frame) override;
36 42
37 private: 43 private:
38 void DrawFrame(scoped_ptr<webrtc::DesktopFrame> frame); 44 void DrawFrame(scoped_ptr<webrtc::DesktopFrame> frame);
39 45
40 scoped_refptr<webrtc::MediaStreamInterface> media_stream_; 46 scoped_refptr<webrtc::MediaStreamInterface> media_stream_;
41 FrameConsumer* frame_consumer_; 47 FrameConsumer* frame_consumer_;
42 uint32_t output_format_fourcc_; 48 uint32_t output_format_fourcc_;
43 scoped_refptr<base::SingleThreadTaskRunner> task_runner_; 49 scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
44 50
45 base::WeakPtrFactory<WebrtcVideoRendererAdapter> weak_factory_; 51 base::WeakPtrFactory<WebrtcVideoRendererAdapter> weak_factory_;
46 52
47 DISALLOW_COPY_AND_ASSIGN(WebrtcVideoRendererAdapter); 53 DISALLOW_COPY_AND_ASSIGN(WebrtcVideoRendererAdapter);
48 }; 54 };
49 55
50 } // namespace remoting 56 } // namespace remoting
51 } // namespace protocol 57 } // namespace protocol
52 58
53 #endif // REMOTING_PROTOCOL_WEBRTC_VIDEO_RENDERER_ADAPTER_H_ 59 #endif // REMOTING_PROTOCOL_WEBRTC_VIDEO_RENDERER_ADAPTER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698