Android 视频截图

static public Bitmap getVideoThumbnail(ContentResolver cr, String path) {
        Bitmap bitmap = null;
        BitmapFactory.Options options = new BitmapFactory.Options();
        options.inDither = false;
        options.inPreferredConfig = Bitmap.Config.RGB_565;
        //select condition.
        String whereClause = MediaStore.Video.Media.DATA + " = '"
        + path + "'";
        Log.v(TAG, "where = " + whereClause);
        //colection of results.
        Cursor cursor = cr.query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI,
                new String[] { MediaStore.Video.Media._ID }, whereClause,
                null, null);
        Log.v(TAG, "cursor = " + cursor);
        if (cursor == null || cursor.getCount() == 0) {
            return ThumbnailUtils.createVideoThumbnail(path, MediaStore.Video.Thumbnails.MINI_KIND);
        }
        cursor.moveToFirst();
        //image id in image table.
        String videoId = cursor.getString(cursor
                .getColumnIndex(MediaStore.Video.Media._ID));
        Log.v(TAG, "videoId = " + videoId);
        if (videoId == null) {
            return ThumbnailUtils.createVideoThumbnail(path, MediaStore.Video.Thumbnails.MINI_KIND);
        }
        cursor.close();
        long videoIdLong = Long.parseLong(videoId);
        //via imageid get the bimap type thumbnail in thumbnail table.
        bitmap = MediaStore.Video.Thumbnails.getThumbnail(cr, videoIdLong,
                Images.Thumbnails.MICRO_KIND, options);
        Log.v(TAG, "bitmap = " + bitmap);
        return bitmap;
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值