OpenAL

From DmWiki

OpenAL is an open source, cross platform audio library built in accordance with the OpenGL programming style. OpenAL is designed to fit seamlessly within OpenGL based programs (and to a lesser extent non-OpenGL based programs), and as such follows many of the programming conventions tried and tested in OpenGL.

The most recent version of OpenAL is 1.1 (Beta) and includes various new extensions and bug fixes that build on top of version 1.0


Table of contents

History of OpenAL

In late 1999 Loki Entertainment Software was in need of a cross platform audio API and started to pursue both a specification and a Linux implementation. Loki also started talks with Creative Labs about a standardisation and cross platform approach. In 2000, the OpenAL 1.0 specification was released for Linux, MacOS, windows and BeOS. Creative followed in 2001 with the first hardware accelerated OpenAL audio libraries.

Over the following years various additions and improvements have been made to the standardisation along with various additions to the list of supported platforms. Hardware support for many different Creative and nVidia devices is now also present under the Windows platform.


Supported Platforms

The following is a list of currently supported platforms under OpenAL. Some platforms over the years have lost their relevance, and as such may need to be brought up to date. It is a good idea to check with the platform providers before embarking with OpenAL.

  • Macintosh OS 8/9
  • Macintosh OS X
  • Linux
  • BSD
  • Solaris
  • IRIX
  • Windows
  • Sony PlayStation 2
  • Microsoft Xbox
  • Nintendo GameCube


Licensing Costs

OpenAL is open source and released under the terms of the Lesser General Public Licence (LGPL) and as such is free to use and develop with.


Advantages of Using OpenAL

  • Cost Free: OpenAL has no licensing or development costs associated with it, meaning it can be used by both single, indie and professional development teams
  • Open Source: Free access to the source code means you are constantly working with the most up-to-date library code. All bug fixes can be quickly incorporated into your code without having to waif for official releases.
  • Proven Coding Standard: As OpenAL follows the OpenGL style coding practice, it can make the library easy to understand, especially those confident with OpenGL.


Disadvantages of using OpenAL

  • Relatively New Library: OpenAL is not as mature as other audio libraries. As such, there are various issues and bugs within the library that can cause developers some headaches.
  • Small Development Team: The OpenAL development team is quite small, especially compared to other companies developing audio libraries. This does mean that changes and point releases can be a long time coming.
  • No Native File Support: Aside from ALut (which is depreciated in OpenAL 1.1), there is no native support for any file formats. This means that to use wav files, ogg files or any type of audio file, you have to decode the audio manually, and pass the decoded data to OpenAL.


Games Currently Using OpenAL

Non-Free:

Free (as in speech):

  • Warzone 2100 (http://wz2100.net) (Windows, GNU/Linux and Mac OS)

OpenAL Tutorials

There are many OpenAL tutorials on the Internet, and the OpenAL specification and guide are well written and good for a beginning to get to grips with. The following are some of the best OpenAL tutorials from various sites.


DevMaster navigation