Class SOFTLoopback
- java.lang.Object
-
- org.lwjgl.openal.SOFTLoopback
-
public class SOFTLoopback extends java.lang.ObjectNative bindings to the SOFT_loopback extension.This extension allows an application to read back OpenAL's rendered audio instead of having it output to an audio device on the system. Unextended OpenAL will output audio to an audio device, with no mechanism to allow an application to divert the audio somewhere else.
-
-
Field Summary
Fields Modifier and Type Field and Description static intALC_5POINT1_SOFT
ALC_6POINT1_SOFT
ALC_7POINT1_SOFTAccepted by thechannelsparameter ofIsRenderFormatSupportedSOFT.static intALC_BYTE_SOFT
ALC_FLOAT_SOFTAccepted by thetypeparameter ofIsRenderFormatSupportedSOFT.static intALC_FORMAT_CHANNELS_SOFT
ALC_FORMAT_TYPE_SOFTAccepted as part of theattrListparameter ofCreateContext.static intALC_INT_SOFTAccepted by thetypeparameter ofIsRenderFormatSupportedSOFT.static intALC_MONO_SOFT
ALC_QUAD_SOFTAccepted by thechannelsparameter ofIsRenderFormatSupportedSOFT.static intALC_SHORT_SOFTAccepted by thetypeparameter ofIsRenderFormatSupportedSOFT.static intALC_STEREO_SOFTAccepted by thechannelsparameter ofIsRenderFormatSupportedSOFT.static intALC_UNSIGNED_BYTE_SOFT
ALC_UNSIGNED_INT_SOFT
ALC_UNSIGNED_SHORT_SOFTAccepted by thetypeparameter ofIsRenderFormatSupportedSOFT.
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method and Description static booleanalcIsRenderFormatSupportedSOFT(long device, int frequency, int channels, int type)When creating contexts, the attribute list must specify the format used for rendering.static longalcLoopbackOpenDeviceSOFT(java.nio.ByteBuffer deviceName)Loopback devices provide a way for applications to "read back" rendered audio without it being sent to an actual audio device.static longalcLoopbackOpenDeviceSOFT(java.lang.CharSequence deviceName)Loopback devices provide a way for applications to "read back" rendered audio without it being sent to an actual audio device.static voidalcRenderSamplesSOFT(long device, java.nio.ByteBuffer buffer, int samples)The state of various objects on loopback devices (including processed buffers and source offsets) is processed only when new samples are rendered.static voidalcRenderSamplesSOFT(long device, float[] buffer, int samples)float[] version of:RenderSamplesSOFTstatic voidalcRenderSamplesSOFT(long device, java.nio.FloatBuffer buffer, int samples)FloatBuffer version of:RenderSamplesSOFTstatic voidalcRenderSamplesSOFT(long device, int[] buffer, int samples)int[] version of:RenderSamplesSOFTstatic voidalcRenderSamplesSOFT(long device, java.nio.IntBuffer buffer, int samples)IntBuffer version of:RenderSamplesSOFTstatic voidalcRenderSamplesSOFT(long device, short[] buffer, int samples)short[] version of:RenderSamplesSOFTstatic voidalcRenderSamplesSOFT(long device, java.nio.ShortBuffer buffer, int samples)ShortBuffer version of:RenderSamplesSOFT
-
-
-
Field Detail
-
ALC_BYTE_SOFT
public static final int ALC_BYTE_SOFT
Accepted by thetypeparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_UNSIGNED_BYTE_SOFT
public static final int ALC_UNSIGNED_BYTE_SOFT
Accepted by thetypeparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_SHORT_SOFT
public static final int ALC_SHORT_SOFT
Accepted by thetypeparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_UNSIGNED_SHORT_SOFT
public static final int ALC_UNSIGNED_SHORT_SOFT
Accepted by thetypeparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_INT_SOFT
public static final int ALC_INT_SOFT
Accepted by thetypeparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_UNSIGNED_INT_SOFT
public static final int ALC_UNSIGNED_INT_SOFT
Accepted by thetypeparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_FLOAT_SOFT
public static final int ALC_FLOAT_SOFT
Accepted by thetypeparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_MONO_SOFT
public static final int ALC_MONO_SOFT
Accepted by thechannelsparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_STEREO_SOFT
public static final int ALC_STEREO_SOFT
Accepted by thechannelsparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_QUAD_SOFT
public static final int ALC_QUAD_SOFT
Accepted by thechannelsparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_5POINT1_SOFT
public static final int ALC_5POINT1_SOFT
Accepted by thechannelsparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_6POINT1_SOFT
public static final int ALC_6POINT1_SOFT
Accepted by thechannelsparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_7POINT1_SOFT
public static final int ALC_7POINT1_SOFT
Accepted by thechannelsparameter ofIsRenderFormatSupportedSOFT.- See Also:
- Constant Field Values
-
ALC_FORMAT_CHANNELS_SOFT
public static final int ALC_FORMAT_CHANNELS_SOFT
Accepted as part of theattrListparameter ofCreateContext.- See Also:
- Constant Field Values
-
ALC_FORMAT_TYPE_SOFT
public static final int ALC_FORMAT_TYPE_SOFT
Accepted as part of theattrListparameter ofCreateContext.- See Also:
- Constant Field Values
-
-
Method Detail
-
alcLoopbackOpenDeviceSOFT
public static long alcLoopbackOpenDeviceSOFT(java.nio.ByteBuffer deviceName)
Loopback devices provide a way for applications to "read back" rendered audio without it being sent to an actual audio device. It allows applications to render audio as fast or slow as it needs, making it suitable for non-real-time rendering, and so it can be passed to an audio codec or something for further processing.To open a loopback device, use this function.
A loopback device behaves largely the same as a playback device. You may query playback state and error codes, and create contexts, which can then be set as current to generate sources and buffers like normal.
Note that loopback devices do not have either the
SYNCorREFRESHattributes. Attempting to query them will result in anINVALID_ENUMerror.- Parameters:
deviceName- which device or device driver to use for subsequent rendering. This may beNULLfor an implementation-defined default, otherwise it must be a valid name returned by enumeration (and further must be a device capable of loopback rendering).
-
alcLoopbackOpenDeviceSOFT
public static long alcLoopbackOpenDeviceSOFT(java.lang.CharSequence deviceName)
Loopback devices provide a way for applications to "read back" rendered audio without it being sent to an actual audio device. It allows applications to render audio as fast or slow as it needs, making it suitable for non-real-time rendering, and so it can be passed to an audio codec or something for further processing.To open a loopback device, use this function.
A loopback device behaves largely the same as a playback device. You may query playback state and error codes, and create contexts, which can then be set as current to generate sources and buffers like normal.
Note that loopback devices do not have either the
SYNCorREFRESHattributes. Attempting to query them will result in anINVALID_ENUMerror.- Parameters:
deviceName- which device or device driver to use for subsequent rendering. This may beNULLfor an implementation-defined default, otherwise it must be a valid name returned by enumeration (and further must be a device capable of loopback rendering).
-
alcIsRenderFormatSupportedSOFT
public static boolean alcIsRenderFormatSupportedSOFT(long device, int frequency, int channels, int type)When creating contexts, the attribute list must specify the format used for rendering. This is done with theFORMAT_CHANNELS_SOFT,FORMAT_TYPE_SOFT, andFREQUENCYattributes. This controls the format of the audio subsequently rendered by the device.To check if a particular rendering format is available, use this function.
- Parameters:
device- the loopback device to queryfrequency- the sample rate of the rendered audiochannels- the channel configuration used for rendering. One of:MONO_SOFTSTEREO_SOFTQUAD_SOFT5POINT1_SOFT6POINT1_SOFT7POINT1_SOFTtype- sample type of the written audio. One of:BYTE_SOFTUNSIGNED_BYTE_SOFTSHORT_SOFTUNSIGNED_SHORT_SOFTINT_SOFTUNSIGNED_INT_SOFTFLOAT_SOFT
-
alcRenderSamplesSOFT
public static void alcRenderSamplesSOFT(long device, java.nio.ByteBuffer buffer, int samples)The state of various objects on loopback devices (including processed buffers and source offsets) is processed only when new samples are rendered. To render samples, use this function.- Parameters:
device- the loopback device which samples are rendered from, using its contexts and associated buffers and sourcesbuffer- the buffer to write tosamples- the number of sample frames to render
-
alcRenderSamplesSOFT
public static void alcRenderSamplesSOFT(long device, java.nio.ShortBuffer buffer, int samples)ShortBuffer version of:RenderSamplesSOFT
-
alcRenderSamplesSOFT
public static void alcRenderSamplesSOFT(long device, java.nio.IntBuffer buffer, int samples)IntBuffer version of:RenderSamplesSOFT
-
alcRenderSamplesSOFT
public static void alcRenderSamplesSOFT(long device, java.nio.FloatBuffer buffer, int samples)FloatBuffer version of:RenderSamplesSOFT
-
alcRenderSamplesSOFT
public static void alcRenderSamplesSOFT(long device, short[] buffer, int samples)short[] version of:RenderSamplesSOFT
-
alcRenderSamplesSOFT
public static void alcRenderSamplesSOFT(long device, int[] buffer, int samples)int[] version of:RenderSamplesSOFT
-
alcRenderSamplesSOFT
public static void alcRenderSamplesSOFT(long device, float[] buffer, int samples)float[] version of:RenderSamplesSOFT
-
-