加入收藏 | 设为首页 | 会员中心 | 我要投稿 宁德站长网 (https://www.0593zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

Android视频开发简易技巧

发布时间:2021-11-24 21:20:43 所属栏目:教程 来源:互联网
导读:一些简易的视频开发代码。 一、视频的读取,显示 安卓提供了一个VideoView类,用起来很方便。如果仅仅是播放视频,这个类足够用了。但是扩展性不好。 它继承自SurfaceView并实现了MediaPlayerControl接口,并封装了一个MediaPlayer对象。如果有兴趣可以仿照他
一些简易的视频开发代码。
 
 
 
一、视频的读取,显示
 
安卓提供了一个VideoView类,用起来很方便。如果仅仅是播放视频,这个类足够用了。但是扩展性不好。
 
它继承自SurfaceView并实现了MediaPlayerControl接口,并封装了一个MediaPlayer对象。如果有兴趣可以仿照他自己实现一个,方便扩展。
 
文章有很多,不赘述了。
 
视频读取最麻烦是缩略图的显示。尤其是在2.2之前。2.2提供了一个ThumbnailUtils类,可以方便的取到缩略图,但是之前的版本没有。需要手动取。
 
不多说了,上代码。
 
String whereClause = MediaStore.Video.Media.DATA + " = '" + "/sdcard/DCIM/Camera/2011-03-12_11-07-40_252.3gp" + "'";  
Cursor cursor = getContentResolver().query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI,  
        new String[] { MediaStore.Video.Media._ID }, whereClause, null, null);  
if (cursor == null || cursor.getCount() == 0) {  
    return;  
}  
cursor.moveToFirst();  
int videoId = cursor.getInt(cursor.getColumnIndex(MediaStore.Video.Media._ID));  
  
BitmapFactory.Options options = new BitmapFactory.Options();    
options.inDither = false;    
options.inPreferredConfig = Bitmap.Config.ARGB_8888;    
Bitmap bm = Thumbnails.getThumbnail(getContentResolver(), videoId,  Images.Thumbnails.MINI_KIND, options);    
2.2则做了封装。
二、视频的保存
 
保存视频需要把视频保存到媒体库中。代码:
 
ContentValues values = new ContentValues(3);  
    long current = System.currentTimeMillis();  
    values.put(MediaStore.Video.Media.TITLE, "video" + f.getName());  
    values.put(MediaStore.Video.Media.DATE_ADDED, (int) (current / 1000));  
    values.put(MediaStore.Video.Media.MIME_TYPE, "video/3gpp");  
    values.put(MediaStore.Video.Media.DATA, f.getAbsolutePath());  
    ContentResolver contentResolver = getContentResolver();  
    Uri base = MediaStore.Video.Media.EXTERNAL_CONTENT_URI;  
    Uri newUri = contentResolver.insert(base, values);  
    sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, newUri));  

(编辑:宁德站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读