一、VLC 是如何知道 RTP 图像包是通过 TCP 还是 UDP 协议传输的,关键取决于 客户端是怎么连接的 和 RTP 会话是怎么建立的。测试需要用的rtsp-demo 代码我这里记录一下,放在私人bt网盘

二、客户端和服务器协商 RTP 的传输方式,可能是:
UDP(RTSP over TCP, RTP over UDP)
TCP(RTSP over TCP, RTP interleaved in RTSP TCP 连接)
三、VLC 会根据 RTSP 协议协商的 transport 字段,自动判断是 UDP 还是 TCP,并用不同方式处理数据包。
四、测试一,修改demo ,使用TCP 发送RTP包,使用wireshark查看,可以看到Transport: RTP/AVP/TCP,说明是TCP 传RTP包。

五、测试二,修改demo ,使用UDP 发送RTP包,使用wireshark查看,可以看到Transport: R
TP/AVP;ssrc=2234;unicast;client_port=36658-36659;server_port,说明是UDP 传RTP包。
