OpenAL
# OpenAL

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 Doppler-Effekt erstellen und einbinden, auch Hardwarebeschleunigung wird unterstützt.

## Technische Details

Die OpenAL-Programmierschnittstelle (API) kann und soll als Ergänzung zu den Grafik-APIs OpenGL und OpenCL gesehen werden, daher wurde bei der Entwicklung besonders auf Angleichung von Aufbau, Programmierstil und Namenskonventionen geachtet. Durch die kombinierte Nutzung der beiden Bibliotheken ist eine hohe Portierbarkeit gewährleistet. Ebenso wie bei OpenGL gibt es OpenAL-Implementierungen für zahlreiche Plattformen und Programmiersprachen, die meisten sind in der Programmiersprache C geschrieben.
OpenAL ist als direkter Konkurrent zu Microsofts DirectSound – ein 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. Das Betriebssystem macOS von Apple verwendet für die Audiowiedergabe standardmäßig die OpenAL-Schnittstelle.
Die Implementierung OpenAL Soft für Linux, Windows, Android, OS X, iOS und weitere Betriebssysteme unterliegt der freien und quelloffenen GNU Lesser General Public License.

## Geschichte

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.

## Versionen

| Version | Veröffentlichung | Beschreibung / Änderungen |
| Ältere Version; noch unterstützt: 1.0 | Juni 2000 | erste Veröffentlichung |
| Aktuelle Version: 1.1 | Juni 2005 | Doppler wurde standardisiert |