加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c – FMOD中的简单声音播放

发布时间:2020-12-16 09:40:04 所属栏目:百科 来源:网络整理
导读:我开始使用FMOD API,我有声音播放的问题.我使用过这个网站的教程: http://glasnost.itcarlow.ie/~powerk/audio/AddFMODtoaproject.html,只觉得我的声音很破解. 这是我在OpenGL初始化函数中使用的代码: FMOD::System_Create(system);// create an instance
我开始使用FMOD API,我有声音播放的问题.我使用过这个网站的教程: http://glasnost.itcarlow.ie/~powerk/audio/AddFMODtoaproject.html,只觉得我的声音很破解.

这是我在OpenGL初始化函数中使用的代码:

FMOD::System_Create(&system);// create an instance of the game engine
system->init(32,FMOD_INIT_NORMAL,0);

system->createSound("sound.wav",FMOD_HARDWARE,&sound1);
sound1->setMode(FMOD_LOOP_OFF);

system->playSound(FMOD_CHANNEL_FREE,sound1,false,0);

有谁知道什么是错的?或者也许还有另一种方式.

解决方法

首先确保检查所有函数的返回码,确保它是FMOD_OK.

其次,你需要定期调用System :: update,每帧一次调用FMOD内容.

关于你的问题,你在哪个平台?噼啪声通常意味着硬件无法跟上,修复它可以增加FMOD的缓冲量.这是通过System :: setDSPBufferSize控制的,尝试增加numBuffers计数.您可以使用System :: getDSPBufferSize确定当前值,还要确保在System :: init之前调用System :: setDSPBufferSize以使新值生效.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读