diff --git a/pkg/sfu/buffer/buffer.go b/pkg/sfu/buffer/buffer.go index 1678cba69..74497c134 100644 --- a/pkg/sfu/buffer/buffer.go +++ b/pkg/sfu/buffer/buffer.go @@ -562,9 +562,11 @@ func (b *Buffer) doReports(arrivalTime int64) { // RTCP reports pkts := b.getRTCP() - b.callbacksQueue.Enqueue(func() { - b.feedbackCB(pkts) - }) + if pkts != nil { + b.callbacksQueue.Enqueue(func() { + b.feedbackCB(pkts) + }) + } } func (b *Buffer) buildNACKPacket() ([]rtcp.Packet, int) { diff --git a/pkg/sfu/receiver.go b/pkg/sfu/receiver.go index a2e7727f1..fe9d81738 100644 --- a/pkg/sfu/receiver.go +++ b/pkg/sfu/receiver.go @@ -377,7 +377,7 @@ func (w *WebRTCReceiver) DeleteDownTrack(peerID livekit.ParticipantID) { } func (w *WebRTCReceiver) sendRTCP(packets []rtcp.Packet) { - if w.closed.Load() { + if packets == nil || w.closed.Load() { return }