diff --git a/pkg/sfu/buffer/buffer.go b/pkg/sfu/buffer/buffer.go index 02e6098fb..d6e9ac577 100644 --- a/pkg/sfu/buffer/buffer.go +++ b/pkg/sfu/buffer/buffer.go @@ -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) { diff --git a/pkg/sfu/receiver.go b/pkg/sfu/receiver.go index ec069f621..f25250f86 100644 --- a/pkg/sfu/receiver.go +++ b/pkg/sfu/receiver.go @@ -834,6 +834,7 @@ func (w *WebRTCReceiver) forwardRTP(layer int32, buff *buffer.Buffer) { "latency", latency, "writeCount", writeCount, "queuingLatency", dequeuedAt-pkt.Arrival, + "isOutOfOrder", pkt.IsOutOfOrder, ) } }