我在Galaxy S3上使用Android 4.1.2。目前android mediaplayer总是尝试使用RTSP UDP(RTP / AVP / UDP)方法连接RTSP服务器。
如果Android MediaPlayer未在其UDP端口上接收数据,则会超时,然后尝试RTSP TCP交错(RTP / AVP / TCP)。这很好,但它引入了10秒左右的延迟。我想避免这种延迟,并强制Android MediaPlayer始终对所有或特定URL使用RTSP TCP交错(RTP / AVP / TCP)。
我尝试在Here中给出建议,向SETUP请求发送461或400错误响应代码。但似乎媒体播放器不关心响应,并为两个轨道发送SETUP命令,然后挂起连接。
如何解决此问题?
答案 0 :(得分:1)
我使用的是VLC而不是原生的。 阅读Living555源代码请。 您可以在SETUP请求中指定Transport:RAW / RAW / UDP字段,以选择要使用的protocal。
答案 1 :(得分:0)
我可能错了,但AFAIK android mediaplayer不支持TCP上的RTP。