android之音乐播放和音效播放

本文深入探讨了在游戏开发中如何高效地使用MediaPlayer播放音乐,并通过SoundPool实现多音效同步播放。重点阐述了音乐与音效的区别、播放方式及空间限制,提供了实用的代码示例。

在玩游戏的时候都会发现,开启了背景音乐的时候,游戏人物的走路、打斗之类都会发出响声。概括地说这里的背景音乐称为音乐,各种响声称为音效。

不同点:音乐同时只能播放一首,而音效则能够同时播放多首;

              音乐一般比较长,而音效一般比较短。

              音乐比较大,而音效一般申请空间不能超过1M(还有种说法是不能超过5.6秒)

 

1、使用MediaPlayer播放音乐

//创建MediaPlayer对象,将Context与资源文件传入
MediaPlayer player = MediaPlayer.create(this,R.raw.mp3);
//设置为循环播放 player.setLooping(true);
//判断是否正在播放,如果没有则开启音乐播放 if(!player.isPlaying()){ player.start(); }
//判断是否正在播放,如果正在播放则停止音乐播放 if(player.isPlaying()){ player.stop(); }

 

2、使用SoundPool播放音效

//创建音效播放池
//参数1:播放音效最大数目
//参数2:播放音效的类型
//参数3:音效播放效果
SoundPool sp = new SoundPool(2,AudioManager.STREAM_MUSIC,5);

//加载音效
//参数1:加载路径
//参数2:加载的文件
//参数3:优先级
//返回值:该文件的ID
int sp_1 = sp.load(this,R.raw.sp_1,0);
int sp_2 = sp.load(this,R.raw.sp_2,0);

//播放音效
//参数1:播放ID
//参数2:左音效
//参数3:右音效
//参数4:优先级
//参数5:循环次数
//参数6:播放速率,最低0.5最高2,1代表正常
sp.play(sp_1,1,1,0,0,1);

转载于:https://www.cnblogs.com/kangweifeng/p/4887476.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值