构造函数
new AudioRecordStream()
new AudioRecordStream(id): AudioRecordStream
参数
id
number
内部流标识符
返回值
AudioRecordStream属性
streamId
streamId:number
方法
flushAsync()
flushAsync():Promise<AudioStatus>
清空录制缓冲区,丢弃所有未读取数据。
返回值
Promise<AudioStatus>
Promise 解析为如下的Promise:
STATUS_NO_ERROR (0):成功清空STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
getAudioConfigAsync()
getAudioConfigAsync():Promise<AudioConfig>
检索录制流的当前音频配置。
返回值
Promise<AudioConfig>
Promise 解析为含有以下内容的对象的Promise:
sampleRate:当前采样率(单位:Hz)channelMask:当前频道配置format:当前样本格式,或者通过以下项拒绝:STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
getAudioEffectSessionIdAsync()
getAudioEffectSessionIdAsync():Promise<Int32>
获取与流相关的自定义音效会话ID。
返回值
Promise<Int32>
Promise 解析为如下的Promise:
- 正值:效果会话ID
STATUS_NO_INIT (-3):流未初始化STATUS_BAD_VALUE (-2):未分配效果会话
getAudioFlagsAsync()
getAudioFlagsAsync():Promise<Int32>
获取为流配置的音频标记。
返回值
Promise<Int32>
Promise 解析为如下的Promise:
- AudioFlags值的按位组合
STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
getAudioSourceAsync()
getAudioSourceAsync():Promise<AudioSource>
获取为此流配置的音频源类型。
返回值
Promise<AudioSource>
Promise 解析为如下的Promise:
- AudioSource枚举值表示当前来源,或者通过以下项拒绝:
STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
getChannelCountAsync()
getChannelCountAsync():Promise<Int32>
获取录制流的频道数。
返回值
Promise<Int32>
Promise 解析为如下的Promise:
- 正值:频道数量
STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
getLatencyInMsAsync()
getLatencyInMsAsync():Promise<Int32>
以毫秒为单位获取录制流的当前延迟。
返回值
Promise<Int32>
Promise 解析为如下的Promise:
- 正值:延迟(单位:毫秒)
STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
getMajorVersion()
static getMajorVersion(): number
获取AudioRecordStream实现的主版本号。可用于进行版本检查。
返回值
number
number 主版本号
getMinBufferSizeInBytesAsync()
getMinBufferSizeInBytesAsync():Promise<Int32>
获取录制所需的最小缓冲区大小。readAsync调用必须至少使用这个大小才能进行可靠的录制。
返回值
Promise<Int32>
Promise 解析为如下的Promise:
- 正值:最小缓冲区大小(单位:字节)
STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
getMinorVersion()
static getMinorVersion(): number
获取AudioRecordStream实现的次版本号。可用于进行版本检查。
返回值
number
number 次版本号
getNumBytesInPipelineAsync()
getNumBytesInPipelineAsync():Promise<Int32>
获取当前录制管道中的字节数。
返回值
Promise<Int32>
Promise 解析为如下的Promise:
- 正值:管道中的字节数
STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
getNumBytesOfNativeBufferAsync()
getNumBytesOfNativeBufferAsync():Promise<Int32>
获取用于录制的原生缓冲区的大小。这表示可以缓冲的最大数据量。
返回值
Promise<Int32>
Promise 解析为如下的Promise:
- 正值:缓冲区大小(单位:字节)
STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
getPatchVersion()
static getPatchVersion(): number
获取AudioRecordStream实现的补丁版本号。可用于进行版本检查。
返回值
number
number 补丁版本号
getSampleRateAsync()
getSampleRateAsync():Promise<Int32>
获取录制流的采样率。
返回值
Promise<Int32>
Promise 解析为如下的Promise:
- 正值:采样率(单位:Hz)
STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
getSampleSizeAsync()
getSampleSizeAsync():Promise<Int32>
获取录制流的样本大小(单位:位)。
返回值
Promise<Int32>
Promise 解析为如下的Promise:
- 正值:以位为单位的样本大小(例如16、24、32)
STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
initCheckAsync()
initCheckAsync():Promise<AudioStatus>
验证录制流是否已正确初始化。必须在使用其他方法之前调用,以确保流准备就绪。
返回值
Promise<AudioStatus>
Promise 解析为如下的Promise:
STATUS_NO_ERROR (0):流已正确初始化STATUS_NO_INIT (-3):流未初始化STATUS_DEAD_OBJECT (-5):服务器通信错误
readAsync()
readAsync(bytes:Int32): Promise<ArrayBuffer>
读取录制流中的音频数据。需要权限:com.amazon.audio.privilege.microphone.access
参数
bytes
Int32
要读取的字节数。必须至少是getMinBufferSizeInBytesAsync返回的值
返回值
Promise<ArrayBuffer>
Promise 解析为如下的Promise:
- 包含已录制音频数据的ArrayBuffer,或者通过以下项拒绝:
STATUS_NO_INIT (-3):流未初始化STATUS_BAD_VALUE (-2):字节参数无效STATUS_PERMISSION_DENIED (-9):缺少麦克风权限STATUS_INVALID_OPERATION (-8):读取操作失败STATUS_DEAD_OBJECT (-5):服务器通信错误
registerEventObserverAsync()
registerEventObserverAsync(callback:(value: any) => void): Promise<AudioStatus>
注册回调以接收录制流事件。一次只能注册一个回调。
参数
callback
(value: any) => void
接收事件的函数。事件包括:
DIED (0):流失败RECOVERED (1):流已从故障中恢复MUTE_STATE_CHANGED (2):流静音状态已更改
返回值
Promise<AudioStatus>
Promise 解析为如下的Promise:
STATUS_NO_ERROR (0):回调注册成功STATUS_NO_INIT (-3):流未初始化STATUS_BAD_VALUE (-2):回调无效STATUS_ALREADY_EXISTS (-4):回调已注册
unregisterEventObserverAsync()
unregisterEventObserverAsync():Promise<AudioStatus>
取消注册之前注册的事件回调。
返回值
Promise<AudioStatus>
Promise 解析为如下的Promise:
STATUS_NO_ERROR (0):回调注销成功STATUS_NO_INIT (-3):流未初始化STATUS_BAD_VALUE (-2):未注册任何回调

