From 45059521926f98f40e1189928326514571e498b4 Mon Sep 17 00:00:00 2001 From: David Chen Date: Tue, 22 Sep 2026 10:17:37 -0700 Subject: [PATCH] Handle big gaps in media sequence numbers Reset buffers when a big gap in media sequence numbers is detected. Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- pkg/sfu/flexfec/decoder.go | 1 + 1 file changed, 1 insertion(+) diff --git a/pkg/sfu/flexfec/decoder.go b/pkg/sfu/flexfec/decoder.go index 95e0d25dc..6523d4867 100644 --- a/pkg/sfu/flexfec/decoder.go +++ b/pkg/sfu/flexfec/decoder.go @@ -155,6 +155,7 @@ func (d *Decoder) DecodeFEC(receivedPacket *rtp.Packet) []*rtp.Packet { func (d *Decoder) observeMediaPacket(sequenceNumber uint16) { if d.hasNewestMediaSeq && d.mediaPacketsSeen >= mediaPacketsBeforeGapCheck && + isNewerSeq(d.newestMediaSeq, sequenceNumber) && seqDiff(sequenceNumber, d.newestMediaSeq) > uint16(mediaPacketsBeforeGapCheck) { d.logger.Infow("flexfec: big gap in media sequence numbers - resetting buffers") d.receivedFECPackets = nil