OpenAL
OpenAL
|
|
---|---|
![]() |
|
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:
- Lightweight Java Game Library (LWJGL)
- Unreal Engine
- Torque game engine
- Classical Moon Game Development Kit
Web links
- OpenAL in the DGL Wiki
- Dan Ricart Tutorial Programming 3D Sound With OpenAL . (English)
- Lee Winder: Tutorial A Guide To Starting With OpenAL . (English)
Individual evidence
- ↑ kcat.strangesoft.net
- ↑ openal.org (PDF)
- ↑ OpenAL Soft