public class MediaUtils {    private static MediaUtils             sMediaUtils;    private        MediaMetadataRetriever retriever;    private        String                 fileLength;    private MediaUtils() {    }    public static MediaUtils getInstance() {        if (sMediaUtils == null) {            sMediaUtils = new MediaUtils();        }        return sMediaUtils;    }    public void setSource(String filePath) {        retriever = new MediaMetadataRetriever();        retriever.setDataSource(filePath, new HashMap());        fileLength = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_DURATION);    }    /**     * 获取视频某一帧 * @param timeMs 毫秒 * @param listener     */    public Bitmap decodeFrame(long timeMs) {        if (retriever == null) {            return null;        }        Bitmap bitmap = retriever.getFrameAtTime(timeMs * 1000, MediaMetadataRetriever.OPTION_CLOSEST);        if (bitmap != null) {            return bitmap;        }        return null;    }    public String getFileLength() {        return fileLength;    }}

 

更多相关文章

  1. 【阿里云镜像】切换阿里巴巴开源镜像站镜像——Debian镜像
  2. Android(安卓)GPS获取地理位置 .
  3. Android(安卓)文件储存
  4. android calendar的使用
  5. Android--登录界面(demo)
  6. 关于android如何获取屏幕分辨率的例子
  7. Android(安卓)获取设备序列号(SN号)含源码Demo
  8. Android能够获取到唯一的设备ID吗?
  9. Android入门教学视频免费下载

随机推荐

  1. Android 注解指南
  2. Android控件重叠显示小记
  3. Android 9 安装更新 apk,适用于android 9
  4. [Android]AndroidDesign中ActionBar探究2
  5. android开发中listview 单选多选
  6. Activity 启动模式
  7. android:TextView单行显示设定字符长度,超
  8. Android(安卓)MediaPlayer 常用方法介绍
  9. Android settings.db数据库中添加一条新
  10. cron4j 在android实现任务调度