RTSP/1.0 412 Precondition failed

Android将sdp推送至Darwin服务器时,在SETUP这一步,服务器返回了RTSP/1.0 412 Precondition failed 。

查找了很多资料,没有找到解决办法,甚至不明白Precondition failed是什么意思。

后来发现了一个规律,问题描述如下:每回第一次启动Darwin 服务器时,服务器对SETUP消息的response是200,由于客户端接下来的步骤存在错误,与服务器的交互至此结束。再次启动客户端请求服务器,出现了在SETUP这步response 412的问题。

解决办法1:每次客户端请求服务器结束(非正常情况下的断开)后,在http://ip:1220中Disable server,然后再Enable server。

解决办法2:若第一次请求Darwin服务器成功,且正常断开连接,再次与服务器连接时,即使没有重启Darwin server,也不会出现412的问题。

结论:出现412问题时,应仔细排查客户端代码是否存在问题。

你可能感兴趣的:(流媒体)