获取手机MediaStore.Video中的视频信息,获取指定路径path的视频的缩略图

  1. 传入指定path路径
    public staticBitmap getVideoThumbnail(String videoPath) {
    Media MetadataRetriever media =new MediaMetadataRetriever();
    media.setDataSource(videoPath);
    Bitmap bitmap = media.getFrameAtTime();
    return bitmap;
    }

  2. 参数1 path
    参数2 ,3 图片的宽高
    参数4 类型 参照MediaStore.Images.Thumbnails类中的常量MINI_KIND和MICRO_KIND。 其中,MINI_KIND: 512 x 384,MICRO_KIND: 96 x 96
    public staticBitmap getVideoThumbnail(String videoPath,intwidth,intheight,intkind) {
    Bitmap bitmap =null;
    bitmap = ThumbnailUtils.createVideoThumbnail(videoPath, kind);
    bitmap = ThumbnailUtils.extractThumbnail(bitmap, width, height, ThumbnailUtils.OPTIONS_RECYCLE_INPUT);
    return bitmap;
    }


ArrayList mediaItems = new ArrayList<>();
ContentResolver resolver = context.getContentResolver();
Uri uri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
String[] objs = {
MediaStore.Video.Media.DISPLAY_NAME,//视频文件在sdcard的名称
MediaStore.Video.Media.DURATION,//视频总时长
MediaStore.Video.Media.SIZE,//视频的文件大小
MediaStore.Video.Media.DATA,//视频的绝对地址
MediaStore.Video.Media.ARTIST,//歌曲的演唱者
};

                Cursor cursor = resolver.query(uri, objs, null, null, null);


if (cursor != null) {
while (cursor.moveToNext()) {

                        MediaItem mediaItem = new MediaItem();

                        mediaItems.add(mediaItem);//写在上面

                        String name = cursor.getString(0);//视频的名称
                        mediaItem.setName(name);

                        long duration = cursor.getLong(1);//视频的时长
                        mediaItem.setDuration(duration);

                        long size = cursor.getLong(2);//视频的文件大小
                        mediaItem.setSize(size);

                        String data = cursor.getString(3);//视频的播放地址
                        mediaItem.setData(data);

                        String artist = cursor.getString(4);//艺术家
                        mediaItem.setArtist(artist);

                        Bitmap image = getVideoThumbnail(data);
                        mediaItem.setImageUrl(image);

                    }
                    cursor.close();


                }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值