强制Android使用RTSP / AVP / TCP交错

时间:2013-03-08 07:03:54

标签: android media-player android-mediaplayer rtsp rtsp-client

我在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命令,然后挂起连接。

如何解决此问题?

2 个答案:

答案 0 :(得分:1)

我使用的是VLC而不是原生的。 阅读Living555源代码请。 您可以在SETUP请求中指定Transport:RAW / RAW / UDP字段,以选择要使用的protocal。

答案 1 :(得分:0)

我可能错了,但AFAIK android mediaplayer不支持TCP上的RTP。