Copyright (C) 2025 Dylan Perks and Contributors
This file, al.xml, is the OpenAL API Registry. The canonical version of the registry, together with
documentation and Python generator scripts used to generate C header files for OpenAL, can always be found in
the OpenAL Soft repository at https://github.com/kcat/openal-soft.
This file is based upon the following documents and reproduces the same copyright notice:
- OpenAL Specification and Reference v1.0 Draft Edition (Published June 2000)
Copyright (C) 1999-2000 by Loki Software
- OpenAL Specification and Reference v1.1 (Published June 2005)
Copyright (C) 2005 by authors
In addition, this file is based on OpenAL Soft, and makes use of only numerical parameters, data structure
layouts and accessors, and small macros and small inline functions (ten lines or less in length) in accordance
with the Lesser General Public License v2.0. Usage of this file alone is unencumbered by LGPL and does not
attract the copyleft provisions thereof.
Permission is granted to make and distribute verbatim copies of this file provided the copyright notice and this
permission notice are preserved on all copies.
Permission is granted to copy and distribute translations of this file into another language, under the above
conditions for modified versions, except that this permission notice may be stated in a translation approved by
the copyright owners.
#define OPENAL
#define ALAPI AL_API
#define ALAPIENTRY AL_APIENTRY
typedef char ALboolean;
typedef char ALchar;
typedef signed char ALbyte;
typedef unsigned char ALubyte;
typedef short ALshort;
typedef unsigned short ALushort;
typedef int ALint;
typedef unsigned int ALuint;
typedef int ALsizei;
typedef int ALenum;
typedef float ALfloat;
typedef double ALdouble;
typedef void ALvoid;
struct _GUID;
#define ALC_EXT_CAPTURE 1
#define ALC_ENUMERATE_ALL_EXT 1
typedef alsoft_impl_int64_t ALint64SOFT;
typedef alsoft_impl_uint64_t ALuint64SOFT;
#define AL_EXT_FOLDBACK_NAME "AL_EXT_FOLDBACK"
typedef void (AL_APIENTRY*LPALFOLDBACKCALLBACK)(ALenum,ALsizei) AL_API_NOEXCEPT17;
typedef void (AL_APIENTRY*ALEVENTPROCSOFT)(ALenum eventType, ALuint object, ALuint param,
ALsizei length, const ALchar *message, void *userParam) AL_API_NOEXCEPT17;
typedef ALsizei (AL_APIENTRY*ALBUFFERCALLBACKTYPESOFT)(ALvoid *userptr, ALvoid *sampledata, ALsizei numbytes) AL_API_NOEXCEPT17;
typedef void (AL_APIENTRY*ALDEBUGPROCEXT)(ALenum source, ALenum type, ALuint id, ALenum severity, ALsizei length, const ALchar *message, void *userParam) AL_API_NOEXCEPT17;
#define ALCAPI ALC_API
#define ALCAPIENTRY ALC_APIENTRY
#define ALC_VERSION_0_1 1
typedef struct ALCdevice ALCdevice;
typedef struct ALCcontext ALCcontext;
typedef char ALCboolean;
typedef char ALCchar;
typedef signed char ALCbyte;
typedef unsigned char ALCubyte;
typedef short ALCshort;
typedef unsigned short ALCushort;
typedef int ALCint;
typedef unsigned int ALCuint;
typedef int ALCsizei;
typedef int ALCenum;
typedef float ALCfloat;
typedef double ALCdouble;
typedef void ALCvoid;
typedef alsoft_impl_int64_t ALCint64SOFT;
typedef alsoft_impl_uint64_t ALCuint64SOFT;
#define ALC_EXT_EFX_NAME "ALC_EXT_EFX"
typedef void (ALC_APIENTRY*ALCEVENTPROCTYPESOFT)(ALCenum eventType, ALCenum deviceType,
ALCdevice *device, ALCsizei length, const ALCchar *message, void *userParam) ALC_API_NOEXCEPT17;
Specifies if the source uses relative coordinates.
The angle covered by the inner cone, the area within which the source will
not be attenuated by direction.
The angle covered by the outer cone, the area outside of which the source
will be fully attenuated by direction.
A multiplier for the sample rate of the source's buffer.
The source or listener location in three dimensional space.
OpenAL uses a right handed coordinate system, like OpenGL, where with a
default view, X points right (thumb), Y points up (index finger), and Z
points towards the viewer/camera (middle finger).
To change from or to a left handed coordinate system, negate the Z
component.
Specifies the current direction in local space. A zero-length vector
specifies an omni-directional source (cone is ignored).
To change from or to a left handed coordinate system, negate the Z
component.
Specifies the current velocity, relative to the position.
To change from or to a left handed coordinate system, negate the Z
component.
Specifies whether source playback loops.
Specifies the buffer to provide sound samples for a source.
For sources, an initial linear gain value (before attenuation is applied).
For the listener, an output linear gain adjustment.
A value of 1.0 means unattenuated. Each division by 2 equals an attenuation
of about -6dB. Each multiplication by 2 equals an amplification of about
+6dB.
The minimum gain allowed for a source, after distance and cone attenuation
are applied (if applicable).
The maximum gain allowed for a source, after distance and cone attenuation
are applied (if applicable).
Effectively two three dimensional vectors. The first vector is the front (or
"at") and the second is the top (or "up"). Both vectors are relative to the
listener position.
To change from or to a left handed coordinate system, negate the Z
component of both vectors.
The number of buffers queued using alSourceQueueBuffers, minus the buffers
removed with alSourceUnqueueBuffers.
The number of queued buffers that have been fully processed, and can be
removed with alSourceUnqueueBuffers.
Looping sources will never fully process buffers because they will be set to
play again for when the source loops.
The distance in units that no distance attenuation occurs.
At 0.0, no distance attenuation occurs with non-linear attenuation models.
Multiplier to exaggerate or diminish distance attenuation.
At 0.0, no distance attenuation ever occurs.
The gain attenuation applied when the listener is outside of the source's
outer cone angle.
The distance above which the source is not attenuated any further with a
clamped distance model, or where attenuation reaches 0.0 gain for linear
distance models with a default rolloff factor.
A Source is Static if a Buffer has been attached using AL_BUFFER.
A Source is Streaming if one or more Buffers have been attached using
alSourceQueueBuffers.
A Source is Undetermined when it has the NULL buffer attached using
AL_BUFFER.
Scale for source and listener velocities.
A multiplier applied to the Speed of Sound.
The speed at which sound waves are assumed to travel, when calculating the
doppler effect from source and listener velocities.
The model by which sources attenuate with distance.
None - No distance attenuation.
Inverse - Doubling the distance halves the source gain.
Linear - Linear gain scaling between the reference and max distances.
Exponent - Exponential gain dropoff.
Clamped variations work like the non-clamped counterparts, except the
distance calculated is clamped between the reference and max distances.
Device specifier string.
If device handle is NULL, it is instead a null-character separated list of
strings of known device specifiers (list ends with an empty string).
Capture specifier string.
If device handle is NULL, it is instead a null-character separated list of
strings of known device specifiers (list ends with an empty string).
Device's extended specifier string.
If device handle is NULL, it is instead a null-character separated list of
strings of known extended device specifiers (list ends with an empty string).
void alEnable
ALenum capability
void alDisable
ALenum capability
ALboolean alIsEnabled
ALenum capability
void alDopplerFactor
ALfloat value
void alDopplerVelocity
ALfloat value
void alSpeedOfSound
ALfloat value
void alDistanceModel
ALenum distanceModel
const ALchar* alGetString
ALenum param
void alGetBooleanv
ALenum param
ALboolean *values
void alGetIntegerv
ALenum param
ALint *values
void alGetFloatv
ALenum param
ALfloat *values
void alGetDoublev
ALenum param
ALdouble *values
ALboolean alGetBoolean
ALenum param
ALint alGetInteger
ALenum param
ALfloat alGetFloat
ALenum param
ALdouble alGetDouble
ALenum param
Obtain the first error generated in the AL context since the last call to
this function.
ALenum alGetError
ALboolean alIsExtensionPresent
const ALchar *extname
Retrieve the address of a function. The returned function may be context-
specific.
void* alGetProcAddress
const ALchar *fname
Retrieve the value of an enum. The returned value may be context-specific.
ALenum alGetEnumValue
const ALchar *ename
void alListenerf
ALenum param
ALfloat value
void alListener3f
ALenum param
ALfloat value1
ALfloat value2
ALfloat value3
void alListenerfv
ALenum param
const ALfloat *values
void alListeneri
ALenum param
ALint value
void alListener3i
ALenum param
ALint value1
ALint value2
ALint value3
void alListeneriv
ALenum param
const ALint *values
void alGetListenerf
ALenum param
ALfloat *value
void alGetListener3f
ALenum param
ALfloat *value1
ALfloat *value2
ALfloat *value3
void alGetListenerfv
ALenum param
ALfloat *values
void alGetListeneri
ALenum param
ALint *value
void alGetListener3i
ALenum param
ALint *value1
ALint *value2
ALint *value3
void alGetListeneriv
ALenum param
ALint *values
void alGenSources
ALsizei n
ALuint *sources
void alDeleteSources
ALsizei n
const ALuint *sources
ALboolean alIsSource
ALuint source
void alSourcef
ALuint source
ALenum param
ALfloat value
void alSource3f
ALuint source
ALenum param
ALfloat value1
ALfloat value2
ALfloat value3
void alSourcefv
ALuint source
ALenum param
const ALfloat *values
void alSourcei
ALuint source
ALenum param
ALint value
void alSource3i
ALuint source
ALenum param
ALint value1
ALint value2
ALint value3
void alSourceiv
ALuint source
ALenum param
const ALint *values
void alGetSourcef
ALuint source
ALenum param
ALfloat *value
void alGetSourcefv
ALuint source
ALenum param
ALfloat *values
void alGetSourcei
ALuint source
ALenum param
ALint *value
void alGetSourceiv
ALuint source
ALenum param
ALint *values
void alGetSource3i
ALuint source
ALenum param
ALint *value1
ALint *value2
ALint *value3
void alGetSource3f
ALuint source
ALenum param
ALfloat *value1
ALfloat *value2
ALfloat *value3
void alSourcePlay
ALuint source
void alSourceStop
ALuint source
void alSourceRewind
ALuint source
void alSourcePause
ALuint source
void alSourcePlayv
ALsizei n
const ALuint *sources
void alSourceStopv
ALsizei n
const ALuint *sources
void alSourceRewindv
ALsizei n
const ALuint *sources
void alSourcePausev
ALsizei n
const ALuint *sources
void alSourceQueueBuffers
ALuint source
ALsizei nb
const ALuint *buffers
void alSourceUnqueueBuffers
ALuint source
ALsizei nb
ALuint *buffers
void alGenBuffers
ALsizei n
ALuint *buffers
void alDeleteBuffers
ALsizei n
const ALuint *buffers
ALboolean alIsBuffer
ALuint buffer
Copies data into the buffer, interpreting it using the specified format and
samplerate.
void alBufferData
ALuint buffer
ALenum format
const ALvoid *data
ALsizei size
ALsizei samplerate
void alBufferf
ALuint buffer
ALenum param
ALfloat value
void alBuffer3f
ALuint buffer
ALenum param
ALfloat value1
ALfloat value2
ALfloat value3
void alBufferfv
ALuint buffer
ALenum param
const ALfloat *values
void alBufferi
ALuint buffer
ALenum param
ALint value
void alBuffer3i
ALuint buffer
ALenum param
ALint value1
ALint value2
ALint value3
void alBufferiv
ALuint buffer
ALenum param
const ALint *values
void alGetBufferf
ALuint buffer
ALenum param
ALfloat *value
void alGetBufferfv
ALuint buffer
ALenum param
ALfloat *values
void alGetBufferi
ALuint buffer
ALenum param
ALint *value
void alGetBufferiv
ALuint buffer
ALenum param
ALint *values
void alGetBuffer3i
ALuint buffer
ALenum param
ALint *value1
ALint *value2
ALint *value3
void alGetBuffer3f
ALuint buffer
ALenum param
ALfloat *value1
ALfloat *value2
ALfloat *value3
void alBufferDataStatic
ALuint buffer
ALenum format
ALvoid *data
ALsizei size
ALsizei freq
void alGenEffects
ALsizei n
ALuint *effects
void alDeleteEffects
ALsizei n
const ALuint *effects
ALboolean alIsEffect
ALuint effect
void alEffecti
ALuint effect
ALenum param
ALint iValue
void alEffectiv
ALuint effect
ALenum param
const ALint *piValues
void alEffectf
ALuint effect
ALenum param
ALfloat flValue
void alEffectfv
ALuint effect
ALenum param
const ALfloat *pflValues
void alGetEffecti
ALuint effect
ALenum param
ALint *iValue
void alGetEffectiv
ALuint effect
ALenum param
ALint *piValues
void alGetEffectf
ALuint effect
ALenum param
ALfloat *flValue
void alGetEffectfv
ALuint effect
ALenum param
ALfloat *pflValues
void alGenFilters
ALsizei n
ALuint *filters
void alDeleteFilters
ALsizei n
const ALuint *filters
ALboolean alIsFilter
ALuint filter
void alFilteri
ALuint filter
ALenum param
ALint iValue
void alFilteriv
ALuint filter
ALenum param
const ALint *piValues
void alFilterf
ALuint filter
ALenum param
ALfloat flValue
void alFilterfv
ALuint filter
ALenum param
const ALfloat *pflValues
void alGetFilteri
ALuint filter
ALenum param
ALint *iValue
void alGetFilteriv
ALuint filter
ALenum param
ALint *piValues
void alGetFilterf
ALuint filter
ALenum param
ALfloat *flValue
void alGetFilterfv
ALuint filter
ALenum param
ALfloat *pflValues
void alGenAuxiliaryEffectSlots
ALsizei n
ALuint *effectslots
void alDeleteAuxiliaryEffectSlots
ALsizei n
const ALuint *effectslots
ALboolean alIsAuxiliaryEffectSlot
ALuint effectslot
void alAuxiliaryEffectSloti
ALuint effectslot
ALenum param
ALint iValue
void alAuxiliaryEffectSlotiv
ALuint effectslot
ALenum param
const ALint *piValues
void alAuxiliaryEffectSlotf
ALuint effectslot
ALenum param
ALfloat flValue
void alAuxiliaryEffectSlotfv
ALuint effectslot
ALenum param
const ALfloat *pflValues
void alGetAuxiliaryEffectSloti
ALuint effectslot
ALenum param
ALint *iValue
void alGetAuxiliaryEffectSlotiv
ALuint effectslot
ALenum param
ALint *piValues
void alGetAuxiliaryEffectSlotf
ALuint effectslot
ALenum param
ALfloat *flValue
void alGetAuxiliaryEffectSlotfv
ALuint effectslot
ALenum param
ALfloat *pflValues
void alBufferSubDataSOFT
ALuint buffer
ALenum format
const ALvoid *data
ALsizei offset
ALsizei length
void alRequestFoldbackStart
ALenum mode
ALsizei count
ALsizei length
ALfloat *mem
LPALFOLDBACKCALLBACK callback
void alRequestFoldbackStop
void alBufferSamplesSOFT
ALuint buffer
ALuint samplerate
ALenum internalformat
ALsizei samples
ALenum channels
ALenum type
const ALvoid *data
void alBufferSubSamplesSOFT
ALuint buffer
ALsizei offset
ALsizei samples
ALenum channels
ALenum type
const ALvoid *data
void alGetBufferSamplesSOFT
ALuint buffer
ALsizei offset
ALsizei samples
ALenum channels
ALenum type
ALvoid *data
ALboolean alIsBufferFormatSupportedSOFT
ALenum format
void alSourcedSOFT
ALuint source
ALenum param
ALdouble value
void alSource3dSOFT
ALuint source
ALenum param
ALdouble value1
ALdouble value2
ALdouble value3
void alSourcedvSOFT
ALuint source
ALenum param
const ALdouble *values
void alGetSourcedSOFT
ALuint source
ALenum param
ALdouble *value
void alGetSource3dSOFT
ALuint source
ALenum param
ALdouble *value1
ALdouble *value2
ALdouble *value3
void alGetSourcedvSOFT
ALuint source
ALenum param
ALdouble *values
void alSourcei64SOFT
ALuint source
ALenum param
ALint64SOFT value
void alSource3i64SOFT
ALuint source
ALenum param
ALint64SOFT value1
ALint64SOFT value2
ALint64SOFT value3
void alSourcei64vSOFT
ALuint source
ALenum param
const ALint64SOFT *values
void alGetSourcei64SOFT
ALuint source
ALenum param
ALint64SOFT *value
void alGetSource3i64SOFT
ALuint source
ALenum param
ALint64SOFT *value1
ALint64SOFT *value2
ALint64SOFT *value3
void alGetSourcei64vSOFT
ALuint source
ALenum param
ALint64SOFT *values
void alDeferUpdatesSOFT
void alProcessUpdatesSOFT
const ALchar* alGetStringiSOFT
ALenum pname
ALsizei index
void alEventControlSOFT
ALsizei count
const ALenum *types
ALboolean enable
void alEventCallbackSOFT
ALEVENTPROCSOFT callback
void *userParam
void* alGetPointerSOFT
ALenum pname
void alGetPointervSOFT
ALenum pname
void **values
void alBufferCallbackSOFT
ALuint buffer
ALenum format
ALsizei freq
ALBUFFERCALLBACKTYPESOFT callback
ALvoid *userptr
void alGetBufferPtrSOFT
ALuint buffer
ALenum param
ALvoid **ptr
void alGetBuffer3PtrSOFT
ALuint buffer
ALenum param
ALvoid **ptr0
ALvoid **ptr1
ALvoid **ptr2
void alGetBufferPtrvSOFT
ALuint buffer
ALenum param
ALvoid **ptr
void alSourcePlayAtTimeSOFT
ALuint source
ALint64SOFT start_time
void alSourcePlayAtTimevSOFT
ALsizei n
const ALuint *sources
ALint64SOFT start_time
void alDebugMessageCallbackEXT
ALDEBUGPROCEXT callback
void *userParam
void alDebugMessageInsertEXT
ALenum source
ALenum type
ALuint id
ALenum severity
ALsizei length
const ALchar *message
void alDebugMessageControlEXT
ALenum source
ALenum type
ALenum severity
ALsizei count
const ALuint *ids
ALboolean enable
void alPushDebugGroupEXT
ALenum source
ALuint id
ALsizei length
const ALchar *message
void alPopDebugGroupEXT
ALuint alGetDebugMessageLogEXT
ALuint count
ALsizei logBufSize
ALenum *sources
ALenum *types
ALuint *ids
ALenum *severities
ALsizei *lengths
ALchar *logBuf
void alObjectLabelEXT
ALenum identifier
ALuint name
ALsizei length
const ALchar *label
void alGetObjectLabelEXT
ALenum identifier
ALuint name
ALsizei bufSize
ALsizei *length
ALchar *label
void* alGetPointerEXT
ALenum pname
void alGetPointervEXT
ALenum pname
void **values
void alEnableDirect
ALCcontext *context
ALenum capability
void alDisableDirect
ALCcontext *context
ALenum capability
ALboolean alIsEnabledDirect
ALCcontext *context
ALenum capability
void alDopplerFactorDirect
ALCcontext *context
ALfloat value
void alSpeedOfSoundDirect
ALCcontext *context
ALfloat value
void alDistanceModelDirect
ALCcontext *context
ALenum distanceModel
const ALchar* alGetStringDirect
ALCcontext *context
ALenum param
void alGetBooleanvDirect
ALCcontext *context
ALenum param
ALboolean *values
void alGetIntegervDirect
ALCcontext *context
ALenum param
ALint *values
void alGetFloatvDirect
ALCcontext *context
ALenum param
ALfloat *values
void alGetDoublevDirect
ALCcontext *context
ALenum param
ALdouble *values
ALboolean alGetBooleanDirect
ALCcontext *context
ALenum param
ALint alGetIntegerDirect
ALCcontext *context
ALenum param
ALfloat alGetFloatDirect
ALCcontext *context
ALenum param
ALdouble alGetDoubleDirect
ALCcontext *context
ALenum param
ALenum alGetErrorDirect
ALCcontext *context
ALboolean alIsExtensionPresentDirect
ALCcontext *context
const ALchar *extname
void* alGetProcAddressDirect
ALCcontext *context
const ALchar *fname
ALenum alGetEnumValueDirect
ALCcontext *context
const ALchar *ename
void alListenerfDirect
ALCcontext *context
ALenum param
ALfloat value
void alListener3fDirect
ALCcontext *context
ALenum param
ALfloat value1
ALfloat value2
ALfloat value3
void alListenerfvDirect
ALCcontext *context
ALenum param
const ALfloat *values
void alListeneriDirect
ALCcontext *context
ALenum param
ALint value
void alListener3iDirect
ALCcontext *context
ALenum param
ALint value1
ALint value2
ALint value3
void alListenerivDirect
ALCcontext *context
ALenum param
const ALint *values
void alGetListenerfDirect
ALCcontext *context
ALenum param
ALfloat *value
void alGetListener3fDirect
ALCcontext *context
ALenum param
ALfloat *value1
ALfloat *value2
ALfloat *value3
void alGetListenerfvDirect
ALCcontext *context
ALenum param
ALfloat *values
void alGetListeneriDirect
ALCcontext *context
ALenum param
ALint *value
void alGetListener3iDirect
ALCcontext *context
ALenum param
ALint *value1
ALint *value2
ALint *value3
void alGetListenerivDirect
ALCcontext *context
ALenum param
ALint *values
void alGenSourcesDirect
ALCcontext *context
ALsizei n
ALuint *sources
void alDeleteSourcesDirect
ALCcontext *context
ALsizei n
const ALuint *sources
ALboolean alIsSourceDirect
ALCcontext *context
ALuint source
void alSourcefDirect
ALCcontext *context
ALuint source
ALenum param
ALfloat value
void alSource3fDirect
ALCcontext *context
ALuint source
ALenum param
ALfloat value1
ALfloat value2
ALfloat value3
void alSourcefvDirect
ALCcontext *context
ALuint source
ALenum param
const ALfloat *values
void alSourceiDirect
ALCcontext *context
ALuint source
ALenum param
ALint value
void alSource3iDirect
ALCcontext *context
ALuint source
ALenum param
ALint value1
ALint value2
ALint value3
void alSourceivDirect
ALCcontext *context
ALuint source
ALenum param
const ALint *values
void alGetSourcefDirect
ALCcontext *context
ALuint source
ALenum param
ALfloat *value
void alGetSource3fDirect
ALCcontext *context
ALuint source
ALenum param
ALfloat *value1
ALfloat *value2
ALfloat *value3
void alGetSourcefvDirect
ALCcontext *context
ALuint source
ALenum param
ALfloat *values
void alGetSourceiDirect
ALCcontext *context
ALuint source
ALenum param
ALint *value
void alGetSource3iDirect
ALCcontext *context
ALuint source
ALenum param
ALint *value1
ALint *value2
ALint *value3
void alGetSourceivDirect
ALCcontext *context
ALuint source
ALenum param
ALint *values
void alSourcePlayDirect
ALCcontext *context
ALuint source
void alSourceStopDirect
ALCcontext *context
ALuint source
void alSourceRewindDirect
ALCcontext *context
ALuint source
void alSourcePauseDirect
ALCcontext *context
ALuint source
void alSourcePlayvDirect
ALCcontext *context
ALsizei n
const ALuint *sources
void alSourceStopvDirect
ALCcontext *context
ALsizei n
const ALuint *sources
void alSourceRewindvDirect
ALCcontext *context
ALsizei n
const ALuint *sources
void alSourcePausevDirect
ALCcontext *context
ALsizei n
const ALuint *sources
void alSourceQueueBuffersDirect
ALCcontext *context
ALuint source
ALsizei nb
const ALuint *buffers
void alSourceUnqueueBuffersDirect
ALCcontext *context
ALuint source
ALsizei nb
ALuint *buffers
void alGenBuffersDirect
ALCcontext *context
ALsizei n
ALuint *buffers
void alDeleteBuffersDirect
ALCcontext *context
ALsizei n
const ALuint *buffers
ALboolean alIsBufferDirect
ALCcontext *context
ALuint buffer
void alBufferDataDirect
ALCcontext *context
ALuint buffer
ALenum format
const ALvoid *data
ALsizei size
ALsizei samplerate
void alBufferfDirect
ALCcontext *context
ALuint buffer
ALenum param
ALfloat value
void alBuffer3fDirect
ALCcontext *context
ALuint buffer
ALenum param
ALfloat value1
ALfloat value2
ALfloat value3
void alBufferfvDirect
ALCcontext *context
ALuint buffer
ALenum param
const ALfloat *values
void alBufferiDirect
ALCcontext *context
ALuint buffer
ALenum param
ALint value
void alBuffer3iDirect
ALCcontext *context
ALuint buffer
ALenum param
ALint value1
ALint value2
ALint value3
void alBufferivDirect
ALCcontext *context
ALuint buffer
ALenum param
const ALint *values
void alGetBufferfDirect
ALCcontext *context
ALuint buffer
ALenum param
ALfloat *value
void alGetBuffer3fDirect
ALCcontext *context
ALuint buffer
ALenum param
ALfloat *value1
ALfloat *value2
ALfloat *value3
void alGetBufferfvDirect
ALCcontext *context
ALuint buffer
ALenum param
ALfloat *values
void alGetBufferiDirect
ALCcontext *context
ALuint buffer
ALenum param
ALint *value
void alGetBuffer3iDirect
ALCcontext *context
ALuint buffer
ALenum param
ALint *value1
ALint *value2
ALint *value3
void alGetBufferivDirect
ALCcontext *context
ALuint buffer
ALenum param
ALint *values
void alGenEffectsDirect
ALCcontext *context
ALsizei n
ALuint *effects
void alDeleteEffectsDirect
ALCcontext *context
ALsizei n
const ALuint *effects
ALboolean alIsEffectDirect
ALCcontext *context
ALuint effect
void alEffectiDirect
ALCcontext *context
ALuint effect
ALenum param
ALint iValue
void alEffectivDirect
ALCcontext *context
ALuint effect
ALenum param
const ALint *piValues
void alEffectfDirect
ALCcontext *context
ALuint effect
ALenum param
ALfloat flValue
void alEffectfvDirect
ALCcontext *context
ALuint effect
ALenum param
const ALfloat *pflValues
void alGetEffectiDirect
ALCcontext *context
ALuint effect
ALenum param
ALint *piValue
void alGetEffectivDirect
ALCcontext *context
ALuint effect
ALenum param
ALint *piValues
void alGetEffectfDirect
ALCcontext *context
ALuint effect
ALenum param
ALfloat *pflValue
void alGetEffectfvDirect
ALCcontext *context
ALuint effect
ALenum param
ALfloat *pflValues
void alGenFiltersDirect
ALCcontext *context
ALsizei n
ALuint *filters
void alDeleteFiltersDirect
ALCcontext *context
ALsizei n
const ALuint *filters
ALboolean alIsFilterDirect
ALCcontext *context
ALuint filter
void alFilteriDirect
ALCcontext *context
ALuint filter
ALenum param
ALint iValue
void alFilterivDirect
ALCcontext *context
ALuint filter
ALenum param
const ALint *piValues
void alFilterfDirect
ALCcontext *context
ALuint filter
ALenum param
ALfloat flValue
void alFilterfvDirect
ALCcontext *context
ALuint filter
ALenum param
const ALfloat *pflValues
void alGetFilteriDirect
ALCcontext *context
ALuint filter
ALenum param
ALint *piValue
void alGetFilterivDirect
ALCcontext *context
ALuint filter
ALenum param
ALint *piValues
void alGetFilterfDirect
ALCcontext *context
ALuint filter
ALenum param
ALfloat *pflValue
void alGetFilterfvDirect
ALCcontext *context
ALuint filter
ALenum param
ALfloat *pflValues
void alGenAuxiliaryEffectSlotsDirect
ALCcontext *context
ALsizei n
ALuint *effectslots
void alDeleteAuxiliaryEffectSlotsDirect
ALCcontext *context
ALsizei n
const ALuint *effectslots
ALboolean alIsAuxiliaryEffectSlotDirect
ALCcontext *context
ALuint effectslot
void alAuxiliaryEffectSlotiDirect
ALCcontext *context
ALuint effectslot
ALenum param
ALint iValue
void alAuxiliaryEffectSlotivDirect
ALCcontext *context
ALuint effectslot
ALenum param
const ALint *piValues
void alAuxiliaryEffectSlotfDirect
ALCcontext *context
ALuint effectslot
ALenum param
ALfloat flValue
void alAuxiliaryEffectSlotfvDirect
ALCcontext *context
ALuint effectslot
ALenum param
const ALfloat *pflValues
void alGetAuxiliaryEffectSlotiDirect
ALCcontext *context
ALuint effectslot
ALenum param
ALint *piValue
void alGetAuxiliaryEffectSlotivDirect
ALCcontext *context
ALuint effectslot
ALenum param
ALint *piValues
void alGetAuxiliaryEffectSlotfDirect
ALCcontext *context
ALuint effectslot
ALenum param
ALfloat *pflValue
void alGetAuxiliaryEffectSlotfvDirect
ALCcontext *context
ALuint effectslot
ALenum param
ALfloat *pflValues
void alBufferDataStaticDirect
ALCcontext *context
ALuint buffer
ALenum format
ALvoid *data
ALsizei size
ALsizei freq
void alDebugMessageCallbackDirectEXT
ALCcontext *context
ALDEBUGPROCEXT callback
void *userParam
void alDebugMessageInsertDirectEXT
ALCcontext *context
ALenum source
ALenum type
ALuint id
ALenum severity
ALsizei length
const ALchar *message
void alDebugMessageControlDirectEXT
ALCcontext *context
ALenum source
ALenum type
ALenum severity
ALsizei count
const ALuint *ids
ALboolean enable
void alPushDebugGroupDirectEXT
ALCcontext *context
ALenum source
ALuint id
ALsizei length
const ALchar *message
void alPopDebugGroupDirectEXT
ALCcontext *context
ALuint alGetDebugMessageLogDirectEXT
ALCcontext *context
ALuint count
ALsizei logBufSize
ALenum *sources
ALenum *types
ALuint *ids
ALenum *severities
ALsizei *lengths
ALchar *logBuf
void alObjectLabelDirectEXT
ALCcontext *context
ALenum identifier
ALuint name
ALsizei length
const ALchar *label
void alGetObjectLabelDirectEXT
ALCcontext *context
ALenum identifier
ALuint name
ALsizei bufSize
ALsizei *length
ALchar *label
void* alGetPointerDirectEXT
ALCcontext *context
ALenum pname
void alGetPointervDirectEXT
ALCcontext *context
ALenum pname
void **values
void alRequestFoldbackStartDirect
ALCcontext *context
ALenum mode
ALsizei count
ALsizei length
ALfloat *mem
LPALFOLDBACKCALLBACK callback
void alRequestFoldbackStopDirect
ALCcontext *context
void alBufferSubDataDirectSOFT
ALCcontext *context
ALuint buffer
ALenum format
const ALvoid *data
ALsizei offset
ALsizei length
void alSourcedDirectSOFT
ALCcontext *context
ALuint source
ALenum param
ALdouble value
void alSource3dDirectSOFT
ALCcontext *context
ALuint source
ALenum param
ALdouble value1
ALdouble value2
ALdouble value3
void alSourcedvDirectSOFT
ALCcontext *context
ALuint source
ALenum param
const ALdouble *values
void alGetSourcedDirectSOFT
ALCcontext *context
ALuint source
ALenum param
ALdouble *value
void alGetSource3dDirectSOFT
ALCcontext *context
ALuint source
ALenum param
ALdouble *value1
ALdouble *value2
ALdouble *value3
void alGetSourcedvDirectSOFT
ALCcontext *context
ALuint source
ALenum param
ALdouble *values
void alSourcei64DirectSOFT
ALCcontext *context
ALuint source
ALenum param
ALint64SOFT value
void alSource3i64DirectSOFT
ALCcontext *context
ALuint source
ALenum param
ALint64SOFT value1
ALint64SOFT value2
ALint64SOFT value3
void alSourcei64vDirectSOFT
ALCcontext *context
ALuint source
ALenum param
const ALint64SOFT *values
void alGetSourcei64DirectSOFT
ALCcontext *context
ALuint source
ALenum param
ALint64SOFT *value
void alGetSource3i64DirectSOFT
ALCcontext *context
ALuint source
ALenum param
ALint64SOFT *value1
ALint64SOFT *value2
ALint64SOFT *value3
void alGetSourcei64vDirectSOFT
ALCcontext *context
ALuint source
ALenum param
ALint64SOFT *values
void alDeferUpdatesDirectSOFT
ALCcontext *context
void alProcessUpdatesDirectSOFT
ALCcontext *context
const ALchar* alGetStringiDirectSOFT
ALCcontext *context
ALenum pname
ALsizei index
void alEventControlDirectSOFT
ALCcontext *context
ALsizei count
const ALenum *types
ALboolean enable
void alEventCallbackDirectSOFT
ALCcontext *context
ALEVENTPROCSOFT callback
void *userParam
void* alGetPointerDirectSOFT
ALCcontext *context
ALenum pname
void alGetPointervDirectSOFT
ALCcontext *context
ALenum pname
void **values
void alBufferCallbackDirectSOFT
ALCcontext *context
ALuint buffer
ALenum format
ALsizei freq
ALBUFFERCALLBACKTYPESOFT callback
ALvoid *userptr
void alGetBufferPtrDirectSOFT
ALCcontext *context
ALuint buffer
ALenum param
ALvoid **ptr
void alGetBuffer3PtrDirectSOFT
ALCcontext *context
ALuint buffer
ALenum param
ALvoid **ptr0
ALvoid **ptr1
ALvoid **ptr2
void alGetBufferPtrvDirectSOFT
ALCcontext *context
ALuint buffer
ALenum param
ALvoid **ptr
void alSourcePlayAtTimeDirectSOFT
ALCcontext *context
ALuint source
ALint64SOFT start_time
void alSourcePlayAtTimevDirectSOFT
ALCcontext *context
ALsizei n
const ALuint *sources
ALint64SOFT start_time
ALenum EAXSetDirect
ALCcontext *context
const struct _GUID *property_set_id
ALuint property_id
ALuint source_id
ALvoid *value
ALuint value_size
ALenum EAXGetDirect
ALCcontext *context
const struct _GUID *property_set_id
ALuint property_id
ALuint source_id
ALvoid *value
ALuint value_size
ALboolean EAXSetBufferModeDirect
ALCcontext *context
ALsizei n
const ALuint *buffers
ALint value
ALenum EAXGetBufferModeDirect
ALCcontext *context
ALuint buffer
ALint *pReserved
ALCcontext* alcCreateContext
ALCdevice *device
const ALCint *attrlist
Makes the given context the active process-wide context. Passing NULL clears
the active context.
ALCboolean alcMakeContextCurrent
ALCcontext *context
void alcProcessContext
ALCcontext *context
void alcSuspendContext
ALCcontext *context
void alcDestroyContext
ALCcontext *context
ALCcontext* alcGetCurrentContext
ALCdevice* alcGetContextsDevice
ALCcontext *context
ALCdevice* alcOpenDevice
const ALCchar *devicename
ALCboolean alcCloseDevice
ALCdevice *device
ALCenum alcGetError
ALCdevice *device
Query for the presence of an extension on the device. Pass a NULL device to
query a device-inspecific extension.
ALCboolean alcIsExtensionPresent
ALCdevice *device
const ALCchar *extname
Retrieve the address of a function. Given a non-NULL device, the returned
function may be device-specific.
ALCvoid* alcGetProcAddress
ALCdevice *device
const ALCchar *funcname
Retrieve the value of an enum. Given a non-NULL device, the returned value
may be device-specific.
ALCenum alcGetEnumValue
ALCdevice *device
const ALCchar *enumname
const ALCchar* alcGetString
ALCdevice *device
ALCenum param
void alcGetIntegerv
ALCdevice *device
ALCenum param
ALCsizei size
ALCint *values
Opens the named capture device with the given frequency, format, and buffer
size.
ALCdevice* alcCaptureOpenDevice
const ALCchar *devicename
ALCuint frequency
ALCenum format
ALCsizei buffersize
ALCboolean alcCaptureCloseDevice
ALCdevice *device
void alcCaptureStart
ALCdevice *device
void alcCaptureStop
ALCdevice *device
void alcCaptureSamples
ALCdevice *device
ALCvoid *buffer
ALCsizei samples
ALCdevice* alcLoopbackOpenDeviceSOFT
const ALCchar *deviceName
ALCboolean alcIsRenderFormatSupportedSOFT
ALCdevice *device
ALCsizei freq
ALCenum channels
ALCenum type
void alcRenderSamplesSOFT
ALCdevice *device
ALCvoid *buffer
ALCsizei samples
void alcDevicePauseSOFT
ALCdevice *device
void alcDeviceResumeSOFT
ALCdevice *device
const ALCchar* alcGetStringiSOFT
ALCdevice *device
ALCenum paramName
ALCsizei index
ALCboolean alcResetDeviceSOFT
ALCdevice *device
const ALCint *attribs
void alcGetInteger64vSOFT
ALCdevice *device
ALCenum pname
ALsizei size
ALCint64SOFT *values
ALCboolean alcReopenDeviceSOFT
ALCdevice *device
const ALCchar *deviceName
const ALCint *attribs
ALCenum alcEventIsSupportedSOFT
ALCenum eventType
ALCenum deviceType
ALCboolean alcEventControlSOFT
ALCsizei count
const ALCenum *events
ALCboolean enable
void alcEventCallbackSOFT
ALCEVENTPROCTYPESOFT callback
void *userParam
ALCvoid* alcGetProcAddress2
ALCdevice *device
const ALCchar *funcName
ALCboolean alcSetThreadContext
ALCcontext *context
ALCcontext* alcGetThreadContext
Provides support for surround sound buffer formats with 8, 16, and 32-bit
samples.
QUAD8: Unsigned 8-bit, Quadraphonic (Front Left, Front Right, Rear Left,
Rear Right).
QUAD16: Signed 16-bit, Quadraphonic.
QUAD32: 32-bit float, Quadraphonic.
REAR8: Unsigned 8-bit, Rear Stereo (Rear Left, Rear Right).
REAR16: Signed 16-bit, Rear Stereo.
REAR32: 32-bit float, Rear Stereo.
51CHN8: Unsigned 8-bit, 5.1 Surround (Front Left, Front Right, Front Center,
LFE, Side Left, Side Right). Note that some audio systems may label
5.1's Side channels as Rear or Surround; they are equivalent for the
purposes of this extension.
51CHN16: Signed 16-bit, 5.1 Surround.
51CHN32: 32-bit float, 5.1 Surround.
61CHN8: Unsigned 8-bit, 6.1 Surround (Front Left, Front Right, Front Center,
LFE, Rear Center, Side Left, Side Right).
61CHN16: Signed 16-bit, 6.1 Surround.
61CHN32: 32-bit float, 6.1 Surround.
71CHN8: Unsigned 8-bit, 7.1 Surround (Front Left, Front Right, Front Center,
LFE, Rear Left, Rear Right, Side Left, Side Right).
71CHN16: Signed 16-bit, 7.1 Surround.
71CHN32: 32-bit float, 7.1 Surround.
Provides support for B-Format ambisonic buffers (first-order, FuMa scaling
and layout).
BFORMAT2D_8: Unsigned 8-bit, 3-channel non-periphonic (WXY).
BFORMAT2D_16: Signed 16-bit, 3-channel non-periphonic (WXY).
BFORMAT2D_FLOAT32: 32-bit float, 3-channel non-periphonic (WXY).
BFORMAT3D_8: Unsigned 8-bit, 4-channel periphonic (WXYZ).
BFORMAT3D_16: Signed 16-bit, 4-channel periphonic (WXYZ).
BFORMAT3D_FLOAT32: 32-bit float, 4-channel periphonic (WXYZ).