Проблемы с использованием SDL_mixer для воспроизведения файлов .ogg - PullRequest
0 голосов
/ 09 января 2019

Я пытаюсь использовать SDL-микшер для воспроизведения файлов .ogg в моей игре. Кажется, он установлен правильно, он выводит это во время процесса:

checking vorbis/vorbisfile.h usability... yes
checking vorbis/vorbisfile.h presence... yes
checking for vorbis/vorbisfile.h... yes
checking for ov_open_callbacks in -lvorbisfile... yes
-- dynamic libvorbisfile -> libvorbisfile.dylib

Что, если я не ошибаюсь, говорит о том, что файлы .ogg должны работать и библиотеки связаны правильно.

Когда я играю в игру, музыкальный файл .ogg не воспроизводится. Он дает следующий вывод на терминал:

Could not load music: Error -

Этот вывод генерируется из следующей строки кода:

std::cout << "Could not load music: ERROR - " << Mix_GetError() << std::endl;

Интересно, что, похоже, Mix_GetError () не выдает никаких выходных данных, даже при наличии ошибки.

Более того, если я попытаюсь попробовать вместо этого файл песни .wav, он сработает, поэтому проблема, похоже, связана с файлами .ogg.

Я предполагаю, что проблема связана с тем, как я связываю библиотеки, хотя я попробовал несколько вещей, и, похоже, не могу это исправить. У кого-нибудь есть какие-либо предложения относительно того, что может быть причиной моих проблем / как я мог их исправить?

...