OpenAL

OpenAL
OpenAL
OpenAL Logo
Entwickler Creative Technology
Aktuelle Version 2.0.7.0
(Sommer 2009)
Betriebssystem plattformunabhängig
Kategorie API
Lizenz LGPL
www.openal.org

OpenAL (Open Audio Library) ist eine plattformunabhängige Programmierschnittstelle zur Erzeugung von dreidimensionalen Soundeffekten und Raumklang, die hauptsächlich für die Computerspielentwicklung geschaffen wurde, aber auch in verschiedensten Audioanwendungen Verwendung findet. Mit OpenAL lassen sich Soundeffekte wie Raumklang und Dopplereffekt erstellen und einbinden, auch Hardwarebeschleunigung wird unterstützt. OpenAL unterliegt in weiten Teilen der freien und quelloffenen GNU Lesser General Public License und liegt aktuell in der Version 2.0 vor.

Die OpenAL-API kann und soll als Ergänzung zur Grafik-API OpenGL und OpenCL gesehen werden, daher wurde bei der Entwicklung besonders auf Angleichung von Aufbau, Programmierstil und Namenskonventionen geachtet. OpenAL ist in der Sprache C geschrieben. Durch die kombinierte Nutzung der beiden Programmbibliotheken ist eine hohe Portierbarkeit gewährleistet. Ebenso wie bei OpenGL gibt es OpenAL-Implementierungen für zahlreiche Plattformen und Programmiersprachen.

OpenAL ist als direkter Konkurrent zu Microsofts DirectSound (Bestandteil von DirectX) anzusehen. Dank der guten Portierbarkeit hat OpenAL bis heute eine weite Verbreitung gefunden, es gibt zahlreiche Programme und Spiele, die OpenAL nutzen. Mac OS X von Apple verwendet für die Soundwiedergabe standardmäßig das OpenAL-Framework.

Inhaltsverzeichnis

Entstehung und weitere Entwicklung

Die ursprüngliche Idee zu OpenAL entstand 1998 bei Loki Software. Loki Software beschäftigte sich zu dieser Zeit hauptsächlich mit der Portierung von Windows-Spielen nach Linux, da lag der Gedanke nahe, eine Audio-API korrespondierend zu der Grafik-API OpenGL zu entwickeln. Da die ersten Versuche nur wenig hervorbrachten, kam man 1999 mit Creative Labs ins Gespräch, um gemeinsam eine standardisierte, plattformunabhängige Audio-API zu entwickeln. Aus dieser Zusammenarbeit entstand im Jahr 2000 die OpenAL-1.0-Spezifikation.

Die ersten Bibliotheken wurden noch im selben Jahr für Linux, Windows, Mac OS 8/9 und BeOS herausgegeben, ein Jahr später veröffentlichte Creative Labs die erste Bibliothek mit Unterstützung der Hardware-Beschleunigung des Sound Blaster Live. Diese arbeitete jedoch nur auf Mac OS 8/9 und Windows. Seither wird beständig an der OpenAL-Bibliothek weitergearbeitet, Unterstützung für weitere Plattformen und Audio-Hardware wurde hinzugefügt.

Die zukünftige Entwicklung des OpenAL-Projekts soll ähnlich ablaufen wie im OpenGL-Projekt: Die Hardwarehersteller schreiben Erweiterungen (Extensions) zu OpenAL, welche auch die neuesten Merkmale ihrer Audiogeräte unterstützen. Diese werden durch ein Architecture Review Board (ARB) geprüft, erst zu standardisierten Erweiterungen umgewandelt und später eventuell in den Funktionsumfang von OpenAL aufgenommen.

Unterstützte Plattformen

Die hier gelisteten Plattformen werden voll von der OpenAL-1.0-Implementierung unterstützt, weitere sind in Arbeit.

Plattform Gerät Lizenz
Mac OS 8/9 Sound Manager LGPL
Mac OS X Core Audio LGPL
Linux OSS LGPL
  ALSA LGPL
  Enlightened Sound Daemon LGPL
  PulseAudio LGPL
BSD Nativ LGPL
Solaris Nativ LGPL
IRIX Nativ LGPL
Windows MMSystem LGPL
  DirectSound/DirectSound3D LGPL
  Nvidia nForce LGPL
  Creative Audigy/X-Fi Creative Labs
Xbox Nativ Creative Labs
Xbox 360 Nativ Creative Labs

Unterstützte Programmiersprachen

OpenAL selbst ist in C programmiert, es existieren Implementierungen/Bindings für verschiedene Programmiersprachen:

