保持实时Rtsp连接



我有一个简单的Rtsp客户端…客户端向Rtsp服务器发送Rtsp命令,从服务器接收RTP报文。

问题是过了一段时间(大约3-4分钟)我的第三方RTSP服务器与RTSP客户端断开连接。

我没有实现RTCP…我从rtp服务器接收rtp包,但不发送任何RTCP包…

我做了简单的搜索,发现有些人使用一些RTSP命令[如OPTIONS, SET PARAMETER- get PARAMETER]来保持RTSP服务器和客户端之间的连接…但在我的情况下,这不起作用…

以下是我的问题:

  1. 保持与RTSP服务器连接的最佳方法是什么?
  2. 我必须实现RTCP[发送RTCP数据包到服务器]吗?可能连接下降,因为我没有发送RTCP数据包到服务器?

您在SETUP响应中收到的超时值是多少?您是否使用此值来实现keep alive功能?

Session = "Session":" Session -id [";"timeout" =" delta-seconds .)

一般RTSP基于TCP, RTP基于UDP。所以理想情况下,这两个渠道都需要保持活跃功能。如果RTP会话被关闭,这并不意味着RTSP连接也应该被关闭,而RTP通道必须在RTSP通道关闭时被关闭。

1)保持与RTSP服务器连接的最佳方法是什么?-->在timeout值收到SETUP响应之前,定期发送任何RTSP请求(OPTIONS, SET_PARAMETER或GET_PARAMETER)

2)我必须实现RTCP[发送RTCP数据包到服务器]吗?可能连接下降,因为我没有发送RTCP数据包到服务器?--> RFC (RTSP或RTP)不强制要求RTCP保持RTP通道存活

发送OPTIONS请求不适合我。

我唯一可以发送的RTSP命令是GET_PARAMETER

我的超时时间是60秒,我每隔40秒发送一个GET_PARAMETER请求

工作像一个魅力!

(不,您不必向服务器发送RTCP数据包)

相关内容

  • 没有找到相关文章