From 4100ed635d4c7933dcee61750020bbe04606b668 Mon Sep 17 00:00:00 2001 From: Nashira Date: Wed, 29 Nov 2023 18:17:22 +0800 Subject: [PATCH] =?UTF-8?q?=E5=85=BC=E5=AE=B9=E6=97=B7=E4=B8=96=E6=99=BA?= =?UTF-8?q?=E8=83=BD=E5=88=86=E6=9E=90=E7=B3=BB=E7=BB=9FRTSP=E6=8B=89?= =?UTF-8?q?=E6=B5=81=E5=85=BC=E5=AE=B9=E6=80=A7=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 旷世智能分析系统(User-Agent显示为LIVE555 Streaming Media v2017.07.18)RTSP拉流, DESCRIBE URL中包含账号密码,而当SDP的control没有完整的URL只有trackID时,SETUP 会报错"no such track with control url"。 修复: 在RtspSession::onWholeRtspPacket()方法中使用RtspUrl._url初始化_content_base。 Signed-off-by: Nashira --- src/Rtsp/RtspSession.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Rtsp/RtspSession.cpp b/src/Rtsp/RtspSession.cpp index 5e8e85ea..ea647300 100644 --- a/src/Rtsp/RtspSession.cpp +++ b/src/Rtsp/RtspSession.cpp @@ -131,7 +131,9 @@ void RtspSession::onWholeRtspPacket(Parser &parser) { string method = parser.method(); //提取出请求命令字 _cseq = atoi(parser["CSeq"].data()); if (_content_base.empty() && method != "GET") { - _content_base = parser.url(); + RtspUrl rtsp; + rtsp.parse(parser.url()); + _content_base = rtsp._url; _media_info.parse(parser.fullUrl()); _media_info.schema = RTSP_SCHEMA; }