这是这种情况:
- 我使用 Live555 openRTSP 客户端连接到 RTSP 服务器
- 然后假设服务器连接丢失
要重新连接 rtsp 服务器,我该怎么办?
- openRTSP 客户端会处理这个吗?[在我的实验中没有]
- 如果不是,我应该如何检测连接丢失,并修改 Open Rtsp Client 代码以重新连接服务器?
有什么建议么?
这是这种情况:
要重新连接 rtsp 服务器,我该怎么办?
有什么建议么?
IMO 设置一个新的 RTSP 会话是最简单的。
1.)据我所知不是
2.) 您可以在 live555 事件循环中安排一个定期任务,检查在最后n秒内是否收到任何样本。如果没有,您可以尝试在开始新会话之前拆除现有会话。但是,如果服务器和客户端之间的连接断开,您的 TEARDOWN 也可能会失败(这没关系,因为 RTSP 服务器在任何情况下都会超时 RTSP 会话)。据我所知,RTSP 服务器上的 live555 超时为 60 秒。
为了清楚起见:连接到底是什么意思:RTSP 服务器和客户端之间的链接?您是通过 UDP 流式传输 RTP 还是通过 RTSP (TCP) 传输 RTP?如果您通过 RTSP 交错 RTP,您可能能够在 TCP 连接断开时检测到连接失败。