Android中如何获取视频文件的截图、缩略图
2019年04月26日
作者:佚名
背景
公司最近要求给我负责的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"); 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中如何获取视频文件的截图、缩略图全部内容,希望文章能够帮你解决Android中如何获取视频文件的截图、缩略图所遇到的程序开发问题。
如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。