Junlong Zou

Results 19 comments of Junlong Zou

Using redis too, have the same problem. Is there any schedule for resolving this issue?

@jmillan @mengbieting We also noticed this issue. libwebrtc uses rtx for bandwidth estimate, so rtx packets may arrived earlier than rtp packets. Espically when there is packets loss, we will...

There are two situaltions: 1. RTX seq num >= max RTP seq num. Seq num is not in nack list. will return false here: https://github.com/versatica/mediasoup/blob/bba2aa05d5e88f0ab1d46ea215caf7b22331b420/worker/src/RTC/NackGenerator.cpp#L124-L126 2. RTX seq num <...

The first situaltion is not recoverable, because we have inserted the seq num to `recoveredList`, and will never send a nack for this packet again. The second situaltion is recoverable,...

Because libwebrtc use rtx for bandwidth estimate, it may send rtx packet without receiving NACK. Such as: Libwebrtc sent rtp packets with seq num 1, 2, 3 and then sent...

> thanks for reply~ Do you mean when mediasoup receive rtx packet before sending nack, maybe we should return true in NackGenerator::ReceivePacket if isRecovered deal logic? because if the rtx...

There are two situations: 1. rtp packet arrived after rtx packet because of out of order. 2. libwebrtc may send serveral rtx packets with same rtp seq num to fill...

@jmillan This issue will occur when there is a small packet loss (maybe 2%), and will make the available outgoing bitrate decline to a very low value. Such as: First...

By the way, this issue is in `LossBasedBandwidthEstimation`, and there is a defect in it which is not easy to be modified: Upstream packet loss will effect the downstream bandwidth...

Yes, the payload may also different between consumers.