得到音频文件的播放时间---GetAmrDuration
来源:互联网 发布:百度网站自然排名优化 编辑:程序博客网 时间:2024/05/21 07:55
import java.io.File;import java.io.IOException;import java.io.RandomAccessFile;public class GetAmrDuration {/** * 得到amr的时长 * * @param file * @return * @throws IOException */public static int getAmrDuration(File file) throws IOException {long duration = -1;int[] packedSize = { 12, 13, 15, 17, 19, 20, 26, 31, 5, 0, 0, 0, 0, 0,0, 0 };RandomAccessFile randomAccessFile = null;try {randomAccessFile = new RandomAccessFile(file, "rw");long length = file.length();// 文件的长度int pos = 6;// 设置初始位置int frameCount = 0;// 初始帧数int packedPos = -1;byte[] datas = new byte[1];// 初始数据值while (pos <= length) {randomAccessFile.seek(pos);if (randomAccessFile.read(datas, 0, 1) != 1) {duration = length > 0 ? ((length - 6) / 650) : 0;break;}packedPos = (datas[0] >> 3) & 0x0F;pos += packedSize[packedPos] + 1;frameCount++;}duration += frameCount * 20;// 帧数*20} finally {if (randomAccessFile != null) {randomAccessFile.close();}}return (int)((duration/1000)+1);}public static void main(String[] args) throws IOException {File source = new File("6.amr");System.out.println(getAmrDuration(source));}}
0 0
- 得到音频文件的播放时间---GetAmrDuration
- 音频文件播放时间的获取
- 【C#获取音频文件的播放时间】
- php判断一个音频文件的播放时间
- java实现音频文件的播放
- 播放SDcard上面的音频文件
- unity播放加密的音频文件
- java 实现音频文件的播放
- C#获取音频文件(MP3等)播放时间长度的几种方式
- 播放音频文件
- 播放音频文件
- C#获取web上传音频文件怎么得到文件时间长度
- 如何得到WAV文件播放的总时间
- android实现音频文件播放的方法
- Anroid开发 之 音频文件的循环播放
- 在浏览器中播放音频文件的兼容性问题
- 在浏览器中播放音频文件的兼容性问题
- AVAudioPlayer 播放音频文件无声音的问题
- 给一个DIV的右上解加一个删除按钮
- Ubuntu扁平主题
- OC内存管理
- 工作日志内容
- excel文件导入数据库
- 得到音频文件的播放时间---GetAmrDuration
- centos 安装scipy
- Ethernet_II帧和802.3_Ethernet帧格式比较
- mysql聚合函数rollup和cube
- 单元测试
- dispose()与close()的区别 及pooling连接池相关
- OC中让键盘下去的方法
- java中Object类 源代码详解
- Unity3D开发者快速上手Unreal Engine 4指南