我对c++还是个新手,只是想把它拿出来。我正在试着在节目继续之前播放一个声音。Irrklang说它正确地加载了文件,但我什么也听不到。我已经测试了irrklang本身,它在这个项目和目录中工作得很好。我使用的一些代码来自irrklang本身(使用声音事件):api。我还在这里做了很多关于堆栈溢出和其他方面的浏览,比如:1,2,3,4。此外,我的下一步将是用转换为常量字符* (str.c_str())的字符串替换"getout.ogg“。当我使用const char时,它不会给我一个错误*但是我不知道它是否可以工作。我的应用程序是一个控制台应用程序,但我确保它保持打开状态,直到我关闭它,如果这有帮助的话。任何帮助都是非常感谢的。
void Test() {
std::cout << "\n";
std::string str = "A.wav";
ISoundEngine* engine = createIrrKlangDevice();
SoundEndReceiver* endR = new SoundEndReceiver();
//char const * sound = ""; //this is needed for conversions
//str.c_str()
irrklang::ISound* snd = engine->play2D("getout.ogg", false, false, true);
if (snd) {
snd->setSoundStopEventReceiver(endR);
}
}发布于 2020-07-25 02:51:22
我找到了大部分的解决方案。我需要把它放在一个do while(_getch() != q);循环中。
https://stackoverflow.com/questions/63079063
复制相似问题