SimpleAudioEngine音效的使用导致程序变慢出现卡顿

还有预加载音效和不预加载好像没什么差别,是在AppDelegate类预加载的,应该没有问题吧?
游戏用到音效的地方很多,但是频繁的使用会导致程序变慢出现卡顿,关闭音效会好很多。求教:怎么处理这种情况?

有没真机调试过?你可以看下这个http://support.cocos.com/?p=262

我已经修改了WINDOWS引擎的代码,可以调节音量大小

void SimpleAudioEngine::preloadEffect(const char* pszFilePath)
{
int nRet = 0;
do
{
BREAK_IF(! pszFilePath);

    nRet = _Hash(pszFilePath);


    BREAK_IF(sharedList().end() != sharedList().find(nRet));


    sharedList().insert(Effect(nRet, new MciPlayer()));
    MciPlayer * pPlayer = sharedList();
    pPlayer->Open(_FullPath(pszFilePath).c_str(), nRet);


    BREAK_IF(nRet == pPlayer->GetSoundID());


    delete pPlayer;
    sharedList().erase(nRet);
    nRet = 0;
} while (0);

}

我这边也有一样的问题,用SimpleAudioEngine::preloadEffect(const char* pszFilePath) 预加载了,还是卡帧 。现在有解决方案吗?

windows下预加载不明显,而且主要是格式问题,换成.wav的好多了,虽然资源大了点…

现在也碰到这个问题,请问题主最终都用了哪些方法解决啊?
转换成.wav在手机上也会好些不?
cocos2d-x是单线程的,playEffect方法是不是也是在主线程上运行所以导致会卡主界面,
可不可以开启一个线程来播放音效,这样的方法有没有必要,可不可行呢?

不好意思,刚看到。据我尝试得知,卡顿主要是因为加载声音格式不匹配导致的,建议音效最好用wav格式,背景音乐用mp3。