OpenSL ES The Standard for Embedded Audio Acceleration

OpenSL ES™ is a royalty-free, cross-platform, hardware-accelerated audio API tuned for embedded systems. It provides a standardized, high-performance, low-latency method to access audio functionality for developers of native applications on embedded mobile multimedia devices, enabling straightforward cross-platform deployment of hardware and software audio capabilities, reducing implementation effort, and promoting the market for advanced audio.

OpenSL ES 1.1 at a glance

The OpenSL ES 1.1 specification and header files are available in the Khronos Registry
The OpenSL ES 1.1 Reference card.

OpenSL ES 1.0.1 at a glance

The OpenSL ES 1.0.1 specification and header files are available in the Khronos Registry

The need for OpenSL ES

Currently the market offers a diversified range of multimedia devices and fragmentation in the developer space is high. Application developers are constantly porting their audio source code across several proprietary APIs. Just playing a simple sound on different platforms requires different code. OpenSL ES addresses the limitations of platform and provides additional tangible benefits:

OpenSL ES Features

Features of OpenSL ES

  • Royalty-free, open audio application API for embedded mobile multimedia devices
  • Suitable for both hardware and software implementations
  • Application-oriented "developer" API that standardizes access to advanced audio functionality:
    • Mandated audio format across platforms providing consistency for developers, with support for optional formats
    • Interactive music and ringtones using SP-MIDI, Mobile DLS, Mobile XMF
    • 3D positional audio provided for gaming using OpenGL ES
  • Cross-platform foundation for a wide range of higher-level audio APIs including: Mobile Media API (JSR-135); Advanced Multimedia Supplements (JSR-234)
  • Extensible to handle new capabilities
  • Profiles (subset of features satisfying typical use cases for a given market segment) will allow market segement targeting

Target Applications

  • Gaming
  • Multimedia interactive applications (Mixers, composers, DJ apps)
  • Interactive audio
  • 3D audio
  • Music playback, including digital audio
  • Ring-tone playback
  • Recording: access to the audio inputs (e.g. microphone input)
  • Device UI audio support

Target Devices

  • Mobile phones (simple phones to music and game-phones)
  • Smart-phones & PDAs
  • Portable game consoles
  • Portable multimedia players/devices (e.g. MP3 players, i/net tablets etc...)

Target devices minimum requirements: 8MB of RAM; 100MHz embedded processor(s) ; Handheld form factor, supports applications; Audio output via speaker(s), headset/headphone; Networking support for streaming: wireless, Bluetooth;

where OpenSL ES fits in the developer world

Profiles

OpenSL ES will be deployed on a wide range of devices catering to different market segments. The profiles are: Phone, Music and Game.

Game Profile
Targeted at the game-centric mobile device market : Advanced MIDI functionality, sophisticated audio capabilities such as 3D audio, audio effects, ability to handle buffers of audio, etc

Music Profile
Targeted at the music-centric mobile device market - High quality audio, ability to support multiple music audio codecs, audio streaming support

Phone Profile
Targeted at the basic mobile phone market - Includes ringtone and alert tone playback (i.e. basic MIDI functionality), basic audio playback and record functionality, and simple 2D audio games.

profiles
safety