ALC introduces the notion of a Device. A Device can be, depending on the implementation, a hardware device, or a daemon/OS service/actual server. This mechanism also permits different drivers (and hardware) to coexist within the same system, as well as allowing several applications to share system resources for audio, including a single hardware output device. The details are left to the implementation, which has to map the available backends to unique device specifiers (represented as strings).
| Modifier and Type | Field and Description |
|---|---|
| public static final int | ALC_ALL_ATTRIBUTES
Expects a destination of ALC_CURRENT_ATTRIBUTES_SIZE, and provides the attribute list for the current context of the specified device. |
| public static final int | ALC_ATTRIBUTES_SIZE
The size required for the zero-terminated attributes list, for the current context. |
| public static final int | ALC_DEFAULT_DEVICE_SPECIFIER
The specifier string for the default device |
| public static final int | ALC_DEVICE_SPECIFIER
The specifier string for the device |
| public static final int | ALC_EXTENSIONS
The extensions string for diagnostics and printing |
| public static final int | ALC_FALSE
Boolean False |
| public static final int | ALC_FREQUENCY
Frequency for mixing output buffer, in units of Hz. |
| public static final int | ALC_INVALID
Bad value |
| public static final int | ALC_INVALID_CONTEXT
The context argument does not name a valid context |
| public static final int | ALC_INVALID_DEVICE
The device argument does not name a valid device |
| public static final int | ALC_INVALID_ENUM
A function was called at inappropriate time, or in an inappropriate way, causing an illegal state. |
| public static final int | ALC_INVALID_VALUE
Illegal value passed as an argument to an AL call. |
| public static final int | ALC_MAJOR_VERSION
Major version query. |
| public static final int | ALC_MINOR_VERSION
Minor version query. |
| public static final int | ALC_NO_ERROR
Errors: No Error |
| public static final int | ALC_OUT_OF_MEMORY
A function could not be completed, because there is not enough memory available. |
| public static final int | ALC_REFRESH
Refresh intervalls, in units of Hz. |
| public static final int | ALC_SYNC
Flag, indicating a synchronous context. |
| public static final int | ALC_TRUE
Boolean True |
| pack-priv static final HashMap | contexts
List of active contexts |
| pack-priv static final HashMap | devices
List of active devices |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public static boolean | alcCloseDevice(ALCdevice
address of native device to close device)The |
| public static ALCcontext | Returns: New context, or null if creation failedaddress of device to associate context to device, IntBuffer Buffer to read attributes from attrList)A context is created using |
| public static void | alcDestroyContext(ALCcontext
address of context to Destroy context)The correct way to destroy a context is to first release it using |
| public static ALCdevice | alcGetContextsDevice(ALCcontext
address of context to get device for context)The application can query for, and obtain an handle to, the device of a given context. |
| public static ALCcontext | Returns: Current ALCcontextThe application can query for, and obtain an handle to, the current context for the application. |
| public static int | Returns: value of enumerationname of enum to find enumName)Enumeration/token values are device independend, but tokens defined for extensions might not be present for a given device. |
| public static int | Returns: Errorcode from ALC statemachineALC uses the same conventions and mechanisms as AL for error handling. |
| public static void | alcGetInteger(ALCdevice device, int
Property to get pname, IntBuffer ByteBuffer to write integers to integerdata)The application can query ALC for information using an integer query function. |
| public static String | Returns: String property from deviceProperty to get pname)The application can obtain certain strings from ALC. |
| public static boolean | Returns: true if extension is available, false if notname of extension to find extName)Verify that a given extension is available for the current context and the device it is associated with. |
| public static int | Returns: true if successfull, false if notaddress of context to make current context)To make a Context current with respect to AL Operation (state changes by issueing
commands), |
| public static ALCdevice | Returns: opened device, or nullname of device to open devicename)The |
| public static void | alcProcessContext(ALCcontext context)
The current context is the only context accessible to state changes by AL commands (aside from state changes affecting shared objects). |
| public static void | alcSuspendContext(ALCcontext
address of context to suspend context)The application can suspend any context from processing (including the current one). |
| pack-priv static long | |
| pack-priv static long | |
| pack-priv static native void | |
| pack-priv static native boolean | |
| pack-priv static native long | |
| pack-priv static native void | |
| pack-priv static native long | |
| pack-priv static native long | |
| private static native int | |
| pack-priv static native int | |
| pack-priv static native void | |
| pack-priv static native ByteBuffer | |
| private static native boolean | |
| pack-priv static native int | |
| pack-priv static native long | |
| pack-priv static native void | |
| pack-priv static native void |
| ALC_ALL_ATTRIBUTES | back to summary |
|---|---|
| public static final int ALC_ALL_ATTRIBUTES Expects a destination of ALC_CURRENT_ATTRIBUTES_SIZE, and provides the attribute list for the current context of the specified device. | |
| ALC_ATTRIBUTES_SIZE | back to summary |
|---|---|
| public static final int ALC_ATTRIBUTES_SIZE The size required for the zero-terminated attributes list, for the current context. | |
| ALC_DEFAULT_DEVICE_SPECIFIER | back to summary |
|---|---|
| public static final int ALC_DEFAULT_DEVICE_SPECIFIER The specifier string for the default device | |
| ALC_DEVICE_SPECIFIER | back to summary |
|---|---|
| public static final int ALC_DEVICE_SPECIFIER The specifier string for the device | |
| ALC_EXTENSIONS | back to summary |
|---|---|
| public static final int ALC_EXTENSIONS The extensions string for diagnostics and printing | |
| ALC_FALSE | back to summary |
|---|---|
| public static final int ALC_FALSE Boolean False | |
| ALC_FREQUENCY | back to summary |
|---|---|
| public static final int ALC_FREQUENCY Frequency for mixing output buffer, in units of Hz. | |
| ALC_INVALID | back to summary |
|---|---|
| public static final int ALC_INVALID Bad value | |
| ALC_INVALID_CONTEXT | back to summary |
|---|---|
| public static final int ALC_INVALID_CONTEXT The context argument does not name a valid context | |
| ALC_INVALID_DEVICE | back to summary |
|---|---|
| public static final int ALC_INVALID_DEVICE The device argument does not name a valid device | |
| ALC_INVALID_ENUM | back to summary |
|---|---|
| public static final int ALC_INVALID_ENUM A function was called at inappropriate time, or in an inappropriate way, causing an illegal state. This can be an incompatible ALenum, object ID, and/or function. | |
| ALC_INVALID_VALUE | back to summary |
|---|---|
| public static final int ALC_INVALID_VALUE Illegal value passed as an argument to an AL call. Applies to parameter values, but not to enumerations. | |
| ALC_MAJOR_VERSION | back to summary |
|---|---|
| public static final int ALC_MAJOR_VERSION Major version query. | |
| ALC_MINOR_VERSION | back to summary |
|---|---|
| public static final int ALC_MINOR_VERSION Minor version query. | |
| ALC_NO_ERROR | back to summary |
|---|---|
| public static final int ALC_NO_ERROR Errors: No Error | |
| ALC_OUT_OF_MEMORY | back to summary |
|---|---|
| public static final int ALC_OUT_OF_MEMORY A function could not be completed, because there is not enough memory available. | |
| ALC_REFRESH | back to summary |
|---|---|
| public static final int ALC_REFRESH Refresh intervalls, in units of Hz. | |
| ALC_SYNC | back to summary |
|---|---|
| public static final int ALC_SYNC Flag, indicating a synchronous context. | |
| ALC_TRUE | back to summary |
|---|---|
| public static final int ALC_TRUE Boolean True | |
| contexts | back to summary |
|---|---|
| pack-priv static final HashMap<Long, ALCcontext> contexts List of active contexts | |
| devices | back to summary |
|---|---|
| pack-priv static final HashMap<Long, ALCdevice> devices List of active devices | |
| ALC10 | back to summary |
|---|---|
| public ALC10() | |
| alcCloseDevice | back to summary |
|---|---|
| public static boolean alcCloseDevice(ALCdevice device) The
| |
| alcCreateContext | back to summary |
|---|---|
| public static ALCcontext alcCreateContext(ALCdevice device, IntBuffer attrList) A context is created using
| |
| alcDestroyContext | back to summary |
|---|---|
| public static void alcDestroyContext(ALCcontext context) The correct way to destroy a context is to first release it using
| |
| alcGetContextsDevice | back to summary |
|---|---|
| public static ALCdevice alcGetContextsDevice(ALCcontext context) The application can query for, and obtain an handle to, the device of a given context.
| |
| alcGetCurrentContext | back to summary |
|---|---|
| public static ALCcontext alcGetCurrentContext() The application can query for, and obtain an handle to, the current context for the
application. If there is no current context,
| |
| alcGetEnumValue | back to summary |
|---|---|
| public static int alcGetEnumValue(ALCdevice device, String enumName) Enumeration/token values are device independend, but tokens defined for
extensions might not be present for a given device. But only the tokens defined
by the AL core are guaranteed. Availability of extension tokens dependends on the ALC extension.
Specifying a
| |
| alcGetError | back to summary |
|---|---|
| public static int alcGetError(ALCdevice device) ALC uses the same conventions and mechanisms as AL for error handling. In
particular, ALC does not use conventions derived from X11 (GLX) or Windows
(WGL). The
| |
| alcGetInteger | back to summary |
|---|---|
| public static void alcGetInteger(ALCdevice device, int pname, IntBuffer integerdata) The application can query ALC for information using an integer query function.
For some tokens,
| |
| alcGetString | back to summary |
|---|---|
| public static String alcGetString(ALCdevice device, int pname) The application can obtain certain strings from ALC.
| |
| alcIsExtensionPresent | back to summary |
|---|---|
| public static boolean alcIsExtensionPresent(ALCdevice device, String extName) Verify that a given extension is available for the current context and the device it
is associated with.
A
| |
| alcMakeContextCurrent | back to summary |
|---|---|
| public static int alcMakeContextCurrent(ALCcontext context) To make a Context current with respect to AL Operation (state changes by issueing
commands),
| |
| alcOpenDevice | back to summary |
|---|---|
| public static ALCdevice alcOpenDevice(String devicename) The | |
| alcProcessContext | back to summary |
|---|---|
| public static void alcProcessContext(ALCcontext context) The current context is the only context accessible to state changes by AL commands
(aside from state changes affecting shared objects). However, multiple contexts can
be processed at the same time. To indicate that a context should be processed (i.e.
that internal execution state like offset increments are supposed to be performed),
the application has to use | |
| alcSuspendContext | back to summary |
|---|---|
| public static void alcSuspendContext(ALCcontext context) The application can suspend any context from processing (including the current
one). To indicate that a context should be suspended from processing (i.e. that
internal execution state like offset increments is not supposed to be changed), the
application has to use
| |
| getContext | back to summary |
|---|---|
| pack-priv static long getContext(ALCcontext context) | |
| getDevice | back to summary |
|---|---|
| pack-priv static long getDevice(ALCdevice device) | |
| initNativeStubs | back to summary |
|---|---|
| pack-priv static native void initNativeStubs() throws LWJGLException | |
| nalcCloseDevice | back to summary |
|---|---|
| pack-priv static native boolean nalcCloseDevice(long device) | |
| nalcCreateContext | back to summary |
|---|---|
| pack-priv static native long nalcCreateContext(long device, long attrList) | |
| nalcDestroyContext | back to summary |
|---|---|
| pack-priv static native void nalcDestroyContext(long context) | |
| nalcGetContextsDevice | back to summary |
|---|---|
| pack-priv static native long nalcGetContextsDevice(long context) | |
| nalcGetCurrentContext | back to summary |
|---|---|
| pack-priv static native long nalcGetCurrentContext() | |
| nalcGetEnumValue | back to summary |
|---|---|
| private static native int nalcGetEnumValue(long device, long enumName) | |
| nalcGetError | back to summary |
|---|---|
| pack-priv static native int nalcGetError(long device) | |
| nalcGetIntegerv | back to summary |
|---|---|
| pack-priv static native void nalcGetIntegerv(long device, int pname, int size, long integerdata) | |
| nalcGetString | back to summary |
|---|---|
| pack-priv static native ByteBuffer nalcGetString(long device, int pname) | |
| nalcIsExtensionPresent | back to summary |
|---|---|
| private static native boolean nalcIsExtensionPresent(long device, long extName) | |
| nalcMakeContextCurrent | back to summary |
|---|---|
| pack-priv static native int nalcMakeContextCurrent(long context) | |
| nalcOpenDevice | back to summary |
|---|---|
| pack-priv static native long nalcOpenDevice(long devicename) | |
| nalcProcessContext | back to summary |
|---|---|
| pack-priv static native void nalcProcessContext(long context) | |
| nalcSuspendContext | back to summary |
|---|---|
| pack-priv static native void nalcSuspendContext(long context) | |