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

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

Issue 1580823003: Implement client-side video stream support for WebRTC-based protocol. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@packet_options_rem
Patch Set: Created 4 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
(Empty)
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
3 // found in the LICENSE file.
4
5 #ifndef REMOTING_PROTOCOL_WEBRTC_VIDEO_RENDERER_ADAPTER_H_
6 #define REMOTING_PROTOCOL_WEBRTC_VIDEO_RENDERER_ADAPTER_H_
7
8 #include "base/memory/ref_counted.h"
9 #include "base/memory/weak_ptr.h"
10 #include "third_party/libjingle/source/talk/app/webrtc/mediastreaminterface.h"
11
12 namespace base {
13 class SingleThreadTaskRunner;
14 } // namespace base
15
16 namespace webrtc {
17 class DesktopFrame;
18 } // namespace webrtc
19
20 namespace remoting {
21 namespace protocol {
22
23 class FrameConsumer;
24
25 class WebrtcVideoRendererAdapter : public webrtc::VideoRendererInterface {
26 public:
27 WebrtcVideoRendererAdapter(
28 scoped_refptr<webrtc::MediaStreamInterface> media_stream,
29 FrameConsumer* frame_consumer);
30 ~WebrtcVideoRendererAdapter() override;
31
32 std::string label() const { return media_stream_->label(); }
33
34 // webrtc::VideoRendererInterface implementation.
35 void RenderFrame(const cricket::VideoFrame* frame) override;
36
37 private:
38 void DrawFrame(scoped_ptr<webrtc::DesktopFrame> frame);
39
40 scoped_refptr<webrtc::MediaStreamInterface> media_stream_;
41 FrameConsumer* frame_consumer_;
42 uint32_t output_format_fourcc_;
43 scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
44
45 base::WeakPtrFactory<WebrtcVideoRendererAdapter> weak_factory_;
46
47 DISALLOW_COPY_AND_ASSIGN(WebrtcVideoRendererAdapter);
48 };
49
50 } // namespace remoting
51 } // namespace protocol
52
53 #endif // REMOTING_PROTOCOL_WEBRTC_VIDEO_RENDERER_ADAPTER_H_
OLDNEW
« no previous file with comments | « remoting/protocol/webrtc_transport_unittest.cc ('k') | remoting/protocol/webrtc_video_renderer_adapter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698