请教一个问题:RTSP 中 SETUP 命令中传输方式是有什么指定呢? 是由服务器决定的吗?
SETUP rtsp://www.loacl.com/sample.3gp
Transport: RTP/AVP/TCP 【TCP传输方式】 或
Transport: RTP/AVP 【UDP传输方式】
-------------------------
我用的是openRTSP,如果没有 -t 参数的话,就接受不到数据,加上-t 才能收到数据。
-t 参数为 TCP方式传输.
我用抓包工具观察
有-t 的话 Transport: RTP/AVP/TCP;
无-t 的话 Transport: RTP/AVP;
-----------------------
对于一个未知的服务器,这么判断服务器是什么方式传输呢? udp 还是 tcp
------解决方案--------------------------------------------------------
openRTSP有-t参数说明使用tcp接收数据;
无-t默认是UDP接收数据,而无-t参数接收不到数据,大概是因为你机器狮子内网,而rtsp server是在外网吧?
如果rtsp server在外网,外网udp数据自然无法到达你所在的内网的;
rtsp协议本身不支持似网穿透、UDP打洞等;
------解决方案--------------------------------------------------------
貌似发describ的时候,服务器会返回一些信息的吧,貌似就能知道是tcp还是udp了。
------解决方案--------------------------------------------------------
openRTSP有-t是TCP方式。