功能:根据视频url获取首帧缩略图的本地路径

前言:
在上传视频时,一般会需要将视频的首帧缩略图上传,作为视频的封面。本文将实现根据视频的url地址实现首帧所略图的功能。

步骤一:获取视频的首帧图并转化成bitmap

 /**
 * 获取视频首帧图并转化为bitmap
 * @param videoUrl
 * @return
 */
private Bitmap voidToFirstBitmap(String videoUrl){
    MediaMetadataRetriever metadataRetriever = new MediaMetadataRetriever();
    metadataRetriever.setDataSource(videoUrl);
    Bitmap bitmap = metadataRetriever.getFrameAtTime();
    return bitmap;
}

步骤二:将首帧图片的bitmap转化成本地路径(一般用于上传到OSS或者本地加载)

 /**
 * 将bitmap转化成本地图片路径
 * @param context
 * @param bitmap
 * @return
 */
private static String bitmapToStringPath(Context context, Bitmap bitmap){
    String savePath;
    File filePic;
    if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
        savePath = "/sdcard/dskgxt/pic/";
    }else {
        savePath = context.getApplicationContext().getFilesDir().getAbsolutePath() + "/dskgxt/pic/";
    }
    try {
        filePic = new File(savePath + UUID.randomUUID().toString() + ".jpg");
        if (!filePic.exists()) {
            filePic.getParentFile().mkdirs();
            filePic.createNewFile();
        }
        FileOutputStream fos = new FileOutputStream(filePic);
        bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos);
        fos.flush();
        fos.close();
    }catch(IOException e){
        e.printStackTrace();
        return null;
    }
    return filePic.getAbsolutePath();
}

结束。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容