From d9ee9214459f53f28ed257fb4b655c25d1e5b3de Mon Sep 17 00:00:00 2001 From: Raja Subramanian Date: Tue, 22 Apr 2025 23:12:41 +0530 Subject: [PATCH] Set up RTX for WHIP publish (#3619) * Set up RTX for WHIP publish * bail early on error --- pkg/rtc/transport.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkg/rtc/transport.go b/pkg/rtc/transport.go index 9ec024dc3..0378e91b4 100644 --- a/pkg/rtc/transport.go +++ b/pkg/rtc/transport.go @@ -1267,8 +1267,17 @@ func (t *PCTransport) HandleRemoteDescription(sd webrtc.SessionDescription) erro err = t.pc.SetRemoteDescription(sd) if err != nil { t.params.Logger.Errorw("could not set remote description on synchronous mode peer connection", err) + return err } - return err + + rtxRepairs := nonSimulcastRTXRepairsFromSDP(parsed, t.params.Logger) + if len(rtxRepairs) > 0 { + t.params.Logger.Debugw("rtx pairs found from sdp", "ssrcs", rtxRepairs) + for repair, base := range rtxRepairs { + t.params.Config.BufferFactory.SetRTXPair(repair, base) + } + } + return nil } t.postEvent(event{