c++ - 加载somesound.bank并使用fmod播放c++

标签 c++ events audio fmod

我试图将fmod与c++项目一起使用,并创建了一个音库。
当我尝试加载它时,没有错误显示,但不会播放任何声音。

这是soundengine.h:

...
static FMOD_RESULT result;
static FMOD::Studio::System * fmodStudio;
static FMOD::Studio::Bank* masterBank;
static FMOD::Studio::EventDescription * eventDesc;
static FMOD::Studio::EventInstance * engine;
...
static void loadBank();

和soundengine.cpp
...
FMOD::Studio::System * SoundEngine::fmodStudio;
FMOD::Studio::Bank * SoundEngine::masterBank;
FMOD::Studio::EventDescription * SoundEngine::eventDesc;
FMOD::Studio::EventInstance * SoundEngine::engine;
...

void SoundEngine::initialise (void) 
{
result = FMOD::Studio::System::create(&fmodStudio);
if (result != FMOD_OK) possible = false; 
if (possible)result = fmodStudio->initialize(320, FMOD_STUDIO_INIT_NORMAL, FMOD_INIT_NORMAL, 0);
if (result != FMOD_OK) possible = false;
//sets initial sound volume (mute)
if (possible) channel->setVolume(0.0f);
fmodStudio->update();
}

void SoundEngine::loadBank()
{
//load master bank
if (possible)result = fmodStudio->loadBankFile("EnvironmentSound.bank", FMOD_STUDIO_LOAD_BANK_NORMAL, &masterBank);
if (result != FMOD_OK) possible = false;
result = fmodStudio->getEvent("event:/StaticSounds/Engine", &eventDesc);
result = eventDesc->createInstance(&engine);
engine->start();
fmodStudio->update();
}

然后我只需调用SoundEngine::loadBank();在main.cpp中
它运行,但没有声音。我将EnvironmentSound.bank放在main.cpp的同一文件夹中,虽然不确定“event:/ StaticSounds / Engine”。正如我刚刚遵循的fmod simple_event.cpp的示例
谁能指出我犯的错误?
如果没有足够的信息,请告诉我。

最佳答案

我知道我来不及回答这个问题,但是至少对我来说,这里的问题是您没有加载库字符串,因此找不到带有“event:/ StaticSounds / Engine”字符串的事件。

if (possible)
    result = fmodStudio->loadBankFile("EnvironmentSound.strings.bank", FMOD_STUDIO_LOAD_BANK_NORMAL, &masterBank);

关于c++ - 加载somesound.bank并使用fmod播放c++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38666913/

相关文章:

c++ - 为什么我的程序在每次出现另一个字母后尝试插入一个字母时会崩溃?

php - 如何使用事件观察者模型获取事件 sales_order_place_after 的订单号?

java - 在 Swing 中监听新的子组件

java - 如何在android中设置各种音效高音、回声?

audio - 在firefox浏览器中播放mp3音频文件

c++ - memcpy c++ - 崩溃

c++ - OpenCV 中的全局变量

c++ - 对 struct sockaddr_in 的调用不匹配

actionscript-3 - AS3 阶段 = 空?

ios - 如何获取音频 block 以在核心音频或 AVFoundation 中进行分析