打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Android:通过ThumbnailUtils类获取视频文件的缩略图
<code class="hljs" java="">package com.vrinux.thumbnailutilsdemo;
import android.app.Activity;
import android.graphics.Bitmap;
import android.media.ThumbnailUtils;
import android.os.Bundle;
import android.os.Environment;
import android.provider.MediaStore;
import android.widget.ImageView;
public class MainActivity extends Activity {
    //定义一个ImageView对象imgObj;
    private ImageView imgObj;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //获取对象imgObj;
        imgObj = (ImageView) findViewById(R.id.imgid);
        //定义一个视频文件路径;
        String filePath = null;
        //视频文件的名字;
        String filename = video.3gp;
        //判断SDCard是否挂载;由于Android版本的挂载路径不尽相同,所以建议使用一下的方法判断;
        if (Environment.getExternalStorageState().equals(
                Environment.MEDIA_MOUNTED)) {
            //获取SDCard根的路径
            String sdPath = Environment.getExternalStorageDirectory().getPath();
            //将SDCard根路径和文件名组装得到视频文件的路径;
            filePath = sdPath + / + filename;
            //调用下面定义的方法,获得指定大小的视频截图;
            //最后的参数本人不太清楚是什么意思,只是这么用,其源码并非开源;
            Bitmap bitmap = getVidioBitmap(filePath, 400, 400,
                    MediaStore.Images.Thumbnails.MICRO_KIND);
            //将获得的位图用imgObj显示;
            imgObj.setImageBitmap(bitmap);
        }
    }
    public Bitmap getVidioBitmap(String filePath, int width, int height,
            int kind) {
        //定義一個Bitmap對象bitmap;
        Bitmap bitmap = null;
        //ThumbnailUtils類的截取的圖片是保持原始比例的,但是本人發現顯示在ImageView控件上有时候有部分沒顯示出來;
        //調用ThumbnailUtils類的靜態方法createVideoThumbnail獲取視頻的截圖;
        bitmap = ThumbnailUtils.createVideoThumbnail(filePath, kind);
        //調用ThumbnailUtils類的靜態方法extractThumbnail將原圖片(即上方截取的圖片)轉化為指定大小;
        //最後一個參數的具體含義我也不太清楚,因為是閉源的;
        bitmap = ThumbnailUtils.extractThumbnail(bitmap, width, height,
                ThumbnailUtils.OPTIONS_RECYCLE_INPUT);
        //放回bitmap对象;
        return bitmap;
    }
}
</code>
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Android -- 获取视频第一帧缩略图
Android的图片压缩类ThumbnailUtils
2.1版本中如何获得视频文件的缩略图 - Android 问题&解答 eoe·Android开发者门户
OpenCV for Android入门
从相册或者相机获得uri转为bitmap
android调用摄像头拍照,从相册中选择照片并裁剪
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服