我正在尝试通过RTSP从IP网络摄像头流式传输到我的Android应用程序,该流通过VLC Android应用程序成功播放,但我不能在我自己的应用程序中复制它。
if (mediaControls == null)
{
mediaControls = new MediaController(VideoActivity.this);
}
myVideoView = (VideoView) findViewById(R.id.stream);
myVideoView.setOnErrorListener(this);
progressDialog = new ProgressDialog(VideoActivity.this);
progressDialog.setTitle("Camera Stream");
progressDialog.setMessage("Loading...");
progressDialog.setCancelable(false);
//progressDialog.show();
try
{
myVideoView.setMediaController(mediaControls);
myVideoView.setVideoURI(Uri.parse(videoSrc));
}
catch (Exception e)
{
Log.e("Error", e.getMessage());
e.printStackTrace();
}
myVideoView.requestFocus();
myVideoView.setOnPreparedListener(new OnPreparedListener()
{
// Close the progress bar and play the video
public void onPrepared(MediaPlayer mp)
{
//progressDialog.dismiss();
myVideoView.seekTo(position);
if (position == 0)
{
myVideoView.start();
}
else
{
myVideoView.pause();
}
}
});
该活动会提示“无法播放此视频”对话框。根据Desktop VLC客户端,流是MJPG,320x256,以320x240显示,采用解码格式“Planar 4:2:0 YUV full scale”。根据相机的数据表,它是30fps。
我已经能够使用此代码播放其他RTSP流,但不是我需要的。
我一直试图弄清楚如何使用libVLC但到目前为止运气不佳。任何人都可以帮我把这个流变成我的应用程序可以使用的东西吗?