Clever Geek Handbook
📜 ⬆️ ⬇️

Openal

OpenAL ( English Open A udio L ibrary ) is a cross-platform application programming interface (API) for working with audio data. A key feature is working with sound in 3D space and the use of EAX effects. Supported by Creative .

Openal
OpenAL logo.png
Type ofAPI
AuthorLoki software
DeveloperCreative technology
Written on
operating systemCross platform
First edition
Latest version2.1.0.0 ( November , 2009 )
License
Website

Content

  • 1 History
  • 2 Structure and Functionality
  • 3 Implementations
  • 4 Applications
  • 5 See also
  • 6 notes
  • 7 Literature
  • 8 References

History

OpenAL was created by Loki Software as a tool for their business - porting games from Microsoft Windows to GNU / Linux . After the company was closed, the project was developed for some time by the free software community - it added the functionality of a sound chipset built into NVIDIA nForce . Today, the project is hosted on the server of Creative Technology , and for the most part is being developed by it.

After the release of the specification version 1.1, the original OpenAL implementation was closed; instead, it is proposed to use a proprietary implementation developed by Creative. In response to this, the free software community created its own implementation based on the preserved source code of the original implementation. [3]

Although the OpenAL charter states that the project should have an “Architectural Supervisory Board” (ARB) similar to the OpenGL ARB project, so far no organization has undertaken to formulate a standard for OpenAL technical specifications. OpenAL specifications exist in draft form and are discussed by developers via email and on public mailing lists.

Structure and Functionality

The main functions of the OpenAL library are source objects , audio buffers , and a single listener . The source objects include a pointer to the buffer, speed, position, direction and intensity of the sound. The listener contains the speed, position, direction and overall amplification of the sound as a whole. The buffers contain audio data in PCM format in 8 or 16-bit version, as well as in mono or stereo . The sound rendering function performs the necessary calculations, such as determining the distance, the Doppler effect , and so on.

For the end user, the result of processing these components of OpenAL gives a completely natural sound when moving characters in a three-dimensional virtual world. And the programmer can easily use OpenAL in his finished three-dimensional OpenGL program.

Unlike the OpenGL specifications, the OpenAL specifications include two APIs : the kernel, which includes calls to OpenAL functions, and the ALC (Audio Library Context), an API used to control the rendering context, control resource usage, and use locks in multi-threaded computing. ALUT also exists - a library that provides high-level functions to simplify the writing of a program; it is similar to the GLUT library in OpenGL.

We expand OpenAL: programmers, or companies that are not among the OpenAL developers, can add their extensions to it. For example, in order to “teach” the library to use the functions of its devices with closed specifications. Extensions can be upgraded to the level of ARB, that is, to enter the OpenAL specification in its new version.

For advanced digital signal processing or hardware-accelerated sound, EFX (Effects Extension) or EAX can be used.

Implementations

Openal si
OpenAL Sample Implementation - The original open source implementation (BSD license) is not currently available.
Creative openal
Creative OpenAL is an implementation from Creative that replaces OpenAL SI.
Openal soft
OpenAL Soft is an open source implementation (LGPL license) supported by an independent development team. Based on OpenAL SI. [3]

Applications

Games [4] :

  • Armed Assault from Bohemia Interactive Studio .
  • On id Tech engines versions 3 and 4 : Doom 3 , Enemy Territory: Quake Wars , Jedi Knight: Jedi Academy , Jedi Knight 2 , Prey , Quake 4 and Wolfenstein .
  • On the Unreal Engine : America's Army , Postal 2 , Unreal 2 , Unreal Tournament 2003 , Unreal Tournament 2004 and Unreal Tournament 3 .
  • Battlefield 2 , Battlefield 2142 , Colin McRae: DiRT , Colin McRae: Dirt 2 , F1 2010 , Freedom Fighters , Hitman , Homefront , Hotline Miami , Penumbra: Black Plague , Psychonauts , Race Driver: GRID , Sacred 2 , STALKER and Wurm Online .
  • Various free software and open source games. For example, FlightGear , Osmos , SuperTuxKart , Warsow, and Warzone 2100 .

Other applications:

  • Blender is a 3D modeling and rendering tool that uses OpenAL in the integrated game engine.
  • Unity is a three-dimensional game engine and development environment.
  • Media players SMPlayer , UMPlayer and other shells, such as, for example, MPlayer .

See also

  • Opengl
  • GLUT
  • OpenSL ES
  • Opencl
  • Bass
  • FMOD

Notes

  1. ↑ The openal Open Source Project on Open Hub: Languages ​​Page - 2006.
    <a href=" https://wikidata.org/wiki/Track:Q124688 "> </a> <a href=" https://wikidata.org/wiki/Track:P1972 "> </a>
  2. ↑ The openal Open Source Project on Open Hub: Licenses Page - 2006.
    <a href=" https://wikidata.org/wiki/Track:Q124688 "> </a> <a href=" https://wikidata.org/wiki/Track:P1972 "> </a>
  3. ↑ 1 2 OpenAL Soft - Software 3D Audio (unspecified) .
  4. ↑ Games that use OpenAL

Literature

  • Martin D. Wilde. Audio Programming for Interactive Games. - Focal Press, 2004 .-- 200 p. - ISBN 978-0-240-51941-8 .
  • Peter Bakhirev; PJ Cabrera; Ian Marsh; Scott Penberthy; Ben Britten Smith; Eric Wing. Chapter 10. Making Noise with OpenAL // Beginning iPhone Games Development. - Apress, 2010 .-- 727 p. - ISBN 978-1-4302-2599-7 .

Links

  • OpenAL Software
  • OpenAL Training at DevMaster.net
Source - https://ru.wikipedia.org/w/index.php?title=OpenAL&oldid=99146298


More articles:

  • Atletico Madrid
  • Steppe
  • Russian Sambo Championship 2019
  • Glasgow Green
  • Church of the Nativity (Krokhino)
  • Schmelcher, Willy
  • Count of Poussin
  • Lugovoi (Chesmensky district)
  • Dolphin Smalltalk
  • Rio Mayo

All articles

Clever Geek | 2019