3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/external/webrtc/EncodedImageCallback.h"
7#include "mc/external/webrtc/RtpSequenceNumberMap.h"
8#include "mc/external/webrtc/RtpVideoSenderInterface.h"
9#include "mc/external/webrtc/StreamFeedbackObserver.h"
10#include "mc/external/webrtc/VCMProtectionCallback.h"
11#include "mc/external/webrtc/scoped_refptr.h"
15namespace webrtc {
class Clock; }
75 RtpVideoSender& operator=(RtpVideoSender
const&);
76 RtpVideoSender(RtpVideoSender
const&);
82 virtual ~RtpVideoSender() =
default;
84 virtual void SetSending(
bool enabled) ;
86 virtual bool IsActive() ;
88 virtual void OnNetworkAvailability(
bool network_available) ;
90 virtual ::std::map<uint, ::webrtc::RtpState> GetRtpStates()
const ;
92 virtual ::std::map<uint, ::webrtc::RtpPayloadState> GetRtpPayloadStates()
const ;
94 virtual void DeliverRtcp(uchar
const* packet, uint64 length) ;
96 virtual int ProtectionRequest(
99 uint* sent_video_rate_bps,
100 uint* sent_nack_rate_bps,
101 uint* sent_fec_rate_bps
104 virtual void SetRetransmissionMode(
int retransmission_mode) ;
106 virtual void SetFecAllowed(
bool fec_allowed) ;
108 virtual ::webrtc::EncodedImageCallback::Result OnEncodedImage(
117 virtual void OnTransportOverheadChanged(uint64 transport_overhead_bytes_per_packet) ;
121 virtual uint GetPayloadBitrateBps()
const ;
123 virtual uint GetProtectionBitrateBps()
const ;
125 virtual void SetEncodingData(uint64 width, uint64 height, uint64 num_temporal_layers) ;
127 virtual ::std::vector<::webrtc::RtpSequenceNumberMap::Info>
130 virtual void OnPacketFeedbackVector(
131 ::std::vector<::webrtc::StreamFeedbackObserver::StreamPacketInfo> packet_feedback_vector
145 MCNAPI
void ConfigureSsrcs(::std::map<uint, ::webrtc::RtpState>
const& suspended_ssrcs);
149 ::std::map<uint, ::webrtc::RtpState>
const& suspended_ssrcs,
150 ::std::map<uint, ::webrtc::RtpPayloadState>
const& states,
152 int rtcp_report_interval_ms,
158 ::std::unique_ptr<::webrtc::FecController> fec_controller,
174 ::std::map<uint, ::webrtc::RtpState>
const& suspended_ssrcs,
175 ::std::map<uint, ::webrtc::RtpPayloadState>
const& states,
177 int rtcp_report_interval_ms,
183 ::std::unique_ptr<::webrtc::FecController> fec_controller,
210 uint* sent_video_rate_bps,
211 uint* sent_nack_rate_bps,
212 uint* sent_fec_rate_bps
238 MCNAPI ::std::vector<::webrtc::RtpSequenceNumberMap::Info>
Definition _HeaderOutputPredefine.h:309
Definition EncodedImage.h:12
Definition FecController.h:15
Definition FieldTrialsView.h:7
Definition FrameEncryptorInterface.h:11
Definition Frequency.h:10
Definition RateLimiter.h:12
Definition RtcEventLog.h:13
Definition RtpTransportControllerSendInterface.h:38
Definition RtpVideoSenderInterface.h:21
MCAPI void $OnBitrateAllocationUpdated(::webrtc::VideoBitrateAllocation const &bitrate)
MCAPI void $OnTransportOverheadChanged(uint64 transport_overhead_bytes_per_packet)
MCAPI void $SetRetransmissionMode(int retransmission_mode)
MCAPI RtpVideoSender(::webrtc::Clock *clock, ::std::map< uint, ::webrtc::RtpState > const &suspended_ssrcs, ::std::map< uint, ::webrtc::RtpPayloadState > const &states, ::webrtc::RtpConfig const &rtp_config, int rtcp_report_interval_ms, ::webrtc::Transport *send_transport, ::webrtc::RtpSenderObservers const &observers, ::webrtc::RtpTransportControllerSendInterface *transport, ::webrtc::RtcEventLog *event_log, ::webrtc::RateLimiter *retransmission_limiter, ::std::unique_ptr<::webrtc::FecController > fec_controller, ::webrtc::FrameEncryptorInterface *frame_encryptor, ::webrtc::CryptoOptions const &crypto_options, ::webrtc::scoped_refptr<::webrtc::FrameTransformerInterface > frame_transformer, ::webrtc::FieldTrialsView const &field_trials, ::webrtc::TaskQueueFactory *task_queue_factory)
MCAPI void $OnNetworkAvailability(bool network_available)
MCAPI::webrtc::DataRate CalculateOverheadRate(::webrtc::DataRate data_rate, ::webrtc::DataSize packet_size, ::webrtc::DataSize overhead_per_packet, ::webrtc::Frequency framerate) const
MCAPI void $OnVideoLayersAllocationUpdated(::webrtc::VideoLayersAllocation const &allocation)
static MCAPI void ** $vftableForFecControllerOverride()
MCAPI void ConfigureSsrcs(::std::map< uint, ::webrtc::RtpState > const &suspended_ssrcs)
MCAPI uint $GetProtectionBitrateBps() const
MCAPI void $SetSending(bool enabled)
MCAPI void $OnBitrateUpdated(::webrtc::BitrateAllocationUpdate update, int framerate)
MCAPI void SetActiveModulesLocked(bool sending)
static MCAPI void ** $vftableForEncodedImageCallback()
MCAPI void $SetEncodingData(uint64 width, uint64 height, uint64 num_temporal_layers)
MCAPI void $OnPacketFeedbackVector(::std::vector<::webrtc::StreamFeedbackObserver::StreamPacketInfo > packet_feedback_vector)
MCAPI int $ProtectionRequest(::webrtc::FecProtectionParams const *delta_params, ::webrtc::FecProtectionParams const *key_params, uint *sent_video_rate_bps, uint *sent_nack_rate_bps, uint *sent_fec_rate_bps)
MCAPI void $SetFecAllowed(bool fec_allowed)
static MCAPI void ** $vftableForStreamFeedbackObserver()
MCAPI uint $GetPayloadBitrateBps() const
MCAPI void * $ctor(::webrtc::Clock *clock, ::std::map< uint, ::webrtc::RtpState > const &suspended_ssrcs, ::std::map< uint, ::webrtc::RtpPayloadState > const &states, ::webrtc::RtpConfig const &rtp_config, int rtcp_report_interval_ms, ::webrtc::Transport *send_transport, ::webrtc::RtpSenderObservers const &observers, ::webrtc::RtpTransportControllerSendInterface *transport, ::webrtc::RtcEventLog *event_log, ::webrtc::RateLimiter *retransmission_limiter, ::std::unique_ptr<::webrtc::FecController > fec_controller, ::webrtc::FrameEncryptorInterface *frame_encryptor, ::webrtc::CryptoOptions const &crypto_options, ::webrtc::scoped_refptr<::webrtc::FrameTransformerInterface > frame_transformer, ::webrtc::FieldTrialsView const &field_trials, ::webrtc::TaskQueueFactory *task_queue_factory)
MCAPI::webrtc::EncodedImageCallback::Result $OnEncodedImage(::webrtc::EncodedImage const &encoded_image, ::webrtc::CodecSpecificInfo const *codec_specific_info)
MCAPI ::std::map< uint, ::webrtc::RtpPayloadState > $GetRtpPayloadStates() const
MCAPI void $DeliverRtcp(uchar const *packet, uint64 length)
MCAPI ::std::vector<::webrtc::RtpSequenceNumberMap::Info > $GetSentRtpPacketInfos(uint ssrc, ::rtc::ArrayView< ushort const > sequence_numbers) const
MCAPI ::std::map< uint, ::webrtc::RtpState > $GetRtpStates() const
static MCAPI void ** $vftableForVCMProtectionCallback()
Definition StreamFeedbackObserver.h:7
Definition TaskQueueFactory.h:13
Definition Transport.h:12
Definition VCMProtectionCallback.h:12
Definition VideoBitrateAllocation.h:7
Definition scoped_refptr.h:8
Definition BitrateAllocationUpdate.h:7
Definition CodecSpecificInfo.h:7
Definition CryptoOptions.h:7
Definition FecProtectionParams.h:7
Definition RtpPayloadState.h:7
Definition RtpSenderObservers.h:7
Definition VideoLayersAllocation.h:7