视频使用VideoView对象来播放,即videoView
在此我们还需要当前播放视频的Uir,记为uri
需要一个Context,这里我们传this,及当前类的Context
截图代码如下所示:
MediaMetadataRetriever rev = new MediaMetadataRetriever();
rev.setDataSource(this, uri);//这里第一个参数需要Context,传this指针
Bitmap bitmap = rev.getFrameAtTime(videoView.getCurrentPosition() * 1000,
MediaMetadataRetriever.OPTION_CLOSEST_SYNC);
其中最后的Bitmap就是我们需要的截图了
在这里说明一下videoView.getCurrentPosition()得到的为毫秒,不转化为秒的话,截出来的图都是视频第一帧的图像,第二个参数可以传递的值有四个,分别为OPTION_CLOSEST,OPTION_CLOSEST_SYNC,OPTION_NEXT_SYNC,OPTION_PREVIOUS_SYNC,具体都有什么作用大家可以分别试一试,其他只还可以传什么有什么效果目前尚不清楚。