ThumbnailUtils.createVideoThumbnail为mp4文件返回null位图

时间:2014-12-08 04:02:55

标签: android video bitmap

当我获取mp4文件的位图时:ThumbnailUtils.createVideoThumbnail(mediaFile.getAbsolutePath(), MediaStore.Video.Thumbnails.MINI_KIND);返回null

4 个答案:

答案 0 :(得分:6)

试试这个,可能是你的媒体文件路径错了。使用以下方法,您将获得确切的路径。它为我工作

 Bitmap thumb = ThumbnailUtils.createVideoThumbnail(getPath(outputFileUri),
                        MediaStore.Images.Thumbnails.MINI_KIND);

photo_Img.setImageBitmap(thumb);

/**
 * Get file path
 */
public static String getPath(Uri uri) {
    String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = context.managedQuery(uri, projection, null, null, null);
    int column_index = cursor
            .getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
    cursor.moveToFirst();
    return cursor.getString(column_index);
}

答案 1 :(得分:2)

我认为您必须在AndroidManifest <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

中设置需要权限

答案 2 :(得分:1)

File file = new File(filepath);
Bitmap bitmap = ThumbnailUtils.createVideoThumbnail(file.getAbsolutePath(), MediaStore.Video.Thumbnails.FULL_SCREEN_KIND);

答案 3 :(得分:0)

来自android docs:

  

public static Bitmap createVideoThumbnail(String filePath,int kind)

     

为视频创建视频缩略图。如果视频损坏或格式不受支持,可能会返回null。

因此,我猜您需要重新检查mp4文件。