OpenSL ES

OpenSL ES
Utvecklare Khronos Group, Inc.
Stabil frisättning
1.1 / 18 januari 2011 ; för 12 år sedan ( 2011-01-18 )
Operativ system Cross-plattform
Typ API
Licens Vinstfri
Hemsida www .khronos .org /opensles /

OpenSL ES ( Open Sound Library for Embedded Systems) är ett royaltyfritt, plattformsoberoende, hårdvaruaccelererat, C-språkigt ljud- API för 2D- och 3D-ljud. Den ger tillgång till funktioner som 3D positionsljud och MIDI -uppspelning. Den är gjord för utvecklare inom mobil- och spelindustrin och arbetar för att möjliggöra enkel portering av applikationer över flera plattformar.

Översikt

OpenSL ES API har fem huvudfunktioner:

  • Grundläggande ljuduppspelning och inspelning
  • 3D-ljudeffekter inklusive 3D-positionsljud
  • Musikupplevelse förstärkande effekter inklusive basförstärkning och miljöreverb
  • Interaktiv musik och ringsignaler med SP-MIDI, Mobile DLS, Mobile XMF
  • Buffertköer

Funktionerna för ljuduppspelning och inspelning och Basic MIDI är gemensamma med OpenMAX AL .

Design

OpenSL ES använder en objektorienterad design för att ge applikationsutvecklare tillgång till ljudfunktionaliteten. Objektmodellen delas med OpenMAX AL , och en enhetstillverkare kan välja att implementera en eller båda av API:erna. Tillsammans ger de två API:erna tillgång till ett brett utbud av funktioner i enhetens multimediamotor.

Designmålet med OpenSL ES är att ge applikationsutvecklare tillgång till avancerade ljudfunktioner som 3D positionsljud och MIDI- uppspelning samtidigt som de strävar efter enkel applikationsportering mellan tillverkare och plattformar. Den är utvecklad främst för applikationsutvecklare inom mobil- och spelindustrin.

Profiler

För att undvika fragmentering är OpenSL ES uppdelad i tre profiler:

  • Telefon
  • musik
  • Spel

Varje profil är designad för respektive enhetsbehov med en specifik uppsättning ljudfunktioner. En leverantör kan välja att överensstämma med endast en eller med valfri kombination av profiler.

En applikation kan fråga OpenSL ES-implementeringen för att ta reda på vilka profiler som stöds. Applikationsutvecklaren kan sedan designa sin applikation så att den antingen fungerar med endast de gemensamma delarna av profilerna, eller anpassar sig till den tillgängliga funktionaliteten som ges av profilerna i enheten den körs på. En applikationsutvecklare kan också specificera både lägsta och optimala profilkrav.

Utveckling

OpenSL ES förvaltas av det ideella teknikkonsortiet Khronos Group . Nuvarande ordförande för OpenSL ES-arbetsgruppen är Erik Noreke.

Specifikationsversioner

Genomföranden

  • Android 2.3 exponerar OpenSL ES 1.0 som en del av deras NDK. Latensen för implementeringen har förbättrats i senare utgåvor .
  • En fullständig implementering av OpenSL ES 1.1 är tillgänglig från SRS Labs .

Se även

externa länkar