OpenSL ES
Deweloperzy | Kronos Group, Inc. |
---|---|
Wersja stabilna | 1.1 / 18 stycznia 2011
|
System operacyjny | Międzyplatformowe |
Typ | API |
Licencja | Darmowe |
Strona internetowa |
OpenSL ES ( Open Sound Library for Embedded Systems ) to bezpłatne, wieloplatformowe, przyspieszane sprzętowo API audio w języku C dla dźwięku 2D i 3D. Zapewnia dostęp do funkcji, takich jak dźwięk pozycyjny 3D i odtwarzanie MIDI . Jest przeznaczony dla programistów z branży mobilnej i gier i pracuje nad umożliwieniem łatwego przenoszenia aplikacji na wiele platform.
Przegląd
Interfejs API OpenSL ES ma pięć głównych funkcji:
- Podstawowe odtwarzanie i nagrywanie dźwięku
- Efekty dźwiękowe 3D, w tym dźwięk pozycyjny 3D
- Efekty poprawiające wrażenia muzyczne, w tym wzmocnienie basów i pogłos środowiskowy
- Interaktywna muzyka i dzwonki za pomocą SP-MIDI, Mobile DLS, Mobile XMF
- Kolejki buforowe
Funkcje Odtwarzania i Nagrywania Audio oraz Basic MIDI są wspólne z OpenMAX AL .
Projekt
OpenSL ES wykorzystuje projekt zorientowany obiektowo, aby dać twórcom aplikacji dostęp do funkcji audio. Model obiektowy jest współdzielony z OpenMAX AL , a producent urządzenia może zaimplementować jeden lub oba interfejsy API. Razem te dwa interfejsy API dają dostęp do szerokiego zakresu funkcjonalności silnika multimedialnego urządzenia.
Celem projektu OpenSL ES jest zapewnienie twórcom aplikacji dostępu do zaawansowanych funkcji audio, takich jak dźwięk pozycyjny 3D i odtwarzanie MIDI , przy jednoczesnym dążeniu do łatwego przenoszenia aplikacji między producentami i platformami. Jest rozwijany głównie dla twórców aplikacji w branży mobilnej i gier.
Profile
Aby uniknąć fragmentacji, OpenSL ES jest podzielony na trzy profile:
- Telefon
- Muzyka
- Gra
Każdy profil jest przeznaczony do odpowiednich potrzeb urządzenia z określonym zestawem funkcji audio. Dostawca może wybrać zgodność tylko z jednym profilem lub z dowolną kombinacją profili.
Aplikacja może wysłać zapytanie do implementacji OpenSL ES, aby dowiedzieć się, które profile są obsługiwane. Twórca aplikacji może następnie zaprojektować swoją aplikację tak, aby działała tylko z typowymi częściami profili lub dostosowywała się do dostępnej funkcjonalności określonej przez profile w urządzeniu, na którym jest uruchomiona. Twórca aplikacji może również określić zarówno minimalne, jak i optymalne wymagania dotyczące profilu.
Rozwój
OpenSL ES jest zarządzany przez konsorcjum technologiczne non-profit Khronos Group . Obecnym przewodniczącym grupy roboczej OpenSL ES jest Erik Noreke.
Wersje specyfikacji
- Specyfikacja OpenSL ES 1.0 została wydana 24 marca 2009 r.
- Wersja drugorzędna 1.0.1 ukazała się 24 września 2009 r.
- Specyfikacja OpenSL ES 1.1 została wydana 18 stycznia 2011 r.
Implementacje
- Android 2.3 udostępnia OpenSL ES 1.0 jako część ich NDK. Opóźnienie implementacji uległo poprawie w późniejszych wersjach.
- Pełna implementacja OpenSL ES 1.1 jest dostępna w firmie SRS Labs .
Zobacz też
- OpenMAX AL — multimedialny interfejs API na poziomie aplikacji
- OpenAL — zaawansowany interfejs API audio dla komputerów stacjonarnych i urządzeń mobilnych
- Zaawansowane dodatki multimedialne (JSR 234) — API języka Java dla urządzeń mobilnych
Linki zewnętrzne
- Witryna OpenSL ES
- Witryna grupy Khronos
- Rejestr Khronos OpenSL ES API zawierający specyfikacje