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{