Adopt absl::string_view in modules/rtp_rtcp
Bug: webrtc:13579 Change-Id: Ic4e1431bedc69492358cb2e3749b50a941306f44 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/262250 Reviewed-by: Erik Språng <sprang@webrtc.org> Commit-Queue: Ali Tofigh <alito@webrtc.org> Cr-Commit-Position: refs/heads/main@{#36887}
This commit is contained in:
committed by
WebRTC LUCI CQ
parent
76d84f122e
commit
d14e8894fc
@ -467,7 +467,10 @@ rtc_library("mock_rtp_rtcp") {
|
||||
"../../rtc_base:checks",
|
||||
"../../test:test_support",
|
||||
]
|
||||
absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
|
||||
absl_deps = [
|
||||
"//third_party/abseil-cpp/absl/strings",
|
||||
"//third_party/abseil-cpp/absl/types:optional",
|
||||
]
|
||||
}
|
||||
|
||||
rtc_library("rtp_packetizer_av1_test_helper") {
|
||||
@ -659,6 +662,7 @@ if (rtc_include_tests) {
|
||||
"//third_party/abseil-cpp/absl/algorithm:container",
|
||||
"//third_party/abseil-cpp/absl/base:core_headers",
|
||||
"//third_party/abseil-cpp/absl/memory",
|
||||
"//third_party/abseil-cpp/absl/strings",
|
||||
"//third_party/abseil-cpp/absl/types:optional",
|
||||
]
|
||||
}
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "api/array_view.h"
|
||||
#include "api/rtp_parameters.h"
|
||||
#include "modules/rtp_rtcp/include/rtp_header_extension_map.h"
|
||||
@ -39,7 +40,7 @@ class FlexfecSender : public VideoFecGenerator {
|
||||
FlexfecSender(int payload_type,
|
||||
uint32_t ssrc,
|
||||
uint32_t protected_media_ssrc,
|
||||
const std::string& mid,
|
||||
absl::string_view mid,
|
||||
const std::vector<RtpExtension>& rtp_header_extensions,
|
||||
rtc::ArrayView<const RtpExtensionSize> extension_sizes,
|
||||
const RtpState* rtp_state,
|
||||
|
||||
@ -17,6 +17,7 @@
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "absl/types/optional.h"
|
||||
#include "api/video/video_bitrate_allocation.h"
|
||||
#include "modules/rtp_rtcp/include/rtp_rtcp_defines.h"
|
||||
@ -65,8 +66,8 @@ class MockRtpRtcpInterface : public RtpRtcpInterface {
|
||||
MOCK_METHOD(RtpState, GetRtpState, (), (const, override));
|
||||
MOCK_METHOD(RtpState, GetRtxState, (), (const, override));
|
||||
MOCK_METHOD(uint32_t, SSRC, (), (const, override));
|
||||
MOCK_METHOD(void, SetRid, (const std::string& rid), (override));
|
||||
MOCK_METHOD(void, SetMid, (const std::string& mid), (override));
|
||||
MOCK_METHOD(void, SetRid, (absl::string_view rid), (override));
|
||||
MOCK_METHOD(void, SetMid, (absl::string_view mid), (override));
|
||||
MOCK_METHOD(void, SetCsrcs, (const std::vector<uint32_t>& csrcs), (override));
|
||||
MOCK_METHOD(void, SetRtxSendStatus, (int modes), (override));
|
||||
MOCK_METHOD(int, RtxSendStatus, (), (const, override));
|
||||
@ -113,10 +114,7 @@ class MockRtpRtcpInterface : public RtpRtcpInterface {
|
||||
MOCK_METHOD(void, OnPacketSendingThreadSwitched, (), (override));
|
||||
MOCK_METHOD(RtcpMode, RTCP, (), (const, override));
|
||||
MOCK_METHOD(void, SetRTCPStatus, (RtcpMode method), (override));
|
||||
MOCK_METHOD(int32_t,
|
||||
SetCNAME,
|
||||
(const char cname[RTCP_CNAME_SIZE]),
|
||||
(override));
|
||||
MOCK_METHOD(int32_t, SetCNAME, (absl::string_view cname), (override));
|
||||
MOCK_METHOD(int32_t,
|
||||
RemoteNTP,
|
||||
(uint32_t * received_ntp_secs,
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
#include <list>
|
||||
#include <utility>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "modules/rtp_rtcp/include/rtp_rtcp_defines.h"
|
||||
#include "modules/rtp_rtcp/source/forward_error_correction.h"
|
||||
#include "modules/rtp_rtcp/source/rtp_header_extensions.h"
|
||||
@ -71,7 +72,7 @@ FlexfecSender::FlexfecSender(
|
||||
int payload_type,
|
||||
uint32_t ssrc,
|
||||
uint32_t protected_media_ssrc,
|
||||
const std::string& mid,
|
||||
absl::string_view mid,
|
||||
const std::vector<RtpExtension>& rtp_header_extensions,
|
||||
rtc::ArrayView<const RtpExtensionSize> extension_sizes,
|
||||
const RtpState* rtp_state,
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
#include <cstdint>
|
||||
#include <utility>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "modules/rtp_rtcp/source/byte_io.h"
|
||||
#include "modules/rtp_rtcp/source/rtcp_packet/common_header.h"
|
||||
#include "rtc_base/checks.h"
|
||||
@ -125,9 +126,9 @@ bool Bye::SetCsrcs(std::vector<uint32_t> csrcs) {
|
||||
return true;
|
||||
}
|
||||
|
||||
void Bye::SetReason(std::string reason) {
|
||||
void Bye::SetReason(absl::string_view reason) {
|
||||
RTC_DCHECK_LE(reason.size(), 0xffu);
|
||||
reason_ = std::move(reason);
|
||||
reason_ = std::string(reason);
|
||||
}
|
||||
|
||||
size_t Bye::BlockLength() const {
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "modules/rtp_rtcp/source/rtcp_packet.h"
|
||||
|
||||
namespace webrtc {
|
||||
@ -32,7 +33,7 @@ class Bye : public RtcpPacket {
|
||||
bool Parse(const CommonHeader& packet);
|
||||
|
||||
bool SetCsrcs(std::vector<uint32_t> csrcs);
|
||||
void SetReason(std::string reason);
|
||||
void SetReason(absl::string_view reason);
|
||||
|
||||
const std::vector<uint32_t>& csrcs() const { return csrcs_; }
|
||||
const std::string& reason() const { return reason_; }
|
||||
|
||||
@ -14,6 +14,7 @@
|
||||
|
||||
#include <utility>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "modules/rtp_rtcp/source/byte_io.h"
|
||||
#include "modules/rtp_rtcp/source/rtcp_packet/common_header.h"
|
||||
#include "rtc_base/checks.h"
|
||||
@ -145,7 +146,7 @@ bool Sdes::Parse(const CommonHeader& packet) {
|
||||
return true;
|
||||
}
|
||||
|
||||
bool Sdes::AddCName(uint32_t ssrc, std::string cname) {
|
||||
bool Sdes::AddCName(uint32_t ssrc, absl::string_view cname) {
|
||||
RTC_DCHECK_LE(cname.length(), 0xffu);
|
||||
if (chunks_.size() >= kMaxNumberOfChunks) {
|
||||
RTC_LOG(LS_WARNING) << "Max SDES chunks reached.";
|
||||
@ -153,7 +154,7 @@ bool Sdes::AddCName(uint32_t ssrc, std::string cname) {
|
||||
}
|
||||
Chunk chunk;
|
||||
chunk.ssrc = ssrc;
|
||||
chunk.cname = std::move(cname);
|
||||
chunk.cname = std::string(cname);
|
||||
chunks_.push_back(chunk);
|
||||
block_length_ += ChunkSize(chunk);
|
||||
return true;
|
||||
|
||||
@ -14,6 +14,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "modules/rtp_rtcp/source/rtcp_packet.h"
|
||||
|
||||
namespace webrtc {
|
||||
@ -35,7 +36,7 @@ class Sdes : public RtcpPacket {
|
||||
// Parse assumes header is already parsed and validated.
|
||||
bool Parse(const CommonHeader& packet);
|
||||
|
||||
bool AddCName(uint32_t ssrc, std::string cname);
|
||||
bool AddCName(uint32_t ssrc, absl::string_view cname);
|
||||
|
||||
const std::vector<Chunk>& chunks() const { return chunks_; }
|
||||
|
||||
|
||||
@ -16,6 +16,7 @@
|
||||
#include <memory>
|
||||
#include <utility>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "absl/types/optional.h"
|
||||
#include "api/rtc_event_log/rtc_event_log.h"
|
||||
#include "api/rtp_headers.h"
|
||||
@ -354,13 +355,10 @@ void RTCPSender::SetRemoteSSRC(uint32_t ssrc) {
|
||||
remote_ssrc_ = ssrc;
|
||||
}
|
||||
|
||||
int32_t RTCPSender::SetCNAME(const char* c_name) {
|
||||
if (!c_name)
|
||||
return -1;
|
||||
|
||||
RTC_DCHECK_LT(strlen(c_name), RTCP_CNAME_SIZE);
|
||||
int32_t RTCPSender::SetCNAME(absl::string_view c_name) {
|
||||
RTC_DCHECK_LT(c_name.size(), RTCP_CNAME_SIZE);
|
||||
MutexLock lock(&mutex_rtcp_sender_);
|
||||
cname_ = c_name;
|
||||
cname_ = std::string(c_name);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
@ -17,6 +17,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "absl/types/optional.h"
|
||||
#include "api/call/transport.h"
|
||||
#include "api/units/time_delta.h"
|
||||
@ -137,7 +138,8 @@ class RTCPSender final {
|
||||
|
||||
void SetRemoteSSRC(uint32_t ssrc) RTC_LOCKS_EXCLUDED(mutex_rtcp_sender_);
|
||||
|
||||
int32_t SetCNAME(const char* cName) RTC_LOCKS_EXCLUDED(mutex_rtcp_sender_);
|
||||
int32_t SetCNAME(absl::string_view cName)
|
||||
RTC_LOCKS_EXCLUDED(mutex_rtcp_sender_);
|
||||
|
||||
bool TimeToSendRTCPReport(bool sendKeyframeBeforeRTP = false) const
|
||||
RTC_LOCKS_EXCLUDED(mutex_rtcp_sender_);
|
||||
|
||||
@ -16,6 +16,7 @@
|
||||
#include <cstdint>
|
||||
#include <limits>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "modules/rtp_rtcp/include/rtp_cvo.h"
|
||||
#include "modules/rtp_rtcp/source/byte_io.h"
|
||||
// TODO(bug:9855) Move kNoSpatialIdx from vp9_globals.h to common_constants
|
||||
@ -800,7 +801,7 @@ bool BaseRtpStringExtension::Parse(rtc::ArrayView<const uint8_t> data,
|
||||
}
|
||||
|
||||
bool BaseRtpStringExtension::Write(rtc::ArrayView<uint8_t> data,
|
||||
const std::string& str) {
|
||||
absl::string_view str) {
|
||||
if (str.size() > kMaxValueSizeBytes) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -297,8 +297,8 @@ class BaseRtpStringExtension {
|
||||
static constexpr uint8_t kMaxValueSizeBytes = 16;
|
||||
|
||||
static bool Parse(rtc::ArrayView<const uint8_t> data, std::string* str);
|
||||
static size_t ValueSize(const std::string& str) { return str.size(); }
|
||||
static bool Write(rtc::ArrayView<uint8_t> data, const std::string& str);
|
||||
static size_t ValueSize(absl::string_view str) { return str.size(); }
|
||||
static bool Write(rtc::ArrayView<uint8_t> data, absl::string_view str);
|
||||
};
|
||||
|
||||
class RtpStreamId : public BaseRtpStringExtension {
|
||||
|
||||
@ -19,6 +19,7 @@
|
||||
#include <string>
|
||||
#include <utility>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "api/transport/field_trial_based_config.h"
|
||||
#include "modules/rtp_rtcp/source/rtcp_packet/dlrr.h"
|
||||
#include "modules/rtp_rtcp/source/rtcp_sender.h"
|
||||
@ -291,13 +292,13 @@ RtpState ModuleRtpRtcpImpl::GetRtxState() const {
|
||||
return state;
|
||||
}
|
||||
|
||||
void ModuleRtpRtcpImpl::SetRid(const std::string& rid) {
|
||||
void ModuleRtpRtcpImpl::SetRid(absl::string_view rid) {
|
||||
if (rtp_sender_) {
|
||||
rtp_sender_->packet_generator.SetRid(rid);
|
||||
}
|
||||
}
|
||||
|
||||
void ModuleRtpRtcpImpl::SetMid(const std::string& mid) {
|
||||
void ModuleRtpRtcpImpl::SetMid(absl::string_view mid) {
|
||||
if (rtp_sender_) {
|
||||
rtp_sender_->packet_generator.SetMid(mid);
|
||||
}
|
||||
@ -517,7 +518,7 @@ void ModuleRtpRtcpImpl::SetRTCPStatus(const RtcpMode method) {
|
||||
rtcp_sender_.SetRTCPStatus(method);
|
||||
}
|
||||
|
||||
int32_t ModuleRtpRtcpImpl::SetCNAME(const char* c_name) {
|
||||
int32_t ModuleRtpRtcpImpl::SetCNAME(absl::string_view c_name) {
|
||||
return rtcp_sender_.SetCNAME(c_name);
|
||||
}
|
||||
|
||||
|
||||
@ -19,6 +19,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "absl/types/optional.h"
|
||||
#include "api/rtp_headers.h"
|
||||
#include "api/video/video_bitrate_allocation.h"
|
||||
@ -101,9 +102,9 @@ class ModuleRtpRtcpImpl : public RtpRtcp, public RTCPReceiver::ModuleRtpRtcp {
|
||||
|
||||
uint32_t SSRC() const override { return rtcp_sender_.SSRC(); }
|
||||
|
||||
void SetRid(const std::string& rid) override;
|
||||
void SetRid(absl::string_view rid) override;
|
||||
|
||||
void SetMid(const std::string& mid) override;
|
||||
void SetMid(absl::string_view mid) override;
|
||||
|
||||
void SetCsrcs(const std::vector<uint32_t>& csrcs) override;
|
||||
|
||||
@ -167,7 +168,7 @@ class ModuleRtpRtcpImpl : public RtpRtcp, public RTCPReceiver::ModuleRtpRtcp {
|
||||
void SetRTCPStatus(RtcpMode method) override;
|
||||
|
||||
// Set RTCP CName.
|
||||
int32_t SetCNAME(const char* c_name) override;
|
||||
int32_t SetCNAME(absl::string_view c_name) override;
|
||||
|
||||
// Get remote NTP.
|
||||
int32_t RemoteNTP(uint32_t* received_ntp_secs,
|
||||
|
||||
@ -19,6 +19,7 @@
|
||||
#include <string>
|
||||
#include <utility>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "absl/types/optional.h"
|
||||
#include "api/sequence_checker.h"
|
||||
#include "api/transport/field_trial_based_config.h"
|
||||
@ -227,13 +228,13 @@ uint32_t ModuleRtpRtcpImpl2::local_media_ssrc() const {
|
||||
return rtcp_receiver_.local_media_ssrc();
|
||||
}
|
||||
|
||||
void ModuleRtpRtcpImpl2::SetRid(const std::string& rid) {
|
||||
void ModuleRtpRtcpImpl2::SetRid(absl::string_view rid) {
|
||||
if (rtp_sender_) {
|
||||
rtp_sender_->packet_generator.SetRid(rid);
|
||||
}
|
||||
}
|
||||
|
||||
void ModuleRtpRtcpImpl2::SetMid(const std::string& mid) {
|
||||
void ModuleRtpRtcpImpl2::SetMid(absl::string_view mid) {
|
||||
if (rtp_sender_) {
|
||||
rtp_sender_->packet_generator.SetMid(mid);
|
||||
}
|
||||
@ -463,7 +464,7 @@ void ModuleRtpRtcpImpl2::SetRTCPStatus(const RtcpMode method) {
|
||||
rtcp_sender_.SetRTCPStatus(method);
|
||||
}
|
||||
|
||||
int32_t ModuleRtpRtcpImpl2::SetCNAME(const char* c_name) {
|
||||
int32_t ModuleRtpRtcpImpl2::SetCNAME(absl::string_view c_name) {
|
||||
return rtcp_sender_.SetCNAME(c_name);
|
||||
}
|
||||
|
||||
|
||||
@ -19,6 +19,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "absl/types/optional.h"
|
||||
#include "api/rtp_headers.h"
|
||||
#include "api/sequence_checker.h"
|
||||
@ -113,9 +114,9 @@ class ModuleRtpRtcpImpl2 final : public RtpRtcpInterface,
|
||||
// RtpRtcpInterface::Configuration::local_media_ssrc.
|
||||
uint32_t local_media_ssrc() const;
|
||||
|
||||
void SetRid(const std::string& rid) override;
|
||||
void SetRid(absl::string_view rid) override;
|
||||
|
||||
void SetMid(const std::string& mid) override;
|
||||
void SetMid(absl::string_view mid) override;
|
||||
|
||||
void SetCsrcs(const std::vector<uint32_t>& csrcs) override;
|
||||
|
||||
@ -179,7 +180,7 @@ class ModuleRtpRtcpImpl2 final : public RtpRtcpInterface,
|
||||
void SetRTCPStatus(RtcpMode method) override;
|
||||
|
||||
// Set RTCP CName.
|
||||
int32_t SetCNAME(const char* c_name) override;
|
||||
int32_t SetCNAME(absl::string_view c_name) override;
|
||||
|
||||
// Get remote NTP.
|
||||
int32_t RemoteNTP(uint32_t* received_ntp_secs,
|
||||
|
||||
@ -15,6 +15,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "absl/types/optional.h"
|
||||
#include "api/field_trials_view.h"
|
||||
#include "api/frame_transformer_interface.h"
|
||||
@ -255,12 +256,12 @@ class RtpRtcpInterface : public RtcpFeedbackSenderInterface {
|
||||
// RIDs are used to identify an RTP stream if SSRCs are not negotiated.
|
||||
// If the RID and Repaired RID extensions are not registered, the RID will
|
||||
// not be sent.
|
||||
virtual void SetRid(const std::string& rid) = 0;
|
||||
virtual void SetRid(absl::string_view rid) = 0;
|
||||
|
||||
// Sets the value for sending in the MID RTP header extension.
|
||||
// The MID RTP header extension should be registered for this to do anything.
|
||||
// Once set, this value can not be changed or removed.
|
||||
virtual void SetMid(const std::string& mid) = 0;
|
||||
virtual void SetMid(absl::string_view mid) = 0;
|
||||
|
||||
// Sets CSRC.
|
||||
// `csrcs` - vector of CSRCs
|
||||
@ -373,7 +374,7 @@ class RtpRtcpInterface : public RtcpFeedbackSenderInterface {
|
||||
|
||||
// Sets RTCP CName (i.e unique identifier).
|
||||
// Returns -1 on failure else 0.
|
||||
virtual int32_t SetCNAME(const char* cname) = 0;
|
||||
virtual int32_t SetCNAME(absl::string_view cname) = 0;
|
||||
|
||||
// Returns remote NTP.
|
||||
// Returns -1 on failure else 0.
|
||||
|
||||
@ -17,6 +17,7 @@
|
||||
#include <utility>
|
||||
|
||||
#include "absl/strings/match.h"
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "api/array_view.h"
|
||||
#include "api/rtc_event_log/rtc_event_log.h"
|
||||
#include "logging/rtc_event_log/events/rtc_event_rtp_packet_outgoing.h"
|
||||
@ -583,19 +584,19 @@ uint32_t RTPSender::TimestampOffset() const {
|
||||
return timestamp_offset_;
|
||||
}
|
||||
|
||||
void RTPSender::SetRid(const std::string& rid) {
|
||||
void RTPSender::SetRid(absl::string_view rid) {
|
||||
// RID is used in simulcast scenario when multiple layers share the same mid.
|
||||
MutexLock lock(&send_mutex_);
|
||||
RTC_DCHECK_LE(rid.length(), RtpStreamId::kMaxValueSizeBytes);
|
||||
rid_ = rid;
|
||||
rid_ = std::string(rid);
|
||||
UpdateHeaderSizes();
|
||||
}
|
||||
|
||||
void RTPSender::SetMid(const std::string& mid) {
|
||||
void RTPSender::SetMid(absl::string_view mid) {
|
||||
// This is configured via the API.
|
||||
MutexLock lock(&send_mutex_);
|
||||
RTC_DCHECK_LE(mid.length(), RtpMid::kMaxValueSizeBytes);
|
||||
mid_ = mid;
|
||||
mid_ = std::string(mid);
|
||||
UpdateHeaderSizes();
|
||||
}
|
||||
|
||||
|
||||
@ -58,9 +58,9 @@ class RTPSender {
|
||||
uint32_t TimestampOffset() const RTC_LOCKS_EXCLUDED(send_mutex_);
|
||||
void SetTimestampOffset(uint32_t timestamp) RTC_LOCKS_EXCLUDED(send_mutex_);
|
||||
|
||||
void SetRid(const std::string& rid) RTC_LOCKS_EXCLUDED(send_mutex_);
|
||||
void SetRid(absl::string_view rid) RTC_LOCKS_EXCLUDED(send_mutex_);
|
||||
|
||||
void SetMid(const std::string& mid) RTC_LOCKS_EXCLUDED(send_mutex_);
|
||||
void SetMid(absl::string_view mid) RTC_LOCKS_EXCLUDED(send_mutex_);
|
||||
|
||||
uint16_t SequenceNumber() const RTC_LOCKS_EXCLUDED(send_mutex_);
|
||||
void SetSequenceNumber(uint16_t seq) RTC_LOCKS_EXCLUDED(send_mutex_);
|
||||
|
||||
@ -13,6 +13,7 @@
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
|
||||
#include "absl/strings/string_view.h"
|
||||
#include "api/rtc_event_log/rtc_event.h"
|
||||
#include "api/transport/field_trial_based_config.h"
|
||||
#include "api/video/video_codec_constants.h"
|
||||
@ -266,14 +267,14 @@ class RtpSenderTest : public ::testing::Test {
|
||||
|
||||
// Enable sending of the MID header extension for both the primary SSRC and
|
||||
// the RTX SSRC.
|
||||
void EnableMidSending(const std::string& mid) {
|
||||
void EnableMidSending(absl::string_view mid) {
|
||||
rtp_sender_->RegisterRtpHeaderExtension(RtpMid::Uri(), kMidExtensionId);
|
||||
rtp_sender_->SetMid(mid);
|
||||
}
|
||||
|
||||
// Enable sending of the RSID header extension for the primary SSRC and the
|
||||
// RRSID header extension for the RTX SSRC.
|
||||
void EnableRidSending(const std::string& rid) {
|
||||
void EnableRidSending(absl::string_view rid) {
|
||||
rtp_sender_->RegisterRtpHeaderExtension(RtpStreamId::Uri(),
|
||||
kRidExtensionId);
|
||||
rtp_sender_->RegisterRtpHeaderExtension(RepairedRtpStreamId::Uri(),
|
||||
|
||||
Reference in New Issue
Block a user