Sprache Name Plattformen Binding/Implementierung
.NET Tao Framework Windows, Linux Binding
Ada OpenALada Windows  ??
C++ OpenAL++ Windows, Linux  ??
Ch Ch OpenAL Package Windows, Linux, Mac OS  ??
D Derelict Windows, Linux, Mac OS  ??
Delphi Delphi OpenAL Windows, Linux  ??
FreeBASIC al.bi / alut.bi Windows, Linux Binding
Java JoAL Windows, Linux, Mac OS  ??
Java LWJGL Windows, Linux, Mac OS  ??
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

Anwendungen, die OpenAL nutzen

Spiele

Eine Reihe Spiele, sowohl kommerzielle als auch freie, wurden bereits mit Hilfe der OpenAL-Bibliothek entwickelt.

Spiel Jahr Entwickler OpenAL benutzende Plattform
America’s Army 2002 MOVES Institute Linux, Macintosh, Windows
Armed Assault 2006 Bohemia Interactive Windows
A Tale in the Desert II 2004 eGenesis Linux, Macintosh, Windows
Battlefield 2 2005 DICE Schweden Windows
Battlefield 2142 2006 DICE Schweden 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
Der Herr der Ringe Online: Die Schatten von Angmar 2007 Turbine, Inc. Windows
Doom 3 2004 Id Software Macintosh, Windows
Dungeons & Dragons Online: Stormreach 2006 Turbine Entertainment Windows
E.V.E. Paradox 2004 Entropic Software Linux, Windows
El Matador 2006 Plastic Reality Windows
Eternal Lands 2003 Radu Privantu FreeBSD, Linux, Mac OS X, Windows
FlightGear FreeBSD, Linux, Macintosh, sgi, Solaris, Windows
Gish 2004 Chronic Logic Linux, Macintosh, Windows
Glest Glest Development Team Linux
Heavy Metal: F.A.K.K.² 2000 Ritual Entertainment Linux
Jedi Knight II: Jedi Outcast 2002 Raven Software Macintosh, Windows
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
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 of 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 und 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 Das Vega Strike Team Linux, Macintosh, Windows
Wing Commander Saga 2006 Macintosh, Windows
World of Padman 2007 PadWorld Entertainment Linux, Mac OS X, Windows
X²: Die Bedrohung 2004 Egosoft Linux
X³: Reunion 2005 Egosoft Linux, XFree86
X-Plane 2009 Austin Meyer Linux, Macintosh, Windows

Bibliotheken/Engines

OpenAL hat inzwischen den Weg in zahlreiche Bibliotheken und Engines gefunden. Eine kleine Auswahl zeigt folgende Liste:

Weblinks


Wikimedia Foundation.

Игры ⚽ Нужен реферат?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • OpenAL — Original author(s) Loki Software Developer(s) Creative Technology St …   Wikipedia

  • OpenAL — Тип API Автор Loki Software Разработчик …   Википедия

  • OpenAL — Développeur Creative Technology Dernière version 2.0.7 ( …   Wikipédia en Français

  • OpenAL — OpenAL(Open Audio Library) es una API de audio multiplataforma desarrollada por Creative Labs para el renderizado eficiente de audio posicional y multicanal en tres dimensiones. Está ideada para su uso en videojuegos y el estilo y convenciones… …   Wikipedia Español

  • OpenAL — significa Open Audio Library, lo que en castellano significa: Biblioteca Abierta de Audio. Pretende ser un extensión de OpenGL que provea herramientas para el manejo de audio …   Enciclopedia Universal

  • Java OpenAL — (JOAL) is one of several wrapper libraries that allows Java programmers to access OpenAL. This allows Java programmers to use 3D sound in applications. JOAL is one of the libraries developed by the Game Technology Group at Sun Microsystems. JOAL… …   Wikipedia

  • Environmental audio extensions — The environmental audio extensions (or EAX) are a number of digital signal processing presets for audio, present in Creative Labs later Sound Blaster sound cards and the Creative NOMAD/Creative Zen product lines. EAX displaced the alternative A3D …   Wikipedia

  • DirectSound — is a software component of the Microsoft DirectX library for the Windows operating system. DirectSound provides a low latency interface to the sound card driver and can handle the mixing and recording of multiple audio streams. Besides providing… …   Wikipedia

  • Environmental Audio Extensions — (EAX)  технология Creative Labs для создания звуковых эффектов окружающей среды, используемая в звуковых картах Sound Blaster и Creative NOMAD/Creative Zen. На данный момент последняя версия EAX 5.0 представлена в семействе звуковых карт X… …   Википедия

  • Environmental Audio Extensions — (EAX) ist ein von Creative Labs entwickeltes proprietäres System, das dazu dient, Umgebungsgeräusche in Computerspielen so real wie möglich erscheinen zu lassen. Da jedes Geräusch in verschiedenen Räumen durch Reflexionen an den Wänden etc.… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”