fmodex возвращает ERR_FILE_BAD при воспроизведении файла MP3 в Mono / Ubuntu - PullRequest
0 голосов
/ 17 мая 2010

Я пытаюсь использовать fmodex 4.30.03 для воспроизведения файла MP3 в Mono / Ubuntu.

Мой вызов createSound () выглядит следующим образом:

result = system.createSound(path, 
    (FMOD.MODE._2D | FMOD.MODE.HARDWARE | FMOD.MODE.CREATESTREAM), 
    ref sound);

согласно примерам C #, поставляемым с SDK.

result устанавливается на 19, ERR_FILE_BAD.

То же самое отлично работает под Windows. У меня есть следующее в app.config:

<dllmap os="linux" dll="fmodex" target="./libfmodex-4.30.03.so"/>

Если этого нет, fmodex даже не загружается, так что я знаю, что он так далеко.

Файл, который я передаю, определенно существует, но если я передаю неверный путь, я фактически получаю то же сообщение об ошибке.

1 Ответ

2 голосов
/ 26 июля 2010

Я предполагаю, что вам удалось инициализировать систему FMOD и все остальное. Оболочка C # передает строки в FMOD для createSound как Unicode, который FMOD не поддерживает в Linux. Чтобы это исправить, вам нужно изменить оболочку C #, удалить передаваемый флаг FMOD_UNICODE и убедиться, что строки, передаваемые в FMOD, являются нормальными ASCII.

...