Android获取视频音频的时长的方法
2024-08-21 13:35:18
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;
}
最新文章
- swfupload 相关配置
- Web jquery表格组件 JQGrid 的使用 - 11.问题研究
- PHP中获取当前页面的完整URL
- android XMl 解析神奇xstream 五: 把复杂对象转换成 xml ,并写入SD卡中的xml文件
- 深入C++中构造函数、拷贝构造函数、赋值操作符、析构函数的调用过程总结
- 安装xampp后,遇到的各种问题
- 多校7 HDU5818 Joint Stacks
- vc实现ping
- BZOJ 2300 防线修建
- 获取scrollTop兼容各浏览器的方法,以及body和documentElement
- USB OTG ID 检测原理
- CSipSimple最新版本号(二)--加入视频功能
- 在eclipse中生成实体类
- 用SWF来代替传统的帧动画
- PHPStorm中的快捷键
- 【BZOJ2705】【Sdoi2012】Longge的问题
- AD用户属性:UserPrincipalName与SamAccountName的差别
- [经验交流] k8s mount 文件到容器目录
- C语言求1-1/3+1/5-1/7+...——小程序,大道理
- Centos 安装 python2.7.10以及pip
热门文章
- hadoop2.5.2学习及实践笔记(四)—— namenode启动过程源码概览
- 最小生成树 $Kruskal$ 算法
- iOS大神班笔记01-项目中常见的文件
- 【bzoj4636】蒟蒻的数列 离散化+线段树
- [bzoj] 1085 骑士精神 || ID-DFS
- Eclipse 日文乱码怎么解决Shift_JIS
- killer驱动
- 转:LinkedHashMap使用(可以用来实现LRU缓存)
- Lesson 7: C#多线程
- 汕头市队赛 SRM 09 C 撕书