From 63d9c6c2b7dff2f7a4979a2c9e8df81aa94eaf54 Mon Sep 17 00:00:00 2001 From: Alexey Khit Date: Sun, 23 Apr 2023 20:42:49 +0300 Subject: [PATCH] Fix Chinese cameras with wrong Session header after v1.4.0 #382 --- pkg/rtsp/client.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkg/rtsp/client.go b/pkg/rtsp/client.go index bf304f88..241d7f73 100644 --- a/pkg/rtsp/client.go +++ b/pkg/rtsp/client.go @@ -246,9 +246,11 @@ func (c *Conn) SetupMedia(media *core.Media) (byte, error) { if c.session == "" { // Session: 216525287999;timeout=60 if s := res.Header.Get("Session"); s != "" { - c.session, s, _ = strings.Cut(s, ";timeout=") - if s != "" { - c.keepalive, _ = strconv.Atoi(s) + if i := strings.IndexByte(s, ';'); i > 0 { + c.session = s[:i] + } + if i := strings.Index(s, "timeout="); i > 0 { + c.keepalive, _ = strconv.Atoi(s[i+8:]) } } }