Makes padding prefer video SSRCs instead of audio.
Some clients will not count audio packets into the bandwidth estimate despite negotiating e.g. abs-send-time for that SSRC. If padding is sent on such an RTP module, we might get stuck in a low resolution. This CL works around that by preferring to send padding on video SSRCs. Bug: webrtc:11196 Change-Id: I1ff503a31a85bc32315006a4f15f8b08e5d4e883 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/161941 Commit-Queue: Erik Språng <sprang@webrtc.org> Reviewed-by: Sebastian Jansson <srte@webrtc.org> Cr-Commit-Position: refs/heads/master@{#30066}
This commit is contained in:
@ -334,6 +334,11 @@ bool ModuleRtpRtcpImpl::SendingMedia() const {
|
||||
return rtp_sender_ ? rtp_sender_->packet_generator.SendingMedia() : false;
|
||||
}
|
||||
|
||||
bool ModuleRtpRtcpImpl::IsAudioConfigured() const {
|
||||
return rtp_sender_ ? rtp_sender_->packet_generator.IsAudioConfigured()
|
||||
: false;
|
||||
}
|
||||
|
||||
void ModuleRtpRtcpImpl::SetAsPartOfAllocation(bool part_of_allocation) {
|
||||
RTC_CHECK(rtp_sender_);
|
||||
rtp_sender_->packet_sender.ForceIncludeSendPacketsInAllocation(
|
||||
|
||||
@ -125,6 +125,8 @@ class ModuleRtpRtcpImpl : public RtpRtcp, public RTCPReceiver::ModuleRtpRtcp {
|
||||
|
||||
bool SendingMedia() const override;
|
||||
|
||||
bool IsAudioConfigured() const override;
|
||||
|
||||
void SetAsPartOfAllocation(bool part_of_allocation) override;
|
||||
|
||||
bool OnSendingRtpFrame(uint32_t timestamp,
|
||||
|
||||
@ -545,6 +545,10 @@ bool RTPSender::SendingMedia() const {
|
||||
return sending_media_;
|
||||
}
|
||||
|
||||
bool RTPSender::IsAudioConfigured() const {
|
||||
return audio_configured_;
|
||||
}
|
||||
|
||||
void RTPSender::SetTimestampOffset(uint32_t timestamp) {
|
||||
rtc::CritScope lock(&send_critsect_);
|
||||
timestamp_offset_ = timestamp;
|
||||
|
||||
@ -54,6 +54,7 @@ class RTPSender {
|
||||
|
||||
void SetSendingMediaStatus(bool enabled);
|
||||
bool SendingMedia() const;
|
||||
bool IsAudioConfigured() const;
|
||||
|
||||
uint32_t TimestampOffset() const;
|
||||
void SetTimestampOffset(uint32_t timestamp);
|
||||
|
||||
Reference in New Issue
Block a user