Class AL10

java.lang.Object
org.lwjgl.openal.AL10
Direct Known Subclasses:
AL11

public class AL10 extends Object
Native bindings to AL 1.0 functionality.
  • Field Details

    • AL_INVALID

      public static final int AL_INVALID
      General tokens.
      See Also:
    • AL_NONE

      public static final int AL_NONE
      General tokens.
      See Also:
    • AL_FALSE

      public static final int AL_FALSE
      General tokens.
      See Also:
    • AL_TRUE

      public static final int AL_TRUE
      General tokens.
      See Also:
    • AL_NO_ERROR

      public static final int AL_NO_ERROR
      Error conditions.
      See Also:
    • AL_INVALID_NAME

      public static final int AL_INVALID_NAME
      Error conditions.
      See Also:
    • AL_INVALID_ENUM

      public static final int AL_INVALID_ENUM
      Error conditions.
      See Also:
    • AL_INVALID_VALUE

      public static final int AL_INVALID_VALUE
      Error conditions.
      See Also:
    • AL_INVALID_OPERATION

      public static final int AL_INVALID_OPERATION
      Error conditions.
      See Also:
    • AL_OUT_OF_MEMORY

      public static final int AL_OUT_OF_MEMORY
      Error conditions.
      See Also:
    • AL_DOPPLER_FACTOR

      public static final int AL_DOPPLER_FACTOR
      Numerical queries.
      See Also:
    • AL_DISTANCE_MODEL

      public static final int AL_DISTANCE_MODEL
      Numerical queries.
      See Also:
    • AL_VENDOR

      public static final int AL_VENDOR
      String queries.
      See Also:
    • AL_VERSION

      public static final int AL_VERSION
      String queries.
      See Also:
    • AL_RENDERER

      public static final int AL_RENDERER
      String queries.
      See Also:
    • AL_EXTENSIONS

      public static final int AL_EXTENSIONS
      String queries.
      See Also:
    • AL_INVERSE_DISTANCE

      public static final int AL_INVERSE_DISTANCE
      Distance attenuation models.
      See Also:
    • AL_INVERSE_DISTANCE_CLAMPED

      public static final int AL_INVERSE_DISTANCE_CLAMPED
      Distance attenuation models.
      See Also:
    • AL_SOURCE_ABSOLUTE

      public static final int AL_SOURCE_ABSOLUTE
      Source types.
      See Also:
    • AL_SOURCE_RELATIVE

      public static final int AL_SOURCE_RELATIVE
      Source types.
      See Also:
    • AL_POSITION

      public static final int AL_POSITION
      Listener and Source attributes.
      See Also:
    • AL_VELOCITY

      public static final int AL_VELOCITY
      Listener and Source attributes.
      See Also:
    • AL_GAIN

      public static final int AL_GAIN
      Listener and Source attributes.
      See Also:
    • AL_CONE_INNER_ANGLE

      public static final int AL_CONE_INNER_ANGLE
      Source attributes.
      See Also:
    • AL_CONE_OUTER_ANGLE

      public static final int AL_CONE_OUTER_ANGLE
      Source attributes.
      See Also:
    • AL_PITCH

      public static final int AL_PITCH
      Source attributes.
      See Also:
    • AL_DIRECTION

      public static final int AL_DIRECTION
      Source attributes.
      See Also:
    • AL_LOOPING

      public static final int AL_LOOPING
      Source attributes.
      See Also:
    • AL_BUFFER

      public static final int AL_BUFFER
      Source attributes.
      See Also:
    • AL_SOURCE_STATE

      public static final int AL_SOURCE_STATE
      Source attributes.
      See Also:
    • AL_CONE_OUTER_GAIN

      public static final int AL_CONE_OUTER_GAIN
      Source attributes.
      See Also:
    • AL_SOURCE_TYPE

      public static final int AL_SOURCE_TYPE
      Source attributes.
      See Also:
    • AL_INITIAL

      public static final int AL_INITIAL
      Source state.
      See Also:
    • AL_PLAYING

      public static final int AL_PLAYING
      Source state.
      See Also:
    • AL_PAUSED

      public static final int AL_PAUSED
      Source state.
      See Also:
    • AL_STOPPED

      public static final int AL_STOPPED
      Source state.
      See Also:
    • AL_ORIENTATION

      public static final int AL_ORIENTATION
      Listener attributes.
      See Also:
    • AL_BUFFERS_QUEUED

      public static final int AL_BUFFERS_QUEUED
      Queue state.
      See Also:
    • AL_BUFFERS_PROCESSED

      public static final int AL_BUFFERS_PROCESSED
      Queue state.
      See Also:
    • AL_MIN_GAIN

      public static final int AL_MIN_GAIN
      Gain bounds.
      See Also:
    • AL_MAX_GAIN

      public static final int AL_MAX_GAIN
      Gain bounds.
      See Also:
    • AL_REFERENCE_DISTANCE

      public static final int AL_REFERENCE_DISTANCE
      Distance model attributes,
      See Also:
    • AL_ROLLOFF_FACTOR

      public static final int AL_ROLLOFF_FACTOR
      Distance model attributes,
      See Also:
    • AL_MAX_DISTANCE

      public static final int AL_MAX_DISTANCE
      Distance model attributes,
      See Also:
    • AL_FREQUENCY

      public static final int AL_FREQUENCY
      Buffer attributes,
      See Also:
    • AL_BITS

      public static final int AL_BITS
      Buffer attributes,
      See Also:
    • AL_CHANNELS

      public static final int AL_CHANNELS
      Buffer attributes,
      See Also:
    • AL_SIZE

      public static final int AL_SIZE
      Buffer attributes,
      See Also:
    • AL_FORMAT_MONO8

      public static final int AL_FORMAT_MONO8
      Buffer formats.
      See Also:
    • AL_FORMAT_MONO16

      public static final int AL_FORMAT_MONO16
      Buffer formats.
      See Also:
    • AL_FORMAT_STEREO8

      public static final int AL_FORMAT_STEREO8
      Buffer formats.
      See Also:
    • AL_FORMAT_STEREO16

      public static final int AL_FORMAT_STEREO16
      Buffer formats.
      See Also:
    • AL_UNUSED

      public static final int AL_UNUSED
      Buffer state.
      See Also:
    • AL_PENDING

      public static final int AL_PENDING
      Buffer state.
      See Also:
    • AL_PROCESSED

      public static final int AL_PROCESSED
      Buffer state.
      See Also:
  • Method Details

    • alGetError

      public static int alGetError()
      Obtains error information.

      Each detectable error is assigned a numeric code. When an error is detected by AL, a flag is set and the error code is recorded. Further errors, if they occur, do not affect this recorded code. When alGetError is called, the code is returned and the flag is cleared, so that a further error will again record its code. If a call to alGetError returns AL_NO_ERROR then there has been no detectable error since the last call to alGetError (or since the AL was initialized).

      Error codes can be mapped to strings. The alGetString function returns a pointer to a constant (literal) string that is identical to the identifier used for the enumeration value, as defined in the specification.

    • alEnable

      public static void alEnable(int target)
      Enables AL capabilities.
      Parameters:
      target - the capability to enable
    • alDisable

      public static void alDisable(int target)
      Disables AL capabilities.
      Parameters:
      target - the capability to disable
    • alIsEnabled

      public static boolean alIsEnabled(int target)
      Queries whether a given capability is currently enabled or not.
      Parameters:
      target - the capability to query
    • alGetBoolean

      public static boolean alGetBoolean(int paramName)
      Returns the boolean value of the specified parameter.
      Parameters:
      paramName - the parameter to query
    • alGetInteger

      public static int alGetInteger(int paramName)
      Returns the integer value of the specified parameter.
      Parameters:
      paramName - the parameter to query. One of:
      DOPPLER_FACTORDISTANCE_MODELSPEED_OF_SOUND
    • alGetFloat

      public static float alGetFloat(int paramName)
      Returns the float value of the specified parameter.
      Parameters:
      paramName - the parameter to query. One of:
      DOPPLER_FACTORDISTANCE_MODELSPEED_OF_SOUND
    • alGetDouble

      public static double alGetDouble(int paramName)
      Returns the double value of the specified parameter.
      Parameters:
      paramName - the parameter to query. One of:
      DOPPLER_FACTORDISTANCE_MODELSPEED_OF_SOUND
    • nalGetBooleanv

      public static void nalGetBooleanv(int paramName, long dest)
      Unsafe version of: GetBooleanv
    • alGetBooleanv

      public static void alGetBooleanv(int paramName, ByteBuffer dest)
      Pointer version of GetBoolean.
      Parameters:
      paramName - the parameter to query
      dest - a buffer that will receive the parameter values
    • nalGetIntegerv

      public static void nalGetIntegerv(int paramName, long dest)
      Unsafe version of: GetIntegerv
    • alGetIntegerv

      public static void alGetIntegerv(int paramName, IntBuffer dest)
      Pointer version of GetInteger.
      Parameters:
      paramName - the parameter to query
      dest - a buffer that will receive the parameter values
    • nalGetFloatv

      public static void nalGetFloatv(int paramName, long dest)
      Unsafe version of: GetFloatv
    • alGetFloatv

      public static void alGetFloatv(int paramName, FloatBuffer dest)
      Pointer version of GetFloat.
      Parameters:
      paramName - the parameter to query
      dest - a buffer that will receive the parameter values
    • nalGetDoublev

      public static void nalGetDoublev(int paramName, long dest)
      Unsafe version of: GetDoublev
    • alGetDoublev

      public static void alGetDoublev(int paramName, DoubleBuffer dest)
      Pointer version of GetDouble.
      Parameters:
      paramName - the parameter to query
      dest - a buffer that will receive the parameter values
    • nalGetString

      public static long nalGetString(int paramName)
      Unsafe version of: GetString
    • alGetString

      @Nullable public static String alGetString(int paramName)
      Returns the string value of the specified parameter
      Parameters:
      paramName - the parameter to query. One of:
      VENDORVERSIONRENDEREREXTENSIONS
    • alDistanceModel

      public static void alDistanceModel(int modelName)
      Sets the distance attenuation model.

      Samples usually use the entire dynamic range of the chosen format/encoding, independent of their real world intensity. For example, a jet engine and a clockwork both will have samples with full amplitude. The application will then have to adjust source gain accordingly to account for relative differences.

      Source gain is then attenuated by distance. The effective attenuation of a source depends on many factors, among which distance attenuation and source and listener gain are only some of the contributing factors. Even if the source and listener gain exceed 1.0 (amplification beyond the guaranteed dynamic range), distance and other attenuation might ultimately limit the overall gain to a value below 1.0.

      OpenAL currently supports three modes of operation with respect to distance attenuation, including one that is similar to the IASIG I3DL2 model. The application can choose one of these models (or chooses to disable distance-dependent attenuation) on a per-context basis.

      Parameters:
      modelName - the distance attenuation model to set. One of:
      INVERSE_DISTANCEINVERSE_DISTANCE_CLAMPEDLINEAR_DISTANCELINEAR_DISTANCE_CLAMPED
      EXPONENT_DISTANCEEXPONENT_DISTANCE_CLAMPEDNONE
    • alDopplerFactor

      public static void alDopplerFactor(float dopplerFactor)
      Sets the doppler effect factor.

      The Doppler Effect depends on the velocities of source and listener relative to the medium, and the propagation speed of sound in that medium. The application might want to emphasize or de-emphasize the Doppler Effect as physically accurate calculation might not give the desired results. The amount of frequency shift (pitch change) is proportional to the speed of listener and source along their line of sight. The Doppler Effect as implemented by OpenAL is described by the formula below. Effects of the medium (air, water) moving with respect to listener and source are ignored.

      
       SS: AL_SPEED_OF_SOUND = speed of sound (default value 343.3)
       DF: AL_DOPPLER_FACTOR = Doppler factor (default 1.0)
       vls: Listener velocity scalar (scalar, projected on source-to-listener vector)
       vss: Source velocity scalar (scalar, projected on source-to-listener vector)
       f: Frequency of sample
       f': effective Doppler shifted frequency
       
       3D Mathematical representation of vls and vss:
       
       Mag(vector) = sqrt(vector.x * vector.x + vector.y * vector.y + vector.z * vector.z)
       DotProduct(v1, v2) = (v1.x * v2.x + v1.y * v2.y + v1.z * v2.z)
       
       SL = source to listener vector
       SV = Source velocity vector
       LV = Listener velocity vector
       
       vls = DotProduct(SL, LV) / Mag(SL)
       vss = DotProduct(SL, SV) / Mag(SL)
       
       Dopper Calculation:
       
       vss = min(vss, SS / DF)
       vls = min(vls, SS / DF)
       
       f' = f * (SS - DF * vls) / (SS - DF * vss)

      The dopplerFactor is a simple scaling of source and listener velocities to exaggerate or deemphasize the Doppler (pitch) shift resulting from the calculation.

      Parameters:
      dopplerFactor - the doppler factor
    • alDopplerVelocity

      public static void alDopplerVelocity(float dopplerVelocity)
      Sets the doppler effect propagation velocity.

      The OpenAL 1.1 Doppler implementation is different than that of OpenAL 1.0, because the older implementation was confusing and not implemented consistently. The new "speed of sound" property makes the 1.1 implementation more intuitive than the old implementation. If your implementation wants to support the AL_DOPPLER_VELOCITY parameter (the alDopplerVelocity call will remain as an entry point so that 1.0 applications can link with a 1.1 library), the above formula can be changed to the following:

      
       vss = min(vss, (SS * DV)/DF)
       vls = min(vls, (SS * DV)/DF)
       
       f' = f * (SS * DV - DF*vls) / (SS * DV - DF * vss)

      OpenAL 1.1 programmers would never use AL_DOPPLER_VELOCITY (which defaults to 1.0).

      Parameters:
      dopplerVelocity - the doppler velocity
    • alListenerf

      public static void alListenerf(int paramName, float value)
      Sets the float value of a listener parameter.
      Parameters:
      paramName - the parameter to modify. One of:
      ORIENTATIONPOSITIONVELOCITYGAIN
      value - the parameter value
    • alListeneri

      public static void alListeneri(int paramName, int values)
      Integer version of Listenerf.
      Parameters:
      paramName - the parameter to modify. One of:
      ORIENTATIONPOSITIONVELOCITYGAIN
      values - the parameter value
    • alListener3f

      public static void alListener3f(int paramName, float value1, float value2, float value3)
      Sets the 3 dimensional float values of a listener parameter.
      Parameters:
      paramName - the parameter to modify. One of:
      ORIENTATIONPOSITIONVELOCITYGAIN
      value1 - the first value
      value2 - the second value
      value3 - the third value
    • nalListenerfv

      public static void nalListenerfv(int paramName, long values)
      Unsafe version of: Listenerfv
    • alListenerfv

      public static void alListenerfv(int paramName, FloatBuffer values)
      Pointer version of Listenerf.
      Parameters:
      paramName - the parameter to modify
      values - the parameter values
    • nalGetListenerf

      public static void nalGetListenerf(int paramName, long value)
      Unsafe version of: GetListenerf
    • alGetListenerf

      public static void alGetListenerf(int paramName, FloatBuffer value)
      Returns the float value of a listener parameter.
      Parameters:
      paramName - the parameter to query. One of:
      ORIENTATIONPOSITIONVELOCITYGAIN
      value - the parameter value
    • alGetListenerf

      public static float alGetListenerf(int paramName)
      Returns the float value of a listener parameter.
      Parameters:
      paramName - the parameter to query. One of:
      ORIENTATIONPOSITIONVELOCITYGAIN
    • nalGetListeneri

      public static void nalGetListeneri(int paramName, long value)
      Unsafe version of: GetListeneri
    • alGetListeneri

      public static void alGetListeneri(int paramName, IntBuffer value)
      Returns the integer value of a listener parameter.
      Parameters:
      paramName - the parameter to query. One of:
      ORIENTATIONPOSITIONVELOCITYGAIN
      value - the parameter value
    • alGetListeneri

      public static int alGetListeneri(int paramName)
      Returns the integer value of a listener parameter.
      Parameters:
      paramName - the parameter to query. One of:
      ORIENTATIONPOSITIONVELOCITYGAIN
    • nalGetListener3f

      public static void nalGetListener3f(int paramName, long value1, long value2, long value3)
      Unsafe version of: GetListener3f
    • alGetListener3f

      public static void alGetListener3f(int paramName, FloatBuffer value1, FloatBuffer value2, FloatBuffer value3)
      Returns the 3 dimensional values of a listener parameter.
      Parameters:
      paramName - the parameter to query. One of:
      ORIENTATIONPOSITIONVELOCITYGAIN
      value1 - the first parameter value
      value2 - the second parameter value
      value3 - the third parameter value
    • nalGetListenerfv

      public static void nalGetListenerfv(int paramName, long values)
      Unsafe version of: GetListenerfv
    • alGetListenerfv

      public static void alGetListenerfv(int paramName, FloatBuffer values)
      Returns float values of a listener parameter.
      Parameters:
      paramName - the parameter to query. One of:
      ORIENTATIONPOSITIONVELOCITYGAIN
      values - the parameter values
    • nalGenSources

      public static void nalGenSources(int n, long srcNames)
      Unsafe version of: GenSources
      Parameters:
      n - the number of source names to generated
    • alGenSources

      public static void alGenSources(IntBuffer srcNames)
      Requests a number of source names.
      Parameters:
      srcNames - the buffer that will receive the source names
    • alGenSources

      public static int alGenSources()
      Requests a number of source names.
    • nalDeleteSources

      public static void nalDeleteSources(int n, long sources)
      Unsafe version of: DeleteSources
      Parameters:
      n - the number of sources to delete
    • alDeleteSources

      public static void alDeleteSources(IntBuffer sources)
      Requests the deletion of a number of sources.
      Parameters:
      sources - the sources to delete
    • alDeleteSources

      public static void alDeleteSources(int source)
      Requests the deletion of a number of sources.
    • alIsSource

      public static boolean alIsSource(int sourceName)
      Verifies whether the specified object name is a source name.
      Parameters:
      sourceName - a value that may be a source name
    • alSourcef

      public static void alSourcef(int source, int param, float value)
      Sets the float value of a source parameter.
      Parameters:
      source - the source to modify
      param - the parameter to modify. One of:
      CONE_INNER_ANGLECONE_OUTER_ANGLEPITCHDIRECTIONLOOPINGBUFFERSOURCE_STATE
      CONE_OUTER_GAINSOURCE_TYPEPOSITIONVELOCITYGAINREFERENCE_DISTANCEROLLOFF_FACTOR
      MAX_DISTANCE
      value - the parameter value
    • alSource3f

      public static void alSource3f(int source, int param, float v1, float v2, float v3)
      Sets the 3 dimensional values of a source parameter.
      Parameters:
      source - the source to modify
      param - the parameter to modify. One of:
      CONE_INNER_ANGLECONE_OUTER_ANGLEPITCHDIRECTIONLOOPINGBUFFERSOURCE_STATE
      CONE_OUTER_GAINSOURCE_TYPEPOSITIONVELOCITYGAINREFERENCE_DISTANCEROLLOFF_FACTOR
      MAX_DISTANCE
      v1 - the first parameter value
      v2 - the second parameter value
      v3 - the third parameter value
    • nalSourcefv

      public static void nalSourcefv(int source, int param, long values)
      Unsafe version of: Sourcefv
    • alSourcefv

      public static void alSourcefv(int source, int param, FloatBuffer values)
      Pointer version of Sourcef.
      Parameters:
      source - the source to modify
      param - the parameter to modify
      values - the parameter values
    • alSourcei

      public static void alSourcei(int source, int param, int value)
      Integer version of Sourcef.
      Parameters:
      source - the source to modify
      param - the parameter to modify
      value - the parameter value
    • nalGetSourcef

      public static void nalGetSourcef(int source, int param, long value)
      Unsafe version of: GetSourcef
    • alGetSourcef

      public static void alGetSourcef(int source, int param, FloatBuffer value)
      Returns the float value of the specified source parameter.
      Parameters:
      source - the source to query
      param - the parameter to query. One of:
      CONE_INNER_ANGLECONE_OUTER_ANGLEPITCHDIRECTIONLOOPINGBUFFERSOURCE_STATE
      CONE_OUTER_GAINSOURCE_TYPEPOSITIONVELOCITYGAINREFERENCE_DISTANCEROLLOFF_FACTOR
      MAX_DISTANCE
      value - the parameter value
    • alGetSourcef

      public static float alGetSourcef(int source, int param)
      Returns the float value of the specified source parameter.
      Parameters:
      source - the source to query
      param - the parameter to query. One of:
      CONE_INNER_ANGLECONE_OUTER_ANGLEPITCHDIRECTIONLOOPINGBUFFERSOURCE_STATE
      CONE_OUTER_GAINSOURCE_TYPEPOSITIONVELOCITYGAINREFERENCE_DISTANCEROLLOFF_FACTOR
      MAX_DISTANCE
    • nalGetSource3f

      public static void nalGetSource3f(int source, int param, long v1, long v2, long v3)
      Unsafe version of: GetSource3f
    • alGetSource3f

      public static void alGetSource3f(int source, int param, FloatBuffer v1, FloatBuffer v2, FloatBuffer v3)
      Returns the 3 dimensional values of the specified source parameter.
      Parameters:
      source - the source to query
      param - the parameter to query. One of:
      CONE_INNER_ANGLECONE_OUTER_ANGLEPITCHDIRECTIONLOOPINGBUFFERSOURCE_STATE
      CONE_OUTER_GAINSOURCE_TYPEPOSITIONVELOCITYGAINREFERENCE_DISTANCEROLLOFF_FACTOR
      MAX_DISTANCE
      v1 - the first parameter value
      v2 - the second parameter value
      v3 - the third parameter value
    • nalGetSourcefv

      public static void nalGetSourcefv(int source, int param, long values)
      Unsafe version of: GetSourcefv
    • alGetSourcefv

      public static void alGetSourcefv(int source, int param, FloatBuffer values)
      Returns the float values of the specified source parameter.
      Parameters:
      source - the source to query
      param - the parameter to query. One of:
      CONE_INNER_ANGLECONE_OUTER_ANGLEPITCHDIRECTIONLOOPINGBUFFERSOURCE_STATE
      CONE_OUTER_GAINSOURCE_TYPEPOSITIONVELOCITYGAINREFERENCE_DISTANCEROLLOFF_FACTOR
      MAX_DISTANCE
      values - the parameter values
    • nalGetSourcei

      public static void nalGetSourcei(int source, int param, long value)
      Unsafe version of: GetSourcei
    • alGetSourcei

      public static void alGetSourcei(int source, int param, IntBuffer value)
      Returns the integer value of the specified source parameter.
      Parameters:
      source - the source to query
      param - the parameter to query. One of:
      CONE_INNER_ANGLECONE_OUTER_ANGLEPITCHDIRECTIONLOOPINGBUFFERSOURCE_STATE
      CONE_OUTER_GAINSOURCE_TYPEPOSITIONVELOCITYGAINREFERENCE_DISTANCEROLLOFF_FACTOR
      MAX_DISTANCE
      value - the parameter value
    • alGetSourcei

      public static int alGetSourcei(int source, int param)
      Returns the integer value of the specified source parameter.
      Parameters:
      source - the source to query
      param - the parameter to query. One of:
      CONE_INNER_ANGLECONE_OUTER_ANGLEPITCHDIRECTIONLOOPINGBUFFERSOURCE_STATE
      CONE_OUTER_GAINSOURCE_TYPEPOSITIONVELOCITYGAINREFERENCE_DISTANCEROLLOFF_FACTOR
      MAX_DISTANCE
    • nalGetSourceiv

      public static void nalGetSourceiv(int source, int param, long values)
      Unsafe version of: GetSourceiv
    • alGetSourceiv

      public static void alGetSourceiv(int source, int param, IntBuffer values)
      Returns the integer values of the specified source parameter.
      Parameters:
      source - the source to query
      param - the parameter to query. One of:
      CONE_INNER_ANGLECONE_OUTER_ANGLEPITCHDIRECTIONLOOPINGBUFFERSOURCE_STATE
      CONE_OUTER_GAINSOURCE_TYPEPOSITIONVELOCITYGAINREFERENCE_DISTANCEROLLOFF_FACTOR
      MAX_DISTANCE
      values - the parameter values
    • nalSourceQueueBuffers

      public static void nalSourceQueueBuffers(int sourceName, int numBuffers, long bufferNames)
      Unsafe version of: SourceQueueBuffers
      Parameters:
      numBuffers - the number of buffers to queue
    • alSourceQueueBuffers

      public static void alSourceQueueBuffers(int sourceName, IntBuffer bufferNames)
      Queues up one or multiple buffer names to the specified source.

      The buffers will be queued in the sequence in which they appear in the array. This command is legal on a source in any playback state (to allow for streaming, queuing has to be possible on a AL_PLAYING source). All buffers in a queue must have the same format and attributes, with the exception of the NULL buffer (i.e., 0) which can always be queued.

      Parameters:
      sourceName - the target source
      bufferNames - the buffer names
    • alSourceQueueBuffers

      public static void alSourceQueueBuffers(int sourceName, int bufferName)
      Queues up one or multiple buffer names to the specified source.

      The buffers will be queued in the sequence in which they appear in the array. This command is legal on a source in any playback state (to allow for streaming, queuing has to be possible on a AL_PLAYING source). All buffers in a queue must have the same format and attributes, with the exception of the NULL buffer (i.e., 0) which can always be queued.

      Parameters:
      sourceName - the target source
    • nalSourceUnqueueBuffers

      public static void nalSourceUnqueueBuffers(int sourceName, int numEntries, long bufferNames)
      Unsafe version of: SourceUnqueueBuffers
      Parameters:
      numEntries - the number of buffers to unqueue
    • alSourceUnqueueBuffers

      public static void alSourceUnqueueBuffers(int sourceName, IntBuffer bufferNames)
      Removes a number of buffer entries that have finished processing, in the order of apperance, from the queue of the specified source.

      Once a queue entry for a buffer has been appended to a queue and is pending processing, it should not be changed. Removal of a given queue entry is not possible unless either the source is stopped (in which case then entire queue is considered processed), or if the queue entry has already been processed (AL_PLAYING or AL_PAUSED source). A playing source will enter the AL_STOPPED state if it completes playback of the last buffer in its queue (the same behavior as when a single buffer has been attached to a source and has finished playback).

      Parameters:
      sourceName - the target source
      bufferNames - the buffer names
    • alSourceUnqueueBuffers

      public static int alSourceUnqueueBuffers(int sourceName)
      Removes a number of buffer entries that have finished processing, in the order of apperance, from the queue of the specified source.

      Once a queue entry for a buffer has been appended to a queue and is pending processing, it should not be changed. Removal of a given queue entry is not possible unless either the source is stopped (in which case then entire queue is considered processed), or if the queue entry has already been processed (AL_PLAYING or AL_PAUSED source). A playing source will enter the AL_STOPPED state if it completes playback of the last buffer in its queue (the same behavior as when a single buffer has been attached to a source and has finished playback).

      Parameters:
      sourceName - the target source
    • alSourcePlay

      public static void alSourcePlay(int source)
      Sets the source state to AL_PLAYING.

      alSourcePlay applied to an AL_INITIAL source will promote the source to AL_PLAYING, thus the data found in the buffer will be fed into the processing, starting at the beginning. alSourcePlay applied to a AL_PLAYING source will restart the source from the beginning. It will not affect the configuration, and will leave the source in AL_PLAYING state, but reset the sampling offset to the beginning. alSourcePlay applied to a AL_PAUSED source will resume processing using the source state as preserved at the alSourcePause operation. alSourcePlay applied to a AL_STOPPED source will propagate it to AL_INITIAL then to AL_PLAYING immediately.

      Parameters:
      source - the source to play
    • alSourcePause

      public static void alSourcePause(int source)
      Sets the source state to AL_PAUSED.

      alSourcePause applied to an AL_INITIAL source is a legal NOP. alSourcePause applied to a AL_PLAYING source will change its state to AL_PAUSED. The source is exempt from processing, its current state is preserved. alSourcePause applied to a AL_PAUSED source is a legal NOP. alSourcePause applied to a AL_STOPPED source is a legal NOP.

      Parameters:
      source - the source to pause
    • alSourceStop

      public static void alSourceStop(int source)
      Sets the source state to AL_STOPPED.

      alSourceStop applied to an AL_INITIAL source is a legal NOP. alSourceStop applied to a AL_PLAYING source will change its state to AL_STOPPED. The source is exempt from processing, its current state is preserved. alSourceStop applied to a AL_PAUSED source will change its state to AL_STOPPED, with the same consequences as on a AL_PLAYING source. alSourceStop applied to a AL_STOPPED source is a legal NOP.

      Parameters:
      source - the source to stop
    • alSourceRewind

      public static void alSourceRewind(int source)
      Sets the source state to AL_INITIAL.

      alSourceRewind applied to an AL_INITIAL source is a legal NOP. alSourceRewind applied to a AL_PLAYING source will change its state to AL_STOPPED then AL_INITIAL. The source is exempt from processing: its current state is preserved, with the exception of the sampling offset, which is reset to the beginning. alSourceRewind applied to a AL_PAUSED source will change its state to AL_INITIAL, with the same consequences as on a AL_PLAYING source. alSourceRewind applied to an AL_STOPPED source promotes the source to AL_INITIAL, resetting the sampling offset to the beginning.

      Parameters:
      source - the source to rewind
    • nalSourcePlayv

      public static void nalSourcePlayv(int n, long sources)
      Unsafe version of: SourcePlayv
      Parameters:
      n - the number of sources to play
    • alSourcePlayv

      public static void alSourcePlayv(IntBuffer sources)
      Pointer version of SourcePlay.
      Parameters:
      sources - the sources to play
    • nalSourcePausev

      public static void nalSourcePausev(int n, long sources)
      Unsafe version of: SourcePausev
      Parameters:
      n - the number of sources to pause
    • alSourcePausev

      public static void alSourcePausev(IntBuffer sources)
      Pointer version of SourcePause.
      Parameters:
      sources - the sources to pause
    • nalSourceStopv

      public static void nalSourceStopv(int n, long sources)
      Unsafe version of: SourceStopv
      Parameters:
      n - the number of sources to stop
    • alSourceStopv

      public static void alSourceStopv(IntBuffer sources)
      Pointer version of SourceStop.
      Parameters:
      sources - the sources to stop
    • nalSourceRewindv

      public static void nalSourceRewindv(int n, long sources)
      Unsafe version of: SourceRewindv
      Parameters:
      n - the number of sources to rewind
    • alSourceRewindv

      public static void alSourceRewindv(IntBuffer sources)
      Pointer version of SourceRewind.
      Parameters:
      sources - the sources to rewind
    • nalGenBuffers

      public static void nalGenBuffers(int n, long bufferNames)
      Unsafe version of: GenBuffers
      Parameters:
      n - the number of buffer names to generate
    • alGenBuffers

      public static void alGenBuffers(IntBuffer bufferNames)
      Requests a number of buffer names.
      Parameters:
      bufferNames - the buffer that will receive the buffer names
    • alGenBuffers

      public static int alGenBuffers()
      Requests a number of buffer names.
    • nalDeleteBuffers

      public static void nalDeleteBuffers(int n, long bufferNames)
      Unsafe version of: DeleteBuffers
      Parameters:
      n - the number of buffers to delete
    • alDeleteBuffers

      public static void alDeleteBuffers(IntBuffer bufferNames)
      Requests the deletion of a number of buffers.
      Parameters:
      bufferNames - the buffers to delete
    • alDeleteBuffers

      public static void alDeleteBuffers(int bufferName)
      Requests the deletion of a number of buffers.
    • alIsBuffer

      public static boolean alIsBuffer(int bufferName)
      Verifies whether the specified object name is a buffer name.
      Parameters:
      bufferName - a value that may be a buffer name
    • nalGetBufferf

      public static void nalGetBufferf(int bufferName, int paramName, long value)
      Unsafe version of: GetBufferf
    • alGetBufferf

      public static void alGetBufferf(int bufferName, int paramName, FloatBuffer value)
      Returns the float value of the specified buffer parameter.
      Parameters:
      bufferName - the buffer to query
      paramName - the parameter to query. One of:
      FREQUENCYBITSCHANNELSSIZE
      value - the parameter value
    • alGetBufferf

      public static float alGetBufferf(int bufferName, int paramName)
      Returns the float value of the specified buffer parameter.
      Parameters:
      bufferName - the buffer to query
      paramName - the parameter to query. One of:
      FREQUENCYBITSCHANNELSSIZE
    • nalGetBufferi

      public static void nalGetBufferi(int bufferName, int paramName, long value)
      Unsafe version of: GetBufferi
    • alGetBufferi

      public static void alGetBufferi(int bufferName, int paramName, IntBuffer value)
      Returns the integer value of the specified buffer parameter.
      Parameters:
      bufferName - the buffer to query
      paramName - the parameter to query. One of:
      FREQUENCYBITSCHANNELSSIZE
      value - the parameter value
    • alGetBufferi

      public static int alGetBufferi(int bufferName, int paramName)
      Returns the integer value of the specified buffer parameter.
      Parameters:
      bufferName - the buffer to query
      paramName - the parameter to query. One of:
      FREQUENCYBITSCHANNELSSIZE
    • nalBufferData

      public static void nalBufferData(int bufferName, int format, long data, int size, int frequency)
      Unsafe version of: BufferData
      Parameters:
      size - the data buffer size, in bytes
    • alBufferData

      public static void alBufferData(int bufferName, int format, ByteBuffer data, int frequency)
      Sets the sample data of the specified buffer.

      The data specified is copied to an internal software, or if possible, hardware buffer. The implementation is free to apply decompression, conversion, resampling, and filtering as needed.

      8-bit data is expressed as an unsigned value over the range 0 to 255, 128 being an audio output level of zero.

      16-bit data is expressed as a signed value over the range -32768 to 32767, 0 being an audio output level of zero. Byte order for 16-bit values is determined by the native format of the CPU.

      Stereo data is expressed in an interleaved format, left channel sample followed by the right channel sample.

      Buffers containing audio data with more than one channel will be played without 3D spatialization features – these formats are normally used for background music.

      Parameters:
      bufferName - the buffer to modify
      format - the data format. One of:
      FORMAT_MONO8FORMAT_MONO16FORMAT_STEREO8FORMAT_STEREO16
      data - the sample data
      frequency - the data frequency
    • alBufferData

      public static void alBufferData(int bufferName, int format, ShortBuffer data, int frequency)
      Sets the sample data of the specified buffer.

      The data specified is copied to an internal software, or if possible, hardware buffer. The implementation is free to apply decompression, conversion, resampling, and filtering as needed.

      8-bit data is expressed as an unsigned value over the range 0 to 255, 128 being an audio output level of zero.

      16-bit data is expressed as a signed value over the range -32768 to 32767, 0 being an audio output level of zero. Byte order for 16-bit values is determined by the native format of the CPU.

      Stereo data is expressed in an interleaved format, left channel sample followed by the right channel sample.

      Buffers containing audio data with more than one channel will be played without 3D spatialization features – these formats are normally used for background music.

      Parameters:
      bufferName - the buffer to modify
      format - the data format. One of:
      FORMAT_MONO8FORMAT_MONO16FORMAT_STEREO8FORMAT_STEREO16
      data - the sample data
      frequency - the data frequency
    • alBufferData

      public static void alBufferData(int bufferName, int format, IntBuffer data, int frequency)
      Sets the sample data of the specified buffer.

      The data specified is copied to an internal software, or if possible, hardware buffer. The implementation is free to apply decompression, conversion, resampling, and filtering as needed.

      8-bit data is expressed as an unsigned value over the range 0 to 255, 128 being an audio output level of zero.

      16-bit data is expressed as a signed value over the range -32768 to 32767, 0 being an audio output level of zero. Byte order for 16-bit values is determined by the native format of the CPU.

      Stereo data is expressed in an interleaved format, left channel sample followed by the right channel sample.

      Buffers containing audio data with more than one channel will be played without 3D spatialization features – these formats are normally used for background music.

      Parameters:
      bufferName - the buffer to modify
      format - the data format. One of:
      FORMAT_MONO8FORMAT_MONO16FORMAT_STEREO8FORMAT_STEREO16
      data - the sample data
      frequency - the data frequency
    • alBufferData

      public static void alBufferData(int bufferName, int format, FloatBuffer data, int frequency)
      Sets the sample data of the specified buffer.

      The data specified is copied to an internal software, or if possible, hardware buffer. The implementation is free to apply decompression, conversion, resampling, and filtering as needed.

      8-bit data is expressed as an unsigned value over the range 0 to 255, 128 being an audio output level of zero.

      16-bit data is expressed as a signed value over the range -32768 to 32767, 0 being an audio output level of zero. Byte order for 16-bit values is determined by the native format of the CPU.

      Stereo data is expressed in an interleaved format, left channel sample followed by the right channel sample.

      Buffers containing audio data with more than one channel will be played without 3D spatialization features – these formats are normally used for background music.

      Parameters:
      bufferName - the buffer to modify
      format - the data format. One of:
      FORMAT_MONO8FORMAT_MONO16FORMAT_STEREO8FORMAT_STEREO16
      data - the sample data
      frequency - the data frequency
    • nalGetEnumValue

      public static int nalGetEnumValue(long enumName)
      Unsafe version of: GetEnumValue
    • alGetEnumValue

      public static int alGetEnumValue(ByteBuffer enumName)
      Returns the enumeration value of the specified enum.
      Parameters:
      enumName - the enum name
    • alGetEnumValue

      public static int alGetEnumValue(CharSequence enumName)
      Returns the enumeration value of the specified enum.
      Parameters:
      enumName - the enum name
    • nalGetProcAddress

      public static long nalGetProcAddress(long funcName)
      Unsafe version of: GetProcAddress
    • alGetProcAddress

      public static long alGetProcAddress(ByteBuffer funcName)
      Retrieves extension entry points.

      Returns NULL if no entry point with the name funcName can be found. Implementations are free to return NULL if an entry point is present, but not applicable for the current context. However the specification does not guarantee this behavior.

      Applications can use alGetProcAddress to obtain core API entry points, not just extensions. This is the recommended way to dynamically load and unload OpenAL DLL's as sound drivers.

      Parameters:
      funcName - the function name
    • alGetProcAddress

      public static long alGetProcAddress(CharSequence funcName)
      Retrieves extension entry points.

      Returns NULL if no entry point with the name funcName can be found. Implementations are free to return NULL if an entry point is present, but not applicable for the current context. However the specification does not guarantee this behavior.

      Applications can use alGetProcAddress to obtain core API entry points, not just extensions. This is the recommended way to dynamically load and unload OpenAL DLL's as sound drivers.

      Parameters:
      funcName - the function name
    • nalIsExtensionPresent

      public static boolean nalIsExtensionPresent(long extName)
      Unsafe version of: IsExtensionPresent
    • alIsExtensionPresent

      public static boolean alIsExtensionPresent(ByteBuffer extName)
      Verifies that a given extension is available for the current context and the device it is associated with.

      Invalid and unsupported string tokens return ALC_FALSE. extName is not case sensitive – the implementation will convert the name to all upper-case internally (and will express extension names in upper-case).

      Parameters:
      extName - the extension name
    • alIsExtensionPresent

      public static boolean alIsExtensionPresent(CharSequence extName)
      Verifies that a given extension is available for the current context and the device it is associated with.

      Invalid and unsupported string tokens return ALC_FALSE. extName is not case sensitive – the implementation will convert the name to all upper-case internally (and will express extension names in upper-case).

      Parameters:
      extName - the extension name
    • alGetIntegerv

      public static void alGetIntegerv(int paramName, int[] dest)
      Array version of: GetIntegerv
    • alGetFloatv

      public static void alGetFloatv(int paramName, float[] dest)
      Array version of: GetFloatv
    • alGetDoublev

      public static void alGetDoublev(int paramName, double[] dest)
      Array version of: GetDoublev
    • alListenerfv

      public static void alListenerfv(int paramName, float[] values)
      Array version of: Listenerfv
    • alGetListenerf

      public static void alGetListenerf(int paramName, float[] value)
      Array version of: GetListenerf
    • alGetListeneri

      public static void alGetListeneri(int paramName, int[] value)
      Array version of: GetListeneri
    • alGetListener3f

      public static void alGetListener3f(int paramName, float[] value1, float[] value2, float[] value3)
      Array version of: GetListener3f
    • alGetListenerfv

      public static void alGetListenerfv(int paramName, float[] values)
      Array version of: GetListenerfv
    • alGenSources

      public static void alGenSources(int[] srcNames)
      Array version of: GenSources
    • alDeleteSources

      public static void alDeleteSources(int[] sources)
      Array version of: DeleteSources
    • alSourcefv

      public static void alSourcefv(int source, int param, float[] values)
      Array version of: Sourcefv
    • alGetSourcef

      public static void alGetSourcef(int source, int param, float[] value)
      Array version of: GetSourcef
    • alGetSource3f

      public static void alGetSource3f(int source, int param, float[] v1, float[] v2, float[] v3)
      Array version of: GetSource3f
    • alGetSourcefv

      public static void alGetSourcefv(int source, int param, float[] values)
      Array version of: GetSourcefv
    • alGetSourcei

      public static void alGetSourcei(int source, int param, int[] value)
      Array version of: GetSourcei
    • alGetSourceiv

      public static void alGetSourceiv(int source, int param, int[] values)
      Array version of: GetSourceiv
    • alSourceQueueBuffers

      public static void alSourceQueueBuffers(int sourceName, int[] bufferNames)
      Array version of: SourceQueueBuffers
    • alSourceUnqueueBuffers

      public static void alSourceUnqueueBuffers(int sourceName, int[] bufferNames)
      Array version of: SourceUnqueueBuffers
    • alSourcePlayv

      public static void alSourcePlayv(int[] sources)
      Array version of: SourcePlayv
    • alSourcePausev

      public static void alSourcePausev(int[] sources)
      Array version of: SourcePausev
    • alSourceStopv

      public static void alSourceStopv(int[] sources)
      Array version of: SourceStopv
    • alSourceRewindv

      public static void alSourceRewindv(int[] sources)
      Array version of: SourceRewindv
    • alGenBuffers

      public static void alGenBuffers(int[] bufferNames)
      Array version of: GenBuffers
    • alDeleteBuffers

      public static void alDeleteBuffers(int[] bufferNames)
      Array version of: DeleteBuffers
    • alGetBufferf

      public static void alGetBufferf(int bufferName, int paramName, float[] value)
      Array version of: GetBufferf
    • alGetBufferi

      public static void alGetBufferi(int bufferName, int paramName, int[] value)
      Array version of: GetBufferi
    • alBufferData

      public static void alBufferData(int bufferName, int format, short[] data, int frequency)
      Array version of: BufferData
    • alBufferData

      public static void alBufferData(int bufferName, int format, int[] data, int frequency)
      Array version of: BufferData
    • alBufferData

      public static void alBufferData(int bufferName, int format, float[] data, int frequency)
      Array version of: BufferData