Реверберация с OpenAL на iOS

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

Благодарю.

2 ответа

Реверберация теперь изначально поддерживается в OpenAL (начиная с iOS 5.0). Вы можете просмотреть пример реализации проекта ObjectAL:

https://github.com/kstenerud/ObjectAL-for-iPhone

Просто возьмите самый последний источник из этого репозитория, загрузите "ObjectAL.xcodeproj" и запустите цель ObjectALDemo на любом устройстве iOS 5.0 (также должно работать на симуляторе).

Фактическая реализация лежит в двух местах:

Найдите в этих файлах слово "реверберация" (и соответствующие файлы заголовков), чтобы найти имя свойств и констант OpenAL, используемых для установки и управления эффектом реверберации.

Удачи!

Вы можете использовать предварительно обработанный звук, если ситуация позволяет это сделать. Если вы хотите сделать это в реальном времени, загляните в DSP. Там нет никакого способа сделать это из коробки, о которой я знаю.

Дополнительные API-интерфейсы для настольных систем, такие как EFX и EAX, используют аппаратную обработку сигналов. Возможно, в будущем эти портативные устройства будут реализовывать полноценные API-интерфейсы OpenAL и OpenGL, но на данный момент у нас есть урезанные версии по практическим причинам, таким как стоимость, срок службы батареи и т. Д.

Я уверен, что есть способ, но он не будет легким.

Другие вопросы по тегам