我正在开发一个尝试显示在网络服务器上流式传输的视频的应用程序。我有视频流的 HTTP 链接。为了连接到网络服务器,我连接到一个特定的 WIFI,它使我能够访问视频。
我已经处理了WIFI连接。当我尝试使用 VideoView 在我的应用上显示视频时遇到问题。我使用了一个工具,它显示我正在从服务器接收数据。所以我的应用程序正在接收视频的数据包,但无法显示它。
代码是这样的:
private VideoView videoView;
videoView = (VideoView)findViewById(R.id.VideoView_videoOnly);
....
....
//connect to the router
String ip = "http://192.168.2.250";
URL url = null;
try {
url = new URL(ip);
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
URLConnection connection = null;
try {
connection = url.openConnection();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String vidLink = "http://XXXX:XXXX@192.168.2.250/axis-cgi/mjpg/video.cgi";
//set up video streaming
MediaController mc = new MediaController(this);
mc.setAnchorView(videoView);
mc.setMediaPlayer(videoView);
Uri video = Uri.parse(vidLink);
videoView.setMediaController(mc);
videoView.setVideoURI(video);
videoView.start();
}
}
XXXX:XXXX是访问视频流的用户名和密码