获取视频缩略图
来源:互联网 发布:美美de夏夏淘宝店 编辑:程序博客网 时间:2024/05/16 13:47
public static ArrayList<PFile> batchBuildThumbnail(final Context ctx, final ArrayList<File> files) {
ArrayList<PFile> result = new ArrayList<PFile>();
for (File f : files) {
PFile pf = new PFile();
try {
if (f.exists() && f.canRead()) {
//取出视频的一帧图像
Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(ctx, f.getAbsolutePath(), Video.Thumbnails.MINI_KIND);
if (bitmap == null) {
//缩略图创建失败
bitmap = Bitmap.createBitmap(ThumbnailUtils.TARGET_SIZE_MINI_THUMBNAIL_WIDTH, ThumbnailUtils.TARGET_SIZE_MINI_THUMBNAIL_HEIGHT, Bitmap.Config.RGB_565);
Log.e(TAG, "batchBuildThumbnail createBitmap faild : " + f.getAbsolutePath());
}
pf.width = bitmap.getWidth();
pf.height = bitmap.getHeight();
//缩略图
bitmap = ThumbnailUtils.extractThumbnail(bitmap, ThumbnailUtils.dipToPX(ctx, ThumbnailUtils.TARGET_SIZE_MICRO_THUMBNAIL_WIDTH), ThumbnailUtils.dipToPX(ctx, ThumbnailUtils.TARGET_SIZE_MICRO_THUMBNAIL_HEIGHT), ThumbnailUtils.OPTIONS_RECYCLE_INPUT);
if (bitmap != null) {
File thum = new File(f.getParent(), f.getName() + ".jpg");
pf.thumb = thum.getAbsolutePath();
//thum.createNewFile();
FileOutputStream iStream = new FileOutputStream(thum);
bitmap.compress(Bitmap.CompressFormat.JPEG, 85, iStream);
iStream.close();
}
if (bitmap != null)
bitmap.recycle();
}
} catch (Exception e) {
Log.e(TAG, e);
continue;
} finally {
result.add(pf);
}
}
return result;
ArrayList<PFile> result = new ArrayList<PFile>();
for (File f : files) {
PFile pf = new PFile();
try {
if (f.exists() && f.canRead()) {
//取出视频的一帧图像
Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(ctx, f.getAbsolutePath(), Video.Thumbnails.MINI_KIND);
if (bitmap == null) {
//缩略图创建失败
bitmap = Bitmap.createBitmap(ThumbnailUtils.TARGET_SIZE_MINI_THUMBNAIL_WIDTH, ThumbnailUtils.TARGET_SIZE_MINI_THUMBNAIL_HEIGHT, Bitmap.Config.RGB_565);
Log.e(TAG, "batchBuildThumbnail createBitmap faild : " + f.getAbsolutePath());
}
pf.width = bitmap.getWidth();
pf.height = bitmap.getHeight();
//缩略图
bitmap = ThumbnailUtils.extractThumbnail(bitmap, ThumbnailUtils.dipToPX(ctx, ThumbnailUtils.TARGET_SIZE_MICRO_THUMBNAIL_WIDTH), ThumbnailUtils.dipToPX(ctx, ThumbnailUtils.TARGET_SIZE_MICRO_THUMBNAIL_HEIGHT), ThumbnailUtils.OPTIONS_RECYCLE_INPUT);
if (bitmap != null) {
File thum = new File(f.getParent(), f.getName() + ".jpg");
pf.thumb = thum.getAbsolutePath();
//thum.createNewFile();
FileOutputStream iStream = new FileOutputStream(thum);
bitmap.compress(Bitmap.CompressFormat.JPEG, 85, iStream);
iStream.close();
}
if (bitmap != null)
bitmap.recycle();
}
} catch (Exception e) {
Log.e(TAG, e);
continue;
} finally {
result.add(pf);
}
}
return result;
- 获取视频缩略图
- 获取视频缩略图
- IOS获取视频缩略图
- 获取视频缩略图
- 获取本地视频缩略图
- 获取视频的缩略图
- Android获取视频缩略图
- iOS-获取视频缩略图
- 获取视频缩略图
- java获取视频缩略图
- 获取视频的缩略图
- 获取视频缩略图
- android 获取视频缩略图
- 获取网络视频缩略图
- 获取视频的缩略图
- Android 获取视频缩略图
- 获取视频的缩略图
- 获取视频缩略图
- 回调函数的概念及其使用
- 分别用c++和c 调用,用c++编写成的dll库步骤
- cout<<char数组名/数组指针"跟"cout<<int数组名/数组指针"的差别
- git checkout -b android-goldfish-2.6.29
- Objective-C(cocoa)运行shell脚本,得到返回值
- 获取视频缩略图
- Map的几个常用实现类的简单区别
- Excel 中两列之间的运算
- CSS字体中英文名称对照表
- C# 在picturebox控件里动态加载资源里面的图片
- 如何走出信息黑洞?放掉那头大象!
- 上传应用错误:icon dimensions(0x0)don't meet the size requirement
- 经典的C++库
- POI读取Excel文件时遇到UnsupportedOperationException