Android中如何获取视频文件的截图、缩略图

这篇文章主要介绍了Android中如何获取视频文件的截图、缩略图的相关资料,需要的朋友可以参考下

背景

公司最近要求给我负责的APP加上视频录制和发布的功能,我简单的完成了基本的录制和视频压缩功能,后来发现发布接口需要上传视频的截图,网上搜索了一下资料,在这里整理一下。

代码实现

 /** * 获取视频文件截图 * * @param path 视频文件的路径 * @return Bitmap 返回获取的Bitmap */ public static Bitmap getVideoThumb(String path) { MediaMetadataRetriever media = new MediaMetadataRetriever(); media.setDataSource(path); return media.getFrameAtTime(); } /** * 获取视频文件缩略图 API>=8(2.2) * * @param path 视频文件的路径 * @param kind 缩略图的分辨率:MINI_KIND、MICRO_KIND、FULL_SCREEN_KIND * @return Bitmap 返回获取的Bitmap */ public static Bitmap getVideoThumb2(String path, int kind) { return ThumbnailUtils.createVideoThumbnail(path, kind); } public static Bitmap getVideoThumb2(String path) { return getVideoThumb2(path, MediaStore.Video.Thumbnails.FULL_SCREEN_KIND); }

以上是获取视频文件的截图和缩略图的方法,你可能还需要把Bitmap保存成文件:

 /** * Bitmap保存成File * * @param bitmap input bitmap * @param name output file's name * @return String output file's path */ public static String bitmap2File(Bitmap bitmap, String name) { File f = new File(Environment.getExternalStorageDirectory() + name + ".jpg-600"); if (f.exists()) f.delete(); FileOutputStream fOut = null; try { fOut = new FileOutputStream(f); bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fOut); fOut.flush(); fOut.close(); } catch (IOException e) { return null; } return f.getAbsolutePath(); }

以上内容是小编给大家介绍的Android中如何获取视频文件的截图、缩略图的相关知识,希望对大家有所帮助!

以上就是Android中如何获取视频文件的截图、缩略图的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » 移动