Nack相关参数可配置化 (#3510 #3507)

This commit is contained in:
gongluck
2024-05-12 18:15:11 +08:00
committed by GitHub
parent bbdbd6a3e0
commit 5df2b80757
4 changed files with 76 additions and 23 deletions

View File

@@ -57,6 +57,9 @@ const string kMinBitrate = RTC_FIELD "min_bitrate";
// 数据通道设置
const string kDataChannelEcho = RTC_FIELD "datachannel_echo";
// rtp丢包状态最长保留时间
const string kNackMaxMS = RTC_FIELD "nackMaxMS";
static onceToken token([]() {
mINI::Instance()[kTimeOutSec] = 15;
mINI::Instance()[kExternIP] = "";
@@ -69,6 +72,8 @@ static onceToken token([]() {
mINI::Instance()[kMinBitrate] = 0;
mINI::Instance()[kDataChannelEcho] = true;
mINI::Instance()[kNackMaxMS] = 3 * 1000;
});
} // namespace RTC
@@ -800,7 +805,8 @@ public:
_on_nack = std::move(on_nack);
setOnSorted(std::move(cb));
//设置jitter buffer参数
RtpTrackImp::setParams(1024, NackContext::kNackMaxMS, 512);
GET_CONFIG(uint32_t, nack_maxms, Rtc::kNackMaxMS);
RtpTrackImp::setParams(1024, nack_maxms, 512);
_nack_ctx.setOnNack([this](const FCI_NACK &nack) { onNack(nack); });
}