alGetLimiting(3dm) alGetLimiting(3dm) NAME alGetLimiting, alSetLimiting - request limiting for AL floating-point output SYNOPSIS #include <dmedia/audio.h> int alGetLimiting(ALconfig config) int alSetLimiting(ALconfig config, int value) PARAMETER config expects an ALconfig structure, the returned value of a call to alNewConfig(3dm) or alGetConfig(3dm). value expects a boolean value (0 or 1) indicating whether or not limiting is required on floating-point to integer data conversion for alWriteFrames(3dm) or alWriteBuffers(3dm). DESCRIPTION alSetLimiting indicates whether or not an application requires limiting when the AL converts floating-point data to integer on output. This value potentially affects the behavior of both alWriteFrames(3dm) and alWriteBuffers(3dm). If limiting is on, the AL will always limit floating-point output data to the limits specified by alSetFloatMax(3dm). If limiting is off, the AL is free to choose whether or not it performs limiting. In some cases, turning limiting off may increase performance, particularly in applications producing many output channels of audio. alGetLimiting returns the current value of the limiting hint, either 0 or 1. DIAGNOSTICS Upon successful completion, alSetLimiting returns 0. Otherwise, alSetLimiting returns -1 and sets an error number which can be retrieved with oserror(3C). alSetLimiting can fail for the following reasons: AL_BAD_CONFIG config is invalid or null. alGetLimiting returns -1 in the case of failure and sets an error number which can be retrieved with oserror(3C). When successful, alGetLimiting returns the current value of the limiting hint in config. alGetLimiting can fail for the following reason: AL_BAD_CONFIG config is invalid or null. NOTE These functions were introduced via patch to IRIX 6.3 and 6.4, and are present by default in later OS releases. You should ensure that the target system will have the functionality before calling these functions; otherwise, your program will crash when you attempt to make the function call. To determine if the feature is present, check the value of AL_VERSION on the system resource. The parameter must be present and its value must be at least 6. pv.param = AL_VERSION; alGetParams(AL_SYSTEM,&pv,1); if (pv.sizeOut < 0 || pv.value.i < 6) { /* feature not present */ } SEE ALSO alNewConfig(3dm), alGetConfig(3dm), alOpenPort(3dm), alSetConfig(3dm), alSetSampFmt(3dm), oserror(3C), alWriteFrames(3dm), alWriteBuffers(3dm) Page 2