Android获取视频音频的时长的方法

简介:

android当中获取视频音频的时长,我列举了三种。 
1:获取视频URI后获取cursor

cursor.getLong(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DURATION));

 

2:根据MediaPlayer获取:

MediaPlayer mediaPlayer = new MediaPlayer();
mediaPlayer.setDataSource(url);
mediaPlayer.prepare(); mediaPlayer.getDuration();

 

3:采用MediaMetadataRetriever的方式:

    public static String getRingDuring(String mUri){
        String duration=null; android.media.MediaMetadataRetriever mmr = new android.media.MediaMetadataRetriever(); try { if (mUri != null) { HashMap<String, String> headers=null; if (headers == null) { headers = new HashMap<String, String>(); headers.put("User-Agent", "Mozilla/5.0 (Linux; U; Android 4.4.2; zh-CN; MW-KW-001 Build/JRO03C) AppleWebKit/533.1 (KHTML, like Gecko) Version/4.0 UCBrowser/1.0.0.001 U4/0.8.0 Mobile Safari/533.1"); 

}

mmr.setDataSource(mUri, headers); } duration = mmr.extractMetadata(android.media.MediaMetadataRetriever.METADATA_KEY_DURATION); } catch (Exception ex) { } finally { mmr.release(); } LogUtil.e("ryan","duration "+duration); return duration;

}




本文转自 一点点征服 博客园博客,原文链接:http://www.cnblogs.com/ldq2016/p/7233350.html,如需转载请自行联系原作者

相关文章
|
8月前
|
开发工具 Android开发 开发者
Android如何回调编码后的音视频数据
有开发者提到,在RTMP推送端的基础上,希望能回调编码后的音视频数据,便于开发者对接第三方系统,如GB28181.
|
3天前
|
安全 Java Shell
Android11以上 Audio音频调试方法
Android11以上 Audio音频调试方法
75 0
|
11月前
|
语音技术 Android开发
Android使用SoundPool播放语音,并实现按顺序延时播放
Android使用SoundPool播放语音,并实现按顺序延时播放
|
API 数据处理 语音技术
Android高级音频应用
Android高级音频应用
127 0
|
Android开发 内存技术
Android录制和播放PCM数据
PCM是android系统中的原生音频数据,那么我们如何录制和播放这个格式的byte[]数据呢?
331 0
|
Android开发 数据格式 XML
Android 视频播放器 VideoView 的使用,播放本地视频 和 网络 视频
1、布局文件 2、代码部分 package app.com.myapplication; import android.
3040 0
|
存储 Android开发
基于网络音频的Android播放程序简单示例
基于网络音频的Android播放程序简单示例
123 0
|
存储 缓存 Java
|
Android开发 编解码 开发工具
解决 Android PLMediaPlayer 个别视频播放异常问题
      小菜最近一直在处理一个比较纠结的问题,项目中接入了七牛云视频SDK PLMediaPlayer,七牛云视频SDK是很强大的一款三方视频库。       小菜项目中需要展示的是 .mp4 格式的视频,曾经遇到的问题包括:个别视频有音频但是看不到视频,个别视频无法播放等。
2197 0