有人可以帮我解决一下使用rtsp数据源从videoview获取当前帧的问题。我从这个blog开始学习本教程。在此代码中,当用户决定从视频视图中捕获当前帧时,将显示位图图像:
Bitmap bmFrame = mediaMetadataRetriever
.getFrameAtTime(currentPosition * 1000); //unit in microsecond
if(bmFrame == null){
Toast.makeText(MainActivity.this,
"bmFrame == null!",
Toast.LENGTH_LONG).show();
}else{
AlertDialog.Builder myCaptureDialog =
new AlertDialog.Builder(MainActivity.this);
ImageView capturedImageView = new ImageView(MainActivity.this);
capturedImageView.setImageBitmap(bmFrame);
LayoutParams capturedImageViewLayoutParams =
new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT);
capturedImageView.setLayoutParams(capturedImageViewLayoutParams);
myCaptureDialog.setView(capturedImageView);
myCaptureDialog.show();
}
我得到一个空值。经过几个小时的研究,许多人说这个link的FFmpegMediaMetadataRetriever库可以处理rtsp协议。我该如何申请这个图书馆?我已经下载了它,在eclipse上导入,并将其作为库添加。看来,当我调用这个类库时:
FFmpegMediaMetadataRetriever mMediaMetadataRetriever = new FFmpegMediaMetadataRetriever();
我收到一个错误,即java.lang.ExceptionInInitializeError。我是在正确的轨道上吗?有人可以指导我。