首页 > 代码库 > cocos2dx3.1.1如何播放声音
cocos2dx3.1.1如何播放声音
2024-07-24 22:18:07 222人阅读
1,加载
CocosDenshion::SimpleAudioEngine::sharedEngine()->preloadBackgroundMusic("music.mid");
CocosDenshion::SimpleAudioEngine::sharedEngine()->preloadEffect("pew-pew-lei.wav");
这两句,分别读取了背景音乐文件和音效文件
2,播放
CocosDenshion::SimpleAudioEngine::sharedEngine()->playBackgroundMusic("music.mid", true);
CocosDenshion::SimpleAudioEngine::sharedEngine()->playEffect("pew-pew-lei.wav");
这两句分别是播放音乐和音效
3,停止
CocosDenshion::SimpleAudioEngine::sharedEngine()->stopBackgroundMusic(false);
这句是停止播放音乐。
相关的还有暂停等接口,但是我在win32下测试暂停后无法恢复,不知是什么原因,大家自己进这个类的头文件看看,接口很少。
// 预先加载背景音乐
//CocosDenshion::SimpleAudioEngine::sharedEngine()->preloadBackgroundMusic("huahuo.mp3");
//播放背景音乐
//CocosDenshion::SimpleAudioEngine::sharedEngine()->playBackgroundMusic("huahuo.mp3",true);
程序不需要音乐时,需要调用SimpleAudioEngine::sharedEngine()->end();释放sharedEngine()。
其他播放音效的相关函数
SimpleAudioEngine::sharedEngine()->stopBackgroundMusic();//停止背景音乐,可以代一个布尔型参数,表示是否释放音乐文件
SimpleAudioEngine::sharedEngine()->pauseBackgroundMusic();//暂停背景音乐
SimpleAudioEngine::sharedEngine()->rewindBackgroundMusic();//重头调用背景音乐
SimpleAudioEngine::sharedEngine()->isBackgroundMusicPlaying()//返回布尔型参数,是否在放着背景音乐
SimpleAudioEngine::sharedEngine()->setBackgroundMusicVolume(0.5);//设置音量0.0-1.0</span>
<span style="font-family:Microsoft YaHei;font-size:18px;">preloadEffect( );
playEffect();
stopEffect();//停止音效,可以选择单独停掉一个音效,通过创建时的m_nSoundId停止
stopAllEffects();//停止全部音效
pauseEffect(m_nSoundId);//暂停单个音效
resumeEffect(m_nSoundId);//重新开始音效
pauseAllEffects();//暂停全部音效
resumeAllEffects();//重新开始全部音效
setEffectsVolume(0.5);//设置音效音量
unloadEffect(std::string(CCFileUtils::fullPathFromRelativePath(EFFECT_FILE)).c_str());//卸载音效</span>
cocos2dx3.1.1如何播放声音