OpenAL

from Wikipedia, the free encyclopedia
OpenAL

OpenAL logo
Basic data

developer Creative Technology (standard), Strangesoft (implementation)
Publishing year June 2000
Current  version 1.19.1
(October 11, 2018)
operating system platform independent
programming language C.
category API
License LGPL
German speaking No
www.openal.org

OpenAL ( Open A udio L ibrary ) is a platform-independent programming interface for generating three-dimensional sound effects and surround sound , which was mainly created for computer game development , but is also used in a wide variety of audio applications. With OpenAL, sound effects such as surround sound and Doppler effect can be created and integrated, hardware acceleration is also supported.

The further development of the OpenAL standard ceased from version 1.1 from 2006. The software implementation of OpenAL is subject to the free and open source GNU Lesser General Public License and is currently in version 1.19.1.

Technical details

The OpenAL programming interface (API) can and should be seen as a supplement to the graphic APIs OpenGL and OpenCL , which is why particular attention was paid to the alignment of structure, programming style and naming conventions during development. The combined use of the two libraries ensures a high level of portability. As with OpenGL, there are OpenAL implementations for numerous platforms and programming languages, most of which are written in the C programming language.

OpenAL is to be seen as a direct competitor to Microsoft's DirectSound - a component of DirectX . Thanks to its good portability, OpenAL has found widespread use to this day; there are numerous programs and games that use OpenAL. The operating system macOS from Apple uses the OpenAL interface for audio playback by default.

history

The original idea for OpenAL came from Loki Software in 1998 . At that time Loki Software was mainly concerned with porting Windows games to Linux , so the idea was obvious to develop an audio API corresponding to the graphics API OpenGL. Since the first attempts did not produce much, they got in touch with Creative Labs in 1999 to jointly develop a standardized, platform-independent audio API. This collaboration resulted in the OpenAL 1.0 specification in 2000.

The first libraries were released that same year for Linux , Windows, Mac OS 8/9 and BeOS , and a year later Creative Labs released the first library with support for the hardware acceleration of the Sound Blaster Live. However, this only worked on Mac OS 8/9 and Windows. Since then, work has continued on the OpenAL library, and support for additional platforms and audio hardware has been added.

The future development of OpenAL project to be run similar to the OpenGL project: writing the hardware vendor extensions ( extensions ) to OpenAL, which support the latest features of their audio devices. These are checked by an Architecture Review Board (ARB), first converted into standardized extensions and later possibly included in the functional scope of OpenAL.

Supported Platforms

The platforms listed here are fully supported by the OpenAL 1.0 implementation, others are in the works.

platform device License
Mac OS 8/9 Sound manager LGPL
macOS Core Audio LGPL
Linux OSS LGPL
  AS A LGPL
  Enlightened Sound Daemon LGPL
  PulseAudio LGPL
BSD Native LGPL
Solaris Native LGPL
IRIX Native LGPL
Windows MMSystem LGPL
  DirectSound / DirectSound3D LGPL
  Nvidia nForce LGPL
  Creative Audigy / X-Fi Creative Labs
Xbox Native Creative Labs
Xbox 360 Native Creative Labs

Supported programming languages

OpenAL itself is programmed in C , there are implementations / bindings for various programming languages :

language Surname Platforms Binding / implementation
.NET Tao Framework Windows, Linux Binding
.NET OpenTK Windows, Linux, Mac OS, iOS (MonoTouch) Binding
Ada OpenALada Windows ??
C ++ OpenAL ++ Windows, Linux Binding
Ch Ch OpenAL Package Windows, Linux, Mac OS ??
D. Derelict Windows, Linux, Mac OS ??
Object Pascal Delphi OpenAL Windows, Linux ??
Object Pascal openal for Free Pascal Mac OS X, Windows, Linux Binding
FreeBASIC al.bi / alut.bi Windows, Linux Binding
Java JoAL Windows, Linux, Mac OS ??
Java LWJGL Windows, Linux, Mac OS X Binding
Adobe Director OpenAL Xtra Windows, Mac OS ??
PHP openal Windows, Linux, FreeBSD , Mac OS ??
python pyopenal Linux, FreeBSD ??
Scheme ( Chicken ) openal Linux, Mac OS Binding

Applications that use OpenAL

Games

A number of games , both commercial and free , have been developed using the OpenAL library.

