
android:使用audiotrack 类播放wav文件
发布日期:2021-05-08 01:24:11
浏览次数:6
分类:精选文章
本文共 1272 字,大约阅读时间需要 4 分钟。
参考:
建议下载一个铃声文件(小点的),然后用千千静听,转换成wav格式的。
源码如下:
public class Playmp3Activity extends Activity {
private final String file="//sdcard//testring.wav"; private final static String tag="22"; static byte[] buffer=null; AudioTrack at=null; int pcmlen=0; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); try { FileInputStream fis=new FileInputStream(file); buffer=new byte[1024*1024*2];//2M int len=fis.read(buffer); Log.i(tag, "fis len="+len); Log.i(tag, "0:"+(char)buffer[0]); pcmlen=0; pcmlen+=buffer[0x2b]; pcmlen=pcmlen*256+buffer[0x2a]; pcmlen=pcmlen*256+buffer[0x29]; pcmlen=pcmlen*256+buffer[0x28]; int channel=buffer[0x17]; channel=channel*256+buffer[0x16]; int bits=buffer[0x23]; bits=bits*256+buffer[0x22]; Log.i(tag, "pcmlen="+pcmlen+",channel="+channel+",bits="+bits); at = new AudioTrack(AudioManager.STREAM_MUSIC, 44100, channel, AudioFormat.ENCODING_PCM_16BIT, pcmlen, AudioTrack.MODE_STATIC); at.write(buffer, 0x2C, pcmlen); Log.i(tag, "write 1..."); at.play(); Log.i(tag, "play 1..."); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }@Override
protected void onDestroy() { // TODO Auto-generated method stub super.onDestroy(); at.release(); } }发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2025年03月22日 13时53分20秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
SVN 和 Git 区别
2019-03-05
JDK 内置的多线程协作工具类的使用场景
2019-03-05
Java 源代码到运行的过程
2019-03-05
Java 中哪些对象可以获取类对象
2019-03-05
linux 的 cp 命令如何复制不提示覆盖
2019-03-05
缓存穿透 / 缓存击穿 / 缓存雪崩 / 缓存一致性
2019-03-05
linux 的 sleep 命令
2019-03-05
js 的 let var const 区别
2019-03-05
无线掌上B超USONIX-R6凸阵B模图像初步
2019-03-05
react路由使用以及封装
2019-03-05
vue计算属性和监听器区别
2019-03-05
前端常用知识随手记
2019-03-05
11.2.6 时间值的小数秒
2019-03-05
11.2.7 日期和时间类型之间的转换
2019-03-05
redis 内存溢出_从数据存储的角度告诉你Redis为什么这么快!
2019-03-05
实例分析Facebook激励视频广告接入
2019-03-05
实例:使用OKGO下载网络压缩包资源,然后解压缩放在本地使用
2019-03-05
解决mybatis嵌套查询使用PageHelper分页不准确
2019-03-05
Redis源码分析(七)--- zipmap压缩图
2019-03-05
大规模集群自动化部署工具--Chef的安装部署
2019-03-05