获取网络视频的某一帧作为封面图,可以使用Glide实现,但是效果不是很好,主要问题就是加载慢,有几秒的延迟。这里利用Android提供的MediaMetadataRetriever类来获取。MediaMetadataRetriever主要是对网络、本地媒体文件做操作。

获取某一帧代码如下:

MediaMetadataRetriever retriever = new MediaMetadataRetriever();retriever.setDataSource(videoUrl, new HashMap());//获得第10帧图片 这里的第一个参数 以微秒为单位 bitmap = retriever.getFrameAtTime(10000000,MediaMetadataRetriever.OPTION_CLOSEST_SYNC);retriever.release();

需要注意的就是getFrameAtTime第一个参数是以微秒为单位。还有一点,直接这样写遇到不能播放的视频地址,会造成UI卡顿效果非常不好,所以建议写在子线程中,通过hanler或其他方式给视频设置封面。

更多相关文章

  1. Android客户端性能参数监控
  2. Android中图形参数及图形内存信息获取
  3. Android 读取SIM卡参数
  4. Android页面跳转是如何传递参数的
  5. Android参数设置父布局集体宽高
  6. android am 启动activity service or broadcast及参数传递
  7. Android Studio第三十八期 - HIOS跳转协议解决URI跳转原生页面并

随机推荐

  1. Android手势监听类GestureDetector
  2. scrollview--android
  3. 解决 android 的R文件不能生成 R cannot
  4. Android在全球的市场份额跃居全球第一
  5. Invoke-customs are only supported star
  6. 如何在Ubuntu下搭建Android NDK开发环境
  7. 相对布局RelativeLayout的妙用:提示标签在
  8. android编译系统makefile(Android.mk)写
  9. Android 3.0 r1中文API文档(104) ―― Vi
  10. Android(安卓)的核心服务