android获取视频缩略图PATH,而不是Bitmap

时间:2013-01-23 15:52:00

标签: java android eclipse thumbnails

是否可以获取视频缩略图PATH,而不是Bitmap对象本身?我知道方法

MediaStore.Images.Thumbnails.queryMiniThumbnail

但由于我使用自己的Bitmap缓存机制,我希望获得视频缩略图的路径而不是Bitmap对象本身。此方法返回Bitmap对象,而不是path。 感谢

2 个答案:

答案 0 :(得分:6)

首先获取视频文件网址,然后使用以下查询。

示例代码:

private static final String[] VIDEOTHUMBNAIL_TABLE = new String[] {
    Video.Media._ID, // 0
    Video.Media.DATA, // 1 from android.provider.MediaStore.Video
    };

Uri videoUri = MediaStore.Video.Thumbnails.getContentUri("external");

cursor c = cr.query(videoUri, VIDEOTHUMBNAIL_TABLE, where, 
           new String[] {filepath}, null);

if ((c != null) && c.moveToFirst()) {
  VideoThumbnailPath = c.getString(1);
}

VideoThumbnailPath,应该有视频缩略图路径。希望它有所帮助。

答案 1 :(得分:2)

从video_id获取视频缩略图路径:

public static String getVideoThumbnail(Context context, int videoID) {
        try {
            String[] projection = {
                    MediaStore.Video.Thumbnails.DATA,
            };
            ContentResolver cr = context.getContentResolver();
            Cursor cursor = cr.query(
                    MediaStore.Video.Thumbnails.EXTERNAL_CONTENT_URI,
                    projection, 
                    MediaStore.Video.Thumbnails.VIDEO_ID + "=?", 
                    new String[] { String.valueOf(videoID) }, 
                    null);
            cursor.moveToFirst();
            return cursor.getString(0);
        } catch (Exception e) {
        }
        return null;
    }