Мы создаем мультиплатформенную игру для настольных компьютеров и телефонов.В частности:
Windows, Mac, Linux, iPhone, Android и Windows Phone 7.
Мы ищем аудио-библиотеку.Я оглянулся и, кажется, будет лучше написать обертку вокруг нескольких API для разных платформ.Вопрос в том, какие библиотеки лучше всего обернуть / использовать?
Наши требования:
- Совместимо - библиотеки в идеале должны поддерживать старые версии платформы (например, Windows XP).Я также надеюсь избежать ада совместимости, когда каждая платформа или версия платформы имеет разные причуды:)
- Загрузка файлов ogg или mp3
- Потоковое воспроизведение музыки с диска, поэтому нам не нужно иметьдолгое ожидание блокировки во время загрузки
- Fading - постепенное исчезновение, постепенное исчезновение, постепенное затухание между музыкальными дорожками
- Нет явных артефактов (таких как щелчки при изменении громкости)
- TheОсновы - зацикливание музыки / эффектов, настройка громкости
Любые рекомендации?
Я склоняюсь к OpenAL для всех платформ, кроме WP7, для которых, по-видимому, требуется использование XNA.Также на Android OpenAL, кажется, почти не поддерживается, так что, может быть, использовать нативный API там?Для iPhone я не уверен, насколько развита поддержка OpenAL.
Наш язык - C #, но у нас нет проблем с вызовом библиотек C.Библиотеки C ++ на основе классов будет немного сложнее вызывать из C #.