Opens SL ES, Open Sound Library for Embedded Systems (открытая звуковая библиотека для встраиваемых систем) — бесплатный кроссплатформенный интерфейс программирования приложений (API) с поддержкой аппаратного ускорения, работающий с языком программирования C и рассчитанный на 2D/3D звук. Предоставляет доступ к таким возможностям, как 3D-позиционирование, воспроизведение MIDI. Интерфейс ориентирован на разработчиков мобильной и игровой индустрии, позволяя легко портировать приложения на различные платформы.
Обзор
OpenSL ES включает пять основных возможностей:
- Базовые возможности воспроизведения и записи
- Звуковые 3D-эффекты, включая 3D-позиционирование
- Эффекты «улучшения» звучания, включая усиление НЧ и реверберацию
- Интерактивная музыка и рингтоны с использованием SP-MIDI, Mobile DLS, Mobile XMF
- Очереди буферов
Возможности воспроизведения и записи, а также базовые функции MIDI предоставляются совместно с OpenMAX AL.
Устройство
OpenSL ES использует объектно-ориентированное программирование для предоставления разработчикам доступа к функционалу аудио. Объектная модель является общей с OpenMAX AL, разработчик устройства может принимать решение о реализации одного или обоих интерфейсов. Совместно два API предоставляют доступ к большому набору функций мультимедийного движка устройства.
Задачей создания OpenSL ES было предоставление разработчику приложения доступа к продвинутым возможностям работы со звука, таким как 3D-позиционирование, воспроизведение MIDI при сохранении простоты портирования приложения на другие платформы. Инетрфейс разработан главным образом для мобильной и игровой индустрии.
Профили
Во избежание фрагментации OpenSL ES имеет три профиля:
- Телефон
- Музыка
- Игры
Каждый профиль создан для соответствующих нужд, с определенным набором функционала. Поставщик моет выбирать совместимость только с одним или с любой комбинацией профилей.
Приложение может отправить интерфейсу запрос, чтобы определить, какая именно профили поддерживаются в данной конкретной реализации. Разработчики приложений впоследствии могут проектировать свои программы либо для работы только с общими элементами профилей, либо адаптировать их под доступную функциональность конечного устройства и его внутренних профилей. Разработчики также могут указывать как минимальные, так и оптимальные требования профилей.
Разработка
Владельцем OpenSL ES является некоммерческий технологический консорциум Khronos Group. Нынешним председателем группы разработки OpenSL ES является Эрик Нореке.
Версии спецификации
- OpenSL ES 1.0 — 24 марта 2009
- 1.0.1 — 24 сентября 2009
- OpenSL ES 1.1 — 18 января 2011
Реализации
- OpenSL ES 1.0 является частью NDK Android 2.3
- Полная версия OpenSL ES 1.1 доступна на SRS Labs
Информация от спонсора
Азбука полимеров: полимерное сырье для легкой и тяжелой промышленности. Здесь вы можете недорого заказать сырье полипропилен бален, являющееся экологически чистым, допускаемое к контакту с пищевыми продуктами.