如何在 Android 应用程序中加快与 IP 摄像机的连接?

How to speed up the connection to IP camera in Android app?

我正在开发一个 Android 应用程序 (Android 5.1),用于使用 RTSP 协议播放来自 IP 摄像机的视频流。

我使用 Android VideoView 的标准方法接收和显示视频流:

videoView.setVideoURI(Uri.parse("rtsp://192.168.1.13:8888/test"));
try {
 videoView.start();
 }
catch (Exception ex) {
 ex.printStackTrace();
}

一切正常,但与相机的连接时间太长。 视频开始播放大约需要 5-7 秒(对我来说太长了)。

有什么方法可以加快连接时间吗?

终于找到解决办法了。 问题是 Android' MediaPlayer,即 VideoView 的一部分,具有无法更改的固定缓冲区大小。 所以我使用了 Google' ExoPlayer,它提供了这样的功能。 减小缓冲区大小解决了我的问题。

P.S。 用 VideoView.suspend()VideoView.pause() 维护 resource/connection 以稍后恢复流不会产生任何影响。