mirror of
https://github.com/livekit/livekit.git
synced 2026-10-23 15:12:43 +00:00
Broadcast cond var on RTX write. (#4038)
* Broadcast cond var on RTX write. High forwarding latency logs all show high queuing delay so far. From code inspection, RTX writes were not signaling the cond var. Not sure if that is the reason, but adding a signal there for further tests. * Remove return values from writeRTX as they are not used
This commit is contained in:
1 parent
061eb8b4e8
commit
32fc35254e
2 files changed
+4
-3
No files matched your search
@@ -455,7 +455,7 @@ func (b *Buffer) SetPrimaryBufferForRTX(primaryBuffer *Buffer) {
|
||||
}
|
||||
}
|
||||
|
||||
func (b *Buffer) writeRTX(rtxPkt *rtp.Packet, arrivalTime int64) (n int, err error) {
|
||||
func (b *Buffer) writeRTX(rtxPkt *rtp.Packet, arrivalTime int64) {
|
||||
b.Lock()
|
||||
defer b.Unlock()
|
||||
if !b.bound {
|
||||
@@ -481,14 +481,14 @@ func (b *Buffer) writeRTX(rtxPkt *rtp.Packet, arrivalTime int64) (n int, err err
|
||||
repairedPkt.SequenceNumber = binary.BigEndian.Uint16(rtxPkt.Payload[:2])
|
||||
repairedPkt.SSRC = b.mediaSSRC
|
||||
repairedPkt.Payload = rtxPkt.Payload[2:]
|
||||
n, err = repairedPkt.MarshalTo(b.rtxPktBuf)
|
||||
n, err := repairedPkt.MarshalTo(b.rtxPktBuf)
|
||||
if err != nil {
|
||||
b.logger.Errorw("could not marshal repaired packet", err, "ssrc", b.mediaSSRC, "sn", repairedPkt.SequenceNumber)
|
||||
return
|
||||
}
|
||||
|
||||
b.calc(b.rtxPktBuf[:n], &repairedPkt, arrivalTime, true)
|
||||
return
|
||||
b.readCond.Broadcast()
|
||||
}
|
||||
|
||||
func (b *Buffer) Read(buff []byte) (n int, err error) {
|
||||
|
||||
Reference in new issue
Block a user