LeviLamina
Loading...
Searching...
No Matches
VideoSendStream.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/absl/AnyInvocable.h"
7#include "mc/external/rtc/VideoSourceInterface.h"
8#include "mc/external/webrtc/DegradationPreference.h"
9#include "mc/external/webrtc/scoped_refptr.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace webrtc { class RTCError; }
14namespace webrtc { class Resource; }
15namespace webrtc { class VideoEncoderConfig; }
16namespace webrtc { class VideoFrame; }
17// clang-format on
18
19namespace webrtc {
20
22public:
23 // VideoSendStream inner types declare
24 // clang-format off
25 struct Config;
26 struct Stats;
27 struct StreamStats;
28 // clang-format on
29
30 // VideoSendStream inner types define
31 struct StreamStats {
32 public:
33 // StreamStats inner types define
34 enum class StreamType : int {
35 KMedia = 0,
36 KRtx = 1,
37 KFlexfec = 2,
38 };
39
40 public:
41 // member variables
42 // NOLINTBEGIN
62 // NOLINTEND
63
64 public:
65 // prevent constructor by default
66 StreamStats& operator=(StreamStats const&);
69 };
70
71 struct Stats {
72 public:
73 // member variables
74 // NOLINTBEGIN
108 // NOLINTEND
109
110 public:
111 // prevent constructor by default
112 Stats& operator=(Stats const&);
113 Stats(Stats const&);
114 Stats();
115 };
116
117 struct Config {
118 public:
119 // member variables
120 // NOLINTBEGIN
133 // NOLINTEND
134
135 public:
136 // prevent constructor by default
137 Config& operator=(Config const&);
138 Config(Config const&);
139 Config();
140 };
141
142public:
143 // virtual functions
144 // NOLINTBEGIN
145 // vIndex: 0
146 virtual void Start() = 0;
147
148 // vIndex: 1
149 virtual void Stop() = 0;
150
151 // vIndex: 2
152 virtual bool started() = 0;
153
154 // vIndex: 3
155 virtual void AddAdaptationResource(::webrtc::scoped_refptr<::webrtc::Resource>) = 0;
156
157 // vIndex: 4
158 virtual ::std::vector<::webrtc::scoped_refptr<::webrtc::Resource>> GetAdaptationResources() = 0;
159
160 // vIndex: 5
161 virtual void
162 SetSource(::rtc::VideoSourceInterface<::webrtc::VideoFrame>*, ::webrtc::DegradationPreference const&) = 0;
163
164 // vIndex: 7
165 virtual void ReconfigureVideoEncoder(::webrtc::VideoEncoderConfig) = 0;
166
167 // vIndex: 6
168 virtual void
169 ReconfigureVideoEncoder(::webrtc::VideoEncoderConfig, ::absl::AnyInvocable<void(::webrtc::RTCError) &&>) = 0;
170
171 // vIndex: 8
172 virtual ::webrtc::VideoSendStream::Stats GetStats() = 0;
173
174 // vIndex: 9
175 virtual void GenerateKeyFrame(::std::vector<::std::string> const&) = 0;
176
177 // vIndex: 10
178 virtual ~VideoSendStream() = default;
179 // NOLINTEND
180
181public:
182 // destructor thunk
183 // NOLINTBEGIN
184
185 // NOLINTEND
186
187public:
188 // virtual function thunks
189 // NOLINTBEGIN
190
191 // NOLINTEND
192};
193
194} // namespace webrtc
Definition AnyInvocable.h:8
Definition VideoSourceInterface.h:8
Definition RTCError.h:10
Definition VideoEncoderConfig.h:18
Definition VideoSendStream.h:21
Definition scoped_refptr.h:8
Definition Alias.h:14
Definition VideoSendStream.h:117
Definition VideoSendStream.h:71
Definition VideoSendStream.h:31