From 99c4a3e34a719a1187e91ac7fe0a0b219a41664f Mon Sep 17 00:00:00 2001 From: Alexey Khit Date: Sun, 4 Sep 2022 21:43:32 +0300 Subject: [PATCH] Update RTSP Setup link logic --- pkg/rtsp/conn.go | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/pkg/rtsp/conn.go b/pkg/rtsp/conn.go index 8c7c3f15..b7159d28 100644 --- a/pkg/rtsp/conn.go +++ b/pkg/rtsp/conn.go @@ -331,11 +331,18 @@ func (c *Conn) SetupMedia( return nil, fmt.Errorf("wrong media: %v", media) } - trackURL, err := url.Parse(media.Control) + rawURL := media.Control + if !strings.Contains(rawURL, "://") { + rawURL = c.URL.String() + if !strings.HasSuffix(rawURL, "/") { + rawURL += "/" + } + rawURL += media.Control + } + trackURL, err := url.Parse(rawURL) if err != nil { return nil, err } - trackURL = c.URL.ResolveReference(trackURL) req := &tcp.Request{ Method: MethodSetup,