3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/external/webrtc/FecMaskType.h"
16class ForwardErrorCorrection {
31 struct DecodeFecResult {
40 DecodeFecResult& operator=(DecodeFecResult
const&);
41 DecodeFecResult(DecodeFecResult
const&);
55 Packet& operator=(Packet
const&);
61 virtual ~Packet() =
default;
65 virtual int Release();
97 struct ProtectedStream {
109 ProtectedStream& operator=(ProtectedStream
const&);
110 ProtectedStream(ProtectedStream
const&);
114 class SortablePacket {
133 SortablePacket& operator=(SortablePacket
const&);
134 SortablePacket(SortablePacket
const&);
147 ProtectedPacket& operator=(ProtectedPacket
const&);
148 ProtectedPacket(ProtectedPacket
const&);
166 ReceivedFecPacket& operator=(ReceivedFecPacket
const&);
167 ReceivedFecPacket(ReceivedFecPacket
const&);
183 ReceivedPacket& operator=(ReceivedPacket
const&);
184 ReceivedPacket(ReceivedPacket
const&);
199 RecoveredPacket& operator=(RecoveredPacket
const&);
200 RecoveredPacket(RecoveredPacket
const&);
220 ForwardErrorCorrection& operator=(ForwardErrorCorrection
const&);
221 ForwardErrorCorrection(ForwardErrorCorrection
const&);
222 ForwardErrorCorrection();
228 ::std::list<::std::unique_ptr<::webrtc::ForwardErrorCorrection::Packet>>
const& media_packets,
229 uchar protection_factor,
230 int num_important_packets,
231 bool use_unequal_protection,
232 ::webrtc::FecMaskType fec_mask_type,
233 ::std::list<::webrtc::ForwardErrorCorrection::Packet*>* fec_packets
237 ::std::unique_ptr<::webrtc::FecHeaderReader> fec_header_reader,
238 ::std::unique_ptr<::webrtc::FecHeaderWriter> fec_header_writer,
240 uint protected_media_ssrc
244 ::std::list<::std::unique_ptr<::webrtc::ForwardErrorCorrection::Packet>>
const& media_packets,
245 uint64 num_fec_packets
249 ::std::list<::std::unique_ptr<::webrtc::ForwardErrorCorrection::Packet>>
const& media_packets,
250 uint64 num_fec_packets
261 MCNAPI static ::std::unique_ptr<::webrtc::ForwardErrorCorrection>
264 MCNAPI static ::std::unique_ptr<::webrtc::ForwardErrorCorrection>
CreateUlpfec(uint ssrc);
266 MCNAPI
static int NumFecPackets(
int num_media_packets,
int protection_factor);
273 uint64 payload_length,
283 ::std::unique_ptr<::webrtc::FecHeaderReader> fec_header_reader,
284 ::std::unique_ptr<::webrtc::FecHeaderWriter> fec_header_writer,
286 uint protected_media_ssrc
Definition ForwardErrorCorrection.h:45
static MCAPI void ** $vftable()
Definition ForwardErrorCorrection.h:138
Definition ForwardErrorCorrection.h:152
Definition ForwardErrorCorrection.h:171
Definition ForwardErrorCorrection.h:188
Definition ForwardErrorCorrection.h:114
MCAPI int EncodeFec(::std::list<::std::unique_ptr<::webrtc::ForwardErrorCorrection::Packet > > const &media_packets, uchar protection_factor, int num_important_packets, bool use_unequal_protection, ::webrtc::FecMaskType fec_mask_type, ::std::list<::webrtc::ForwardErrorCorrection::Packet * > *fec_packets)
static MCAPI void XorPayloads(::webrtc::ForwardErrorCorrection::Packet const &src, uint64 payload_length, uint64 dst_offset, ::webrtc::ForwardErrorCorrection::Packet *dst)
static MCAPI int NumFecPackets(int num_media_packets, int protection_factor)
MCAPI void * $ctor(::std::unique_ptr<::webrtc::FecHeaderReader > fec_header_reader, ::std::unique_ptr<::webrtc::FecHeaderWriter > fec_header_writer, uint ssrc, uint protected_media_ssrc)
static MCAPI ::std::unique_ptr<::webrtc::ForwardErrorCorrection > CreateFlexfec(uint ssrc, uint protected_media_ssrc)
MCAPI uint64 MaxPacketOverhead() const
MCAPI ~ForwardErrorCorrection()
static MCAPI ::std::unique_ptr<::webrtc::ForwardErrorCorrection > CreateUlpfec(uint ssrc)
static MCAPI void XorHeaders(::webrtc::ForwardErrorCorrection::Packet const &src, ::webrtc::ForwardErrorCorrection::Packet *dst)
MCAPI void GenerateFecPayloads(::std::list<::std::unique_ptr<::webrtc::ForwardErrorCorrection::Packet > > const &media_packets, uint64 num_fec_packets)
MCAPI int InsertZerosInPacketMasks(::std::list<::std::unique_ptr<::webrtc::ForwardErrorCorrection::Packet > > const &media_packets, uint64 num_fec_packets)
MCAPI ForwardErrorCorrection(::std::unique_ptr<::webrtc::FecHeaderReader > fec_header_reader, ::std::unique_ptr<::webrtc::FecHeaderWriter > fec_header_writer, uint ssrc, uint protected_media_ssrc)
Definition ForwardErrorCorrection.h:31
Definition ForwardErrorCorrection.h:97
Definition ForwardErrorCorrection.h:122