Как использовать FMOD с C ++? - PullRequest
0 голосов
/ 07 мая 2011

Я пытаюсь создать простой mp3-плеер, используя FMOD:

#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 ++ для компиляции программы?

Ответы [ 2 ]

3 голосов
/ 09 мая 2011

FSOUND_Init - это функция API FMOD 3, вы используете FMOD Ex, так что функция не существует. Для инициализации FMOD Ex вы должны включить "fmod.hpp" и использовать функции:

System_Create для создания системного объекта FMOD, затем

System :: init для инициализации, затем

System :: createStream для загрузки вашего MP3, затем

Система :: playSound для воспроизведения.

Существует множество полезных примеров, которые поставляются с FMOD, которые вы можете использовать в качестве справочного материала, особенно пример потока воспроизведения того, чего вы хотите достичь. Также имеется полная документация в формате CHM. Если вы переносите код с FMOD 3, я бы рекомендовал прочитать руководство по миграции в документации fmodex.chm.

0 голосов
/ 07 мая 2011

Вы также должны включить заголовки для библиотеки, добавьте

#include <fmod.h>

в начале вашего кода.

...