您的位置:首页 > 移动开发 > Cocos引擎

[寒江孤叶丶的Cocos2d-x之旅_08]Cocos2d-x如何播放声音,如何添加背景音乐,如何播放音效?

2014-08-30 22:14 363 查看
首先,你需要有一个音效文件(好吧我承认这是一个冷笑话),最好是W***的,因为目前WP8平台只支持W***……

(╯‵□′)╯︵┻━┻

然后将你的音效放到Resources目录下。

下面开始正式讲解如何在Cocos2d-x中播放音效,与其说是讲解,不如说是一笔带过。因为Cocos2d-x中播放音效真的很简单。

就好像把大象放到冰箱里一样简单…………

言归正传。

第一步:

引入头文件并引用命名空间:

#include ”simpleAudioEngine.h“
using namespace cocosdenshin;


第二步:

调用音乐播放函数:

CocosDenshion::SimpleAudioEngine::getInstance()->playBackgroundMusic("background.wav");
播放音效函数:

CocosDenshion::SimpleAudioEngine::getInstance()->playEffect("Boom.wav");


第三步(千万不要忘记):

在AppDelegate.cpp中设置音乐的暂停和恢复

在applicationDidEnterBackground中添加暂停音乐的函数

SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
在applicationWillEnterForeground中恢复音乐播放

SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();


是不是跟把大象放进冰箱里一样简单?
下边分享一些小知识吧:
各个平台音乐格式:

1 Android: mp3、mid、ogg和wav,可以播放android.media. MediaPlayer所支持的所有格式

2 iOS:aac、caf、mp3、m4a和wav, 可以播放***AudioPlayer, 所支持的所有格式

3 Windows: mid、mp3和wav

各个平台音效格式:

1 Android:ogg和wav, 对wav的支持并不完美

2 OS:caf和wav,可以播放Cocos2d-iPhone,CocosDenshion所支持的所有格式

3 Windows:mid和wav
音频相关函数列表:

// 停止背景音乐播放
SimpleAudioEngine::sharedEngine()->stopBackgroundMusic();
// 暂停背景音乐播放
SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();
// 恢复背景音乐播放
SimpleAudioEngine::sharedEngine()->resumeBackgroundMusic();
// 倒带?后退背景音乐播放(这个我不知道怎么说反正就那个意思吧)
SimpleAudioEngine::sharedEngine()->rewindBackgroundMusic();
// 背景音乐是否播放中
SimpleAudioEngine::sharedEngine()->isBackgroundMusicPlaying()
// 加大音乐音量
SimpleAudioEngine::sharedEngine()->setBackgroundMusicVolume(SimpleAudioEngine::sharedEngine()->getBackgroundMusicVolume() + 0.1f);

//暂停音效
SimpleAudioEngine::sharedEngine()->pauseEffect(m_nSoundId);
//恢复音效播放
SimpleAudioEngine::sharedEngine()->resumeEffect(m_nSoundId);
//暂停全部音效
SimpleAudioEngine::sharedEngine()->pauseAllEffects();
//恢复全部音响
SimpleAudioEngine::sharedEngine()->resumeAllEffects();
//停止所有音响播放
SimpleAudioEngine::sharedEngine()->stopAllEffects();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: