文档章节

android开发笔记之多媒体—SoundPool(音效池)

Mr_Nice
 Mr_Nice
发布于 2016/05/22 20:00
字数 462
阅读 9
收藏 0

码上生花,ECharts 作品展示赛正式启动!>>>

使用SoundPool播放音效

——如果应用程序经常需要播放密集,短促的音效。这时还用Mediaplayer就显得不合适。

——MediaPlayer的缺点:资源占用量较高,延迟时间较长不支持多个音频同时播放。

——SoundPool使用音效池来播放一些较短的声音片段,它的优势资源占用量低和反应延迟小。

使用步骤:

1.创建对象:new SoundPool(num,stream,0)

    第一个参数指定支持多少个声音

    第二个参数指定声音类型

    第三个参数指定声音品质,还没有启作用

    如:soundPool = new SoundPool(3,AudioManager.STREAM_MUSIC, 0);

    在android21的版本建议使用SoundPool中的内部类来创建:

    SoundPool pool=new SoundPool.Builder().setMaxStreams(3).build();   

2.添加音频:load()加载声音,最好使用hashMap来管理:

HashMap<Integer,Integer>

load(Context context,int resId,int priority)

load(String path,int priority)priority播放声音的优先级,目前没有启作用  

如:int id=soundPool.load(this,R.raw.nudge,1)
            map.put(1,soundPool.load(this,R.raw.nudge,1));
           返回的该声音的ID,之后就根据该ID来播放指定声音

3.播放:play(int,float,float,int,int,float)

      第一个参数指定播放哪个声音
      第二三个参数指定左右音量(0.0-1.0)
      第四个参数播放声音的优先级,值越大越优先播放,0最小
      第五个参数是否循环,0不循环,-1循环
      第六个参数播放的比率,1为正常的,(范围0.5-2.0)  

      如:soundPool.play(pools.get(1), 1, 1, 0,0,1);

   暂停:pause()
   停止:stop()
   释放资源:release();       

注意:
1)在硬件较差的客户端中,SoundPool比MediaPlay使用延迟更大
2)避免使用SoundPool来播放歌曲获取做游戏的背景音乐。只有那些短促,密集的声音才考虑使用SoundPool进行播放。

© 著作权归作者所有

Mr_Nice
粉丝 0
博文 47
码字总数 39947
作品 0
广州
私信 提问
加载中
请先登录后再评论。
Android中的soundpool小结

之前只知道android中可以用mediaplayer播放音乐,原来今天才发现 可以用soundpool,用soundpool可以播一些短的反应速度要求高的声音, 比如游戏中的爆破声,而mediaplayer适合播放长点的。 1....

Carl_
2015/01/08
60
0
Android SoundPool 的简单使用

之前只知道Android中可以用MediapLayer播放音乐,原来今天才发现可以用SoundPool,用SoundPool可以播一些短的反应速度要求高的声音,比如游戏中的爆破声,而MediapLayer适合播放长点的。 一般...

秀宇
2015/11/26
416
0
Android基础 - Android Studio 添加游戏音效

一、资源添加 在资源文件夹res中,创建raw文件夹,放置音频(mp3、wav)、视频文件:New-Folder-Raw Resource Folder 文件命名格式:开头不能是数字,不能为大写字母。 二、代码 Android添加...

osc_3md1xrlp
2018/08/15
2
0
【Android游戏开发之八】游戏中添加音频-详解MediaPlayer与SoundPoo!并讲解两者的区别和游戏中的用途!

李华明Himi 原创,转载务必在明显处注明: 转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/android-game/312.html 很多童鞋说我的代码运行后,点击home或者back后会程序异常,...

迷途d书童
2012/03/19
339
0
Android API学习 SoundPool 和 MediaPlayer

Android平台中关于音频播放有以下两种方式:   1. SoundPool —— 适合短促且对反应速度比较高的情况(游戏音效或按键声等)   2. MediaPlayer —— 适合比较长且对时间要求不高的情况   ...

antkingwei
2012/04/20
1.3K
0

没有更多内容

加载失败,请刷新页面

加载更多

自媒体文章原创度检测,可以试一下蚁小二工具

自媒体文章原创度检测,可以试一下蚁小二工具,现在的自媒体人对文章原创度检测这一块还是挺看重的,因为文章的原创度不仅仅和推荐量有关还和质量分值有关,这个时候就可以用到蚁小二工具。 ...

一键分发工具-蚁小二
12分钟前
15
0
Cannot import Sklearn from sklearn.externals.joblib

使用: from sklearn.externals import joblib 报错:Cannot import Sklearn from sklearn.externals.joblib 解决方法: python -m pip install sklearn --upgrade python -m pip install jobli......

hc321
12分钟前
8
0
编程语言那么多,为何建议学习python呢?

  随着互联网技术的发展,大家对于编程的认识越来越系统化了,现在学习编程的年龄越来越小,而编程也成为了我们学习的重要知识。   当然,学习编程知识不分早晚的,也有很多26岁左右才转...

osc_ix000whh
13分钟前
5
0
kubectl的使用

https://kubernetes.io/docs/reference/kubectl/overview/

osc_n1fa9m3z
14分钟前
5
0
2020上海锁博会

上海锁博会将于2020年12月22日至24日在上海新国际博览中心举办“第六届上海国际锁博会”,上海锁博会本来就致力于展现中国作为亚洲最活跃、最具发展潜力的锁具市场之一的独特魅力。 锁博会坚...

osc_uvparld2
16分钟前
6
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部