BlitzMax/模块/音频/OpenAL 1.1
AL 常量 | 描述 |
---|---|
AL_INVALID AL_NONE | 错误值 |
AL_FALSE | 布尔值 False。 |
AL_TRUE | 布尔值 True。 |
AL_SOURCE_RELATIVE | 指示源具有相对坐标。 |
AL_CONE_INNER_ANGLE | 定向源,内锥角,以度为单位。 范围: [0-360] 默认: 360 |
AL_CONE_OUTER_ANGLE | 定向源,外锥角,以度为单位。 范围: [0-360] 默认: 360 |
AL_PITCH | 指定要应用的音调,无论是在源处,还是在监听器处对混合结果进行指定。 范围: [0.5-2.0] 默认: 1.0 |
AL_POSITION | 指定三维空间中的当前位置。 OpenAL,与 OpenGL 一样,使用右手坐标系,在正面默认视图中 X(拇指)指向右,Y 指向上(食指),Z 指向查看者/摄像机(中指)。 要从左手坐标系切换,请将 Z 坐标的符号翻转。 监听器位置始终位于世界坐标系中。 |
AL_DIRECTION | 指定当前方向。 |
AL_VELOCITY | 指定三维空间中的当前速度。 |
AL_LOOPING | 指示源是否正在循环。 类型: ALboolean? 范围: [AL_TRUE, AL_FALSE] 默认: FALSE。 |
AL_BUFFER | 指示提供声音样本的缓冲区。 类型: ALuint。 范围: 任何有效的缓冲区 ID。 |
AL_GAIN | 指示应用的增益(音量放大)。 类型: ALfloat。 范围: ]0.0- ] 值为 1.0 表示未衰减/未改变。 每次除以 2 相当于衰减 -6dB。 每次乘以 2 相当于放大 +6dB。 在对数刻度下,值为 0.0 无意义;它被解释为零音量 - 频道实际上被禁用。 |
AL_MIN_GAIN | 指示最小源衰减 类型: ALfloat 范围: [0.0 - 1.0] |
AL_MAX_GAIN | 指示最大源衰减 类型: ALfloat 范围: [0.0 - 1.0] |
AL_ORIENTATION | 指示监听器方向。 |
AL_CHANNEL_MASK | 指定频道掩码。 (Creative) 类型: ALuint 范围: [0 - 255] |
AL_SOURCE_STATE AL_INITIAL AL_PLAYING AL_PAUSED AL_STOPPED | 源状态信息。 |
AL_BUFFERS_QUEUED AL_BUFFERS_PROCESSED | 缓冲区队列参数 |
AL_SEC_OFFSET AL_SAMPLE_OFFSET AL_BYTE_OFFSET | 源缓冲区位置信息 |
AL_SOURCE_TYPE | 源类型(静态、流式或未确定) |
AL_STATIC | 如果使用 AL_BUFFER 附加了缓冲区,则源为静态 |
AL_STREAMING | 如果使用 alSourceQueueBuffers 附加了一个或多个缓冲区,则源为流式 |
AL_UNDETERMINED | 当源附加了 NULL 缓冲区时,源为未确定 |
AL_FORMAT_MONO8 AL_FORMAT_STEREO8 AL_FORMAT_MONO16 AL_FORMAT_STEREO16 | 声音样本:格式说明符。 |
AL_REFERENCE_DISTANCE | 源特定的参考距离 类型: ALfloat 范围: 0.0 - +inf 在 0.0 时,不会发生距离衰减。默认值为 1.0。 |
AL_ROLLOFF_FACTOR | 源特定的衰减因子 类型: ALfloat 范围: 0.0 - +inf |
AL_CONE_OUTER_GAIN | 定向源,外锥增益。 默认: 0.0 范围: [0.0 - 1.0] |
AL_MAX_DISTANCE | 指示高于该距离的源不会使用反向钳位距离模型进行衰减。 默认: +inf 类型: ALfloat |
AL_FREQUENCY AL_BITS AL_CHANNELS AL_SIZE | 频率,单位为赫兹 [Hz]。 这是每秒的样本数。样本频率的一半标志着最大有效频率成分。 |
AL_UNUSED AL_PENDING AL_PROCESSED | 缓冲区状态。 目前不支持公众使用(尚未)。 |
AL_NO_ERROR | 无错误 |
AL_INVALID_NAME | 传递给 AL 调用的无效名称参数。 |
AL_ILLEGAL_ENUM AL_INVALID_ENUM | 传递给 AL 调用的无效参数。 |
AL_INVALID_VALUE | 无效的枚举参数值。 |
AL_ILLEGAL_COMMAND AL_INVALID_OPERATION | 非法调用。 |
AL_OUT_OF_MEMORY | 没有魔力。 |
AL_VENDOR AL_VERSION AL_RENDERER AL_EXTENSIONS | 上下文字符串:供应商名称。 |
AL_DOPPLER_FACTOR | 多普勒比例。默认值 1.0 |
AL_DOPPLER_VELOCITY | 调整传播速度。 |
AL_SPEED_OF_SOUND | 声速,单位为每秒。 |
AL_DISTANCE_MODEL AL_INVERSE_DISTANCE AL_INVERSE_DISTANCE_CLAMPED AL_LINEAR_DISTANCE AL_LINEAR_DISTANCE_CLAMPED AL_EXPONENT_DISTANCE AL_EXPONENT_DISTANCE_CLAMPED | 距离模型 与 DistanceModel 结合使用 隐式:NONE,它使距离衰减无效。 |
ALC 常量 | 描述 |
---|---|
ALC_FALSE | 假 |
ALC_TRUE | 真 |
ALC_FREQUENCY | 混合输出缓冲区的频率,单位为赫兹 |
ALC_REFRESH | 刷新间隔,单位为赫兹 |
ALC_SYNC | 标志,指示同步上下文 |
ALC_MONO_SOURCES | 提示,指示应该支持单声道数据的源数量 |
ALC_STEREO_SOURCES | 提示,指示应该支持立体声数据的源数量 |
ALC_NO_ERROR | 目前没有错误。 |
ALC_INVALID_DEVICE | 设备句柄或规范名称指定一个可访问的驱动程序/服务器 |
ALC_INVALID_CONTEXT | 上下文参数未指定有效上下文。 |
ALC_INVALID_ENUM | 使用的令牌无效或不适用。 |
ALC_INVALID_VALUE | 值(例如属性)无效或不适用。 |
ALC_OUT_OF_MEMORY | 无法分配内存。 |
ALC_DEFAULT_DEVICE_SPECIFIER | 默认设备的规范字符串 |
ALC_DEVICE_SPECIFIER | 设备的规范字符串 |
ALC_EXTENSIONS | 可用上下文扩展的列表,由空格分隔。 |
ALC_MAJOR_VERSION | 此实现的规范版本(主版本)。 NULL 是一个可接受的设备。 |
ALC_MINOR_VERSION | 此实现的规范版本(次版本)。 NULL 是一个可接受的设备。 |
ALC_ATTRIBUTES_SIZE | 当前上下文为零终止属性列表所需的大小(ALCint 值数量)。 NULL 是一个无效的设备。 |
ALC_ALL_ATTRIBUTES | 需要 ALC_ATTRIBUTES_SIZE 大小的目标,并提供指定设备当前上下文的属性列表。 NULL 是一个无效的设备。 |
ALC_CAPTURE_DEVICE_SPECIFIER | 指定捕获设备的名称,或者如果未指定捕获设备,则为所有可用捕获设备的列表。 |
ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER | 默认捕获设备的名称 |
ALC_CAPTURE_SAMPLES | 可用的捕获样本数量。 NULL 是一个无效的设备。 |
函数 OpenALInstalled()
描述: 检查 OpenAL 是否已安装。
返回值: 如果 OpenAL 已安装,则为 True。
信息: 此函数允许您确定当前机器上是否安装了 OpenAL。
全局 alcOpenDevice( devicename$z )
描述: 此函数按名称打开设备。
信息:
参数 | 描述 |
---|---|
devicename | 描述设备的以 null 结尾的字符串 |
如果出现错误,返回值将为 NULL。
返回指向打开设备的指针。 如果无法打开设备,将返回 NULL。
全局 alcCloseDevice( device )
描述: 此函数按名称关闭设备。
信息:
参数 | 描述 |
---|---|
device | 指向打开设备的指针 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_DEVICE | 指定的设备名称不存在。 |
设备关闭时,设备内的所有上下文和缓冲区都将被销毁,成功时将返回 ALC_TRUE,失败时将返回 ALC_FALSE。
全局 alcGetError( device )
描述: 此函数检索当前上下文错误状态。
信息:
参数 | 描述 |
---|---|
device | 指向要从中检索错误状态的设备的指针 |
全局 alcGetString:Byte Ptr( device,param )
描述: 此函数返回与上下文相关的字符串的指针。
信息:
参数 | 描述 |
---|---|
device | 指向要查询的设备的指针 |
param | 要检索的属性 ALC_DEFAULT_DEVICE_SPECIFIER ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER ALC_DEVICE_SPECIFIER ALC_CAPTURE_DEVICE_SPECIFIER ALC_EXTENSIONS |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_ENUM | 指定的参数无效。 |
ALC_DEFAULT_DEVICE_SPECIFIER 将返回默认输出设备的名称。
ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER 将返回默认捕获设备的名称。
如果提供指针,ALC_DEVICE_SPECIFIER 将返回指定输出设备的名称,或者如果提供 NULL 设备指针,将返回所有可用设备的列表。 列表是指向一系列由 NULL 字符分隔的字符串的指针,列表以两个 NULL 字符结尾。
如果提供指针,ALC_CAPTURE_DEVICE_SPECIFIER 将返回指定捕获设备的名称,或者如果提供 NULL 设备指针,将返回所有可用设备的列表。
ALC_EXTENSIONS 返回可用上下文扩展的列表,每个扩展由空格分隔,列表以 NULL 字符结尾。
全局 alcGetIntegerv( device,param,size,data:Int Ptr )
描述: 此函数返回与上下文相关的整数。
信息:
参数 | 描述 |
---|---|
device | 指向要查询的设备的指针 |
param | 要检索的属性 ALC_MAJOR_VERSION ALC_MINOR_VERSION ALC_ATTRIBUTES_SIZE ALC_ALL_ATTRIBUTES |
size | 提供的目标缓冲区的大小 |
data | 指向要返回的数据的指针 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_VALUE | 指定的 data 指针或 size 无效。 |
ALC_INVALID_ENUM | 指定的参数无效。 |
ALC_INVALID_DEVICE | 指定的设备无效。 |
ALC_INVALID_CONTEXT | 指定的上下文无效。 |
返回的版本是指实现满足的规范版本。
全局 alcCreateContext( device,attrlist:Int Ptr )
描述: 此函数使用指定的设备创建上下文。
信息:
参数 | 描述 |
---|---|
device | 指向设备的指针 |
attrlist | 指向一组属性的指针 ALC_FREQUENCY ALC_REFRESH ALC_SYNC |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_VALUE | 无法为此设备创建其他上下文。 |
ALC_INVALID_DEVICE | 指定的设备不是有效的输出设备。 |
返回值: 指向新上下文的指针(失败时为 NULL)。
全局 alcMakeContextCurrent( context )
描述: 此函数使指定的上下文成为当前上下文。
信息:
参数 | 描述 |
---|---|
context | 指向新上下文的指针 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_CONTEXT | 指定的上下文无效。 |
成功时返回 ALC_TRUE,失败时返回 ALC_FALSE。
全局 alcProcessContext( context )
描述: 此函数告诉上下文开始处理。
信息:
参数 | 描述 |
---|---|
context | 指向新上下文的指针 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_CONTEXT | 指定的上下文无效。 |
当上下文被挂起时,OpenAL 状态的变化将被接受,但不会被处理。 alcSuspendContext 可用于挂起上下文,然后可以一次性应用所有 OpenAL 状态变化,然后调用 alcProcessContext 立即应用所有状态变化。 在某些情况下,此过程可能比非挂起状态下应用属性更有效。 在某些实现中,process 和 suspend 调用都是 NOP。
全局 alcSuspendContext( context )
描述: 此函数挂起指定上下文的处理。
信息:
参数 | 描述 |
---|---|
context | 指向要挂起的上下文的指针 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_CONTEXT | 指定的上下文无效。 |
当上下文被挂起时,OpenAL 状态的变化将被接受,但不会被处理。 alcSuspendContext 的典型用法是挂起上下文,一次性应用所有 OpenAL 状态变化,然后调用 alcProcessContext 来一次性应用所有状态变化。 在某些情况下,此过程可能比非挂起状态下应用属性更有效。 在某些实现中,process 和 suspend 调用都是 NOP。
全局 alcDestroyContext( context )
描述: 此函数销毁上下文。
信息:
参数 | 描述 |
---|---|
context | 指向新上下文的指针 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_CONTEXT | 指定的上下文无效。 |
可以随时销毁非当前上下文(该上下文内的所有源也将被删除 - 缓冲区不会受到影响)。 alcMakeContextCurrent 应该用于确保要销毁的上下文不是当前上下文(NULL 对 alcMakeContextCurrent 有效)。
全局 alcGetCurrentContext()
描述: 此函数检索当前上下文。
返回值: 指向当前上下文的指针。
Global alcGetContextsDevice( context )
描述: 该函数检索上下文的设备指针。
信息:
参数 | 描述 |
---|---|
context | 指向上下文的指针 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_CONTEXT | 指定的上下文无效。 |
返回值: 指向指定上下文设备的指针。
Global alcIsExtensionPresent( device,extName$z )
描述: 该函数查询指定上下文扩展是否可用。
信息:
参数 | 描述 |
---|---|
device | 指向要查询扩展的设备的指针 |
extName | 描述扩展的以 null 结尾的字符串 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_VALUE | 字符串指针无效。 |
如果扩展可用,则返回 ALC_TRUE,如果扩展不可用,则返回 ALC_FALSE。
Global alcGetProcAddress:Byte Ptr( device,funcName$z )
描述: 该函数检索指定上下文扩展函数的地址。
信息:
参数 | 描述 |
---|---|
device | 指向要查询函数的设备的指针 |
funcName | 描述函数的以 null 结尾的字符串 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_VALUE | 字符串指针无效。 |
返回函数的地址,如果未找到,则返回 NULL。
Global alcGetEnumValue( device,enumName$z )
描述: 该函数检索指定枚举名称的枚举值。
信息:
参数 | 描述 |
---|---|
device | 指向要查询的设备的指针 |
enumName | 描述枚举值的以 null 结尾的字符串 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_VALUE | 字符串指针无效。 |
返回由 enumName 字符串描述的枚举值。这通常用于查询 ALC 扩展的枚举值。
Global alcCaptureOpenDevice( devicename$z,frequency,format,buffersize )
描述: 该函数通过名称打开捕获设备。
信息:
参数 | 描述 |
---|---|
devicename | 指向设备名称字符串的指针 |
frequency | 数据应捕获的频率 |
format | 请求的捕获缓冲区格式 |
buffersize | 捕获缓冲区的大小 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_VALUE | 参数之一的值无效。 |
ALC_OUT_OF_MEMORY | 指定的设备无效,或无法捕获音频。 |
返回捕获设备指针,或在失败时返回 NULL。
Global alcCaptureCloseDevice( device )
描述: 该函数关闭指定的捕获设备。
信息:
参数 | 描述 |
---|---|
device | 指向捕获设备的指针 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_DEVICE | 指定的设备不是有效的捕获设备。 |
如果关闭操作成功,则返回 ALC_TRUE,如果失败,则返回 ALC_FALSE。
Global alcCaptureStart( device )
描述: 该函数开始捕获操作。
信息:
参数 | 描述 |
---|---|
device | 指向捕获设备的指针 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_DEVICE | 指定的设备不是有效的捕获设备。 |
alcCaptureStart 将开始记录到内部环形缓冲区,其大小在打开捕获设备时指定。然后,应用程序可以使用 ALC_CAPTURE_SAPMPLES 令牌与 alcGetIntegerv 检索当前可用的样本数。当应用程序确定有足够的样本可供处理时,它就可以通过调用 alcCaptureSamples 获取这些样本。
Global alcCaptureStop( device )
描述: 该函数停止捕获操作。
信息:
参数 | 描述 |
---|---|
device | 指向捕获设备的指针 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_DEVICE | 指定的设备不是有效的捕获设备。 |
Global alcCaptureSamples( device,buffer:Byte Ptr,samples )
描述: 该函数完成捕获操作。
信息:
参数 | 描述 |
---|---|
device | 指向捕获设备的指针 |
buffer | 指向数据缓冲区的指针,该缓冲区必须足够大以容纳 samples 个样本 |
samples | 要检索的样本数 |
可能的错误状态 | 描述 |
---|---|
ALC_INVALID_VALUE | 指定的样本数大于可用样本数。 |
ALC_INVALID_DEVICE | 指定的设备不是有效的捕获设备。 |
Global alEnable( capability )
描述: 该函数启用 OpenAL 驱动程序的功能。
信息:
参数 | 描述 |
---|---|
capability | 要启用的功能的名称 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的功能无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
OpenAL 1.1 中没有为此函数定义的功能,但扩展可以使用它。
Global alDisable( capability )
描述: 该函数禁用 OpenAL 驱动程序的功能。
信息:
参数 | 描述 |
---|---|
capability | 要禁用的功能的名称 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的功能无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
OpenAL 1.1 中没有为此函数定义的功能,但扩展可以使用它。
Global alIsEnabled( capability )
描述: 该函数返回一个布尔值,指示 OpenAL 中是否启用了特定功能。
信息:
参数 | 描述 |
---|---|
capability | 要禁用的功能的名称 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的功能无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
如果功能已启用,则返回 AL_TRUE,如果功能已禁用,则返回 AL_FALSE。OpenAL 1.1 中没有为此函数定义的功能,但扩展可以使用它。
Global alGetString:Byte Ptr( param )
描述: 该函数检索 OpenAL 字符串属性。
信息:
参数 | 描述 |
---|---|
param | 要返回的属性 AL_VENDOR AL_VERSION AL_RENDERER AL_EXTENSIONS |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
返回指向以 null 结尾的字符串的指针。
Global alGetBooleanv( param,data:Byte Ptr )
描述: 该函数检索布尔 OpenAL 状态。
信息:
参数 | 描述 |
---|---|
param | 要返回的状态 AL_DOPPLER_FACTOR AL_SPEED_OF_SOUND AL_DISTANCE_MODEL |
data | 指向将存储状态的位置的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_VALUE | 指定的 data 指针无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGetIntegerv( param,data:Int Ptr )
描述: 该函数检索整数 OpenAL 状态。
信息:
参数 | 描述 |
---|---|
param | 要返回的状态 AL_DOPPLER_FACTOR AL_SPEED_OF_SOUND AL_DISTANCE_MODEL |
data | 指向将存储状态的位置的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_VALUE | 指定的 data 指针无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGetFloatv( param,data:Float Ptr )
描述: 该函数检索浮点 OpenAL 状态。
信息:
参数 | 描述 |
---|---|
param | 要返回的状态 AL_DOPPLER_FACTOR AL_SPEED_OF_SOUND AL_DISTANCE_MODEL |
data | 指向将存储状态的位置的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_VALUE | 指定的 data 指针无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGetDoublev( param,data:Double Ptr )
描述: 该函数检索双精度浮点 OpenAL 状态。
信息:
参数 | 描述 |
---|---|
param | 要返回的状态 AL_DOPPLER_FACTOR AL_SPEED_OF_SOUND AL_DISTANCE_MODEL |
data | 指向将存储状态的位置的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_VALUE | 指定的 data 指针无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
全局 alGetBoolean( param )
描述: 此函数返回一个布尔型 OpenAL 状态。
信息:
参数 | 描述 |
---|---|
param | 要查询的状态 AL_DOPPLER_FACTOR AL_SPEED_OF_SOUND AL_DISTANCE_MODEL |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
将返回由 param 描述的布尔型状态。
全局 alGetInteger( param )
描述: 此函数返回一个整型 OpenAL 状态。
信息:
参数 | 描述 |
---|---|
param | 要查询的状态 AL_DOPPLER_FACTOR AL_SPEED_OF_SOUND AL_DISTANCE_MODEL |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
将返回由 param 描述的整型状态。
全局 alGetFloat#( param )
描述: 此函数返回一个浮点型 OpenAL 状态。
信息:
参数 | 描述 |
---|---|
param | 要查询的状态 AL_DOPPLER_FACTOR AL_SPEED_OF_SOUND AL_DISTANCE_MODEL |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
将返回由 param 描述的浮点型状态。
全局 alGetDouble!( param )
描述: 此函数返回一个双精度浮点型 OpenAL 状态。
信息:
参数 | 描述 |
---|---|
param | 要查询的状态 AL_DOPPLER_FACTOR AL_SPEED_OF_SOUND AL_DISTANCE_MODEL |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
将返回由 param 描述的双精度值。
全局 alGetError()
描述: 此函数返回当前错误状态,然后清除错误状态。
信息: 返回一个表示错误状态的 Alenum。当 OpenAL 发生错误时,错误状态将被设置,并且不会被更改,直到使用 alGetError 获取错误状态。每次调用 alGetError 时,错误状态都会被清除,并且会返回最后一个状态(调用时当前的状态)。为了将错误检测隔离到代码的特定部分,应该在隔离部分之前调用 alGetError 以清除当前错误状态。
全局 alIsExtensionPresent( extname$z )
描述: 此函数测试 OpenAL 驱动程序是否提供特定扩展。
信息:
参数 | 描述 |
---|---|
extname | 一个以 null 结尾的字符串,描述所需的扩展 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 指定的扩展字符串不是一个有效的指针。 |
如果扩展可用,则返回 AL_TRUE,如果扩展不可用,则返回 AL_FALSE。
全局 alGetProcAddress:Byte Ptr( fname$z )
描述: 此函数返回 OpenAL 扩展函数的地址。
信息:
参数 | 描述 |
---|---|
fname | 一个以 null 结尾的字符串,包含函数名 |
返回值是指向指定函数的指针。如果未找到函数,则返回值将为 NULL。
全局 alGetEnumValue( ename$z )
描述: 此函数返回由字符串描述的 OpenAL 枚举的枚举值。
信息:
参数 | 描述 |
---|---|
ename | 一个以 null 结尾的字符串,描述一个 OpenAL 枚举 |
返回由字符串描述的实际 ALenum。如果字符串没有描述有效的 OpenAL 枚举,则返回 NULL。
全局 alListenerf( param,value# )
描述: 此函数为监听器设置一个浮点型属性。相关属性在监听器属性表中列出。
信息:
参数 | 描述 |
---|---|
param | 要设置的属性的名称:AL_GAIN |
value | 要设置为属性的 ALfloat 值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
全局 alListener3f( param,value1#,value2#,value3# )
描述: 此函数为监听器设置一个浮点型属性。相关属性在监听器属性表中列出。
信息:
参数 | 描述 |
---|---|
param | 要设置的属性的名称 AL_POSITION AL_VELOCITY |
v1, v2, v3 | 要设置为属性的值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
全局 alListenerfv( param,values:Float Ptr )
描述: 此函数设置监听器的浮点型向量属性。相关属性在监听器属性表中列出。
信息:
参数 | 描述 |
---|---|
param | 要设置的属性的名称 AL_POSITION AL_VELOCITY AL_ORIENTATION |
values | 指向浮点型向量值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
全局 alListeneri( param,value )
描述: 此函数设置监听器的整型属性。
信息:
参数 | 描述 |
---|---|
param | 要设置的属性的名称 |
value | 要设置为属性的整型值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
OpenAL 1.1 没有定义任何整型监听器属性,但此函数可被扩展使用。
全局 alListener3i( param,value1,value2,value3 )
描述: 此函数设置监听器的整型属性。相关属性在监听器属性表中列出。
信息:
参数 | 描述 |
---|---|
param | 要设置的属性的名称 AL_POSITION AL_VELOCITY |
value1, value2, value3 | 要设置为属性的整型值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
全局 alListeneriv( param,values:Int Ptr )
描述: 此函数设置监听器的整型属性。相关属性在监听器属性表中列出。
信息:
参数 | 描述 |
---|---|
param | 要设置的属性的名称 AL_POSITION AL_VELOCITY AL_ORIENTATION |
values | 指向要设置为属性的整型值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
全局 alGetListenerf( param,value:Float Ptr )
描述: 此函数检索监听器的浮点型属性。相关属性在监听器属性表中列出。
信息:
参数 | 描述 |
---|---|
param | 要检索的属性的名称:AL_GAIN |
value | 指向要检索的浮点型值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值指针无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
全局 alGetListener3f( param,value1:Float Ptr,value2:Float Ptr,value3:Float Ptr )
描述: 此函数从监听器的属性中检索一组三个浮点型值。相关属性在监听器属性表中列出。
信息:
参数 | 描述 |
---|---|
param | 要检索的属性的名称 AL_POSITION AL_VELOCITY |
value1, value2, value3 | 指向要检索的三个浮点型的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值指针无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
全局 alGetListenerfv( param,values:Float Ptr )
描述: 此函数检索监听器的浮点型向量属性。相关属性在监听器属性表中列出。
信息:
参数 | 描述 |
---|---|
param | 要检索的属性的名称 AL_POSITION AL_VELOCITY AL_ORIENTATION |
values | 指向要检索的浮点型向量值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值指针无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
全局 alGetListeneri( param,value:Int Ptr )
描述: 此函数检索监听器的整型属性。
信息:
参数 | 描述 |
---|---|
param | 要检索的属性的名称 |
value | 获取的整数值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值指针无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
OpenAL 1.1 没有定义任何整型监听器属性,但此函数可被扩展使用。
Global alGetListener3i( param,value1:Int Ptr,value2:Int Ptr,value3:Int Ptr )
描述: 此函数检索监听器的整型属性。相关属性列在监听器属性表中。
信息:
参数 | 描述 |
---|---|
param | 要检索的属性的名称 AL_POSITION AL_VELOCITY |
value1, value2, value3 | 获取的整数值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值指针无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGetListeneriv( param,values:Int Ptr )
描述: 此函数检索监听器的整型属性。相关属性列在监听器属性表中。
信息:
参数 | 描述 |
---|---|
param | 要检索的属性的名称 AL_POSITION AL_VELOCITY AL_ORIENTATION |
values | 获取的整数值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值指针无效。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGenBuffers( n,buffers:Int Ptr )
描述: 此函数生成一个或多个缓冲区,其中包含音频数据(请参阅 alBufferData)。缓冲区的引用是 ALuint 值,在需要缓冲区引用时使用(在 alDeleteBuffers、alSourcei、alSourceQueueBuffers 和 alSourceUnqueueBuffers 等调用中)。
信息:
参数 | 描述 |
---|---|
n | 要生成的缓冲区数量 |
缓冲区 | 指向 ALuint 值数组的指针,这些值将存储新缓冲区的名称 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 缓冲区数组不足以容纳请求的缓冲区数量。 |
AL_OUT_OF_MEMORY | 没有足够的内存来生成所有请求的缓冲区。 |
如果无法创建请求的缓冲区数量,则会生成一个错误,可以使用 alGetError 检测到。如果发生错误,将不会生成任何缓冲区。如果 n 等于零,则 alGenBuffers 不会执行任何操作,也不会返回错误。
Global alDeleteBuffers( n,buffers:Int Ptr )
描述: 此函数删除一个或多个缓冲区,释放缓冲区使用的资源。附加到源的缓冲区无法删除。有关如何将缓冲区从源分离的信息,请参阅 alSourcei 和 alSourceUnqueueBuffers。
信息:
参数 | 描述 |
---|---|
n | 要删除的缓冲区数量 |
缓冲区 | 指向缓冲区名称数组的指针,这些名称标识要删除的缓冲区 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_OPERATION | 缓冲区仍在使用中,无法删除。 |
AL_INVALID_NAME | 缓冲区名称无效。 |
AL_INVALID_VALUE | 无法删除请求的缓冲区数量。 |
如果无法删除请求的缓冲区数量,则会生成一个错误,可以使用 alGetError 检测到。如果发生错误,将不会删除任何缓冲区。如果 n 等于零,则 alDeleteBuffers 不会执行任何操作,也不会返回错误。
Global alIsBuffer( bid )
描述: 此函数测试缓冲区名称是否有效,如果有效则返回 AL_TRUE,否则返回 AL_FALSE。
信息:
参数 | 描述 |
---|---|
bid | 要测试其有效性的缓冲区名称 |
NULL 缓冲区始终有效(有关 NULL 缓冲区的用法,请参阅 alSourcei)。
Global alBufferData( bid,format,data:Byte Ptr,size,freq )
描述: 此函数用音频数据填充缓冲区。所有预定义格式都是 PCM 数据,但此函数可用于扩展来加载其他数据类型。
信息:
参数 | 描述 |
---|---|
bid | 要填充数据的缓冲区名称 |
format | 以下格式类型之一:AL_FORMAT_MONO8、AL_FORMAT_MONO16、AL_FORMAT_STEREO8、AL_FORMAT_STEREO16 |
data | 指向音频数据的指针 |
size | 音频数据的大小(以字节为单位) |
freq | 音频数据的频率 |
可能的错误状态 | 描述 |
---|---|
AL_OUT_OF_MEMORY | 没有足够的内存来创建此缓冲区。 |
AL_INVALID_VALUE | size 参数对于指定的格式无效,缓冲区正在使用中,或者数据是 NULL 指针。 |
AL_INVALID_ENUM | 指定的格式不存在。 |
8 位 PCM 数据表示为 0 到 255 范围内的无符号值,其中 128 是音频输出电平为零。16 位 PCM 数据表示为 -32768 到 32767 范围内的有符号值,其中 0 是音频输出电平为零。立体声数据以交错格式表示,左侧声道优先。包含多个声道数据的缓冲区将以 3D 空间化方式播放。
Global alBufferf( bid,param,value# )
描述: 此函数设置缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
param | 要设置的属性名称 |
value | 要设置的 ALfloat 值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
OpenAL 1.1 中没有定义可以受此调用影响的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alBuffer3f( bid,param,value1#,value2#,value3# )
描述: 此函数设置缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
param | 要设置的属性的名称 |
value1, value2, value3 | 要设置的 ALfloat 值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
OpenAL 1.1 中没有定义可以受此调用影响的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alBufferfv( bid,param,values:Float Ptr )
描述: 此函数设置缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
param | 要设置的属性的名称 |
values | 指向要设置的 ALfloat 值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
OpenAL 1.1 中没有定义可以受此调用影响的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alBufferi( bid,param,value )
描述: 此函数设置缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
param | 要设置的属性名称 |
value | 要设置的 ALint 值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
OpenAL 1.1 中没有定义可以受此调用影响的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alBuffer3i( bid,param,value1,value2,value3 )
描述: 此函数设置缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
param | 要设置的属性名称 |
value1, value2, value3 | 要设置的 ALint 值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
OpenAL 1.1 中没有定义可以受此调用影响的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alBufferiv( bid,param,values:Int Ptr )
描述: 此函数设置缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
param | 要设置的属性名称 |
values | 指向要设置的 ALint 值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
OpenAL 1.1 中没有定义可以受此调用影响的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alGetBufferf( bid,param,value:Float Ptr )
描述: 此函数检索缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
pname | 要检索的属性名称 |
value | 指向 ALfloat 的指针,用于保存检索到的数据 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
AL_INVALID_VALUE | 指定的 value 指针无效。 |
OpenAL 1.1 中没有定义可以通过此调用检索的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alGetBuffer3f( bid,param,value1:Float Ptr,value2:Float Ptr,value3:Float Ptr )
描述: 此函数检索缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
pname | 要检索的属性名称 |
value1, value2, value3 | 指向 ALfloat 值的指针,用于保存检索到的数据 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
AL_INVALID_VALUE | 指定的 value 指针无效。 |
OpenAL 1.1 中没有定义可以通过此调用检索的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alGetBufferfv( bid,param,values:Float Ptr )
描述: 此函数检索缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
pname | 要检索的属性的名称 |
values | 指向 ALfloat 向量以保存检索到的数据的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
AL_INVALID_VALUE | 指定的 value 指针无效。 |
OpenAL 1.1 中没有定义可以通过此调用检索的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alGetBufferi( bid,param,value:Int Ptr )
描述: 此函数检索缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
pname | 要检索的属性名称:AL_FREQUENCY、AL_BITS、AL_CHANNELS、AL_SIZE、AL_DATA |
value | 指向 ALint 的指针,用于保存检索到的数据 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
AL_INVALID_VALUE | 指定的 value 指针无效。 |
OpenAL 1.1 中没有定义可以通过此调用检索的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alGetBuffer3i( bid,param,value1:Int Ptr,value2:Int Ptr,value3:Int Ptr )
描述: 此函数检索缓冲区的浮点属性。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
pname | 要检索的属性名称 |
value1, value2, value3 | 指向 ALint 值的指针,用于保存检索到的数据 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
AL_INVALID_VALUE | 指定的 value 指针无效。 |
OpenAL 1.1 中没有定义可以通过此调用检索的相关缓冲区属性,但此函数可用于 OpenAL 扩展。
Global alGetBufferiv( bid,param,values:Int Ptr )
描述: 此函数检索缓冲区的浮点属性。相关属性列在缓冲区属性表中。
信息:
参数 | 描述 |
---|---|
bid | 正在检索其属性的缓冲区名称 |
pname | 要检索的属性名称 |
values | 指向 ALint 向量以保存检索到的数据的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的缓冲区没有参数(NULL 缓冲区),或者不存在。 |
AL_INVALID_VALUE | 指定的 value 指针无效。 |
OpenAL 1.1 中没有定义可以由此调用检索的相关缓冲区属性,但此函数可以由 OpenAL 扩展使用。
Global alGenSources( n,sources:Int Ptr )
描述: 此函数生成一个或多个源。对源的引用是 ALuint 值,这些值在需要源引用时使用(在诸如 alDeleteSources 和 alSourcei 的调用中)。
信息:
参数 | 描述 |
---|---|
n | 要生成的源数 |
源 | 指向 ALuint 值数组的指针,这些值将存储新源的名称 |
可能的错误状态 | 描述 |
---|---|
AL_OUT_OF_MEMORY | 没有足够的内存来生成所有请求的源。 |
AL_INVALID_VALUE | 没有足够的非内存资源来创建所有请求的源,或者数组指针无效。 |
AL_INVALID_OPERATION | 没有上下文来创建源。 |
如果无法创建请求数量的源,则将生成错误,可以使用 alGetError 检测到。如果发生错误,将不会生成任何源。如果 n 等于零,alGenSources 不会执行任何操作,也不会返回错误。
Global alDeleteSources( n,sources:Int Ptr )
描述: 此函数删除一个或多个源。
信息:
参数 | 描述 |
---|---|
n | 要删除的源数 |
源 | 指向源名称数组的指针,这些名称标识要删除的源 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_NAME | 至少有一个指定的源无效,或者正在尝试删除比现有源更多的源。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
如果无法删除请求数量的源,则将生成错误,可以使用 alGetError 检测到。如果发生错误,将不会删除任何源。如果 n 等于零,alDeleteSources 不会执行任何操作,也不会返回错误。可以删除正在播放的源 - 源将被停止然后删除。
Global alIsSource( sid )
描述: 此函数测试源名称是否有效,如果有效则返回 AL_TRUE,否则返回 AL_FALSE。
信息:
参数 | 描述 |
---|---|
sid | 要测试有效性的源名称 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alSourcef( sid,param,value# )
描述: 此函数设置源的浮点属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在设置其属性的源名称 |
param | 要设置的属性的名称 AL_PITCH AL_GAIN AL_MAX_DISTANCE AL_ROLLOFF_FACTOR AL_REFERENCE_DISTANCE AL_MIN_GAIN AL_MAX_GAIN AL_CONE_OUTER_GAIN |
value | 要设置属性的值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alSource3f( sid,param,value1#,value2#,value3# )
描述: 此函数设置需要三个浮点值的源属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在设置其属性的源名称 |
param | 要设置的属性的名称 AL_POSITION AL_VELOCITY AL_DIRECTION |
v1, v2, v3 | 属性将被设置为的三个 ALfloat 值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
此函数是 alSourcefv 的替代方案。
Global alSourcefv( sid,param,values:Float Ptr )
描述: 此函数设置需要三个浮点值的源属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在设置其属性的源名称 |
param | 要设置的属性的名称 AL_POSITION AL_VELOCITY AL_DIRECTION |
values | 指向要设置属性的向量的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
此函数是 alSource3f 的替代方案。
Global alSourcei( sid,param,value )
描述: 此函数设置源的整数属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在设置其属性的源名称 |
param | 要设置的属性的名称 AL_SOURCE_RELATIVE AL_CONE_INNER_ANGLE AL_CONE_OUTER_ANGLE AL_LOOPING AL_BUFFER AL_SOURCE_STATE |
value | 指向要设置属性的向量的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
缓冲区名称零保留为“NULL 缓冲区”,并被 alSourcei(..., AL_BUFFER, ...) 接受为长度为零的有效缓冲区。NULL 缓冲区对于从使用此调用或 alSourceQueueBuffers 附加的源中分离缓冲区非常有用。
Global alSource3i( sid,param,value1,value2,value3 )
描述: 此函数设置源的整数属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在设置其属性的源名称 |
param | 要设置的属性的名称 AL_POSITION AL_VELOCITY AL_DIRECTION |
value1, value2, value3 | 要设置属性的值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alSourceiv( sid,param,values:Int Ptr )
描述: 此函数设置源的整数属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在设置其属性的源名称 |
param | 要设置的属性的名称 AL_POSITION AL_VELOCITY AL_DIRECTION |
values | 要设置属性的值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGetSourcef( sid,param,value:Float Ptr )
描述: 此函数检索源的浮点属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在检索其属性的源名称 |
param | 要检索的属性的名称 AL_PITCH AL_GAIN AL_MIN_GAIN AL_MAX_GAIN AL_MAX_DISTANCE AL_ROLLOFF_FACTOR AL_CONE_OUTER_GAIN AL_CONE_INNER_ANGLE AL_CONE_OUTER_ANGLE AL_REFERENCE_DISTANCE |
value | 指向要检索的浮点型值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGetSource3f( sid,param,value1:Float Ptr,value2:Float Ptr,value3:Float Ptr )
描述: 此函数检索表示源属性的三个浮点值。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在检索其属性的源名称 |
param | 要检索的属性的名称 AL_POSITION AL_VELOCITY AL_DIRECTION |
value1,value2,value3 | 指向要检索的值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGetSourcefv( sid,param,values:Float Ptr )
描述: 此函数检索源的浮点向量属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在检索其属性的源名称 |
param | 要检索的属性的名称 AL_POSITION AL_VELOCITY AL_DIRECTION |
values | 指向要检索的向量的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGetSourcei( sid,param,value:Int Ptr )
描述: 此函数检索源的整数属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在检索其属性的源名称 |
pname | 要检索的属性的名称 AL_SOURCE_RELATIVE AL_BUFFER AL_SOURCE_STATE AL_BUFFERS_QUEUED AL_BUFFERS_PROCESSED |
value | 获取的整数值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGetSource3i( sid,param,value1:Int Ptr,value2:Int Ptr,value3:Int Ptr )
描述: 此函数检索源的整数属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在检索其属性的源名称 |
pname | 要检索的属性的名称 AL_POSITION AL_VELOCITY AL_DIRECTION |
value1, value2, value3 | 获取的整数值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alGetSourceiv( sid,param,values:Int Ptr )
描述: 此函数检索源的整数属性。相关属性列在源属性表中。
信息:
参数 | 描述 |
---|---|
sid | 正在检索其属性的源名称 |
pname | 要检索的属性的名称 AL_POSITION AL_VELOCITY AL_DIRECTION |
values | 获取的整数值的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值超出范围。 |
AL_INVALID_ENUM | 指定的参数无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alSourcePlayv( ns,sids:Int Ptr )
描述: 此函数播放一组源。
信息:
参数 | 描述 |
---|---|
ns | 要播放的源数 |
sids | 指向要播放的源数组的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值指针无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
正在播放的源将将其状态更改为 AL_PLAYING。当在已经播放的源上调用时,源将从开头重新开始。当附加的缓冲区播放完毕后,源将进入 AL_STOPPED 状态。
Global alSourceStopv( ns,sids:Int Ptr )
描述: 此函数停止一组源。
信息:
参数 | 描述 |
---|---|
ns | 要停止的源数 |
sids | 指向要停止的源数组的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值指针无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
停止的源将将其状态更改为 AL_STOPPED。
Global alSourceRewindv( ns,sids:Int Ptr )
描述: 此函数停止一组声源并将它们的状态设置为 AL_INITIAL。
信息:
参数 | 描述 |
---|---|
ns | 要倒带的声源数量 |
sids | 指向要倒带的声源数组的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值指针无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alSourcePausev( ns,sids:Int Ptr )
描述: 此函数暂停一组声源。
信息:
参数 | 描述 |
---|---|
ns | 要暂停的声源数量 |
sids | 指向要暂停的声源数组的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 给定的值指针无效。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
暂停的声源状态将更改为 AL_PAUSED。
Global alSourcePlay( sid )
描述: 此函数播放声源。
信息:
参数 | 描述 |
---|---|
sid | 要播放的声源名称 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
正在播放的声源状态将更改为 AL_PLAYING。当对已经播放的声源调用时,声源将从开头重新开始。当附加的缓冲区播放完毕时,声源将进入 AL_STOPPED 状态。
Global alSourceStop( sid )
描述: 此函数停止声源。
信息:
参数 | 描述 |
---|---|
sid | 要停止的声源名称 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
停止的声源状态将更改为 AL_STOPPED。
Global alSourceRewind( sid )
描述: 此函数停止声源并将其状态设置为 AL_INITIAL。
信息:
参数 | 描述 |
---|---|
sid | 要倒带的声源名称 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
Global alSourcePause( sid )
描述: 此函数暂停声源。
信息:
参数 | 描述 |
---|---|
sid | 要暂停的声源名称 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
暂停的声源状态将更改为 AL_PAUSED。
Global alSourceQueueBuffers( sid,numEntries,bids:Int Ptr )
描述: 此函数将一组缓冲区排队到声源。附加到声源的所有缓冲区将按顺序播放,可以使用 alSourcei 调用来获取 AL_BUFFERS_PROCESSED 来检测已处理缓冲区的数量。
信息:
参数 | 描述 |
---|---|
sid | 要排队缓冲区的声源名称 |
numEntries | 要排队的缓冲区数量 |
bids | 指向要排队的缓冲区名称数组的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_NAME | 至少有一个指定的缓冲区名称无效,或者指定的声源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文,尝试添加与队列中现有缓冲区格式不同的新缓冲区,或者声源已经附加了静态缓冲区。 |
首次创建时,声源类型为 AL_UNDETERMINED。成功调用 alSourceQueueBuffers 将把声源类型更改为 AL_STREAMING。
Global alSourceUnqueueBuffers( sid,numEntries,bids:Int Ptr )
描述: 此函数取消排队附加到声源的一组缓冲区。可以使用 alSourcei 调用来获取 AL_BUFFERS_PROCESSED 来检测已处理缓冲区的数量,这是可以使用此调用取消排队的最大缓冲区数量。
信息:
参数 | 描述 |
---|---|
sid | 要取消排队缓冲区的声源名称 |
numEntries | 要取消排队的缓冲区数量 |
bids | 指向已移除的缓冲区名称数组的指针 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 至少有一个缓冲区无法取消排队,因为它尚未处理。 |
AL_INVALID_NAME | 指定的源名称无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
仅当所有 n 个缓冲区都可以从队列中移除时才会执行取消排队操作。
Global alDopplerFactor( value# )
描述: 此函数选择 OpenAL 多普勒因子值。
信息:
参数 | 描述 |
---|---|
value | 要设置的多普勒比例值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 指定的 value 值无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
默认的多普勒因子值为 1.0。
Global alDopplerVelocity( value# )
描述: 此函数选择用于多普勒计算的声音速度。
信息:
参数 | 描述 |
---|---|
value | 要设置的声音速度值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 指定的 value 值无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
默认的声音速度值为 343.3。
Global alSpeedOfSound( value# )
描述: 此函数选择用于多普勒计算的声音速度。
信息:
参数 | 描述 |
---|---|
value# | 要设置的声音速度值 |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 指定的 value 值无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
默认的声音速度值为 343.3。
Global alDistanceModel( distanceModel )
描述: 此函数选择 OpenAL 距离模型。
AL_INVERSE_DISTANCE 模型根据以下公式工作
G_dB = AL_GAIN - 20log10(1 + AL_ROLLOFF_FACTOR*(distance - AL_REFERENCE_DISTANCE)/AL_REFERENCE_DISTANCE));
G_dB = min(G_dB, AL_MAX_GAIN);
G_dB = max(G_dB, AL_MIN_GAIN);
AL_INVERSE_DISTANCE_CLAMPED 模型根据以下公式工作
distance = max(distance, AL_REFERENCE_DISTANCE);
distance = min(distance, AL_MAX_DISTANCE);
G_dB = AL_GAIN - 20log10(1 + AL_ROLLOFF_FACTOR*(distance - AL_REFERENCE_DISTANCE)/AL_REFERENCE_DISTANCE));
G_dB = min(G_dB, AL_MAX_GAIN);
G_dB = max(G_dB, AL_MIN_GAIN);
AL_NONE 模型根据以下公式工作
G_db = AL_GAIN;
信息:
参数 | 描述 |
---|---|
distanceModel | 要设置的距离模型 AL_NONE AL_INVERSE_DISTANCE AL_INVERSE_DISTANCE_CLAMPED |
可能的错误状态 | 描述 |
---|---|
AL_INVALID_VALUE | 指定的距离模型无效。 |
AL_INVALID_OPERATION | 没有当前上下文。 |
OpenAL 中的默认距离模型为 AL_INVERSE_DISTANCE_CLAMPED。