2011-09-24 7 views
1

최고의 영화 예고편을 보여줄 수있는 신청서를 작성하려고합니다. 각 비디오의 미리보기 이미지가있는 격자보기를 표시 한 다음 비디오를 재생하기 위해 새 Activity를 클릭하여 엽니 다.동영상 미리보기 이미지 검색

동영상의 순간을 생각하면 어떻게 미리보기 이미지를 검색 할 수 있습니까? 그게 복잡하면 첫 번째 프레임도 충분합니다. 감사합니다

답변

3

API 2.0 이상을 사용하는 경우이 방법이 효과적입니다. 프로 요 당신이 안드로이드-8에있는 경우

(:

ImageView iv = (ImageView) convertView.findViewById(R.id.imagePreview); 
ContentResolver crThumb = getContentResolver(); 
BitmapFactory.Options options=new BitmapFactory.Options(); 
options.inSampleSize = 1; 
Bitmap curThumb = MediaStore.Video.Thumbnails.getThumbnail(crThumb, id, MediaStore.Video.Thumbnails.MICRO_KIND, options); 
iv.setImageBitmap(curThumb); 

편집 :

String[] proj = { 
    MediaStore.Video.Media._ID, 
     MediaStore.Video.Media.DISPLAY_NAME, 
    MediaStore.Video.Media.DATA 
}; 

Cursor cursor = managedQuery(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, 
            proj, MediaStore.Video.Media.DISPLAY_NAME+"=?",new String[] {"name.mp4"}, null); 
cursor.moveToFirst() 
id = cursor.getLong(cursor.getColumnIndex(MediaStore.Video.Media._ID)); 

비디오의 축소판으로 활용하려면 다음 작업을

는 동영상 ID를 얻으려면) 이상인 경우 비디오 경로의 ThumbnailUtils.createVideoThumbnail을 사용할 수 있습니다.

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

희망이 있습니다.

+0

답변 해 주셔서 감사합니다. sdcard에있는 비디오 파일이기 때문에 video_id가 없으면 어떻게해야합니까? (가능한 경우 API 레벨 7+ 유지) Thanks – Addev

+0

@Adrmedi이 내 대답을 편집했습니다. – evilone

+0

@Addev +1 굉장하고, 매력처럼 일하고 있습니다. – Venky

관련 문제