Мне нужно воспроизведение аудио с этими функциями: хорошая производительность (для игры), контроль высоты тона и возможность наложения одного и того же сэмпла несколько раз в одно и то же время (полифония). Какой бы быстрый способ получить это на iphone SDK?
Вот что я узнал до сих пор:
Нет доступных библиотек или примеров кода, которые делают это, пожалуйста, покажите мне неправильно.
SoundEngine.cpp (из примеров кода CrashLanding и TouchFighter) использует OpenAL и позволяет контролировать высоту тона, но каждый раз, когда запускается буфер, если воспроизводится тот же буфер, его точка воспроизведения возвращается к началу.
Одно грязное решение для получения полифонии с SoundEngine.cpp, не вдаваясь в его реализацию (что мне непонятно), состоит в загрузке нескольких буферов для одного и того же звукового файла. Допустим, мне нужна полифония максимум 4 голосов на звук, затем я загружаю 4 буфера для одного и того же файла. Я просто должен был бы обернуть все это в классе менеджера. Безопасно ли идти по этому пути? И / или есть ли способ заставить SoundEngine.cpp быть полифоническим?