OpenTK.Audio (OpenAL) - jeske/opentk GitHub Wiki

The OpenAL 1.1 Crashcourse will give an introduction how to use OpenAL in your applications. (see OpenAL.org)

OpenAL contains the following classes:

  • AL "Audio Library"
  • Alc "Audio Library Context"
  • Alut "Audio Library Utilities"
  • XRam "Memory Extension"
  • Efx "Effects Extension" OpenAL 1.0 Extensions that were included into 1.1: Multi-Channel Buffer playback Extension, Audio Capture Extension, Enumeration Extension.

It is recommended using these book pages as a starting point, and visit OpenAL.org documentation for in-depth information. Downloading the OpenAL.org SDK is not required, but will provide you with some .wav files to toy around with and a few .pdf files not available directly at the OpenAL.org site.

Regarding compatibility, the "Generic Software" and "Generic Hardware" implementations of the OpenAL driver support OpenAL 1.1 and a few EFX Extensions, namely the Reverb Effect and Lowpass Filter. If the used Device cannot handle EAX natively, the driver will attempt to emulate the missing features. Note that some functions of the OpenAL API are not imported for safety reasons. Rather use .Net's Thread.Sleep than Alut.Sleep, and Alut.CreateBuffer* instead of Alut.LoadMemory*. If this is a Problem, please voice it in the forum.

  1. Devices, Buffers and X-Ram
  2. Sources and EFX
  3. Context and Listener