game year developer Platform using OpenAL
alter ego 2010 Future Games Windows
America's Army 2002 MOVES Institute Linux, Macintosh, Windows
ArmA: Armed Assault 2006 Bohemia Interactive Windows
A Tale in the Desert II 2004 eGenesis Linux, Macintosh, Windows
Battlefield 2 2005 DICE Sweden Windows
Battlefield 2142 2006 DICE Sweden Windows
BioShock 2007 2K Australia Windows
Bridge Construction Set 2002 Linux, Macintosh, Windows
Call of Juarez 2006 Techland Windows
Colin McRae: Dirt 2007 Codemasters Windows
Colin McRae: DiRT 2 2009 Codemasters Windows
Colin McRae: DiRT III 2011 Codemasters Windows
The Lord of the Rings Online: The Shadows of Angmar 2007 Turbine, Inc. Windows
Doom 3 2004 Id software Macintosh, Windows
Dungeons & Dragons Online 2006 Turbine entertainment Windows
EVE paradox 2004 Entropic software Linux, Windows
El Matador 2006 Plastic Reality Windows
Eternal Lands 2003 Radu Privantu FreeBSD, Linux, Mac OS X, Windows
Euro Truck Simulator 2 2012 SCS software Windows
F1 2010 2010 Codemasters Xbox 360, Playstation 3, Windows
F1 2011 2011 Codemasters Windows
FlightGear FreeBSD, Linux, Macintosh, SGI, Solaris, Windows
Gish 2004 Chronic Logic Linux, Macintosh, Windows
Glest Glest Development Team Linux
Heavy Metal: FAKK² 2000 Ritual entertainment Linux
Star Wars Jedi Knight II: Jedi Outcast 2002 Raven software Macintosh, Windows
Star Wars Jedi Knight: Jedi Academy 2003 Raven software Macintosh, Windows
Just cause 2006 Avalanche Studios Windows
Lineage II 2003 NCsoft Windows
Minecraft 2009 Mojang Windows, Mac OS X, Linux
Myst Online: URU Live 2007 Cyan Worlds Windows
Omerta - City of Gangsters 2013 Kalypso Media Windows
OpenArena 2005 OpenArena team Linux, Mac OS X, Windows
Penumbra: Overture 2007 Frictional Games Linux, Windows
PlaneShift 2008 Atomic Blue Linux, Macintosh, Windows
Postal 2 2003 Running With Scissors, Inc. Linux, Macintosh, Windows
Prey 2006 Human Head Studios Windows
Psychonauts 2005 Double Fine Productions Windows
Quake 4 2005 Raven Software / id Software Windows
Regnum Online 2007 NGD Studios Linux, Windows
rune 2000 Human Head Studios Linux
Scorched 3D 2001 FreeBSD, Linux, Mac OS X, Solaris, Windows
Soldier of Fortune 2000 Raven software Linux
Soldier of Fortune II: Double Helix 2002 Raven software Windows
Stalker: Shadow of Chernobyl 2007 GSC Game World Windows
Star Wars: Republic Commando 2005 LucasArts Windows
Sudden Strike 3: Arms for Victory 2007 Fireglow Games Windows
SuperTux 2000 SuperTux Development Team Linux, Macintosh, Windows
SWAT 4 2005 Irrational Games Windows
Tom Clancy's Ghost Recon: Advanced Warfighter 2006 GRIN Windows
TORCS 2000 Eric Espie and Christophe Guionneau FreeBSD, Linux, Mac OS X, Windows
Tremulous 2006 Linux, Windows
Tribes 2 2001 Dynamix Linux
Unreal II: The Awakening 2003 Legend Entertainment Windows
Unreal Tournament 2003 2002 Digital Extremes , Epic Games Linux, Macintosh, Windows
Unreal Tournament 2004 2004 Digital Extremes , Epic Games Linux, Macintosh, Windows
Unreal Tournament 3 2007 Epic Games Windows
Urban terror 1999 Frozen Sand, LLC Linux, Mac OS X ?, Windows
Vanguard: Saga of Heroes 2007 Sigil Games Online Windows
Vega Strike 2008 The Vega Strike Team Linux, Macintosh, Windows
Wing Commander Saga 2006 Macintosh, Windows
World of Padman 2007 PadWorld Entertainment Linux, Mac OS X, Windows
X²: The threat 2004 Egosoft Linux
X³: reunion 2005 Egosoft Linux, XFree86
X-Plane 2009 Austin Meyer Linux, Macintosh, Windows
Mass Effect 2007 BioWare Windows

Libraries / Engines

OpenAL has now found its way into numerous libraries and engines. The following list shows a small selection:

Web links

Individual evidence

  1. kcat.strangesoft.net
  2. openal.org (PDF)
  3. OpenAL Soft