39.1. al — SGI 上的音频函数 — Python 文档
来自菜鸟教程
Python/docs/2.7/library/al
39.1. 阿尔 — SGI 上的音频功能
自 2.6 版起已弃用:al 模块已在 Python 3 中删除。
该模块提供对 SGI Indy 和 Indigo 工作站音频设施的访问。 有关详细信息,请参阅 IRIX 手册页的第 3A 部分。 您需要阅读这些手册页以了解这些函数的作用! 某些功能在 4.0.5 之前的 IRIX 版本中不可用。 同样,请参阅手册以检查您的平台上是否提供特定功能。
此模块中定义的所有函数和方法都等效于名称带有 AL
前缀的 C 函数。
C 头文件 <audio.h>
中的符号常量在标准模块 AL 中定义,见下文。
警告
当传递错误的参数值而不是返回错误状态时,当前版本的音频库可能会转储核心。 不幸的是,由于可能发生这种情况的确切情况没有记录并且难以检查,因此 Python 接口无法提供针对此类问题的保护。 (一个例子是指定过多的队列大小——没有记录的上限。)
该模块定义了以下功能:
- al.openport(name, direction[, config])
- 名称和方向参数是字符串。 可选的 config 参数是由 newconfig() 返回的配置对象。 返回值是一个音频端口对象; 音频端口对象的方法描述如下。
- al.newconfig()
- 返回值是一个新的音频配置对象; 音频配置对象的方法描述如下。
- al.queryparams(device)
- 设备参数是一个整数。 返回值是一个整数列表,其中包含
ALqueryparams()
返回的数据。
- al.getparams(device, list)
- device 参数是一个整数。 list 参数是一个列表,例如由 queryparams() 返回的列表; 它就地修改(!)。
- al.setparams(device, list)
- device 参数是一个整数。 list 参数是一个列表,例如由 queryparams() 返回的列表。
39.1.1. 配置对象
newconfig()返回的配置对象有以下方法:
- audio configuration.getqueuesize()
- 返回队列大小。
- audio configuration.setqueuesize(size)
- 设置队列大小。
- audio configuration.getwidth()
- 获取样本宽度。
- audio configuration.setwidth(width)
- 设置样本宽度。
- audio configuration.getchannels()
- 获取通道数。
- audio configuration.setchannels(nchannels)
- 设置通道数。
- audio configuration.getsampfmt()
- 获取示例格式。
- audio configuration.setsampfmt(sampfmt)
- 设置样本格式。
- audio configuration.getfloatmax()
- 获取浮动样本格式的最大值。
- audio configuration.setfloatmax(floatmax)
- 设置浮动样本格式的最大值。
39.1.2. 端口对象
openport() 返回的端口对象具有以下方法:
- audio port.closeport()
- 关闭端口。
- audio port.getfd()
- 将文件描述符作为 int 返回。
- audio port.getfilled()
- 返回填充样本的数量。
- audio port.getfillable()
- 返回可填充样本的数量。
- audio port.readsamps(nsamples)
- 从队列中读取一些样本,必要时阻塞。 将数据作为包含原始数据的字符串返回(例如,如果将样本宽度设置为 2 字节,则以大端字节序(高字节、低字节)为每个样本返回 2 个字节)。
- audio port.writesamps(samples)
- 将样本写入队列,必要时阻塞。 样本按照
readsamps()
返回值的描述进行编码。
- audio port.getfillpoint()
- 返回“填充点”。
- audio port.setfillpoint(fillpoint)
- 设置“填充点”。
- audio port.getconfig()
- 返回包含端口当前配置的配置对象。
- audio port.setconfig(config)
- 从参数设置配置,一个配置对象。
- audio port.getstatus(list)
- 获取有关上次错误的状态信息。
39.2. AL — 用于的常量阿尔模块
自 2.6 版起已弃用:AL 模块已在 Python 3 中删除。
该模块定义了使用内置模块 al(见上文)所需的符号常量; 它们与 C 头文件 <audio.h>
中定义的相同,只是省略了名称前缀 AL_
。 阅读模块源以获取已定义名称的完整列表。 建议使用:
import al
from AL import *