我正在尝试使用RTSP协议使音频广播流正常工作。问题是我收到“ 200 ok
”响应,即使音频没有被正确地流传输和下载。
我每次测试都发现一些奇怪的东西,unicast;client_port
是不同的。例如,在VLC中,端口为:client_port=57140-57141
,但是我再次通过Wireshark嗅探的时候,端口为:client_port=25551-25552
因此,为了获得有效的客户端端口,我认为最好从响应正文中获取它。
但是,当我尝试在解决方案调试中从substring
获得此rtsp response
时,就没什么好刮的,就像我在vlc中测试时可以看到unicast;client_port
。
那么,如何获得正确的单播; client_port,以便我的流获得正确的参数?
stringBuilder = new StringBuilder();
host = new string[] { "SETUP rtsp://", uri.Host, ":554", uri.PathAndQuery, "/ID=", id0, " RTSP/1.0\r\n" };
stringBuilder.Append(string.Concat(host));
stringBuilder.Append(string.Concat("CSeq: 42\r\n"));
stringBuilder.Append("Transport: RTP/AVP/UDP;unicast;client_port=57142-57143\r\n");
StreamUtils.WriteLine(bufferedNetStream, stringBuilder.ToString());
this.Log("\r\n\r\nClient -> Server");
this.Log(stringBuilder.ToString());
rtspResponse = this.ReceiveResponse(bufferedNetStream);
this.Log("Server -> Client");
this.Log(rtspResponse.Lines);
我知道了,但我不会分享,我不会告诉你,是的!