您的位置:首页 > 移动开发 > Android开发

获取url或本地视频的第一帧

2016-12-25 09:29 274 查看
今天拿到一个任务,需要通过服务器返回的视频url,获取其第一帧画面显示出来;一开始没思路,只知道获取本地视频的,就跑去问度娘,度娘给出的大多数也是获取本地视频的第一帧画面,最后发现它们用的是重载方法,真是骑驴找驴啊。好了,现在贴出相关的方法代码:
/**
* 给出url,获取视频的第一帧
*
* @param url
* @return
*/
public static Bitmap getVideoThumbnail(String url) {
Bitmap bitmap = null;
//MediaMetadataRetriever 是android中定义好的一个类,提供了统一
//的接口,用于从输入的媒体文件中取得帧和元数据;
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
try {
//根据文件路径获取缩略图
retriever.setDataSource(url, new HashMap());
//获得第一帧图片
bitmap = retriever.getFrameAtTime();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} finally {
retriever.release();
}
return bitmap;
}
/**
* 获取本地视频的第一帧
*
* @param filePath
* @return
*/
public static Bitmap getLocalVideoThumbnail(String filePath) {
Bitmap bitmap = null;
//MediaMetadataRetriever 是android中定义好的一个类,提供了统一
//的接口,用于从输入的媒体文件中取得帧和元数据;
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
try {
//根据文件路径获取缩略图
retriever.setDataSource(filePath);
//获得第一帧图片
bitmap = retriever.getFrameAtTime();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} finally {
retriever.release();
}
return bitmap;
}


好了,希望能帮到你们!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息