0

我正在尝试使用 FMOD 创建一个简单的 mp3 播放器:

#include "inc/fmod.h"

int main() 
{
    FSOUND_Init(44100, 32, 0);
    return 0;
}

尝试编译程序时出现以下错误:

holle@x300:justmp3$ pwd
/media/daten/Entwicklung/C/justmp3
holle@x300:justmp3$ LD_LIBRARY_PATH=$(pwd)/lib
holle@x300:justmp3$ ls $LD_LIBRARY_PATH
libfmodex-4.34.02.so  libfmodexL-4.34.02.so
holle@x300:justmp3$ g++ -o mp3 mp3.cpp
mp3.cpp: In function ‘int main()’:
mp3.cpp:8: error: ‘FSOUND_Init’ was not declared in this scope

我的错误是什么?我怎样才能让 g++ 编译程序?

4

2 回答 2

3

FSOUND_Init 是一个 FMOD 3 API 函数,您使用的是 FMOD Ex,因此该函数不存在。要初始化 FMOD Ex,您应该包含“fmod.hpp”并使用以下函数:

System_Create 创建 FMOD 系统对象,然后

System::init 进行初始化,后跟

System::createStream 加载你的 MP3,然后

System::playSound 播放它。

FMOD 附带了许多有用的示例,您可以将其用作参考,尤其是您想要实现的播放流示例。还有 CHM 格式的完整文档。如果您要从 FMOD 3 移植代码,我建议您阅读 fmodex.chm 文档中的迁移指南。

于 2011-05-08T23:47:04.143 回答
0

您还需要包含库的标题,添加

#include <fmod.h>

在代码的开头。

于 2011-05-07T10:39:06.057 回答