37 struct Configuration {
81 Configuration& operator=(Configuration
const&);
82 Configuration(Configuration
const&);
98 struct NonSenderRttStats {
109 NonSenderRttStats& operator=(NonSenderRttStats
const&);
110 NonSenderRttStats(NonSenderRttStats
const&);
114 struct SenderReportStats {
128 SenderReportStats& operator=(SenderReportStats
const&);
129 SenderReportStats(SenderReportStats
const&);
138 virtual void SetRemoteSSRC(uint) = 0;
140 virtual void SetLocalSsrc(uint) = 0;
142 virtual void SetMaxRtpPacketSize(uint64) = 0;
144 virtual uint64 MaxRtpPacketSize()
const = 0;
146 virtual void RegisterSendPayloadFrequency(
int,
int) = 0;
148 virtual int DeRegisterSendPayload(schar) = 0;
150 virtual void SetExtmapAllowMixed(
bool) = 0;
152 virtual void RegisterRtpHeaderExtension(::std::string_view,
int) = 0;
154 virtual void DeregisterSendRtpHeaderExtension(::std::string_view) = 0;
156 virtual bool SupportsPadding()
const = 0;
158 virtual bool SupportsRtxPayloadPadding()
const = 0;
160 virtual uint StartTimestamp()
const = 0;
162 virtual void SetStartTimestamp(uint) = 0;
164 virtual ushort SequenceNumber()
const = 0;
166 virtual void SetSequenceNumber(ushort) = 0;
172 virtual ::webrtc::RtpState GetRtpState()
const = 0;
174 virtual ::webrtc::RtpState GetRtxState()
const = 0;
176 virtual void SetNonSenderRttMeasurement(
bool) = 0;
178 virtual uint SSRC()
const = 0;
180 virtual void SetMid(::std::string_view) = 0;
182 virtual void SetRtxSendStatus(
int) = 0;
184 virtual int RtxSendStatus()
const = 0;
186 virtual ::std::optional<uint> RtxSsrc()
const = 0;
188 virtual void SetRtxSendPayloadType(
int,
int) = 0;
190 virtual ::std::optional<uint> FlexfecSsrc()
const = 0;
192 virtual int SetSendingStatus(
bool) = 0;
194 virtual bool Sending()
const = 0;
196 virtual void SetSendingMediaStatus(
bool) = 0;
198 virtual bool SendingMedia()
const = 0;
200 virtual bool IsAudioConfigured()
const = 0;
202 virtual void SetAsPartOfAllocation(
bool) = 0;
204 virtual ::webrtc::RtpSendRates GetSendRates()
const = 0;
206 virtual ::webrtc::RTPSender* RtpSender() = 0;
208 virtual ::webrtc::RTPSender
const* RtpSender()
const = 0;
210 virtual bool OnSendingRtpFrame(uint, int64,
int,
bool) = 0;
220 virtual void OnBatchComplete() = 0;
224 virtual ::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend>> FetchFecPackets() = 0;
230 virtual ::std::vector<::std::unique_ptr<::webrtc::RtpPacketToSend>> GeneratePadding(uint64) = 0;
232 virtual ::std::vector<::webrtc::RtpSequenceNumberMap::Info>
235 virtual uint64 ExpectedPerPacketOverhead()
const = 0;
237 virtual void OnPacketSendingThreadSwitched() = 0;
239 virtual ::webrtc::RtcpMode RTCP()
const = 0;
241 virtual void SetRTCPStatus(::webrtc::RtcpMode) = 0;
243 virtual int SetCNAME(::std::string_view) = 0;
245 virtual ::std::optional<::webrtc::TimeDelta> LastRtt()
const = 0;
247 virtual ::webrtc::TimeDelta ExpectedRetransmissionTime()
const = 0;
249 virtual int SendRTCP(::webrtc::RTCPPacketType) = 0;
253 virtual ::std::vector<::webrtc::ReportBlockData> GetLatestReportBlockData()
const = 0;
255 virtual ::std::optional<::webrtc::RtpRtcpInterface::SenderReportStats> GetSenderReportStats()
const = 0;
257 virtual ::std::optional<::webrtc::RtpRtcpInterface::NonSenderRttStats> GetNonSenderRttStats()
const = 0;
259 virtual void SetRemb(int64, ::std::vector<uint>) = 0;
261 virtual void UnsetRemb() = 0;
263 virtual int SendNACK(ushort
const*, ushort) = 0;
265 virtual void SendNack(::std::vector<ushort>
const&) = 0;
267 virtual void SetStorePacketsStatus(
bool, ushort) = 0;
271 virtual int SendLossNotification(ushort, ushort,
bool,
bool) = 0;